Skip to content

Commit b7e40a9

Browse files
committed
docs: define independent reproducer custody
1 parent a569542 commit b7e40a9

3 files changed

Lines changed: 19 additions & 1 deletion

File tree

‎docs/CELLSCRIPT_REGISTRY_PHASE1.md‎

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -295,6 +295,14 @@ rotation cannot rewrite the historical trust boundary. A reproducible artifact
295295
stays `evidence_required`, and deployment admission fails, until
296296
`reproduced_build` evidence is accepted.
297297

298+
Distinct policy labels are necessary but cannot prove organizational
299+
independence. The production operator must obtain each public key from a builder
300+
under separate administrative control and private-key custody. Creating two
301+
keys inside the Registry operator's own infrastructure and assigning different
302+
`trust_domain` strings does not satisfy this model. Readiness proves that the
303+
policy is well-formed and that its P-256 keys are importable; it does not attest
304+
who controls those keys.
305+
298306
## Consuming Other Artifacts
299307

300308
Generic artifacts never pass through `cellc install`. Use the explicit

‎services/registry-api/README.md‎

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,14 @@ reproducible artifact until this transition succeeds. Accepted evidence also
7171
stores the canonical policy SHA-256 and the minimum trust-domain threshold used
7272
at acceptance time.
7373

74+
Trust-domain independence is an operator-governance fact, not something the API
75+
can infer from two different strings. Production policy must use builders under
76+
separate administrative control and separate private-key custody. Two keys
77+
created or controlled by the same Registry operator must not be labelled as two
78+
independent trust domains. `/ready` validates policy shape, key importability,
79+
and configured threshold only; it is not an organizational-independence
80+
attestation.
81+
7482
## Endpoints
7583

7684
```text

‎services/registry-api/deploy/.env.example‎

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,5 +21,7 @@ REGISTRY_ADMIN_TOKEN=replace-with-a-generated-secret
2121
# CKB_REGISTRY_SCAN_MAX_CELLS=1000
2222
# CKB_MIN_CONFIRMATIONS=24
2323
# Signed reproduction promotion remains disabled until this policy names at
24-
# least two active builders in different trust domains.
24+
# least two active builders under genuinely separate administrative control and
25+
# private-key custody. Different labels for keys controlled by one operator are
26+
# not independent trust domains.
2527
# REGISTRY_REPRODUCER_POLICY_JSON={"schema":"cellscript-reproducer-policy-v1","minimum_trust_domains":2,"builders":[{"builder_id":"builder-a","trust_domain":"org-a","public_key":"p256-spki:..."},{"builder_id":"builder-b","trust_domain":"org-b","public_key":"p256-spki:..."}]}

0 commit comments

Comments
 (0)