2026-09-05 01:28:05 +02:00
|
|
|
---
|
|
|
|
|
id: NK-WP-0035
|
|
|
|
|
type: workplan
|
|
|
|
|
title: "Publish the NetKingdom emission-cadence security profile"
|
|
|
|
|
domain: infotech
|
|
|
|
|
repo: net-kingdom
|
|
|
|
|
status: blocked
|
|
|
|
|
owner: codex
|
|
|
|
|
topic_slug: netkingdom
|
|
|
|
|
planning_priority: P1
|
|
|
|
|
created: "2026-09-04"
|
Correct v0.8 §11: the emission-guarantee check contradicted the profile it cites
gate-house circulated v0.8 with two questions for this repository as owner of
the NetKingdom emission-cadence security profile: whether §17's ownership
paragraph reads in our own voice, and whether §11's new conformance item
follows the profile or diverges from it.
§17 is confirmed as written. It assigns the generic EmissionCadenceDeclaration
contract to info-tech-canon and to net-kingdom the MUST/SHOULD split, the
rare-class rate-monitoring prohibition, and the heartbeat-plus-reconciliation
obligation — which is emission-cadence-security-profile_v0.1.md §3, conjunction
included. No change.
§11 diverged in both directions and is corrected. Requiring a detection surface
of "heartbeat or reconciliation" of every load-bearing source withholds from a
volume class the expected-rate form the profile permits, and accepts for a rare
class either control alone where the profile — and the checker in
tools/emission-cadence-profile — require both. A rare class covered by a
heartbeat alone has no reconciliation to catch divergence, and one covered by
reconciliation alone produces no claim that can go missing, which is the whole
reason §9.6 rejects rate monitoring there. The item also contradicted its own
following paragraph, which admits rate monitoring except where the class is
rare.
The check now defers the form to the governing profile rather than restating a
split that is §17's to assign, carries the volume/rare distinction explicitly,
and states that classification is the source's published inventory and never the
checker's to infer from a name, payload, or observed rate — otherwise omission
detection is circular.
Change log item 6 and §14 record the review. The standard stays proposed;
publication and the acceptance flip wait on the close of the circulation round.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Ek3zTdfMa35bPVDjVUyhxx
Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 868701@bnt-lap001
Assistant-Session: b2e101b6-f501-40dc-9ee5-438cac36e21a
2026-09-07 08:44:52 +02:00
|
|
|
updated: "2026-09-07"
|
2026-09-05 01:28:05 +02:00
|
|
|
related:
|
|
|
|
|
- GH-DEC-2026-004
|
|
|
|
|
- canon/standards/security-layer-model_v0.7.md
|
2026-09-07 08:47:38 +02:00
|
|
|
state_hub_workstream_id: "04685f94-1991-5e62-80d2-5669913e99fc"
|
2026-09-05 01:28:05 +02:00
|
|
|
---
|
|
|
|
|
|
|
|
|
|
# NK-WP-0035 — NetKingdom emission-cadence security profile
|
|
|
|
|
|
|
|
|
|
GH-DEC-2026-004 assigns the ecosystem-wide
|
|
|
|
|
`EmissionCadenceDeclaration` contract to `info-tech-canon` and the importing
|
|
|
|
|
NetKingdom security profile to this repository. This work accepts that split.
|
|
|
|
|
It must not copy the generic schema drafted by `kings-guard` or make the
|
|
|
|
|
observer the owner of source classifications.
|
|
|
|
|
|
|
|
|
|
## Define the importing security profile
|
|
|
|
|
|
|
|
|
|
```task
|
|
|
|
|
id: NK-WP-0035-T01
|
|
|
|
|
status: done
|
|
|
|
|
priority: high
|
2026-09-07 08:47:38 +02:00
|
|
|
state_hub_task_id: "dc39bd1f-420d-55e9-b4d1-990c39dc251b"
|
2026-09-05 01:28:05 +02:00
|
|
|
```
|
|
|
|
|
|
|
|
|
|
Publish the NetKingdom MUST/SHOULD obligations over the generic contract:
|
|
|
|
|
load-bearing classes declare cadence, attributive classes should, and rare
|
|
|
|
|
load-bearing classes use heartbeat plus reconciliation with rate monitoring
|
|
|
|
|
forbidden. Keep source classification owner-authored and preserve the residual
|
|
|
|
|
that cadence detects omission only after the fact.
|
|
|
|
|
|
|
|
|
|
Implemented as proposed canon at
|
|
|
|
|
`canon/standards/emission-cadence-security-profile_v0.1.md`. The profile accepts
|
|
|
|
|
the GH-DEC-2026-004 split, requires source-owned classification, distinguishes
|
|
|
|
|
MUST from SHOULD coverage, and records that omission detection is after the
|
|
|
|
|
fact rather than proof of completeness.
|
|
|
|
|
|
|
|
|
|
## Implement mechanical profile validation
|
|
|
|
|
|
|
|
|
|
```task
|
|
|
|
|
id: NK-WP-0035-T02
|
|
|
|
|
status: done
|
|
|
|
|
priority: high
|
2026-09-07 08:47:38 +02:00
|
|
|
state_hub_task_id: "0cdfbee7-f5cd-5a43-b27f-752cc72f56f6"
|
2026-09-05 01:28:05 +02:00
|
|
|
```
|
|
|
|
|
|
|
|
|
|
Validate a declaration against an explicitly supplied InfoTechCanon JSON
|
|
|
|
|
Schema before applying the NetKingdom overlay. The checker must not ship a
|
|
|
|
|
fallback generic schema, infer evidence class or rarity from event contents, or
|
|
|
|
|
treat a SHOULD finding as a MUST failure by default.
|
|
|
|
|
|
|
|
|
|
Implemented at
|
|
|
|
|
`tools/emission-cadence-profile/emission_cadence_profile.py`. It requires
|
|
|
|
|
`--contract-schema`, performs generic validation first, then checks the
|
|
|
|
|
NetKingdom overlay against caller-supplied source inventory assertions. No
|
|
|
|
|
generic fallback schema or owner declaration instance was added here.
|
|
|
|
|
|
|
|
|
|
## Verify the boundary and failure cases
|
|
|
|
|
|
|
|
|
|
```task
|
|
|
|
|
id: NK-WP-0035-T03
|
|
|
|
|
status: done
|
|
|
|
|
priority: medium
|
2026-09-07 08:47:38 +02:00
|
|
|
state_hub_task_id: "9cbfaed0-b827-58b3-a79d-2efebb69ed58"
|
2026-09-05 01:28:05 +02:00
|
|
|
```
|
|
|
|
|
|
|
|
|
|
Cover contract-first validation, missing and mismatched class declarations,
|
|
|
|
|
the allowed high-volume load-bearing rate form, the forbidden rare-event rate
|
|
|
|
|
form, both positive controls for rare load-bearing classes, duplicate classes,
|
|
|
|
|
and advisory attributive coverage.
|
|
|
|
|
|
|
|
|
|
Verification on 2026-09-04: eight focused tests pass; the 81-test root
|
|
|
|
|
`tests/` + `tools/` regression suite passes; Ruff lint and format checks pass;
|
|
|
|
|
Python compilation and `git diff --check` pass.
|
|
|
|
|
|
|
|
|
|
## Bind and hand off the published contract
|
|
|
|
|
|
|
|
|
|
```task
|
|
|
|
|
id: NK-WP-0035-T04
|
|
|
|
|
status: wait
|
|
|
|
|
priority: high
|
2026-09-07 08:47:38 +02:00
|
|
|
state_hub_task_id: "e3fbc8b8-00d5-57ce-ba0c-19b58044c950"
|
2026-09-05 01:28:05 +02:00
|
|
|
```
|
|
|
|
|
|
|
|
|
|
When `info-tech-canon` publishes its versioned contract and schema, replace the
|
|
|
|
|
pending import locator with its canonical coordinates and digest, validate the
|
|
|
|
|
owner-source instances, and notify `kings-guard` to replace its draft-shaped
|
|
|
|
|
fixture. This task cannot be completed from NetKingdom without the upstream
|
|
|
|
|
artifact and must not be worked around by copying the draft.
|
|
|
|
|
|
|
|
|
|
2026-09-05 review: the upstream publication blocker is resolved by
|
|
|
|
|
InfoTechCanon 0.7.0 / contract 0.1.0. Bound the profile to the schema coordinates,
|
|
|
|
|
revision and SHA-256; fixed the checker to read `extensions.netkingdom`, removed
|
|
|
|
|
draft reconciliation aliases, and enforced unique source IDs. Fifteen focused
|
|
|
|
|
tests pass, including direct integration with the published owner schema and
|
|
|
|
|
CLI exit-policy coverage.
|
|
|
|
|
|
|
|
|
|
The current owner instances (`approval-engine/cadence.yaml` and
|
|
|
|
|
`qonto-assistant/specs/audit-emission-cadence.yaml`) were reviewed and checked;
|
|
|
|
|
both still fail generic contract validation because they use draft envelopes.
|
|
|
|
|
No source instance was rewritten by NetKingdom. T04 remains `wait` for each
|
|
|
|
|
owner's migration and subsequent profile validation, followed by the King's
|
|
|
|
|
Guard handoff. The profile remains proposed.
|
|
|
|
|
|
|
|
|
|
Validation: `python3 -m pytest tests tools -q` passed 106 tests, including 18
|
|
|
|
|
privacyIDEA and 15 cadence cases. Ruff lint/format, shell syntax, embedded Python
|
|
|
|
|
compilation and `git diff --check` passed.
|
|
|
|
|
|
|
|
|
|
State Hub reconciliation was attempted with both the installed CLI and current
|
|
|
|
|
checkout. Full reconciliation remains pending because API queries/writes timed
|
|
|
|
|
out or returned connection-refused errors. Generated index/intake metadata was
|
|
|
|
|
reviewed; the source files remain authoritative.
|
Correct v0.8 §11: the emission-guarantee check contradicted the profile it cites
gate-house circulated v0.8 with two questions for this repository as owner of
the NetKingdom emission-cadence security profile: whether §17's ownership
paragraph reads in our own voice, and whether §11's new conformance item
follows the profile or diverges from it.
§17 is confirmed as written. It assigns the generic EmissionCadenceDeclaration
contract to info-tech-canon and to net-kingdom the MUST/SHOULD split, the
rare-class rate-monitoring prohibition, and the heartbeat-plus-reconciliation
obligation — which is emission-cadence-security-profile_v0.1.md §3, conjunction
included. No change.
§11 diverged in both directions and is corrected. Requiring a detection surface
of "heartbeat or reconciliation" of every load-bearing source withholds from a
volume class the expected-rate form the profile permits, and accepts for a rare
class either control alone where the profile — and the checker in
tools/emission-cadence-profile — require both. A rare class covered by a
heartbeat alone has no reconciliation to catch divergence, and one covered by
reconciliation alone produces no claim that can go missing, which is the whole
reason §9.6 rejects rate monitoring there. The item also contradicted its own
following paragraph, which admits rate monitoring except where the class is
rare.
The check now defers the form to the governing profile rather than restating a
split that is §17's to assign, carries the volume/rare distinction explicitly,
and states that classification is the source's published inventory and never the
checker's to infer from a name, payload, or observed rate — otherwise omission
detection is circular.
Change log item 6 and §14 record the review. The standard stays proposed;
publication and the acceptance flip wait on the close of the circulation round.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Ek3zTdfMa35bPVDjVUyhxx
Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 868701@bnt-lap001
Assistant-Session: b2e101b6-f501-40dc-9ee5-438cac36e21a
2026-09-07 08:44:52 +02:00
|
|
|
|
|
|
|
|
## Review the layer model's use of the profile
|
|
|
|
|
|
|
|
|
|
```task
|
|
|
|
|
id: NK-WP-0035-T05
|
|
|
|
|
status: done
|
|
|
|
|
priority: high
|
2026-09-07 08:47:38 +02:00
|
|
|
state_hub_task_id: "8bcd9d33-0ffc-567e-96a3-b93dcd8059c7"
|
Correct v0.8 §11: the emission-guarantee check contradicted the profile it cites
gate-house circulated v0.8 with two questions for this repository as owner of
the NetKingdom emission-cadence security profile: whether §17's ownership
paragraph reads in our own voice, and whether §11's new conformance item
follows the profile or diverges from it.
§17 is confirmed as written. It assigns the generic EmissionCadenceDeclaration
contract to info-tech-canon and to net-kingdom the MUST/SHOULD split, the
rare-class rate-monitoring prohibition, and the heartbeat-plus-reconciliation
obligation — which is emission-cadence-security-profile_v0.1.md §3, conjunction
included. No change.
§11 diverged in both directions and is corrected. Requiring a detection surface
of "heartbeat or reconciliation" of every load-bearing source withholds from a
volume class the expected-rate form the profile permits, and accepts for a rare
class either control alone where the profile — and the checker in
tools/emission-cadence-profile — require both. A rare class covered by a
heartbeat alone has no reconciliation to catch divergence, and one covered by
reconciliation alone produces no claim that can go missing, which is the whole
reason §9.6 rejects rate monitoring there. The item also contradicted its own
following paragraph, which admits rate monitoring except where the class is
rare.
The check now defers the form to the governing profile rather than restating a
split that is §17's to assign, carries the volume/rare distinction explicitly,
and states that classification is the source's published inventory and never the
checker's to infer from a name, payload, or observed rate — otherwise omission
detection is circular.
Change log item 6 and §14 record the review. The standard stays proposed;
publication and the acceptance flip wait on the close of the circulation round.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Ek3zTdfMa35bPVDjVUyhxx
Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 868701@bnt-lap001
Assistant-Session: b2e101b6-f501-40dc-9ee5-438cac36e21a
2026-09-07 08:44:52 +02:00
|
|
|
```
|
|
|
|
|
|
|
|
|
|
`gate-house` circulated `security-layer-model_v0.8.md` into this repository with
|
|
|
|
|
two questions for the profile's owner: whether §17's ownership paragraph says
|
|
|
|
|
what NetKingdom would say in its own voice, and whether §11's new
|
|
|
|
|
emission-guarantee conformance item follows the profile or diverges from it.
|
|
|
|
|
|
|
|
|
|
2026-09-07 review. §17 is confirmed as written: it assigns the generic contract
|
|
|
|
|
to `info-tech-canon` and to this repository the MUST/SHOULD split, the
|
|
|
|
|
rare-class rate-monitoring prohibition, and the heartbeat-plus-reconciliation
|
|
|
|
|
obligation — which is the profile's §3, including the conjunction.
|
|
|
|
|
|
|
|
|
|
§11 diverged in both directions and was corrected in place. As first cut it
|
|
|
|
|
required a detection surface of *"heartbeat or reconciliation"* of every
|
|
|
|
|
load-bearing source: that withholds from a volume load-bearing class the
|
|
|
|
|
`expected-rate` form the profile permits, and accepts for a rare class either
|
|
|
|
|
control alone where the profile and
|
|
|
|
|
`tools/emission-cadence-profile/emission_cadence_profile.py` require both. It
|
|
|
|
|
also contradicted §11's own following paragraph, which admits rate monitoring
|
|
|
|
|
except where the class is rare. The item now defers the form to the governing
|
|
|
|
|
profile, carries the volume/rare split explicitly, and states that
|
|
|
|
|
classification is the source's to publish and never the checker's to infer.
|
|
|
|
|
Change log item 6 and §14 record the review; the standard remains `proposed` and
|
|
|
|
|
publication waits on the close of the circulation round.
|