Repository navigation
Add signed Kind acceptance runner and four API checks - #247
miyaontherelay wants to merge 2 commits into
Conversation
Pre-merge checks:
|
kjgbot
left a comment
There was a problem hiding this comment.
Source review of exact head 8d9b027: no actionable findings. Independently passed all 9 offline regressions through the shared heavy queue (real local HTTPS and Ed25519 signing), plus additional stale/future-summary refusal checks and a real CLI missing-config smoke: exit 1, signed/verifiable failed receipt, qualificationComplete=false, no path leakage. Both documented shell blocks parse without execution; git diff --check passes. Member Usage denial requires a successful authenticated shared-session read first; redirects are not followed with cookies. Failure output uses fixed codes rather than subprocess/HTTP exception text. Signature verification requires the separately supplied trusted key and rejects replaced keys/payload tampering. Default full suite fails for missing adapters, and API-only success never claims complete qualification. Deployment/template pin checks include dashboard init-copy and rollout availability, with tenant matching and clean tracked source checks. These are source/fixture checks only: no ar-lap, cluster, real account, Desktop or live acceptance operations performed. The public-key signature proves integrity under the trusted development key, not external attestation or live observations.
[Medium impact] The changes affect a bounded local Kind acceptance workflow, not deployed application behavior. The PR appears safe to merge, with non-blocking improvements needed for stale reports and request-path tests.
|
8d9b027 to
499c4a4
Compare
The Kind qualification sheet currently lives in machine-specific scripts and receipts. Add
make local-acceptanceand a tracked runner that emits signed pass/fail evidence, published application pins, source/cluster identity and timings without copying credentials or API bodies into the report.This first increment implements four API checks: strict TLS/hostname refusal, session search/transcript, a ready model summary within the fixture window, and owner Usage200/member403 with successful member session access as a positive control. Preflight also checks tenant identity, all nine application copy/serve image pins and completed rollout availability.
ACCEPTANCE_SUITE=apiruns this foundation. The default full suite fails closed for every remaining qualification adapter; every report saysqualificationComplete: false. Ed25519 SSHSIG integrity verification requires an independently trusted public key and is explicitly not external attestation. Desktop/macOS interaction and the remaining automated checks are documented separately.Validation:
make local-acceptance-testpasses11 regressions using a real local HTTPS server and real Ed25519 signing. Covers stale/missing summaries, invalid member authentication, redirects, secret-free failures, signature/payload/key tampering, credential modes/symlinks, foreign sites, stale/mixed rollout pins and tenant mismatch. CLI smoke verifies nonzero exit plus a signed failure report when the fixture is missing; Make path quoting andgit diff --checkpass. Tests are wired into Lint Charts. No ar-lap rollout, live acceptance run or wipe was performed for this PR.Review fixes: archive any previous receipt before starting a new run, so a signing failure cannot leave a stale pass at the current path. HTTPS fixtures now use exact paths/query values and distinct tenant/session IDs, refusing unknown routes. Both have regressions. Rebased once onto main after the PostgreSQL readiness fix in#248 merged.