feat(patterns): propagate batch 1 + 2 v2 migration to master#162
Conversation
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
- pattern-zk-proof-systems: maturity pilot to concept (taxonomy card, not a specific implementation), add context_differentiation, rename CROPS fields to v2 short codes - pattern-eil, pattern-focil-eip7805: remove unsupported rollout-plan key Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
- pattern-native-account-abstraction: split Protocol into 5 steps (was 4) - pattern-eil: strip auction/lock-duration/slashing mechanics from Protocol; move provider-misbehavior detail into Threat model Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Address rymnc review on #154. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
* feat(patterns): migrate batch 2 (29 cards) to schema v2 (#150) * style(patterns): remove bold emphasis across batch 2 cards * fix(patterns): zk-proof-systems maturity to concept Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * fix(patterns): consolidate private-tx-broadcasting Protocol to canonical relay flow Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * fix(patterns): drop pattern-to-pattern link from pvp-stablecoins See also Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * fix(patterns): address CodeRabbit round 1 on #155 (in-scope items) Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
Warning Rate limit exceeded
To continue reviewing without waiting, purchase usage credits in the billing tab. ⌛ How to resolve this issue?After the wait time has elapsed, a review can be triggered using the 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 configurationConfiguration used: Path: .coderabbit.yaml Review profile: ASSERTIVE Plan: Pro Run ID: 📒 Files selected for processing (1)
WalkthroughIntroduces pattern frontmatter v2: updates template, JSON Schema, and validator; migrates many pattern documents to new fields and section structure; adds a changelog note about permissive validation during migration. ChangesPattern template v2 migration
Estimated code review effort🎯 5 (Critical) | ⏱️ ~120 minutes Possibly related issues
Possibly related PRs
Suggested reviewers
✨ Finishing Touches🧪 Generate unit tests (beta)
|
There was a problem hiding this comment.
Actionable comments posted: 18
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (2)
patterns/pattern-private-mtp-auth.md (1)
103-109:⚠️ Potential issue | 🟡 Minor | ⚡ Quick winMove internal docs out of
## See also.
Approach: Private Identityis an internal repository reference; keepSee alsofor external links only.As per coding guidelines,
## See alsoshould be external references only; internal cross-references belong in pattern metadata/relationships.🤖 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 `@patterns/pattern-private-mtp-auth.md` around lines 103 - 109, The "Approach: Private Identity" internal link should be removed from the "## See also" section and relocated to the pattern's internal relationships/metadata (not kept with external references); edit the "## See also" block to keep only external links (Semaphore, ERC-3643, EAS) and add an entry or relation referencing "Approach: Private Identity" in the pattern metadata/relationships area so internal cross-references are stored separately (look for the "## See also" header and the list item "Approach: Private Identity" to update).patterns/pattern-noir-private-contracts.md (1)
114-117:⚠️ Potential issue | 🟡 Minor | ⚡ Quick win
See alsoshould not contain internal repo links.Lines 114-117 are internal links; keep this section for external references and relocate internal pointers to body context or relationship metadata.
As per coding guidelines,
## See alsoin pattern cards is for external references only.🤖 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 `@patterns/pattern-noir-private-contracts.md` around lines 114 - 117, The "See also" section currently contains internal repo links (Aztec, Approach: Private Bonds, Approach: Private Derivatives); remove these internal links from the ## See also list and replace them with only external references, then relocate the internal pointers to the pattern body or to relationship/metadata sections (e.g., mention "Aztec", "Approach: Private Bonds", "Approach: Private Derivatives" within the main text or a relationships block) so the See also section contains external references only.
🤖 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 `@patterns/pattern-eil.md`:
- Line 8: The frontmatter in patterns/pattern-eil.md includes a non-template key
`rollout-plan` which violates the v2 pattern card schema; remove the
`rollout-plan` key from the YAML frontmatter and either move its text into the
markdown body (e.g., into the Trade-offs or Example section) or map it to an
existing schema-backed field from patterns/_template.md, ensuring the file
validates against the template structure and contains only allowed frontmatter
keys.
In `@patterns/pattern-erc3643-rwa.md`:
- Line 83: Update the wording in the pattern-erc3643-rwa.md text that currently
reads "Out of scope: transaction-level confidentiality. Amounts, positions, and
counterparties remain visible on chain." to use the hyphenated form "on-chain"
so it reads "...remain visible on-chain." Locate this sentence in the file (the
"Out of scope: transaction-level confidentiality..." paragraph) and replace "on
chain" with "on-chain" for consistency with repository style.
- Line 99: The "See also" section in pattern-erc3643-rwa.md currently links to
an internal doc ../approaches/approach-private-bonds.md; move that internal link
out of the "## See also" block and into the pattern's frontmatter relationships
(related_patterns) or an internal section (e.g., "Related patterns" or "Internal
links"), leaving "## See also" with external-only references; update the
frontmatter key related_patterns to include
"../approaches/approach-private-bonds.md" (or add a new internal section) and
remove the internal link from the See also list.
In `@patterns/pattern-l2-privacy-evaluation.md`:
- Line 152: The "See also" section in pattern-l2-privacy-evaluation.md currently
contains an internal link "[RFP: Living Benchmark Dashboard]" which violates the
guideline that "## See also" must only list external references; remove or
relocate that internal link from the "See also" list and place it into the
document body (e.g., a related-internal-links paragraph or an "Internal links"
subsection) so the "See also" section contains only external links.
In `@patterns/pattern-mpc-custody.md`:
- Around line 120-123: The "See also" section in patterns/pattern-mpc-custody.md
currently mixes internal docs with external refs; remove the internal links
../vendors/fireblocks.md and ../domains/post-quantum.md from the "## See also"
list and instead add them to the pattern's internal cross-reference area (e.g.,
the related_patterns field or section used across patterns), leaving only
external references like the FROST spec and CGGMP21 paper in "See also"; update
any metadata or the related_patterns array to reference "vendors/fireblocks" and
"domains/post-quantum" (or the canonical pattern IDs) so internal links are
preserved but conform to the guideline.
In `@patterns/pattern-native-account-abstraction.md`:
- Around line 95-98: The "## See also" section contains an internal repo link to
../domains/post-quantum.md which violates the requirement that See also be
external-only; update the section by removing that internal link and either (a)
replace it with an external resource about post-quantum threats or (b) move the
internal ../domains/post-quantum.md reference into a new or existing internal
section (e.g., "Related internal docs" or a footnote) elsewhere in the document
so the "## See also" list contains only external URLs; ensure you update the
heading content around "## See also" to reflect the change.
In `@patterns/pattern-plasma-stateless-privacy.md`:
- Around line 24-35: The CROPS privacy score is inconsistent: crops_profile.p is
set to "full" but crops_context.p explicitly states transaction amounts, sender,
and receiver are hidden while per-block sender lists and network metadata remain
visible; update crops_profile.p to "partial" (or else revise crops_context.p to
remove the visible per-block sender list/metadata statements) so the CROPS
scores align with observable leakage; edit the fields named crops_profile.p and
crops_context.p accordingly to keep the rubric consistent.
In `@patterns/pattern-pretrade-privacy-encryption.md`:
- Around line 123-128: The "## See also" section currently contains an internal
repository link ("Post-Quantum Threats") which must be removed from that
external-only list; locate the "## See also" heading and the "Post-Quantum
Threats" bullet and remove that bullet from the list, then add the internal link
under a new or existing internal section (e.g., "Related internal resources" or
"Related patterns") elsewhere in the document so internal references stay
separate from external resources.
In `@patterns/pattern-privacy-l2s.md`:
- Around line 128-130: The three repository-local vendor links currently listed
under the "## See also" section (the Aztec, Miden, and Zama vendor page links)
must be removed from that external-only section and instead added to this
pattern's related_patterns metadata; locate the "## See also" block and delete
those three list items, then open the pattern's front-matter and add
corresponding entries to the related_patterns array (use the same vendor
identifiers/filenames or pattern slugs such as aztec, miden, zama) so the
internal pattern-to-pattern references live in related_patterns while keeping
"## See also" reserved for external links only.
In `@patterns/pattern-private-shared-state-cosnark.md`:
- Around line 107-110: The "## See also" section currently contains an internal
repository link ("TACEO Merces") which violates the rule to include only
external references; open the pattern file and either move the internal vendor
link into the frontmatter relationships block (add it as a relationship entry)
or replace it with an equivalent external reference, ensuring only external URLs
remain under the "## See also" heading (leave the "Collaborative zk-SNARKs"
external link unchanged).
- Around line 23-33: The CROPS privacy score is overstated: update
crops_profile.p from "full" to "partial" to reflect that metadata
(participation, timing, circuit proven) can leak as noted in crops_context; also
adjust the explanatory text in crops_context (the p sentence) to explicitly
state that while plaintext inputs remain hidden under honest-majority, metadata
leakage prevents a "full" privacy claim so the profile aligns with the described
leakage and CROPS guidelines.
In `@patterns/pattern-private-shared-state-fhe.md`:
- Line 92: The phrase "bulk-decryption capability" in the sentence
"Honest-threshold behaviour of the decryption committee. A breach above the
threshold leaks all encrypted state bulk-decryption capability." needs a
hyphenated compound modifier; update that phrase to either
"bulk-decryption-capability" or rephrase to "capability for bulk decryption" so
the compound modifier is clear and grammatically correct, leaving the
surrounding sentence intact.
In `@patterns/pattern-private-transaction-broadcasting.md`:
- Around line 109-110: Remove the internal vendor links ../vendors/flashbots.md
and ../vendors/shutter.md from the "## See also" section of
patterns/pattern-private-transaction-broadcasting.md and instead list them under
the pattern's related_patterns metadata (or the file's related_patterns section)
so that "See also" contains only external references; update the
related_patterns entry to include the Flashbots and Shutter pattern references
by their filenames.
In `@patterns/pattern-tee-zk-settlement.md`:
- Around line 105-109: The "## See also" section currently contains internal
repo links (Flashbots, Renegade, Post-Quantum Threats); move those internal
references out of the "## See also" list and add them to the pattern's
frontmatter relationships (e.g., a relationships or related_patterns field)
instead, leaving only external URLs under "## See also" so the header contains
exclusively external references and internal cross-links are represented in
metadata.
In `@patterns/pattern-threshold-encrypted-mempool.md`:
- Around line 114-115: The "## See also" section currently contains internal
vendor links [Shutter] and [Fairblock]; remove those two internal links from the
"See also" list and relocate them to the appropriate internal-links section (or
create an "Internal links" or "Related vendors" subsection) so that "## See
also" contains only external references; update the markdown around the "See
also" heading and where [Shutter] and [Fairblock] are referenced to point to the
new internal-links location.
- Line 59: Replace the path-based inline markdown link to "Private Transaction
Broadcasting" in the body of the pattern with a non-path reference (e.g., plain
title or parenthetical slug) and add the corresponding slug to the
related_patterns array; specifically, remove the relative link "[Private
Transaction Broadcasting](pattern-private-transaction-broadcasting.md)" from the
body and ensure the related_patterns metadata includes the target pattern's slug
(e.g., "private-transaction-broadcasting") so cross-references are modeled via
slugs rather than file paths.
In `@patterns/pattern-user-controlled-viewing-keys.md`:
- Around line 106-107: Remove the internal vendor links "[Aztec]" and
"[Railgun]" from the "## See also" section in the
pattern-user-controlled-viewing-keys.md and instead add them to the pattern's
related_patterns (or equivalent pattern-to-pattern links) so "See also" only
contains external references; update the related_patterns list to include Aztec
and Railgun entries and delete those two lines from the See also block.
In `@patterns/pattern-zk-tls.md`:
- Around line 103-104: The "See also" section currently contains internal links
to ../approaches/approach-private-identity.md and
../domains/identity-compliance.md which must be removed from the "See also"
header; delete those two links under the "See also" section and instead add them
to the pattern's internal linkage (the related_patterns metadata or equivalent)
for pattern-zk-tls.md — if a related_patterns list doesn't exist in the file's
frontmatter, create it and include entries pointing to the Approach
"approach-private-identity" and Domain "identity-compliance" so internal docs
live in related_patterns and "See also" contains only external references.
---
Outside diff comments:
In `@patterns/pattern-noir-private-contracts.md`:
- Around line 114-117: The "See also" section currently contains internal repo
links (Aztec, Approach: Private Bonds, Approach: Private Derivatives); remove
these internal links from the ## See also list and replace them with only
external references, then relocate the internal pointers to the pattern body or
to relationship/metadata sections (e.g., mention "Aztec", "Approach: Private
Bonds", "Approach: Private Derivatives" within the main text or a relationships
block) so the See also section contains external references only.
In `@patterns/pattern-private-mtp-auth.md`:
- Around line 103-109: The "Approach: Private Identity" internal link should be
removed from the "## See also" section and relocated to the pattern's internal
relationships/metadata (not kept with external references); edit the "## See
also" block to keep only external links (Semaphore, ERC-3643, EAS) and add an
entry or relation referencing "Approach: Private Identity" in the pattern
metadata/relationships area so internal cross-references are stored separately
(look for the "## See also" header and the list item "Approach: Private
Identity" to update).
🪄 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: Path: .coderabbit.yaml
Review profile: ASSERTIVE
Plan: Pro
Run ID: c1e7092a-1f93-470f-babd-7c10d6cc2c80
📒 Files selected for processing (64)
CHANGELOG.mdpatterns/_template.mdpatterns/pattern-co-snark.mdpatterns/pattern-commit-and-prove.mdpatterns/pattern-compliance-monitoring.mdpatterns/pattern-cross-chain-privacy-bridge.mdpatterns/pattern-crypto-registry-bridge-ewpg-eas.mdpatterns/pattern-dvp-erc7573.mdpatterns/pattern-eil.mdpatterns/pattern-erc3643-rwa.mdpatterns/pattern-focil-eip7805.mdpatterns/pattern-forced-withdrawal.mdpatterns/pattern-hybrid-public-private-modes.mdpatterns/pattern-icma-bdt-data-model.mdpatterns/pattern-l2-encrypted-offchain-audit.mdpatterns/pattern-l2-privacy-evaluation.mdpatterns/pattern-lean-ethereum.mdpatterns/pattern-mixnet-anonymity.mdpatterns/pattern-modular-privacy-stack.mdpatterns/pattern-mpc-custody.mdpatterns/pattern-native-account-abstraction.mdpatterns/pattern-network-anonymity.mdpatterns/pattern-noir-private-contracts.mdpatterns/pattern-oif.mdpatterns/pattern-onion-routing.mdpatterns/pattern-origin-locked-confidential-ledger.mdpatterns/pattern-permissioned-ledger-interoperability.mdpatterns/pattern-permissionless-spend-auth.mdpatterns/pattern-plasma-stateless-privacy.mdpatterns/pattern-pretrade-privacy-encryption.mdpatterns/pattern-privacy-l2s.mdpatterns/pattern-private-iso20022.mdpatterns/pattern-private-mtp-auth.mdpatterns/pattern-private-pvp-stablecoins-erc7573.mdpatterns/pattern-private-set-intersection-circuit.mdpatterns/pattern-private-set-intersection-dh.mdpatterns/pattern-private-set-intersection-fhe.mdpatterns/pattern-private-set-intersection-oprf.mdpatterns/pattern-private-shared-state-cosnark.mdpatterns/pattern-private-shared-state-fhe.mdpatterns/pattern-private-shared-state-tee.mdpatterns/pattern-private-stablecoin-shielded-payments.mdpatterns/pattern-private-transaction-broadcasting.mdpatterns/pattern-private-vaults.mdpatterns/pattern-proof-of-innocence.mdpatterns/pattern-regulatory-disclosure-keys-proofs.mdpatterns/pattern-safe-proof-delegation.mdpatterns/pattern-shielding.mdpatterns/pattern-stealth-addresses.mdpatterns/pattern-tee-based-privacy.mdpatterns/pattern-tee-key-manager.mdpatterns/pattern-tee-network-anonymity.mdpatterns/pattern-tee-zk-settlement.mdpatterns/pattern-threshold-encrypted-mempool.mdpatterns/pattern-tls-payment-bridge.mdpatterns/pattern-user-controlled-viewing-keys.mdpatterns/pattern-verifiable-attestation.mdpatterns/pattern-voprf-nullifiers.mdpatterns/pattern-zk-kyc-ml-id-erc734-735.mdpatterns/pattern-zk-promises.mdpatterns/pattern-zk-proof-systems.mdpatterns/pattern-zk-tls.mdscripts/schemas/pattern.jsonscripts/validate-patterns.js
Resolves 11 conflicts: - 8 patterns: take ours (v2 migration supersedes master's date bumps) - pattern-verifiable-attestation: take ours + add pattern-zk-wrappers to composes_with (preserves the cross-reference master added via #153) - _template.md, validate-patterns.js, CHANGELOG.md: take theirs (master's refinements from #157/#160/#161/#153 strictly extend batch1's baseline) Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Propagates the v2 pattern migration from
feat/pattern-v2-migration-batch1(which carries the merged content of #154 and #155) up to master. Closes the stack.Background
#154 (batch 1, 30 patterns) merged into
feat/pattern-schema-v2-template-ci, and #155 (batch 2, 29 patterns) merged intofeat/pattern-v2-migration-batch1, in quick succession on 2026-05-07. Each landed in its parent branch in the stack but the upward-merge step to master was missed. As a result master is still pre-v2 even though the work is fully reviewed and approved.feat/pattern-v2-migration-batch1head (fa646d9) carries both batches' content (#155's mergeCommit, which itself includes #154's mergeCommitc3e51d2). Merging this PR is equivalent to landing #154 and #155 on master, with no additional content.Scope
No new content beyond what was reviewed and approved on #154 and #155.
CodeRabbit: this PR is the master propagation of already-merged #154 and #155. The content has already been reviewed and approved on those PRs; please limit findings to anything specific to the master integration (no need to re-review per-pattern conformity).
Summary by CodeRabbit