Skip to content

Hosted ledger for teamsLesson 2 of 6

Prepare a signed qualification handoff

50 min / read + practicePreview lesson

Strictly verify the selected gate and export a bounded attestation.

Audience and time: a qualification engineer, about 50 minutes. Goal: prepare a value-free signed attestation from an existing local proof without sending business values to Hosted. This workflow belongs to the free local runtime; the paid course teaches its professional operation and review. Hosted access is needed only for a later explicitly authorised push.

Prerequisites: an approved installed runtime; a retained project and its already-signed exact gate subject; its original context if scoped; signed supporting receipts; an independently selected public trust store; and existing approved encrypted signing custody outside the repository. This lesson does not create keys, invent a passing gate or authorise a network request. Replace placeholders using the reviewed lab manifest. Never type a private key, token or passphrase into a command or the worksheet.

Identify the exact claim.

In the installed project, the CLI is node .agent-skills/data/ledger/spine.mjs. The following commands expand the spine shorthand used in the package README. Select the project, run and conformance-results file you actually intend to disclose. A program summary is not a substitute for a ledger gate subject. If the proof uses a context and a non-default subject, carry the same two selectors through verification, signing and export.

Recheck retained evidence and signatures.

Use the documented v2 verification path with independently supplied trust:

Learning terminal
node .agent-skills/data/ledger/spine.mjs verify --project <project> --evidence --strict --require-signatures --trust-store <public-trust-file>node .agent-skills/data/ledger/spine.mjs verify-signature --project <project> --gate <run> --subject <project-relative-gate-results> --trust-store <public-trust-file>

For a scoped run, add --context <original-context-file> to both commands.

Re-signing a changed historical file does not restore its original proof. Evidence sidecars can authenticate retained recorded artifacts, but a retrospective attachment cannot claim that a file was bound historically. If completeness is absent, keep that limitation visible.

Export a bounded attestation.

Choose a new output location outside the proof project and preserve create-only behavior. Use the exact subject you verified:

Learning terminal
node .agent-skills/data/ledger/spine.mjs export-attestation --project <project> --repository-root <repository-root> --gate <run> --subject <project-relative-gate-results> --trust-store <public-trust-file> --key-dir <approved-key-directory> --expires-at <UTC-expiry> --out <new-attestation-file> --result <new-export-result-file>

Again add the original --context when scoped. Expiry may be no more than 24 hours after observation; it is not a new 24-hour freshness window starting whenever you export. If the observation is too old, obtain new evidence through the owning workflow. Do not edit dates. Export re-evaluates retained evidence and frozen expectations without writing a new qualification. A valid failing gate can export a truthful failure attestation.

Verify the public projection.

Run the README's independent verification command:

Learning terminal
node .agent-skills/data/ledger/spine.mjs verify-attestation --attestation <new-attestation-file> --trust-store <public-trust-file>

Explain what the projection contains: bounded verdicts, operation/stage classes, timestamps, signer information and domain-separated keyed commitments. Explain what remains local: actual and expected values, group labels, SQL/DAX, paths, raw identities and business artifacts. The disclosure key is separate from the signing key. A reviewer with public trust can authenticate the envelope, but cannot recover the private values or recompute the business comparison from this projection.

Prepare the team handoff.

Record the declared scope, observation/expiry times, verification result and evidence-completeness limitation in the lab worksheet. Keep raw receipts, renders and oracle files in customer-controlled evidence custody. Do not attach them to a Hosted upload or an academy submission. Local signatures authenticate content; they do not establish that the grain is commercially appropriate or that a human accepted the report.

A later lesson covers spine push. Offline planning verifies an existing export and prepares its plan without a request. Applying a push requires separate local consent, exact Hosted approvals, current device/producer authority and independently pinned ACK trust. A returned ACK proves Hosted accepted the bound envelope; it does not say Hosted reran your source SQL. Lost-response recovery must preserve original acknowledgement bytes rather than inventing another success.

Completion check

submit only a synthetic/value-free result and explain three independent questions: Did the local gate establish the declared checks? Does trusted signing authenticate this exact projection? Has Hosted acknowledged it? You should be able to answer the first two after this lesson, and leave the third explicitly unperformed.

Prepare a signed qualification handoff | Analytical Spine