Skip to content

fix CI - #15

Merged
mmacedoeu merged 2 commits into
mainfrom
next
Feb 25, 2026
Merged

mmacedoeu merged 2 commits into
mainfrom
next

Conversation

@mmacedoeu

Copy link
Copy Markdown
Contributor

Pull Request Checklist

  • All CI checks pass (green ✓)
  • Lint checks pass (no formatting issues)
  • Security scan passes
  • Tests added/updated for new functionality
  • Documentation updated (if applicable)
  • Commit messages follow Conventional Commits

Type of Change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Documentation update
  • Refactoring (no functional changes)
  • AI-generated work (agent/* branch)

Branch Strategy

This PR follows the CipherOcto branch strategy:

From Branch To Branch Purpose
feat/* next New features
agent/* next AI-generated code
research/* next Experimental work
hotfix/* main Emergency fixes
next main Integration release

Current PR: <!-- source branch --><!-- target branch -->


Description


Related Issues

Closes #(issue)


Testing

  • Unit tests pass
  • Integration tests pass
  • Manual testing performed

Performance Impact

  • No performance impact
  • Performance improved (describe)
  • Performance degraded (describe, justify)

Security Considerations

  • No security implications
  • Security changes (describe)

Additional Notes

@mmacedoeu
mmacedoeu merged commit 66d224f into main Feb 25, 2026
10 of 14 checks passed
mmacedoeu added a commit that referenced this pull request Aug 3, 2026
Address 4 findings from round 2 adversarial review (0 BLOCKER,
0 MAJOR, 2 MINOR, 2 NIT).

MINOR fixes:

- The 'regression guard for hex::serde removal' test in
  auth.rs:anchor_signature_byte_length_and_debug_format was
  claimed to catch hex::serde reintroduction, but only checked
  byte length + Debug form. Debug is independent of Serialize,
  so re-introducing hex::serde would pass. Replaced with a
  stronger end-to-end guard: the Python validator
  (scripts/verify_canonical_blobs.py) is the canonical
  regression guard. If hex::serde is reintroduced, the digest
  input bytes change and the Python impl diverges from the
  Rust output. Updated the test doc-comment to point at the
  Python validator as the load-bearing guard.

- AC #14 (idempotency test on (recorder_did, signal_kind,
  layer, last_event_id) 4-tuple) and AC #15 (failure
  isolation test) remain ungrounded — explicitly marked in the
  mission text as DEFERRED to 0968a2 successor (chain-substrate
  selection RFC or 0968a3-gossip-anchor-provenance). The
  StubChainAnchorSubmitter at anchor_job.rs:139 cannot exercise
  the UNIQUE constraint path or mid-batch submitter failure
  semantics needed by these tests.

NIT fixes:

- v012 migration comment: line range '100-115' corrected to
  '106-117' (the actual location of the SELECT-before-INSERT
  guard in apply()).

- scripts/verify_canonical_blobs.py: removed the dead
  dfp_from_f64() stub that raised NotImplementedError and
  referenced a non-existent verify_canonical_blobs_determin.py
  helper. The script uses rust_dfp_blob() exclusively.

Verification: cargo fmt + clippy -D warnings clean; cargo test
--lib pass; canonical_blobs 5/5; Python validator 3/3
byte-identical.
mmacedoeu added a commit that referenced this pull request Aug 7, 2026
… AC grounding

R7 review findings closed:

MAJOR (governance type collision): mandate path (a) — new anchor-specific types in same module — verified against current IMPL at crates/octo-reputation/src/{auth.rs:399-603, anchor.rs:174-208, anchor.rs:233+}; existing auth.rs::GovernanceSnapshot (L21-25) + GovernanceProof (L113+) preserved unchanged as RFC-0968 authorization envelopes (slash/suspension flows); new AnchorGovernanceSnapshot/AnchorGovernanceSigner/AnchorGovernanceProof/AnchorSignature types + 5 unit tests cover the anchor binding schema.

NIT (duplicate sentence): file no longer contains duplicate (prior edits removed it).

AC grounding updates — 7 ACs flipped to [x]:

- AC #2 governance fields (72bf19d + 48cf997 + b0660c3)
- AC #3 batch_size: u32 (same)
- AC #4 chain_block_height: Option<u64> (same)
- AC #5 AnchorLeaf::digest field order (b0660c3)
- AC #6 v012 migration (file shipped)
- AC #12 anchor-specific verifier types (72bf19d)
- AC #1 StakeBelowMinimum 0x2D verification (013a567)

10 ACs deferred per [[deferred-vs-unspecified]] named-owner rule to chain-substrate selection RFC + 0855p-b successor: #7/#8 live ChainAnchorSubmitter + rotation_receipt_id wire-through, #9/#10 reorg + DID-rotation finality handlers, #11 governance signature verification runtime hook (meets_quorum helper landed), #13 per-deployment config plumbing, #14/#15 idempotency + failure isolation tests, #16 gossip cross-reference, #17 canonical test vector re-pinning.

Version History v0.2 added; mission text no longer contradicts IMPL state.

63 insertions, 78 deletions.
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.

1 participant