diff --git a/docs/evidence/2026-10-03-cadence-owner-adoption.md b/docs/evidence/2026-10-03-cadence-owner-adoption.md index 9543189..bb700f7 100644 --- a/docs/evidence/2026-10-03-cadence-owner-adoption.md +++ b/docs/evidence/2026-10-03-cadence-owner-adoption.md @@ -24,9 +24,11 @@ the published InfoTechCanon envelope, preserving deployed emission timing and local counter limitations. Actual emitter classification/inventory belongs to the source. Observer support already exists in AUDIT-WP-0009 T04–T07; reuse it. -Approval Engine's native sender credential custody is already delivered. It -does not prove actual producer acceptance/duplicate handling, source/tenant/read -denials, independent readback, bearer revocation or operational heartbeat. +Approval Engine's native sender credential custody and bounded synthetic +accepted/duplicate handling, source/tenant/read denials and independent readback +are already delivered in the September11 platform factory receipts. They are +synthetic-outbox-only and do not prove deployed lifecycle/cadence observation, +bearer revocation or operational heartbeat. Its heartbeat classes and emission cadence need an owner-reviewed registry mapping before observed acceptance. Qonto likewise needs source admission and observer results, not another implementation of heartbeat/reconciliation. @@ -42,3 +44,14 @@ Security knowledge reloaded: version0.2.5, digest `9e186dbd6f2d5eb455bca24db4b03cd866c63c4e94660430dd15f2ca9856215f`; start/evidence verified-files, orientation-only. No knowledge receipt grants authority or proves operational readiness. + +## Independent declaration assessment after migration + +Retained `2026-10-03-cadence-owner-assessments.json` records both migrated owner +declarations as schema-valid/profile-assessed/conformant for source-owned +inventories. Approval Engine's four transition classes are rare load-bearing; +heartbeat transport remains load-bearing, non-rare, with reconciliation. Qonto +declares deny rare load-bearing, heartbeat load-bearing and allow attributive. +Local-identity remains schema-valid with exactly two expected missing-heartbeat +failures. Source tests passed169 in Approval Engine and90 in Qonto. +No live observer result is asserted by these assessments. diff --git a/docs/evidence/2026-10-03-cadence-owner-assessments.json b/docs/evidence/2026-10-03-cadence-owner-assessments.json new file mode 100644 index 0000000..9478d8a --- /dev/null +++ b/docs/evidence/2026-10-03-cadence-owner-assessments.json @@ -0,0 +1,93 @@ +{ + "live_observer_proved": false, + "reports": { + "approval-engine": { + "assessment_scope": "supplied-inventory", + "conformant": true, + "contract_schema": "../info-tech-canon/infospace/schemas/emission-cadence.schema.yaml", + "contract_valid": true, + "declaration": "../approval-engine/cadence.yaml", + "findings": [], + "inventory": { + "attributive": [], + "load_bearing": [ + "heartbeat" + ], + "rare_load_bearing": [ + "issuance", + "revocation", + "supersession", + "use" + ] + }, + "profile": "netkingdom-emission-cadence-security-profile-v0.1", + "profile_assessed": true, + "summary": { + "must": 0, + "should": 0 + } + }, + "local-identity": { + "assessment_scope": "supplied-inventory", + "conformant": false, + "contract_schema": "../info-tech-canon/infospace/schemas/emission-cadence.schema.yaml", + "contract_valid": true, + "declaration": "local-identity/emission-cadence.yaml", + "findings": [ + { + "code": "rare-heartbeat-missing", + "event_class": "revoke-token", + "level": "MUST", + "message": "rare load-bearing evidence requires a positive heartbeat" + }, + { + "code": "rare-heartbeat-missing", + "event_class": "serve/token.token_issued", + "level": "MUST", + "message": "rare load-bearing evidence requires a positive heartbeat" + } + ], + "inventory": { + "attributive": [], + "load_bearing": [], + "rare_load_bearing": [ + "revoke-token", + "serve/token.token_issued" + ] + }, + "profile": "netkingdom-emission-cadence-security-profile-v0.1", + "profile_assessed": true, + "summary": { + "must": 2, + "should": 0 + } + }, + "qonto-assistant": { + "assessment_scope": "supplied-inventory", + "conformant": true, + "contract_schema": "../info-tech-canon/infospace/schemas/emission-cadence.schema.yaml", + "contract_valid": true, + "declaration": "../qonto-assistant/specs/audit-emission-cadence.yaml", + "findings": [], + "inventory": { + "attributive": [ + "audit.allow" + ], + "load_bearing": [ + "audit.deny", + "audit.heartbeat" + ], + "rare_load_bearing": [ + "audit.deny" + ] + }, + "profile": "netkingdom-emission-cadence-security-profile-v0.1", + "profile_assessed": true, + "summary": { + "must": 0, + "should": 0 + } + } + }, + "scope": "source-declaration-profile-assessment-only" +} diff --git a/tools/emission-cadence-profile/README.md b/tools/emission-cadence-profile/README.md index 48f1639..25cd4d4 100644 --- a/tools/emission-cadence-profile/README.md +++ b/tools/emission-cadence-profile/README.md @@ -73,5 +73,8 @@ The test suite runs contract integration tests directly against a sibling InfoTechCanon checkout; these tests explicitly skip when it is unavailable. The small unit-test schema is a test double, not a fallback contract. -The profile is proposed: current approval-engine and qonto-assistant owner -instances still require migration. Passing a worked example is not adoption. +The profile is proposed. Approval Engine and Qonto owner declarations migrated +on 2026-10-03 and pass the supplied-inventory assessment; actual sender mappings, +observed delivery/reconciliation and operational observer acceptance remain +required. Local-identity retains its explicit heartbeat/feed incompatibility. +Passing a source declaration or worked example does not prove live adoption. diff --git a/workplans/NK-WP-0035-emission-cadence-security-profile.md b/workplans/NK-WP-0035-emission-cadence-security-profile.md index 3acaf62..7b6ac35 100644 --- a/workplans/NK-WP-0035-emission-cadence-security-profile.md +++ b/workplans/NK-WP-0035-emission-cadence-security-profile.md @@ -90,7 +90,7 @@ Python compilation and `git diff --check` pass. id: NK-WP-0035-T04 status: wait blocked_on: message-from:approval-engine -blocking_reason: "InfoTechCanon publication is bound and local-identity incompatibility is explicitly retained. Owner declaration/observer source fixes are progressing; actual sender cadence mappings, delivery/readback/reconciliation and Kings Guard operational feed evidence remain required." +blocking_reason: "Approval Engine and Qonto owner declarations now pass the published schema and supplied-inventory profile; local-identity incompatibility is retained. Requires actual sender cadence mappings, lifecycle delivery/readback/reconciliation and Kings Guard operational feed evidence." priority: high state_hub_task_id: "e3fbc8b8-00d5-57ce-ba0c-19b58044c950" ``` @@ -211,3 +211,12 @@ delegated. Actual sender mappings and observed delivery/reconciliation/readback remain independently owned. T04 remains wait and plan blocked until these receipts exist; the profile remains proposed. Evidence: [cadence adoption implementation](../docs/evidence/2026-10-03-cadence-owner-adoption.md). + +Source migrations applied and independently revalidated: Approval Engine and +Qonto are generic-valid and conformant for their explicit source inventories. +Local-identity remains generic-valid with exactly two rare-heartbeat-missing +findings. Retained reports: `docs/evidence/2026-10-03-cadence-owner-assessments.json`. +Owner tests pass (Approval Engine169, Qonto90). These source checks remove the +envelope migration blocker, while actual operating observer acceptance remains +unproved. Existing synthetic native Approval Engine delivery/readback receipts +are retained; do not request identical synthetic checks as missing evidence.