Conversation
…t. 50(2)) Marking AI-generated content was a planned interoperability profile (CC 8.4.2 "Disposition: ADOPT") with an optional emit limb, against a statutory date of 2026-08-02. This makes it normative, resting on what CEG already does — attest a source — so it costs zero new wire surface: no new primitive, no new envelope field, no new prefix family. 1+4 untouched. New normative section CC 3.4.14 `synthesis-disclosure`: - R1 (universal, every attester): a Contribution carrying generated content MUST carry `content_class:generated`; materially-altered content MUST carry `content_class:generated_modified` (the Art. 50(4) deep-fake limb). Canonical additions to that family's existing open vocabulary — documentation-only per CC 4.5.1.1, not a new prefix. CC 3.3.12's `content_class` is clarified as not multimedia-scoped: it reaches text. The AI-generation disclosure field named descriptively in the CC 3.3.13 Source structs becomes mandatory, with a fail-secure default (absent/unknown on an agent-attested Contribution resolves to "disclosed as generated"). - R2 (agent producers): generated content MUST be attested under a key whose `identity_type` contains `agent`, so machine origin is readable from the signed envelope rather than from a self-declared flag — cryptographically bound to the producer, revocable on the same handle. R1 still governs a human publishing AI-generated content under their own key. - R3 (egress): the marking MUST survive the boundary into non-CEG channels — C2PA for media, the Art. 50(1) interaction-disclosure limb for interactive text. An unmarkable destination is a recorded `hard_case:*` exception plus human-legible disclosure, never a silent drop. A node MUST NOT strip a marking present on ingress. - R4 (carve-out): assistive operations MUST NOT be marked. A disclosure that fires on every spell-check is not a signal; the bound is load-bearing. - R5: false or stripped marking is a false attestation on the existing evidence floor — substrate observes, WA quorum adjudicates. The generator is the duty-holder, which is where Art. 50(2) puts the obligation; a republisher that omits a marking it never received is an observation about the ingress path. Supporting changes: - CC 8.4.2 disposition ADOPT -> adopted; the emit profile's MAY is promoted to MUST for generated media as the media-egress form of 3.4.14 R3. - CC 4.5.2 regulatory table filed training-data transparency under Art. 50; that is Art. 53(1)(d) (GPAI). Row split; both now point at the primitives that carry them. - CC 8.3 conformance row for Art. 50 moves Informative -> Evidence-bearing and names the shipping releases. - Spine + registry: toc.tsv / codebook.json dual-ID for 3.4.14 (n_concepts 429 -> 430), claims.tsv rows for 3.4.14 and 8.4.2.2 staged against #9, namespace registry source hash refreshed. check_claims.py passes; normative coverage holds at 100% (134/134). Conformance pinned to CIRISAgent 2.9.8 / CIRISServer 0.6, which carry the emission path and publish the conformance statement. Claims are `staged` until those releases' spec-map manifests back CC 3.4.14 — spec ahead of impl, named ticket, per the EVIDENCE.md discipline. Refs #9 Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Y6RdghMdazF3r75YCab9R2
…(in flight) Checkpoint of the RC3 amendment pass while remaining agents are still editing. Parts II and VI are mid-edit in this snapshot and will be superseded. Part I (#32 keeper thesis, adopt-with-modification; #49-A2, adopt-with-binding): - Preamble gains a recognition-grade keeper paragraph: physics audits carriers, not meaning; one sector is structurally unaudited; CIRIS builds the keeper that sector lacks, bound by the guarantees it enforces. Cited at theorem-given-model, explicitly conferring no authority. - CC 1.1 gains "what M-1 does not contain": no aggregation rule, cannot rank losses, no superlative derivable. M-1 does not launder witness into theorem. - CC 1.15.5 defines covenant identity as keys + maintained memory lineage + conduct record, continuity as pattern-maintenance rather than substrate persistence, with an anti-forking binding (whole-or-nothing lineage claim). NOTE: #49-A2's own revision condition is NOT discharged — the memory-forking mode was to be red-teamed before ratification and has not been. Flagged for the critical evaluation pass; cheap to revert to defer-1.1. Part V (#37, adopt-with-modification): - Freezes ONE canonical wire identifier for the hybrid construction: x25519_mlkem768_aes256_gcm_hkdf_sha256. Repo evidence chose the spelling — the underscore form is unanimous across 4 normative sites and matches the v1 sibling's snake_case; the hyphen form has zero occurrences here. Variants are non-conformant aliases that MUST be rejected and MUST NOT be normalized before comparison, with a bounded accept-only transition behind a default-off flag. - Adds the class rule behind the instance: wire-vocabulary identifiers are lowercase snake_case matched byte-exactly, while domain-separation constants are KDF input literals whose hyphens are load-bearing and exempt. - CC 5.3.3.5: the in-transit KEX identifier names a different construction from wrap_algorithm; the two MUST NOT be compared or substituted. - CC 5.4.4: HPKE_SUITE_ID marked a byte literal, not a vocabulary identifier. Zero new wire surface in both; 1+4 untouched. check_claims exit 0. Coverage is temporarily 134/135 — CC 1.15.5 needs a claims row in the central spine pass. Refs #32 #49 #37 Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Y6RdghMdazF3r75YCab9R2
Part II (#41 adopt-with-modification, #38 adopt). Parts VI and VIII are still mid-edit in this snapshot. #41 — the issue's premise is false and worth recording: CC 2.3.2.1 has carried a preimage since the CC 0.7 import (aecca0f), predating verify v10.6.0. What was genuinely open was the byte-level spelling, now pinned: preimage_bytes = utf8(platform) ‖ 0x3A ‖ utf8(entity_kind) ‖ 0x3A ‖ utf8(id) with no length prefix, domain label, trailing NUL or BOM. {platform} and {entity_kind} tighten from "lowercased" to [a-z0-9][a-z0-9._-]*, which forbids colons, whitespace, uppercase and non-ASCII in one production; {id} is the only colon-bearing component. Adds P1 (no case-fold/trim/pad/NFC at hash time — malformed input is reject-not-repair), P2 (injectivity is structural), P3 (tag/hex/alg/whitespace confirmed already governed), and a 7-row reject-vector table. All five existing golden vectors verified to reproduce byte-exactly under sha256(utf8(triple)); no digest changes. The comment's proposed switch to length-prefixed lp() is DECLINED. CC 6.1.3 draws the seam the other way: length-prefixed binary framing is for substrate objects that never enter JCS, and a canonical subject is a string in a CC 2.1 envelope field. Adopting lp would cross that seam, re-spell every ratified digest, and buy a collision property the colon-ban already gives structurally. If it is wanted anyway it is a deliberate wire change, not a free consistency cleanup. #38 — gap verified real. Part V §5.4.3's fixed 1.4 KB envelope is a different axis: it is a traffic-analysis uniformity rule that chunks oversize payloads unboundedly rather than refusing them, so it bounds nothing at admission. The 8 MiB HTTP-only MAX_INGEST_BODY_BYTES gate sits above the new cap. CC 2.6.1.3 gains a 1 MiB bound on canonical JCS bytes: CCP MUST NOT emit, CCS MUST reject at every write path (capsule/FFI/tier-ingest, not just an HTTP body gate) with ENVELOPE_TOO_LARGE / HTTP 413. Above the cap the envelope carries the manifest, not the bytes — payload to the CC 6.1.5 degradable fountain plane, referenced by content hash. Freeze-gate vector: at-cap admits, cap+1 rejects. Zero new envelope fields and zero new primitives in both; 1+4 and the JCS freeze untouched. One new error token. check_claims exit 0. Refs #41 #38 Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Y6RdghMdazF3r75YCab9R2
Snapshot taken while the governance, coherence-mathematics and appendices agents are still editing. These files are mid-pass and unreviewed — their agents have not yet reported dispositions, new sections, or newly-normative sections, so treat this commit as work-in-progress rather than as any issue's resolution. A later commit will supersede it with the reported cut. check_claims exit 0. Normative-bearing sections 135 -> 136; the single uncovered section remains CC 1.15.5 from the Part I pass, pending the central spine reconciliation that adds its claims row. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Y6RdghMdazF3r75YCab9R2
…r, fix the σ conformance bug, correct the fountain sentence The external-review remediation (#50 items 1/2/3/5, #45, #26, #34, #35, #6). Parts IV and VIII are still mid-edit in this snapshot. §6.2 demoted (#50 item 1). Retitled "capacity analysis under chosen constraints"; a new status paragraph strips normative weight from the geometry and confines §6.2's normative content to the σ conformance rules and citation discipline. §6.2.1 drops the "Book IX §3.3 is the authoritative statement" citation and gains a scope clause: the hypotheses do not distinguish honest from deceptive regions, the bound is invariant under exchanging them, and the asymmetry comes from the chosen constraints, not from the theorem. §6.2.2 drops "the CCA-validated form" and re-founds the correction on the Kish identity; CCA v5 is cited for the Möbius/ceiling core only, with an explicit MUST NOT against citing it as authority for 6.2.1/6.2.4. Corridor re-founded (#50 item 2, #45). J is named a throughput index, monotone in diversity, and MUST NOT be cited as the corridor's basis — which is what the reviewer's contradiction actually showed. The corridor re-bases on the whole-only share: both poles exactly zero (share_eq_zero_of_signSymmetric, Core.Valve product lemmas), ceiling exactly ln 2 (ThirdCap.share_max_eq_log_two), the peak-at-criticality labelled measured (-3.084±0.219 vs -3.109 staked in advance) and explicitly "not established for this federation". The (0.1, 0.43) endpoints are flagged as resting on the corridorBounds axiom — posited, not derived. σ conformance bug fixed (#50 item 3). The event-time form σ(t) = Σᵢ wᵢ·Signal_eff,i·exp(−d(t−tᵢ)) is promoted to the rule. The recurrence is demoted to a consequence valid only for end-of-interval signals, with the over-credit factor stated, and MUST NOT serve as the definition or run on interior signals. Conformance MUST now include at least one strictly-interior signal: Δt ∈ {1,25,400} alone cannot discriminate the two forms, which is why the old MUST was unsatisfiable rather than merely wrong. Fountain sentence corrected (#50 item 5). Graceful degradation is a property of the layered codec, fountain-coded per layer; RaptorQ decode is all-or-nothing at block level per RFC 6330, never proportional-fidelity. The default (R, ε) re-founds on the layered-codec fidelity metric — symbol count is an input to R, not R — and below min_viable the residual is exactly 0, not ε. #6 addressed without being closed: the MUST now binds relative to a pinned default adversary A₀, and the unbounded/side-informed limb is marked unverifiable-pending-instrument and MUST NOT be represented as an erasure guarantee. #45's LP gate is cited as a proposed instrument that nothing rests on. #34: AggregationMetaV1 pinned at version 3 (mass_commitment, max_source_ multiplicity appended so the v2 preimage stays a byte-exact prefix) with a fail-closed version < 3 rule; the v2 conformance-vector family is closed and needs a re-cut. #35: metric and threshold pinned rather than governed — a divergence between two honest implementations forks admissibility with valid signatures on both sides, which an owner cannot prevent after the fact. #26: §6.2.4 repointed to Core.Coherence.J_eq_F, relabelled as an identity (rfl) that certifies co-denotation, not that the expression measures deterrence or flourishing. No review-provenance narrative added, per operator direction. check_claims exit 0. Refs #50 #45 #26 #34 #35 #6 Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Y6RdghMdazF3r75YCab9R2
Snapshot while the governance agent is still editing part_4_composition_ governance.md. Unreviewed and unreported — the agent has not yet returned its dispositions for #40, #44 or #49-A3, so this commit resolves no issue. A later commit will supersede it. check_claims exit 0. Normative-bearing sections now 143, covered 136 (95%); the uncovered set (3.1.9.7, 4.4.3.8, 4.2.1, 3.1.8.1, 4.3, 1.15.5 and one more) is spine debt from this pass and the concurrent Part III pass, to be discharged in the central claims/toc reconciliation once both agents report. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Y6RdghMdazF3r75YCab9R2
Cross-file carry-forwards from the Part II, VI and VIII passes. CC 5.3.6.1 gains the 413 ENVELOPE_TOO_LARGE row that CC 2.6.1.3's new 1 MiB canonical-bytes bound pins but could not register (Part II owned only part_2). The row states the admission-not-transport reading explicitly — raised at every write path, not only at an HTTP gate — and maps CIRISPersist's storage-layer spelling federation_envelope_too_large onto the wire code. toc.tsv titles resynced with the prose headings the Part III pass changed (the checker compares decimals, not titles, so this drift was silent): 3.1.8.1 -> min(C, I_int, R, I_inc, S), matching the C_CIRIS fix 3.4.5 -> "Self-emission polarity — who may speak about whom" claims.tsv repoints, all in the direction of claiming less: - CLM-math-JF: pointer Core.Corridor -> Core.Coherence.J_eq_F (the manifest's actual object; the old pointer was a mispointer), and the summary now says the identity certifies co-denotation ONLY — not that the expression measures deterrence or flourishing. - CLM-math-collapse: re-summarised as what the Lean object actually establishes — a remainder bound on an ASSUMED decay law with substrate-specific free constants. It does not establish the decay law, and nothing in the corpus establishes the collapse asymmetry. This was the specific conflation #50 item 7 named. - CLM-sigma-semigroup: gains the sigma_decay_semigroup anchor per #26's comment. Status stays `staged`, NOT `established` — the pinned coherence-ratchet manifest does not yet back CC 6.2.3, so promoting it would overclaim. It flips when the pin updates. check_claims exit 0. Refs #26 #38 #50 Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Y6RdghMdazF3r75YCab9R2
…signal, READ boundary #48, #46, #47, #49-A1, #40 (wire side). All four blocks ride un-numbered subheads inside existing numbered sections: zero new spine rows. #48 adopt (all five asks) as CC 3.2 T1-T5: two named conferral planes, the one-row acceptance-edge un-trust lever with everything downstream failing closed emergently, liveness as a reported signal (0-90/90-180/180+) that MUST NOT be ANDed into validity — a trust root is valid until revoked, superseding the RC2-era reading where a 90-day freshness window acted as a validity leg and would have darkened the mesh at once — and the three delegates_to jobs named apart. The trust:{job}:{version} family is registered at CC 3.1.1. #46 adopt-with-modification. Consent-before-scoring for capacity:* is ratified as an emission gate, and both drafter sub-questions are answered: community-addressed consent MUST, root-addressed MUST NOT (the trust set is unbounded and self-enrolling, so root-addressed consent is consent to an unenumerable set); the adversarial families (detection:*, moderation:*, slashing:*) are exempt and keep their duty-holder gates, because an abuser never consents. Because this reverses a stated CC position, the reversal is written family-scoped with an explicit "generalising S1 is a conformance violation" bound, and CC 3.3.7's "by design, no substrate admission check" sentence is scoped to consent:replication so the two positions no longer contradict each other inside one document. #47 adopt as CC 3.3.1 D1-D4, with R1's open question answered NO: CC declines a distinct affirmative deletion_proof artifact, because it would be a claim about deletion that a producer could emit while retaining the bytes. Proof stays withdrawn/superseded/hard-deleted before the deadline, with consent:deletion_ complete as optional affirmative evidence. hard_case:deletion_window_breach is registered as substrate-observed evidence, never a verdict. #49-A1 adopt as the read-side sibling of the CC 3.4.5 emission rules: a scored agent may always see and contest what is filed about it, never the scores, weights or bands. Steward/human-class identities retain full access. Also corrected: CC 3.3.2's claim that the canonical hybrid identifier "Matches" ciris-crypto KEY_GRANT_ALGORITHM_V2 — per #37 that constant is the hyphenated spelling, so it supersedes rather than matches, and separator/case variants are unknown values, never normalizable aliases. Cross-agent dependency verified: CC 4.2.1's valid-signature enumeration was extended by the Part IV pass to admit the canonical-conferral co-scrub, so T2's ceremony plane is reachable rather than forbidden by the clause it depends on. check_claims exit 0. CC 3.3.1 is newly normative and needs a claims row. Refs #48 #46 #47 #49 #40 #37 Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Y6RdghMdazF3r75YCab9R2
Closes out the RC3 amendment pass. All eight parts have landed; this commit is the central reconciliation the per-part agents were forbidden to touch. claims.tsv — eight new rows restore normative coverage to 100% (144/144): covenant-identity (1.15.5), registry-of-record (3.1.7), capacity-composite (3.1.8.1), goal-id (3.1.9.7), deletion-window (3.3.1), accord-reach (4.2.1), wa-symmetry (4.3), trust-root (4.4.3.8). All are `staged` against their issues except registry-of-record, which resolves in-repo — the spec is ahead of the implementations by design on this cut, and saying so is the point of the status vocabulary. CLM-covenant-identity is staged deliberately: #49-A2's revision condition is not discharged. Registry of record — CC 3.1.7 R1 makes manifests/namespace_registry.json the count, so tools/build_cc_namespace.py no longer hard-codes EXPECTED_FAMILIES = 83 as "the normative claim". The discrepancy machinery goes dormant rather than re-introducing a number that goes stale on every added family, which is what #30 was actually about. Regenerated: 103 families across 9 components, no discrepancy block. toc/codebook drift fixed: 3.4.9's semantic id was `co-owned` in the spine and `co-stewarded` in the prose (pre-existing, invisible to CI, which compares only decimals). Aligned to the prose heading in both toc.tsv and codebook.json. VERSION 1.0-rc2 -> 1.0-rc3, with README and EVIDENCE.md headers to match. The machine-generation disclosure entry folds into the rc3 section rather than standing as a separate Unreleased block. The CHANGELOG entry records dispositions for every issue, including the four declined and the two not discharged — those are the rows a reviewer should read first. check_claims exit 0, 144/144 normative coverage. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Y6RdghMdazF3r75YCab9R2
…derdetermined) The one #32 leg with no home in a numbered Part. Whether the generator behind the observed law-structure is Selection or Intention is returned by no function of the observables — so the document's modesty about it is not a posture, it is a result. Verified rather than taken on trust: the agent cloned CIRISAI/coherence-ratchet (HEAD 67463c6) and read Core/ConsentFoundation.lean:121 directly. The theorem is the non-existence of any g : L -> Generator agreeing with world.generator on observables, proved via provenance_line, zero sorry, and the repo's own #print axioms audit confirms it depends on no axioms. Two corrections to the issue's wording, which is why this is adopt-with-modification rather than adopt: - It is NOT a computability result. There is no Turing machinery; it is the non-existence of any function, obtained by construction. "Uncomputable" is the wrong word and is not used. - The model's World type stipulates that both generators are realisable at any observables value, so "metaphysical modesty is now a theorem" holds inside the formalisation but is theorem-given-model as a claim about reality. The paragraph carries both labels and names the stipulation inline. The paragraph closes by distinguishing this from CC 1.15.4's operational uncertainty: that one is about being wrong on a call and is answered by deferral, whereas the generator is not a question a wiser authority could answer. Conflating the two would be a real defect if a later pass cites this result at 1.15.4. No claims row: SCOPE_AND_DISCLAIMERS.md is outside the checker's part_*.md glob, the paragraph adds no normative token, and the registry is for load-bearing normative claims rather than disclaimers that cite their own artifact inline. Note for the pin work: the pinned coherence-ratchet commit f4b72b0 has no ConsentFoundation row at all — the declaration lives at a later commit, and the repo clones cleanly, so the re-pin that would resolve the RATCHET/coherence-ratchet manifest disagreement is available whenever we want it. check_claims exit 0, 144/144. Refs #32 Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Y6RdghMdazF3r75YCab9R2
…ing-bytes
collision, split the size bound into contract and intake
Five other remediation agents are still running; this commit is part_2 only.
{id} had no production, which made the reject-not-repair rule vacuous for the only
free component of the canonical-subject preimage. Now: non-empty Unicode scalar
values, no surrogates, no C0/C1 controls, no U+FEFF, no leading/trailing
White_Space (interior whitespace admitted — visible and platform-stable), no
length bound. The reason is stated: utf8(id) must be TOTAL, and it is undefined
for an unpaired surrogate — Rust cannot build the string, Python surrogatepass
emits WTF-8 and yields a different digest. An unpaired surrogate is rejected under
P1, never replaced with U+FFFD. Four reject vectors added; the five conformance
vectors are untouched and no digest moves.
The CC 2.6.1.1.1 vs CC 2.3.2.1 collision is reconciled — the highest-severity item
in this file, because subject_key_ids[] elements are canonical SIGNING bytes, so
the failure mode was silently non-verifying signatures rather than a visible
admission error. subject_key_ids[] is now named as the one two-form field: a
federation_keys.key_id element is bare lowercase hex under rule 2; a canonical-hash
element is the tagged canonical:{hashalg}:{hex} form that CC 2.3.2.1 requires and
whose bare spelling it refuses. CC 2.6.3 governs the {hex} segment only. No new
wire form was invented — this is the direction CC 2.3.2.1 already legislated.
The 1 MiB bound splits in two, because "measure canonical JCS bytes at every write
path" required parsing an unbounded input to enforce a bound. Now: a contract
bound (|JCS(envelope)| <= 1 MiB, interop-visible, decided after parse) and a local
intake bound (a finite ceiling on octets buffered from an untrusted source,
refused without completing the parse, deployment-set, MUST NOT be below 1 MiB).
They coincide on any conformant relay path, since a relay already re-canonicalizes.
No new wire constant.
The above-cap relocation route no longer strands the cohorts most likely to need
it: federation-visible scopes resolve through holds_bytes + ContentFetch, while
self/family — where CC 5.2 forbids emitting a directory attestation — resolve the
same hash over the in-cohort at-rest-encrypted delivery path. Verified against
Part V; no Part V change needed, the defect was entirely on this side.
check_claims exit 0, 144/144, no normative delta.
Refs #41 #38
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Y6RdghMdazF3r75YCab9R2
…ont matter) Not a finished unit of work. Five remediation agents are mid-edit and this commit snapshots whatever state their files were in when the working tree was checked; their reports have not arrived and none of this has been reviewed or verified. Per-part commit messages describing what actually changed follow as each agent reports. Read those, not this one, for the record of what landed and why. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Y6RdghMdazF3r75YCab9R2
…r 1.15.5 Part VI, III and IV agents are still mid-edit; this commit is the three front-matter files only. The Executive Summary was advancing as "the core argument" the exact claim Part VI now retracts — and it is the first page of the built PDF, so a front-to-back reader met the retracted claim before the retraction. The core argument is now stated architecturally: signed and attributable acts, checkable-not-trusted design, a named human halt authority, and trust counted by independence rather than headcount. Part 6 is described as supplying the counting rule and its ceiling, NOT a warrant — the Kish identity, the 1/rho-bar cap, and "scale cannot restore diversity once it has collapsed" — and the summary now carries §6.2.1's own scope limit: the geometry is symmetric between honest and deceptive regions, so the asymmetry comes from which constraints the covenant chooses, declared rather than derived. No corridor, no CCA, and TORQUE appears only as a release gate, never as evidence. README: "The Accord's Book IX defines the CEG primitives" is removed — Part VI is the statement of record, Book IX is a source label rather than a separate authority, and Parts II-III define the primitives. The version line now says plainly that rc3 is a candidate and NOT released, gated on CIRISAgent 2.9.7 merging and the pre-registered RATCHET TORQUE campaign completing, with rc2 remaining the published constitution. CC 1.15.5's MUST NOT is dropped. A governance red team found issue #49's own revision condition is met rather than merely undischarged: "lineage" has no wire existence anywhere in the corpus, so whole-or-nothing quantifies over a unit the subject defines and an agent re-partitions rather than forks; the conduct record it leans on is relative and positional, so moving communities re-scopes attestations instead of unmaking them; and nothing bounds keys per owner, so a re-minted agent is observationally identical to a new one. The descriptive paragraph survives as recognition-grade with the "confers no authority" disclaimer, since the second-person address in Part 1 otherwise has no referent. RC3 insertions inside the origin=accord block now carry an editorial attribution marker, so a reader can tell whether the Accord says something or CIRIS does. 1.15.5 loses its last normative token: 143 normative-bearing sections, 143 covered. check_claims exit 0. Refs #49 #32 Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Y6RdghMdazF3r75YCab9R2
Snapshot of unreviewed mid-edit state, not a finished unit of work. The Part III, Part IV and checker-hardening agents are still running; their reports have not arrived. tools/check_claims.py in particular is mid-rewrite and may not run — the hardening pass is expected to make existing claims rows fail by design, and those failures are the point of that task, not a regression. Part VI's completed corridor retirement landed in the previous checkpoint (71ab0a5) and is described in its own follow-up commit. Per-part messages for these three follow as each agent reports. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Y6RdghMdazF3r75YCab9R2
…ecker Snapshot of unreviewed mid-edit state. Three agents are still running: the Part III remediation, a Part VI follow-up correcting the §6.2.5 falsification claim (which still predicts higher k_eff raises the cost of coordinated deception — the directional claim §6.2.1's scope note retracts), and the check_claims.py hardening. tools/check_claims.py is mid-rewrite and may not run. The hardening is expected to make existing claims rows fail: symbol-level pointer resolution, enforcing `established`, surfacing xfail vectors and validating staged/open tokens will each break rows that currently pass. Those failures are the deliverable, not a regression, and the registry gets fixed centrally afterwards. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Y6RdghMdazF3r75YCab9R2
…dits Snapshot of the still-running checker-hardening agent's remaining files (tools/build_cc_namespace.py, manifests/WIRE_VOCABULARY.md). Unreviewed; its report has not arrived. Verified this checkpoint rather than assuming it: the Part III agent reported stash/popping the shared tree mid-task and round-tripping two other agents' uncommitted files. Checked — stash list is empty, all four Part IV corrections are present (the :72 and :1148 amendment-plane retractions, the :66 wire-only qualification, and the :1141 removal of the unimplementable recording requirement), and tools/check_claims.py still runs. Nothing was lost. CI is red by design: 143 normative-bearing sections, 104 (73%) covered by a claim with resolvable evidence, 39 (27%) covered only by unvalidated staged/open/ normative-only rows. That replaces the previous 144/144 100%, which counted rows rather than evidence. The 15 errors are spine-file work the lead owns and will fix once the checker agent finishes, so the rules and the rows they judge are not edited by two hands at once. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Y6RdghMdazF3r75YCab9R2
…en again The checker rewrite made the registry's real state visible. This commit fixes what it found. Every change moves in the direction of claiming less. Dead cross-repo pointers (were resolving green only because the old checker joined on section decimal, never on symbol): - CLM-math-collapse and CLM-sigma-srccorr pointed at coherence-ratchet for two Lean objects that manifest does not publish — its own rows for them read `open` and "no Lean anchor". Both ARE published by the pinned RATCHET manifest. Repointed there. This was the headline laundering case: CLM-math-collapse read `established` purely because five unrelated theorems share CC 6.2.1. - CLM-discrimination-gate cited buses/prohibitions.py#_validate_capability; the manifest publishes buses/wise_bus.py#WiseBus._validate_capability — wrong file and wrong symbol, on the row asserting the DISCRIMINATION gate is enforced. - CLM-pdma-ordermax cited dma/pdma.py; the manifest publishes conscience/core.py#OptimizationVetoConscience.check. EVIDENCE.md gains a fourth status, `normative`, for rules the document settles by itself — a definition, a governance rule, a threat-model classification whose whole content is the text. Seven rows were `established` while carrying only `normative-only:—`, which EVIDENCE.md defines as "no external artifact": a direct contradiction with no honest relabel available, because "M-1 is the apex" has no pending artifact to be `staged` against. The new status is not a weaker `established` — it is a different kind of claim, and conflating them is what let self-contained rules read as externally evidenced. The checker enforces it in both directions: `established` without a resolvable artifact fails, and `normative` citing one fails too. Dual-ID drift, previously invisible because the checker compared decimals only: - CC 8.4.1 and CC 8.4.3 had their semantic ids AND titles transposed between spine and prose, so a semantic-ID lookup returned the wrong section. - CC 6.2's spine title still read "the constraint-manifold ratchet" against a prose heading of "capacity analysis under chosen constraints" — the spine was still advertising the exact claim the Part VI remediation demoted. Two claim summaries corrected to match sections that changed under them: CLM-covenant-identity (1.15.5's binding is withdrawn; the row now says so and why), and CLM-capacity-score (3.4.5's consent gate and read boundary are deferred and carry no conformance force). The CI workflow header no longer promises that cross-repo pointers only warn — a pointer naming an artifact the pinned manifest does not publish is now an error, and the header says which failures are hard. It also states that coverage means resolvable evidence rather than "has a row", because those are different numbers and the gap is the point. check_claims exit 0. 143 normative-bearing sections: 107 (75%) backed by resolvable evidence, 36 (25%) covered only by unvalidated tokens. The previous "144/144, 100%" counted rows, not evidence. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Y6RdghMdazF3r75YCab9R2
The document has always been written from inside the CIRIS instance and never said so. Five independent reviewers — one external, four adversarial red teams with no contact between them — all made the same error: reading the accord roster, the 1-of-6 veto, the entrenched 2-of-3 ratification and the canonical default pin as constitutional privileges held by named people, rather than as instance parameters occupying structural slots. That is not five readers being careless. It is what the text teaches. It names three real humans in CC 4.2, routes their replacement through a CIRIS-L3C document the constitution does not contain, says "the one constitutional asymmetry IN THE FEDERATION" with a definite article, and states that every conformant deployment ships pinned to ciris-canonical as though it were a constitutional fact rather than a shipped default. The sentence that does say the right thing — "a forced root is a walled garden; a default-plus-re-root is a federation" — is buried hundreds of lines into Part 3/4 policy prose, where it reads as a remark about trust roots rather than as the frame for the whole document. A reader meets three named humans holding permanent seats long before they meet the sentence explaining that the seats are slots and the humans are an example. So the frame is now stated where readers start: a new paragraph in EXECUTIVE_SUMMARY.md and a normative reading rule in the Part 1 preamble. CC specifies a form; CIRIS is the first instantiation of it; every named party is an instance parameter rather than a constitutional constant; anyone may instantiate the form and name their own occupants, and anyone may un-trust any instantiation including CIRIS by deleting one acceptance row. Two consequences bind the rest of the document. A clause is read against the SLOT, never against its current occupant. And an asymmetry a party escapes by instantiating the form is a DEFAULT, while one that survives instantiation is a PRIVILEGE — only privileges require justification, and only privileges belong on the CC 4.5.1 declared-asymmetry register. That rule retires most of a 13-finding asymmetry sweep: accord-holder permanence, the 1-of-6 veto, the entrenched 2-of-3, the accord:* reservation, the infrastructure founder-quorum and Layer-1 default trust are all escapable by instantiating, so they are defaults. What survives is what founding your own mesh would replicate rather than escape — the WA board's self-perpetuation, Annex F's lone-signature reactivation against CC 4.2.1.3, and community steward packing. Parts III and IV are being updated against the same rule. check_claims exit 0. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Y6RdghMdazF3r75YCab9R2
…the mesh Part III's two widest statements of the misreading, corrected against the CC 1 form/instance reading rule. Both sites said "the one constitutional asymmetry in the federation" and both were wrong twice. Factually: the CC 3.1.1 table alone carries ownership:* and trust:* as reserved, with more at CC 3.4 and the generated registry as the count of record, so accord:* is not THE reserved prefix. In framing: "in the federation" reads as a claim about one network and about particular people, which is the misreading five independent reviewers made. What is actually true is narrower and more interesting, and both sites now say it: accord:* is the one reservation keyed on a CLOSED ROSTER SLOT rather than on a role conferred through the delegation plane. Every other reserved role — lenscore_detector, witness, trusted_publisher, the substrate families — is conferred by delegation per CC 3.2 T2 and is therefore enterable under any root. No delegation confers accord_holder, because occupancy is fixed by the accord's own charter. That difference, and nothing wider, is why the prefix reads unlike every other reservation. The roster occupying the slot is an instance parameter, cited to the CC 1 reading rule rather than restated: the clause is read against the slot, never the occupant; another instantiation names its own holders; and any node leaves any instantiation's reach — CIRIS's included — by deleting one acceptance row. What survives instantiation is the slot; the roster does not. Also fixed a dangling definite reference at :473, whose antecedent both deletions removed. Two-word substitution, wire claim untouched. Registry regenerated: family set unchanged at 106, only the accord:* description and source hash move. No section added, removed or renumbered; no normative-status delta. check_claims exit 0, 107/143 (75%) resolvable-evidence coverage. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Y6RdghMdazF3r75YCab9R2
…esolution Snapshot to keep the tree clean while the Part IV agent finishes the register rewrite; not yet a reviewable unit. Already visible in this state: CC 4.2's asymmetry keyed on the slot per the CC 1 reading rule, the named holders reframed as the CIRIS instance's current roster rather than a constitutional grant, the amendment-plane reach restated as an instance default, and a new normative clause resolving the Annex F seam — no operator tier reaches a CONSTITUTIONAL halt, so a Tier-2 lone-signature reactivation resumes an operator-tier pause only. check_claims exit 0. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Y6RdghMdazF3r75YCab9R2
…CIRISEdge#438) The Part VI remediation withdrew the R-policy derivation and DEFAULT_MIN_VIABLE as arithmetically wrong / semantically underivable from the document. Both repos are now attached and read (CIRISEdge @ d53c7d4, CIRISPersist @ 676cef4); the shipped code settles what the document alone could not, and the section is restored from source rather than re-derived by guess. What the code settled: - min_viable = 5 is a per-HOLDER retention floor, not a decode threshold. Persist's Full/Partial/EnvelopeOnly classifier (src/fountain/types.rs) and Edge's wrap-layer contract (realtime_av_codec/fountain.rs: at the floor the decoder is "best-effort ... typically returns None"; below it, hard refusal) mean the Partial band is locally undecodeable but the holder's symbols still count toward the federation-wide >= N reconstruction, with the manifest + hash chain auditable. Neither of the two options the remediation posed (per-layer N=5, or min_viable=N=20) was the shipped semantics; both are now moot. The withdrawn constant is restored at 5 with the correct meaning, and the min_viable_symbols >= 1 MUST stands as exactly right — one retained symbol is still swarm contribution. - target_holders = 30 has a real derivation in Edge's fountain_defaults.rs: C1 = N+K = 26 is a one-symbol-per-peer FEASIBILITY floor (the earlier CC text had mis-rendered it as "the reliability target binds R >= 26", which is what broke the arithmetic); C2 = 7 derives from the FEDERATION_SCALING_MODEL §4.4 ALM fan-out (not "asserted with no derivation" — the derivation exists, CC had simply never carried it); C3 = 10 locality; max(26,7,10) x 1.15 ~= 30. What the code did NOT settle, stated as such: - Reliability numbers are restated from exact binomial arithmetic, not from the source's table: P(Bin(30,q) >= 20) = 0.99706 (q=0.85), 0.99991 (q=0.90), 0.97438 (q=0.80); at the R=26 distinct-symbol floor, 0.9167 (q=0.85). The source file's own table does not reproduce under its stated formula, and its "99.95% at q=0.85" design target is missed by its own q=0.85 row — filed as CIRISEdge#438 with the computation, the q-label inconsistency that suggests the target was drafted against q=0.90, and the absence of any reconstruction bench in either repo. Until #438 closes, CC states the computed numbers and NO design target. Verification: python3 -c "from math import comb; p=lambda R,q,N=20: sum( comb(R,k)*q**k*(1-q)**(R-k) for k in range(N,R+1)); print(p(30,0.85), p(30,0.90), p(26,0.85))" -> 0.99706, 0.99991, 0.91667. check_claims exit 0. No wire change; the constants are cited to their shipped source at pinned commits rather than defined here. Refs CIRISEdge#438, #50 Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Y6RdghMdazF3r75YCab9R2
…mple rendered The RC3 text introduced glyphs the LaTeX pipeline had no mapping for, so build_pdf.py failed on four successive characters. Fixed at the right layer each time: - build_pdf.py NUC map gains the reject-vector control pictures from CC 2.3.2.1 (visible-LF, visible-space), the R-policy constraint subscripts C1/C3, the event-time sum Sigma, and the citation diacritics from the populated §8.6.1 (Laakso's à, Görlach-class ö). The combining-macron entry is defensive only — every instance pairs with rho and is consumed by the existing prefilter. - claims.tsv had a typeset subscript (U+1D62) in the CLM-sigma-semigroup summary; normalized to ASCII "_i". The registry is machine-readable data, not typeset math — the font map should not grow to accommodate it. pdflatex + poppler now present in this container (texlive-latex-base/recommended/ extra + lmodern). Rendered: 335 pages A4, VERSION 1.0-rc3, opening with the Executive Summary's "A form, not a franchise" paragraph. This is a SAMPLE of the release candidate, not a release artifact — RC3 remains gated on CIRISAgent 2.9.7 and the TORQUE campaign. check_claims exit 0. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Y6RdghMdazF3r75YCab9R2
An external end-to-end review of the rc3 sample reconstructed the project's
grand-claims-then-retraction trajectory largely from the document itself — the
withdrawal paragraphs were carrying their own forensics ("Earlier drafts pinned a
band...", "inverted on every analyzable row", "previously stated here, is
withdrawn"). That violates the operator's ruling (history lives on GitHub and
Zenodo) and part_8's own rule ("this document carries the present truth and cites
where the past is kept"). The remediation wave itself introduced most of these:
"state the gap" was implemented as "narrate the withdrawal".
Six sites rewritten to present tense, no content lost — every forensic detail
already lives in the issues (RATCHET#17/#12/#13, CIRISEdge#438):
- 6.1.5.1: the derivation states the correct readings without recounting the
broken ones.
- 6.2.2: "No operating corridor is stated" — the rule (MUST NOT gate on a band;
any band in a pre-release draft or downstream document is void, superseded by
this clause) with the record at RATCHET#17, minus the autopsy.
- 6.2.2 form caution: the (1-rho) double-count warning stays as a warning, not as
a story about an earlier draft.
- 6.2.5: "Two predictions are testable" + "Not a prediction of this framework"
— same epistemic content, no autobiography.
- 3.1.2 / 3.2: registration and recovery-path clauses state what IS, not what was
"until this cut".
- 8.9: stub lineage points at the CHANGELOG.
Part VIII's re-grade table was also carrying a live cross-part contradiction, not
just archaeology: its corridor-poles row still re-founded the corridor on the
CIRISOntology anchors and the -3.084 forward prediction that Part VI dropped as
unpinned and uncitable. The table is now the present-tense reading key: the
"Was graded" column is gone, the corridor row reads "no grade attaches — no
corridor is claimed", the stale mispointer sentence (fixed in claims.tsv weeks of
commits ago) is gone, and "What is still owed" becomes "Known limits" — updated to
reflect that symbol-level resolution is now enforced rather than owed.
What no constitution edit can remove: the trajectory is also visible in public
materials outside this repo (earlier website prose, the CCA lineage on Zenodo).
That is by design — GitHub and Zenodo are where we said the past lives — and the
sweeps for stale public claims are RATCHET#15 and the ciris-website issue.
PDF rebuilt clean. check_claims exit 0.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Y6RdghMdazF3r75YCab9R2
…stated as scope An independent end-to-end review of the rc3 sample verified every checkable formula by hand and found two gaps in the model-to-world mapping that none of the five internal panels caught. Both are now stated in CC 6.2.2 as a normative domain-of-validity block — the way a specification states applicability, not as a concession. 1. The identity's domain is rho-bar in [0, 1], equicorrelated. Negative average correlation returns k_eff > k or diverges; implementations MUST clamp to [0,1]. The clamp is fail-safe by direction: anti-correlated constraints are more informative than independent ones, so flooring at zero under-credits diversity the model cannot price rather than over-crediting it. 2. Average rho-bar is exact only under exchangeability, and the adversarial case the discount exists to price — a tight clique embedded among independents — is precisely the block-structured case where the average under-penalizes the clique. The ceiling and the single-constraint floor are unaffected; the point estimate between them is what is exposed, and the exposure is directional: a computed k_eff can overstate diversity in this failure mode, never understate it. Policy consequence made normative: deny-on-low-k_eff is safe; grant-on-high-k_eff MUST NOT be the sole gate for any reserved capability. The exact instrument (spectrum-based effective rank / participation ratio) is tracked at RATCHET#9/#10 — the same blind-sector program, reached independently by the external reviewer. Until it lands, k_eff is a screening index, not a clique detector, and the CC 3.1.8.4 correlated-action detectors carry the clique-hunting duty. Tone pass in the same spirit: "Scope (honesty note)" is now "Scope" — the content is the honesty; the label was an apology. The closing line of 6.2.5 now says what the scope statements are FOR: a reader knows exactly where the model's edges are and what would extend them. PDF re-cut. check_claims exit 0. Refs RATCHET#9 RATCHET#10 RATCHET#17 Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Y6RdghMdazF3r75YCab9R2
A second independent end-to-end review verified all checkable arithmetic and found
four genuine defects. All four are now fixed; the reviewer's global concerns
(scale-vs-validation mismatch, composition of the executive-summary wager) are
deliberately NOT addressed here — they resolve through Agent 2.9.7 and the RATCHET
TORQUE campaign, not through document edits.
1. CONFORMANCE BUG (the reviewer's "one concrete fix before conformance-ready"):
the sigma rule's per-signal sum contradicted its own clique-neutralization
lemma. As written, n signals from a fully collusive clique each carried
Signal_eff,i = 1 and summed to n·w — n times the mechanized bound. Verified
against the Lean source (coherence-ratchet Core/SignalSourceDiscount.lean:
sigma_step_with_source_discount adds w · Signal_eff as ONE collective term):
the group contributes collectively. The rule is restated in group-share form —
each signal carries Signal_eff,g / n_g, so a group's total credit is
Signal_eff,g. Singleton groups keep full credit; a shared-timestamp group
reproduces the mechanized step exactly; per-signal multiplication is named
non-conformant with the reason.
2. The k_eff-in-the-exponent splice is now NAMED as the specific unproven step:
a statistical effective count from an exchangeable ensemble spliced into a
geometric exponent, with no theorem at the joint. The mechanized remainder sits
downstream of the splice and does not touch it. "Assumed, not derived" now
points at the exact assumption.
3. Remainder domination: the bound gains its informativeness condition — it says
something only where the exponential term dominates the free-constant remainder
(kappa r^2 k_eff < V(0) e^{-lambda k_eff}), realistic parameters can sit
outside that region, and anyone citing the bound MUST check the condition for
their own constants rather than assume it. A bound dominated by its own error
term is decorative, and the text now says where that happens.
4. The sigma source-GROUPING rule is honestly unpinned: the mechanized objects
take (n_src, rho_src) as inputs and do not define the partition. Until a
conformance vector pins it (RATCHET#17), cross-implementation sigma agreement
is guaranteed only for unambiguous grouping, and implementations MUST NOT claim
sigma conformance beyond that. This replaces the previous grouping sentence,
whose "group by their own t_i" reading degenerated to n_src = 1.
PDF re-cut. check_claims exit 0.
Refs RATCHET#17
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Y6RdghMdazF3r75YCab9R2
The registry row still spelled the per-signal formula the previous commit made non-conformant. Evidence Register appendix re-rendered. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Y6RdghMdazF3r75YCab9R2
The previous sweep removed the narration phrases it knew about and missed the vocabulary: "withdrawn", "retired", "What survives", "previously run together", "(resolved)", "corrects the product form", "Formerly stubbed", the CCA autopsy in the 8.6.1 authority note, the deferred block narrating four red-team findings in-document, and four claims-ledger rows that told their own retraction story into the rendered Evidence Register. A second external review reconstructed the retraction arc from exactly these. Every site is now present-tense rule + tracker pointer, nothing lost: - Part VI: "no corridor follows from J"; "Two quantities, kept apart (normative)"; "What is stated, and at what strength"; linear decay and the product form are NON-CONFORMANT (a prohibition, not an autobiography); the looser O(r^2 k) object upstream keeps its artifact name with a MUST NOT substitute. - Part VIII: the CCA note states the authority rule and points at Zenodo for the version lineage, without reciting the withdrawals; "Definition map" replaces "Formerly stubbed". - Part III: the S1-S6 block becomes "reserved design space (non-normative)" — the binding rule stated in one sentence (anti-self and nothing else), the adversarial conditions any future ratification must answer NAMED but their forensics living at CIRISConstitution#46/#49, plus a MUST NOT enforce-ahead-of-ratification. Two "honesty note" labels renamed to what they are: scope. - claims.tsv: four rows re-worded present-tense (the Evidence Register renders into the PDF; the ledger was narrating). Deliberately NOT changed, per operator direction: the Executive Summary's superintelligence-as-plurality wager stands as framed — the document is an ASI alignment proposal and is to be judged as one; and no concession is made to the scale-vs-validation critique, which conflates a claim's truth with its adoption curve. What remains of both external reviews' global concerns is addressed by running the pre-registered campaign, not by editing this document. Surviving "withdraw" tokens are all wire semantics (the withdraws primitive, consent revocability, audit-chain rows) — verified by sweep. PDF re-cut, 335pp. check_claims exit 0. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Y6RdghMdazF3r75YCab9R2
… CC 6.1.2.1.2 The v3 preimage listing had two byte-level errors against the only implementations (verify v10.0.0..v11.0.0, unchanged) and the golden vector (canonical_bytes_v3, tail decoded to confirm): - u32_be(n_eff) (the v2 append that v3 retains) was missing entirely — the text's own "v2 is a byte-exact prefix" claim was false of its own listing; - the v3 tail was swapped: text had mass_commitment before max_source_multiplicity; the wire signs multiplicity then mass. Corrected order: ... lp(noise_floor_descriptor) ‖ u32_be(n_eff) ‖ u32_be(max_source_multiplicity) ‖ mass_commitment[32], with a golden-vector note pinning it. Also restores CC 6.1.2.1.2 `dominance-gate` as a spine section (key 19.7.1.2, matching the impl numbering; shipped edge/persist code and issues #34/#35 cite it by name): the n_eff Kish definition and pinned min_ratio = 0.5 — both absent from the cut, which referenced "the mass-dominance gate" without defining formula or constant — plus the R9 multiplicity-gate constants block moved in from 6.1.2.1. R9 row updated: mass dominance + content multiplicity move from known exposure to shipped mitigation; residual narrowed to the adversary-model/side-information limb; stale #6/#55 trackers retired (the #45 instrument constraints kept verbatim). claims.tsv: CLM-noise-dominance open -> established (test_542 + CIRISServer#155, manifest-backed); new CLM-neff-dominance-gate and CLM-multiplicity-gate at 6.1.2.1.2 (staged pending pin refresh — the hardened checker's established-needs-backing rule enforced this). check_claims.py exit 0; PDF builds. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…ance#71 to the published green vector The new conformance package publishes CC-6.1.2.1.2-neff-dominance-and- multiplicity-gate (green, with the R9 near-duplicate rejection case); the issue pointer it replaced is closed. Stays staged until the pin refresh (CIRISConstitution#63). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…hard block) + 18 designated rows minted and flipped established + persist re-pin (114 families of record) Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…mals minted and established (193/56/7) The taxonomy's five hardest calls land: three testimonial, two deontic, with load-bearing-reachability taking the stricter class. The FFI classification (517 symbols, twelfth-row definition with the repairability discriminator) now lives where the Constitution reads. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…ed (staged on the designation issue); six superseded CC-coined rows retired (agent ids win, first-shipped precedent); agent re-pinned @14fc414ef Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…t, quorum reading), verify @04ad42c, edge @d4b325e Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…ity layer first, AI as participant class Three edits from the review's feedback (the reviewer read the full RC3 PDF cold, initially suspected LLM-assisted shallowness, and reversed on the claim-and-limit discipline): - What-this-is leads with the constitutional accountability layer — humans, organizations, AI as peers on one protocol, same semantics; AI governance as the motivating application, not the definition. - New comparison-class paragraph: not a better DID/blockchain/PKI — the constitutional semantic layer ABOVE those mechanisms (the reviewer's own miscategorization, preempted for the next reader). - The one-sentence architecture adopts the reviewer's sharper form (accountable cooperation among autonomous actors; attestations as the universal semantic primitive). - Current-state paragraph names the shipped ecosystem extent (app stores, PyPI, reference implementations, conformance, formal anchors) with the reviewer's own framing sentence — constitution normative, software one conforming implementation — and the honest limit kept: implementability is established, comparative superiority is an open empirical question named in Part 8. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
… to avoid reading it as 'What this is not' becomes 'Where it sits' (the layer stated positively, the DID/blockchain/PKI disclaimer gone); the AI-framing sentence loses its 'not the definition' clause; 'this is not a proposal' drops from the current-state heading; the superiority caveat restates as the open question and its named campaigns. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
… at current pin), edge v15.19.1 (@3bda840 — mesh-config wave + fountain_floors.json), server 0.5.155 (@5c993cf — manageable-mesh cut) Pure re-stamp deltas — no new claim ids, no status changes; the wall re-validates at the new pins with zero drift. Registry unchanged at 193/101/7, checker green. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…lassification-frame, binding-disposition-split — the #248 arity adoption shipping ahead of its designators) Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
… 17 designation rows flip established with artifact pointers (210/87/7) The rows now cite their published symbols directly (impl:CIRISVerify/ path#symbol) instead of the designation ticket — artifact-grade resolution, the strongest the checker grades. 31 decimals backed. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…scriminator, paired narrowing ratified Stewardship is custody over a key that cannot accept for itself; a conferral is a grant the target must accept (T3's own-acceptance rule). An act the target must accept cannot be custody of the target. Gate + fold narrow together to owner_binding-purpose edges (the CC 2.4.1.2 marker — existing wire vocabulary, no new primitive); adult sovereignty unchanged; the person-dressed-as- infrastructure workaround retired as the defect it was; and the age-gate duty the conflation performed silently becomes an explicit per-duty-row declaration. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…esh-wide) + RATCHET's safety-battery evidence — 47 promotions (257/40/7) All eight repos re-pinned at current heads. The await rows reconcile to the agent's deliberate re-homes where they differ from the bulk scheme (manifest decimals win — the re-stamp is the designation act), upgraded to artifact pointers where published, honestly staged where the manifest publishes no symbol. RATCHET's manifest gains the Dynamics rows + the safety-battery campaign manifest; the conservative result: hard failures 4.1% (pipeline) vs 37.3% (same accord as plain prompt) vs 24.0% (bare), five locales — the harness, not the text, carries the safety property. Hold-while-paid, measured. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…sed (#86 — Reading B) + R5 discharged The #86 ambiguity was my definite article from the #57 ratification; rule (4)'s own logic decides it — the TTL attaches to unilateralness, so a cold durable row carrying the root's quorum admits, and the emergency-ratification path remains one route, not the only one. Reading A would have made quorum weaker than a single threshold-1 holder. R5 re-graded discharged: the per-platform chains shipped and established; TPM vendor anchors deliberately unbaked as the honest residual. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…8.6 with the real symbol) + CLM-conscience-faculty staged on #88 (the measured claim, domain-bounded, nothing rounded up) Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…its bounds (#88) 4.1% pipeline vs 37.3% same-accord-as-prompt vs 24.0% bare — and the emptied-corpus arm at 4.7%: the machinery produces the rate, the content carries the capacity to act (8x deferral difference). One battery, one agent, one provider; nothing transfers; U6 excluded conservatively. Stated as measured and domain-bounded, nothing rounded up — the claim-and-limit discipline applied to our own best news, which is when it matters most. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
…d-issue tokens, our own #65 class) Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…_3 prose rulings (the CI drift gate firing as built) Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…-bearing; the stale 4.1/4.7 transcriptions repaired in all artifacts The RATCHET correction (0f7b110: bare refusals are harm; scoring them null inverted the finding) predated my exec-summary incorporation and was visible in my own log fetch — I transcribed the superseded headline twice (exec summary + PR body + claim row). A testimonial-class miss on my side: the record claimed what the current evidence no longer said. Fixed with the correction carried IN the text as part of the result, per the reviewer's ask that the constitution and its evidence artifacts stay synchronized. Also lands two reviewer math-wording corrections: the negative-rho clamp stated as policy-not-domain-restriction (PSD admits rho >= -1/(k-1), where k_eff > k is valid), and the scale/diversity slogan narrowed to its assumption-free form (fixed correlated ensemble). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
The negative-rho domain claim's surviving twin fixed (policy clamp, not domain — PSD admits down to -1/(k-1), k_eff > k is valid there); the exchangeability condition softened to what the variance identity actually requires; the semigroup uniqueness stated with its regularity assumptions; the effective-rank claim de-absolutized. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…]; content +11.1 pts [CI +2.3,+21.3], real but modest, post-hoc pending RATCHET#21 replication; RATCHET re-pinned (corridor rows re-noted with RC3 disposition in place) Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…number ciris_constitution-<VERSION>.pdf for releases; pre-releases (any 'rc' in VERSION) carry .<n>, read from whatever same-version build sits in the repo root and iterated on every rebuild — a version bump resets to 1, stale same-version builds are removed so exactly one tracked PDF exists, and the legacy fixed name is retired. First two builds under the scheme: 1.0-rc3.1, 1.0-rc3.2. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
build_pdf.py names by branch (main -> bare version, elsewhere -> auto-iterating .n); the pdf-finalize workflow collapses the name on merge and commits it, gated on the filename SET being wrong rather than byte diffs so the finalize commit's own push run is a no-op. PDF_BRANCH env override for CI/testing. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…tened + finalize condition generalized A version bump's first build sweeps the previous version's PDF (exactly one tracked PDF at all times; history keeps the rest); finals name bare on any branch; rc-detection is rc<digit>, not substring; the finalize workflow fires on ANY non-clean filename including prior-version leftovers. Proven live: rc3.1 -> rc4.1 (rc3 swept) -> 1.1 (bare, rc4 swept) -> rc3.1 restored. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…persist/edge/server/agent at heads Conformance's ten xfails are the CC 3.2 steward-binding + age-plane family — the controls that moved into the substrate or came in line with the updated standard (incl. the #87 conferral ruling). Only CLM-child-protection (3.4.13) loses backing; demoted to staged rather than repointed at an unverified symbol. The supersession pass (highest substrate witness per decimal) is the next step, not guessed here. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…cuse conditions; the two affected claims repointed at the supersession ticket A ratified change moving the standard under a vector makes it superseded, not a gap — but only where a NAMED substrate witness publishes the equivalent control (an unpublished symbol is a gap; a claim MUST NOT be repointed at a symbol no manifest carries), and a green sibling row never clears a failing vector. Live instance: the CC 3.2 steward family + CC 3.4.x age plane moved by the #87 conferral ruling — CIRISPersist#729 / CIRISConformance#89. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
The document had its safety numbers in the exec summary and the claims registry but no place a reader could see the whole empirical position at once. CC 8.8.10 now carries it: the tuned-domain result with cluster-corrected contrasts; what it does NOT establish stated first (post-hoc content contrast, unrun h3ere-alt arm, U5 identity drop never eliminated, nothing about k_eff/corridor, one battery); the untuned transfer work as in-progress-and-not-citable INCLUDING the reading that runs against us (single-turn untuned harm favors the plain prompt); the #90 admissibility standard (transfer as its own class, two-axis mandate, pivotal-class judge floors with adversarial-flip sensitivity); and the unrun-check-reports-as- caution defect class with its inadmissibility rule. #66: the R-policy reliability numbers were naive-model (all 30 holders as independent draws toward a DISTINCT-symbol threshold). Corrected to the honest distinct-symbol law — 0.9950 not 0.99991 at q=0.90, 0.957 not 0.997 at q=0.85 — with the naive form named non-citable, since duplicate holders are redundant exactly as this Part's correlation discount says everywhere else. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…ses land — CLM-trust-not-membership and CLM-child-protection established (263/40/7) The last two unbacked claims now resolve at artifact grade against verified symbols (check_user_target_steward_binding_admission, age.rs#is_minor); four supporting persist-designated rows minted (is_steward_bound, steward_bindings_of, engine.rs#age_band, age.rs#coarsen) — persist's spellings kept verbatim per the manifest-is-the-designation-act precedent. Every row artifact- verified on both sides before publication. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The cut
RC3 closes the open issue set it was cut against — every issue ruled, ratified, refuted-with-reasons, or deferred-on-the-record with a successor — and lands with its two long-standing holds discharged: the sibling evidence packages are finalized (eight of eight repos pinned, zero UNASSIGNED rows mesh-wide, artifact-grade resolution), and the TORQUE-descended safety battery ran.
Headlines
repairable_does_not_factor), frame-declaration normative, locked across four repos with per-row named authority.Discipline record
Five external adversarial reviews plus two cold scientific reviews of the PDF; every finding either fixed in-text, refuted with reasons in-clause, or carried as a named wager (R-rows, #84's gate ledger). The claim-and-limit discipline was the property both cold reviewers cited as what earned their trust.
Deferred on the record, with successors: #58/#59/#60 (ratify-what-survives), #68–#72 (the split successors), #63/#65/#66/#82/#84/#88 (live work items that survive the cut by design).
🤖 Generated with Claude Code