feat: add deployment foundation and cross-device handoff

This commit is contained in:
2026-09-25 08:49:19 +08:00
parent 8ccb8b7c15
commit e965b0943d
77 changed files with 8018 additions and 0 deletions
+37
View File
@@ -0,0 +1,37 @@
package cli
import (
"bytes"
"strings"
"testing"
"time"
)
func TestRepositoryRejectsUntrustedRequests(t *testing.T) {
for _, input := range []string{`{}`, `{"directory":"secret-relative","suite":"resolute","architecture":"amd64","versions":{}}`,
`{"directory":"secret-relative","suite":"resolute","architecture":"amd64","versions":{},"repositoryAuthenticated":true}`} {
var out, diagnostics bytes.Buffer
if Run([]string{"verify-repository"}, strings.NewReader(input), &out, &diagnostics, time.Now) == 0 {
t.Fatal("accepted invalid request")
}
if out.Len() != 0 || strings.Contains(diagnostics.String(), "secret-relative") {
t.Fatal("invalid response leaked input")
}
}
}
func TestArtifactCommandRejectsCallerTrust(t *testing.T) {
for _, field := range []string{`"packageBytesVerified":true`, `"repositoryAuthenticated":true`, `"lock":{}`} {
var out, diagnostics bytes.Buffer
input := `{"directory":"secret-relative","artifactDirectory":"secret-artifacts","suite":"resolute","architecture":"amd64","versions":{},` + field + `}`
if Run([]string{"verify-artifacts"}, strings.NewReader(input), &out, &diagnostics, time.Now) == 0 {
t.Fatal("caller trust accepted")
}
if out.Len() != 0 || strings.Contains(diagnostics.String(), "secret") {
t.Fatal("input leaked")
}
if diagnostics.String() != "invalid artifact verification request\n" {
t.Fatal("request was not rejected at the protocol boundary", diagnostics.String())
}
}
}