Skip to content

Mint protocol catalog v1.6.4 (PEP extension-only: PPP + CCP)#516

Merged
TSavo merged 7 commits into
mainfrom
ts-mint-v1.6.4
May 9, 2026
Merged

Mint protocol catalog v1.6.4 (PEP extension-only: PPP + CCP)#516
TSavo merged 7 commits into
mainfrom
ts-mint-v1.6.4

Conversation

@TSavo
Copy link
Copy Markdown
Owner

@TSavo TSavo commented May 9, 2026

Summary

Mints protocol catalog v1.6.4 via PEP (extension-only patch bump). Catalogs two new draft extension protocols introduced in #514:

  • pattern-predicate-protocol (PPP) — editorial pattern → content-addressed substrate query → result-set delta → FRP receipt
  • contract-composition-protocol (CCP) — canonical compose primitive in libprovekit, exposed via FFI / CLI / direct-link, called identically by every lifter and verifier across every language

Under v1.6.3 bootstrap-policy.json's versionLabelRule: extensionOnlyWithoutCrossKitSemanticObligation: patch, v1.6.4 is the correct version label. No core verifier behavior change, no ProofIR grammar change, no canonicalization change. Existing v1.6.3 mementos / fixtures / .proof bundles remain valid.

Pinned CIDs

  • Catalog v1.6.4: blake3-512:09ccf7b1464622eceb4ac0e9bae3b435ba92d87c19e89f93724e6be75f4afce9eb3dedb7b8ebe2536de054143efefcb3cb622e6e5b4140bb26e6156a9bc9adf3
  • PEP body: blake3-512:604608dddd23db1c9ac3b593b1a4c7612b4c3d5cb1432976d38c0c935ce0fc2f6babff8d410e13ca44227b40ad1cbb29657633e5e5184afb7825653767289fa9
  • PEP witness: blake3-512:fa6e7f3861c9ed443a7eaac486a5d091e09a566384f2314dc45c8b7c3301e31104a31076f0a48bc177a1108d4a3d5245a4a8bdfacd1a99ba4d9caffeddd06102
  • Catalog signature file: blake3-512:5187838f00dc2e5d8192eee0c33b901e4b8e9a3e809637d965533ac334486ad6276c7fea31574be581eb51fc7a37c5cb21ad8168a0ec3dd8d676c6c383bb3a0e
  • Ed25519 signature: U1ElkXPN4SMFr9oMmoOlPBz5Cl1oiUYeV/WkCNlUgpc5LisGeYaMxjM5C/VlLXc8y1zve6mlYmxnirmMy6J5DQ==

What this contains

  • protocol/specs/2026-04-30-protocol-catalog.json bumped to v1.6.4 with PPP + CCP entries
  • protocol/evolution/v1.6.4/ PEP bundle (from-, to-, policy, verifier, body, witness, catalog-diff, README)
  • .provekit/catalog-signatures/v1.6.4.json Ed25519 attestation under foundation v0 key
  • CLI embedded copies refreshed: implementations/rust/provekit-cli/assets/catalog-signature-v1.6.4.json + assets/protocol-catalog.json + src/protocol.rs
  • tools/foundation-keygen/src/bin/sign_catalog_v1_6_4.rs sign binary
  • tools/recompute-spec-cids/src/main.rs SPEC_MAP +2 entries; freeze target bumped to v1.6.4
  • docs/launch/release-notes-v1.6.4.md
  • .provekit/ci/accepted/c/...0adec9c2....json CICP C-kit refresh

Test plan

  • cargo build --release --workspace — pass (warnings only, all pre-existing)
  • recompute-spec-cids --verify — pass (no drift)
  • provekit-cli --bins test suite — 77 / 77 pass, including embedded_catalog_recomputes_to_expected_cid, embedded_signature_verifies_against_embedded_pubkey, verify_protocol_signed_passes_with_embedded_assets, expected_cid_has_correct_shape
  • protocol_evolve integration tests — 2 / 2 pass
  • provekit protocol check-evolution against v1.6.4 PEP bundle — status: admitted
  • provekit ci accept --kit c --clean --assume-pass — 1 added, 1 verified, 0 errors

T Savo

Summary by CodeRabbit

  • New Features

    • Introduced Pattern Predicate Protocol (PPP) and Contract Composition Protocol (CCP) as new draft extension protocols
    • No changes to core verification semantics or proof format compatibility
  • Documentation

    • Published v1.6.4 release notes including new protocol specifications and verification instructions
    • Added new end-to-end composition specimen for testing

Review Change Stack

Catalogs two new draft extension protocols:
- pattern-predicate-protocol (PPP): editorial pattern -> content-addressed
  substrate query -> result-set delta -> FRP receipt.
- contract-composition-protocol (CCP): canonical compose primitive in
  libprovekit, exposed via FFI / CLI / direct-link, called identically by
  every lifter and verifier across every language.

Plus implementation extensions that ship alongside (libprovekit compose.rs
+ ffi.rs, provekit-cli compose subcommand, C lifter effects + composition
pass, BZ-COMPOSITION-001 specimen). All extension-only: no core verifier
behavior change, no ProofIR grammar change, no canonicalization change.
Existing v1.6.3 mementos / fixtures / .proof bundles remain valid.

Catalog v1.6.4 CID: blake3-512:09ccf7b1464622eceb4ac0e9bae3b435ba92d87c19e89f93724e6be75f4afce9eb3dedb7b8ebe2536de054143efefcb3cb622e6e5b4140bb26e6156a9bc9adf3
PEP body CID:       blake3-512:604608dddd23db1c9ac3b593b1a4c7612b4c3d5cb1432976d38c0c935ce0fc2f6babff8d410e13ca44227b40ad1cbb29657633e5e5184afb7825653767289fa9
PEP witness CID:    blake3-512:fa6e7f3861c9ed443a7eaac486a5d091e09a566384f2314dc45c8b7c3301e31104a31076f0a48bc177a1108d4a3d5245a4a8bdfacd1a99ba4d9caffeddd06102

CICP C-kit refreshed for n_arity additive schema extension from
ts-ccp-followup-formal-idx; 1 new accepted witness staged.

PEP policy admits, build green, 77/77 CLI tests pass, 2/2 protocol
evolve integration tests pass.

T Savo
Copilot AI review requested due to automatic review settings May 9, 2026 20:32
@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented May 9, 2026

Warning

Rate limit exceeded

@TSavo has exceeded the limit for the number of commits that can be reviewed per hour. Please wait 26 minutes and 48 seconds before requesting another review.

You’ve run out of usage credits. Purchase more in the billing tab.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: af8fe3f5-288e-4836-b21b-5a80ef248f6a

📥 Commits

Reviewing files that changed from the base of the PR and between a98231f and 6437e8d.

📒 Files selected for processing (17)
  • .provekit/ci/accepted/c/blake3-512:b964fdb3a674d600dadf1d6e6473164c8543ef10bba163900a773e38e539ee3d89c7a09af0823dffa030122a562f2ad2be91f369b9c21d82701dee1b826ef563.job-result.json
  • .provekit/ci/accepted/cpp/blake3-512:b4b0d51e086e95a63afce5c31984aa686132154f11765e93aa0cd3b76fa55ea1cf9280dd1e6a16e3face0a1cc0f4b9eb37b6ed6d9704d5571432e2505c86bcc0.job-result.json
  • .provekit/ci/accepted/csharp/blake3-512:2c3799f90d845438126d057be9f64095935e2e41b841cc64c8e9455814705313c75c1e72f6f4e92281fa6f4b8d198e1e64496a6ad6419c28b33018c452d8f55a.job-result.json
  • .provekit/ci/accepted/go/blake3-512:d4f08545a73b456959c4895f5a295fbd9a0b7660446efb8a4ea024744fd6110b5b7a9e72ee17db348188e583c97d6d0ff9cdaccbb11593651cc5458a7389acb1.job-result.json
  • .provekit/ci/accepted/java/blake3-512:94f3583fe0d0512bd13d85d7f08a046efc6792b13b83837d2fd86c2126ff20e996a0f056eed241419d967d852d99ddbcacc955851829b2216fc28ea45eb14d26.job-result.json
  • .provekit/ci/accepted/python/blake3-512:f7bdfc14968e0f9455d9438b42f40f50f75a9c1ba2f396f4d729cd15e3835b4e53e161146a5e0a9343a70ede1469ae64a865921b50b44d6c7bfdd2c9f69654c6.job-result.json
  • .provekit/ci/accepted/ruby/blake3-512:cc6dc5b9aa9ab61266758e8e8980e8d1929050fbbc9b7abd069234e6aeb5d84652c1a44c8212595f388ee733ae201efa4dc2014a55dea784e23b7a45f6f5eb7a.job-result.json
  • .provekit/ci/accepted/rust/blake3-512:5b821a847d6f6dad4935c9361147aef9032167e28dcf4819295f7af0d97b5f38ef7c83635d9003cbdd84bb2bb3c6ab2b44a96c9f6aaa3903ffda777ba016d383.job-result.json
  • .provekit/ci/accepted/swift/blake3-512:0f05c097176e0f30b65a7f7e75fdcd8eb55d9780f585f44ad590138f82c873a16ef935712261be8ac0f2abe2513c7abb120e2732a2a2cb106de6837610b24069.job-result.json
  • .provekit/ci/accepted/ts/blake3-512:30019e292717854c8bd206d531371ef826035d6bc94ed9a179c6e5f9185d79f4df5a946dfd61b1addc1e5620b25442c8a0fe10f362597c9f4dd45c5a3157d50f.job-result.json
  • .provekit/ci/accepted/zig/blake3-512:f493acadd619269959a453140fa6a1277a402126cb63bbd0e0879b77f6feca72afabf1185d80b681d8c3a1380ccc769b8267c71a6eb7c48f7c2f8d460aedac2d.job-result.json
  • conformance/fixtures.toml
  • docs/launch/release-notes-v1.6.4.md
  • docs/reference/protocol-extensions.md
  • protocol/evolution/v1.6.4/README.md
  • tools/cross-kit-conformance/src/lib.rs
  • tools/foundation-keygen/src/lib.rs

Walkthrough

This PR releases ProvekIt protocol v1.6.4, introducing two new draft extension protocols (Pattern Predicate Protocol and Contract Composition Protocol) as extension-only changes. It updates protocol catalogs with new properties, creates evolution attestation artifacts with bootstrap policy and verifier, updates CLI constants, and provides release documentation and tooling.

Changes

ProvekIt v1.6.4 Protocol Release

Layer / File(s) Summary
Protocol Catalog Schema
implementations/rust/provekit-cli/assets/protocol-catalog.json, protocol/specs/2026-04-30-protocol-catalog.json, protocol/evolution/v1.6.4/from-catalog-v1.6.3.json, protocol/evolution/v1.6.4/to-catalog-v1.6.4.json, protocol/evolution/v1.6.4/catalog-diff.json
Catalogs bumped from v1.6.3 to v1.6.4 with new pattern-predicate-protocol and contract-composition-protocol properties added; catalog diff documents two added extension properties with no modifications or removals.
Protocol Evolution Attestation & Policy
protocol/evolution/v1.6.4/bootstrap-policy.json, protocol/evolution/v1.6.4/bootstrap-verifier.json, protocol/evolution/v1.6.4/protocol-evolution.body.json, protocol/evolution/v1.6.4/protocol-evolution.witness.json, .provekit/catalog-signatures/v1.6.4.json, implementations/rust/provekit-cli/assets/catalog-signature-v1.6.4.json
Bootstrap policy constrains changes to extension-only with strict verification checks; bootstrap verifier defines three tool invocations for catalog CID recomputation and compatibility checks; evolution body claims the v1.6.3→v1.6.4 transition with two added properties and zero modifications; witness attests successful verification.
CLI Protocol Constants
implementations/rust/provekit-cli/src/protocol.rs
EXPECTED_CATALOG_CID updated from v1.6.3 to v1.6.4; EMBEDDED_CATALOG_SIGNATURE switched from catalog-signature-v1.6.3.json to catalog-signature-v1.6.4.json.
Keygen Tooling & Signing
tools/foundation-keygen/src/lib.rs, tools/foundation-keygen/src/bin/sign_catalog_v1_6_4.rs, tools/foundation-keygen/Cargo.toml
New V1_6_4_DECLARED_AT constant with pinned timestamp; new sign_catalog_v1_6_4 binary tool computes catalog CID, builds signed attestation, and writes to .provekit/catalog-signatures/v1.6.4.json; Cargo adds binary targets for v1.6.3 and v1.6.4 signing.
Spec CID Computation & Build
tools/recompute-spec-cids/src/main.rs, implementations/c/provekit-lift-c-kernel-doc/compile_flags.txt
recompute-spec-cids tool updated to target v1.6.4 with two additional spec properties (pattern-predicate-protocol, contract-composition-protocol) in SPEC_MAP; C component compilation flags set C11 standard, warning/pedantic options, feature macros, and header include paths.
Release Documentation & CI
docs/launch/release-notes-v1.6.4.md, protocol/evolution/v1.6.4/README.md, .provekit/ci/accepted/c/blake3-512:...job-result.json
Release notes document v1.6.4 as extension-only patch with PPP/CCP additions, verification command, new specimen (BZ-COMPOSITION-001), historical migration chain, and shipping command; evolution README details the patch transition, unchanged core semantics, and provekit protocol check-evolution invocation; CI job result marks the build as passed.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Possibly related PRs

  • TSavo/provekit#514: Adds the Pattern Predicate Protocol (PPP) and Contract Composition Protocol (CCP) implementation extensions along with related C lifter changes and protocol specs that this release documents.
  • TSavo/provekit#496: Bumps protocol catalog to v1.6.3, establishing the baseline version that this PR transitions from.
  • TSavo/provekit#474: Introduces foundation keygen tooling and bootstrap attestation flow that this PR extends for v1.6.4 signing and verification.

Poem

🐰 Hops through catalogs with glee,
v1.6.4 released to thee!
PPP and CCP now shine,
Extension-only, perfectly fine.

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 25.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The pull request title 'Mint protocol catalog v1.6.4 (PEP extension-only: PPP + CCP)' is fully related to the main change: a protocol catalog version bump to v1.6.4 introducing two new draft extension protocols via a PEP patch.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch ts-mint-v1.6.4

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: a98231f2f3

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

-DPK_C_ENABLE_FFI_COMPOSE
-I../provekit-lift-core/include
-I../../rust/libprovekit/include
-I/usr/local/Cellar/llvm/22.1.4/include
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Replace machine-specific LLVM include path

The new compile_flags.txt hardcodes -I/usr/local/Cellar/llvm/22.1.4/include, which only exists on one specific Homebrew install layout/version; on Linux, CI images, or even macOS machines with a different LLVM formula version, clang-based tooling that consumes this file will miss LLVM headers and fail or degrade analysis for this target. Since the C Makefiles already resolve LLVM headers via llvm-config --includedir, this checked-in fixed path introduces an avoidable portability regression.

Useful? React with 👍 / 👎.

Copy link
Copy Markdown

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 3

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
tools/foundation-keygen/src/lib.rs (1)

720-755: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Update test to include the new V1_6_4_DECLARED_AT constant.

The declared_at_constants_are_pinned_iso8601 test guards against accidental use of live timestamps by validating all declaredAt constants. The test array doesn't include the newly added V1_6_4_DECLARED_AT constant, leaving it unvalidated.

🧪 Proposed fix: add V1_6_4_DECLARED_AT to test array
         let pinned = [
             V1_1_0_DECLARED_AT,
             V1_2_0_DECLARED_AT,
             V1_3_0_DECLARED_AT,
             V1_3_1_DECLARED_AT,
             V1_4_0_DECLARED_AT,
             V1_4_1_DECLARED_AT,
             V1_5_0_DECLARED_AT,
             V1_6_0_DECLARED_AT,
             V1_6_1_DECLARED_AT,
             V1_6_2_DECLARED_AT,
             V1_6_3_DECLARED_AT,
+            V1_6_4_DECLARED_AT,
             SELF_CONTRACTS_DECLARED_AT_V1_3_1,
             SELF_CONTRACTS_DECLARED_AT_V1_6_0,
         ];
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@tools/foundation-keygen/src/lib.rs` around lines 720 - 755, The test
declared_at_constants_are_pinned_iso8601 is missing the new constant
V1_6_4_DECLARED_AT from the pinned array; update the pinned array inside that
function to include V1_6_4_DECLARED_AT so the new constant is validated by the
ISO‑8601 length/format assertions (retain the existing YYYY-MM-DDTHH:MM:SSZ
checks).
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@docs/launch/release-notes-v1.6.4.md`:
- Around line 44-53: The fenced historical catalog chain block (the
triple-backtick block containing lines starting with "v1.4.0  blake3-512:..."
through "v1.6.4  blake3-512:09ccf7b14646...") is missing a language tag and
triggers MD040; update the opening fence to include the text language (use
```text) so the block becomes a ```text fenced code block to satisfy
markdownlint.

In `@implementations/c/provekit-lift-c-kernel-doc/compile_flags.txt`:
- Line 9: The file compile_flags.txt contains a hardcoded macOS Homebrew path
"/usr/local/Cellar/llvm/22.1.4/include" which breaks portability; replace that
literal entry by resolving the include path at build time—either reference an
environment variable like LLVM_INCLUDE_DIR (use ${LLVM_INCLUDE_DIR} in your
build generation and document setting LLVM_INCLUDE_DIR per-developer) or
integrate pkg-config (use the output of `pkg-config --cflags llvm`) so the
include is discovered automatically across platforms; update any build scripts
that consume compile_flags.txt to support the chosen approach.

In `@protocol/evolution/v1.6.4/README.md`:
- Around line 36-41: Replace the `<filled by ...>` placeholders in the README
entries for `catalog-diff.json`, `bootstrap-policy.json`,
`bootstrap-verifier.json`, the "v1.6.4 catalog attestation" entry,
`protocol-evolution.body.json`, and `protocol-evolution.witness.json` with the
actual pinned artifact CIDs produced by running `provekit protocol evolve` (and
`sign-catalog-v1-6-4` for the catalog attestation); use the exact CID strings
returned by those commands so each listed file references a concrete, pinned
artifact CID.

---

Outside diff comments:
In `@tools/foundation-keygen/src/lib.rs`:
- Around line 720-755: The test declared_at_constants_are_pinned_iso8601 is
missing the new constant V1_6_4_DECLARED_AT from the pinned array; update the
pinned array inside that function to include V1_6_4_DECLARED_AT so the new
constant is validated by the ISO‑8601 length/format assertions (retain the
existing YYYY-MM-DDTHH:MM:SSZ checks).
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: a01f9577-db31-4922-82c8-34a40094707a

📥 Commits

Reviewing files that changed from the base of the PR and between 424ff58 and a98231f.

📒 Files selected for processing (22)
  • .provekit/catalog-signatures/v1.6.4.json
  • .provekit/ci/accepted/c/blake3-512:0adec9c21ed7a322e905742cd74d4037b4cbf34206a6643b493e0f6b46030ebfbb5e185652a0e87338c3a4af28dd0246ef28006832968cae403d8c029ebec9bb.job-result.json
  • docs/launch/release-notes-v1.6.4.md
  • implementations/c/provekit-lift-c-kernel-doc/compile_flags.txt
  • implementations/rust/provekit-cli/assets/catalog-signature-v1.6.4.json
  • implementations/rust/provekit-cli/assets/protocol-catalog.json
  • implementations/rust/provekit-cli/src/protocol.rs
  • protocol/evolution/v1.6.4/README.md
  • protocol/evolution/v1.6.4/bootstrap-policy.json
  • protocol/evolution/v1.6.4/bootstrap-verifier.json
  • protocol/evolution/v1.6.4/catalog-diff.json
  • protocol/evolution/v1.6.4/from-catalog-v1.6.3.json
  • protocol/evolution/v1.6.4/protocol-evolution.body.cid.txt
  • protocol/evolution/v1.6.4/protocol-evolution.body.json
  • protocol/evolution/v1.6.4/protocol-evolution.witness.cid.txt
  • protocol/evolution/v1.6.4/protocol-evolution.witness.json
  • protocol/evolution/v1.6.4/to-catalog-v1.6.4.json
  • protocol/specs/2026-04-30-protocol-catalog.json
  • tools/foundation-keygen/Cargo.toml
  • tools/foundation-keygen/src/bin/sign_catalog_v1_6_4.rs
  • tools/foundation-keygen/src/lib.rs
  • tools/recompute-spec-cids/src/main.rs

Comment thread docs/launch/release-notes-v1.6.4.md Outdated
Comment thread implementations/c/provekit-lift-c-kernel-doc/compile_flags.txt Outdated
Comment thread protocol/evolution/v1.6.4/README.md Outdated
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot encountered an error and was unable to review this pull request. You can try again by re-requesting a review.

TSavo added 6 commits May 9, 2026 13:57
Hardcoded macOS Cellar include path slipped in alongside the v1.6.4
catalog mint. CodeRabbit flagged it as non-portable. It was an IDE
diagnostics nudge, not a substrate change, and does not belong in a
protocol catalog mint.

T Savo
The v1.6.4 mint added V1_6_4_DECLARED_AT but did not extend the
foundation-keygen pinned-constants test array. Without it the new
constant is not guarded against accidentally being switched to a
runtime clock call, which would re-introduce the byte-nondeterminism
the test exists to prevent. Adds the constant to the pinned array,
preserving the closes-#300-item-6 invariant.

T Savo
The PEP evolution README shipped with <filled by ...> placeholders for
catalog-diff, bootstrap-policy, bootstrap-verifier, the v1.6.4 catalog
attestation, and the protocol-evolution body + witness. These CIDs are
all known from the mint commit's body; CodeRabbit flagged the unfilled
placeholders. Replaces them with the actual blake3-512 CIDs so the table
matches the on-disk artifacts.

T Savo
Markdownlint MD040 fires on the catalog-chain fence because it has no
language tag. The block is plain ASCII showing the historical catalog
CID chain, so 'text' is the right tag.

T Savo
Three callsites still pinned to the v1.6.3 catalog after the v1.6.4
mint, causing the cross-language conformance gate to abort with
'expected v1.6.3-2026-05-09'. Patch-level extension-only mint, so the
per-fixture hashes stay byte-identical; only the catalog header pins
move:

- tools/cross-kit-conformance/src/lib.rs: EXPECTED_CATALOG_VERSION
  and EXPECTED_CATALOG_CID.
- conformance/fixtures.toml: catalog_version + catalog_cid header.
- docs/reference/protocol-extensions.md: 'Current Catalog' table,
  signed-attestation link to v1.6.4.json, evolution README link to
  v1.6.4, and the Draft Companion Specs framing line.

T Savo
The v1.6.4 mint shifted EXPECTED_CATALOG_CID, which is embedded in
every kit's blast-radius CID via the protocol_catalog_cid input. All
eleven kit witnesses (rust, go, cpp, ts, csharp, java, python, ruby,
zig, c, swift) needed regeneration. Refreshed via make ci-accept-refresh
on the [self-hosted, Linux, X64] runner so witness file naming matches
the host the CICP smoke job runs on. Lift output is not byte-identical
between Mac and Linux for the C kit's path closure, which the prior
mint-time refresh on Mac did not account for.

T Savo
@TSavo TSavo merged commit f584c48 into main May 9, 2026
17 checks passed
@TSavo TSavo deleted the ts-mint-v1.6.4 branch May 9, 2026 21:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants