Skip to content

REQ 116

sergio velderrain edited this page Nov 11, 2026 · 1 revision

REQ-116: Identify forwarded secrets without retaining their values

Requirement

The lane evidence record shall identify forwarded secrets by declared name without retaining their values.

Rationale

This is the evidence-record obligation extracted from REQ-093 to keep each normative statement singular. It retains the existing secret boundary and the relationship to the candidate-bound evidence contract in REQ-092, rather than adding a new delivery phase or authorizing secret disclosure. The original delivery controls remain in REQ-093.

Fit Criterion

The record's forwarded-name list equals the declaration's list, including an empty list when no secret is declared. No forwarded raw value occurs in retained evidence bytes; a workload that writes a declared secret's raw value into a declared output causes failure instead of retention. The raw-value check's limitation is explicit: encoded forms are not detected, and evidence records that limitation rather than claiming arbitrary-secret detection. A missing or empty declared value is rejected before VM mutation under REQ-093, not represented as a successful empty forwarding. A plan or diagnostic contains names only, never values. No additional secret is requested merely to generate the record. These are preserved baseline obligations, not a claim that the evidence-record writer is implemented.

Verification

Planned TEST-095 retains the original secret-disclosure observations. Existing offline delivery fixtures do not establish the still-planned evidence name-list and raw-value checks; no new execution result is claimed by this authoring split.

Source

SYS-REQ-027; extracted from REQ-093 and constrained by REQ-092

Priority

High

TestID

TEST-095

TestArtifact

Existing delivery context: scripts/tests/test_lane_plan.py, scripts/tests/test_lane_placement.py, and scripts/tests/test_lane_supervisor.py secret cases. Planned lane evidence-record cases need to assert the exact name list, raw-value rejection, empty declaration, and documented encoded-form limitation before this requirement is verified.

CodeRef

Existing delivery boundaries: scripts/lane/plan.py (declared names and secret-missing), scripts/lane/placement.py (place_secrets), and scripts/lane/supervisor.py (build-unit standard input), with docs/vm-provisioning/ubuntu-lane.md. The evidence-record writer and its checks remain unimplemented, as already disclosed in REQ-093; no invented writer symbol is cited.

Status

Planned; extracted existing obligation, evidence-record checks remain to be implemented and verified

Clone this wiki locally