Skip to content

chore(deps)(deps): bump thiserror from 1.0.69 to 2.0.18 - #10

Merged
mmacedoeu merged 3 commits into
mainfrom
dependabot/cargo/thiserror-2.0.18
Feb 25, 2026
Merged

mmacedoeu merged 3 commits into
mainfrom
dependabot/cargo/thiserror-2.0.18

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Feb 24, 2026

Copy link
Copy Markdown
Contributor

Bumps thiserror from 1.0.69 to 2.0.18.

Release notes

Sourced from thiserror's releases.

2.0.18

2.0.17

  • Use differently named __private module per patch release (#434)

2.0.16

  • Add to "no-std" crates.io category (#429)

2.0.15

  • Prevent Error::provide API becoming unavailable from a future new compiler lint (#427)

2.0.14

  • Allow build-script cleanup failure with NFSv3 output directory to be non-fatal (#426)

2.0.13

  • Documentation improvements

2.0.12

  • Prevent elidable_lifetime_names pedantic clippy lint in generated impl (#413)

2.0.11

2.0.10

  • Support errors containing a generic type parameter's associated type in a field (#408)

2.0.9

  • Work around missing_inline_in_public_items clippy restriction being triggered in macro-generated code (#404)

2.0.8

  • Improve support for macro-generated derive(Error) call sites (#399)

2.0.7

  • Work around conflict with #[deny(clippy::allow_attributes)] (#397, thanks @​zertosh)

2.0.6

  • Suppress deprecation warning on generated From impls (#396)

2.0.5

  • Prevent deprecation warning on generated impl for deprecated type (#394)

2.0.4

  • Eliminate needless_lifetimes clippy lint in generated From impls (#391, thanks @​matt-phylum)

2.0.3

  • Support the same Path field being repeated in both Debug and Display representation in error message (#383)
  • Improve error message when a format trait used in error message is not implemented by some field (#384)

2.0.2

... (truncated)

Commits
  • dc0f6a2 Release 2.0.18
  • 0275292 Touch up PR 443
  • 3c33bc6 Merge pull request #443 from LucaCappelletti94/master
  • 995939c Reproduce issue 442
  • 21653d1 Made clippy lifetime allows conditional
  • 45e5388 Update actions/upload-artifact@v5 -> v6
  • 386aac1 Update actions/upload-artifact@v4 -> v5
  • ec50561 Update actions/checkout@v5 -> v6
  • 247eab5 Update name of empty_enum clippy lint
  • 91b181f Raise required compiler to Rust 1.68
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [thiserror](https://github.com/dtolnay/thiserror) from 1.0.69 to 2.0.18.
- [Release notes](https://github.com/dtolnay/thiserror/releases)
- [Commits](dtolnay/thiserror@1.0.69...2.0.18)

---
updated-dependencies:
- dependency-name: thiserror
  dependency-version: 2.0.18
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot @github

dependabot Bot commented on behalf of github Feb 24, 2026

Copy link
Copy Markdown
Contributor Author

Labels

The following labels could not be found: dependencies, rust. Please create them before Dependabot can add them to a pull request.

Please fix the above issues or remove invalid values from dependabot.yml.

@mmacedoeu
mmacedoeu merged commit 195475d into main Feb 25, 2026
8 checks passed
@dependabot
dependabot Bot deleted the dependabot/cargo/thiserror-2.0.18 branch February 25, 2026 16:16
mmacedoeu added a commit that referenced this pull request Jun 16, 2026
0850p-c (Transport Group Binding):
- R3-1 (HIGH): reconnect_epoch added to BindEnvelope (R2-DC-3) was NOT in
  bind_hash. Attacker could mutate it post-signing to bypass split-brain
  check. Fixed: replaced with is_reconnect: bool; added to bind_hash.
- R3-4 (HIGH): NonceReplayTable::is_replay had &self but mutated via
  retain(). Would not compile. Fixed: renamed to check_and_maybe_evict
  with &mut self and saturating_sub for safety.
- R3-6 (MEDIUM): reconnect_epoch: u64 value 0 was ambiguous (epoch 0 is
  valid). Fixed: replaced with is_reconnect: bool.
- R3-7 (LOW): record() did not update last_eviction_epoch. Fixed: now
  updates last_eviction_epoch = now_epoch.
- R3-9 (MEDIUM): First-BIND-wins rule for simultaneous BINDs not
  specified. Fixed: added to witness rule #10.
- R3-12 (LOW): NonceReplayTable local time assumption not specified.
  Fixed: added doc comment.

0855p-c (Domain Coordinator):
- R3-3 (CRITICAL): PlatformEvent enum with #[repr(u8)] cannot carry
  payload data in Rust. R2-DC-4 design was broken. Fixed: regular Rust
  enum with data-carrying variants; added MembershipAction sub-enum;
  added wire-format spec.
- R3-11 (MEDIUM): Platform event delivery order missing from implicit
  assumptions. Fixed: added IA-DC-3a row.

0851p-a (Network Bootstrap):
- R3-10 (LOW): Default seed list effective_epoch and expires_epoch not
  in table. Fixed: added columns with values 0 and 7,776,000.

0855p-b v1.1 (Coordinator Lifecycle):
- R3-2 (LOW): Genesis constants in subsection, not top-level appendix.
  Fixed: added note that constants are in §B'. Genesis Constants.
- R3-5 (LOW): GENESIS_EPOCH_TOLERANCE=1 rationale not explained. Fixed:
  added comment explaining consistency with other ±1 tolerances.

11 issues fixed. Key insight: R3 found bugs in R1/R2 fixes, validating the
multi-round methodology. R3-3 was particularly important — R2 design
would not have compiled.
Next: Round 4 to verify and find new issues.
mmacedoeu pushed a commit that referenced this pull request Jul 22, 2026
Per [[stoolap-general-purpose-db]] HARD RED LINE principle:
- CASM compilation (Phase B.2) was orthogonal to SQL; relocated from
  stoolap fork 'feat/blockchain-sql' to cipherocto workspace crate
  'zk-circuit/' (Cairo JSON -> CASM bytecode + BLAKE3 hash).
- STWO verify (Phase C.2) similarly orthogonal; relocated to
  'zk-verifier/' (verify entry point + stub commitment contract).
- STWO source drop slot moved to 'zk-vendor/' (rust-toolchain.toml
  pins MSRV for stable-rust patches).
- Mission 0958-a amended v0.3 (2026-07-22); sibling mission
  'zk-proof-verification.md' cross-linked to new substrate.

Migration effects:
- octo-wallet/capability/zk_mint.rs: bundled_casm_hash() now computes
  via zk_circuit::compile(); COMPILED_CASM_BLAKE3_HASH memoized in
  OnceLock (formerly const [u8;32]).
- quota-router-core/zk_verify/capability.rs: STWO-level verify now
  delegates to zk_verifier::verify_capability_zk (CipherOcto domain
  PublicInputs mapped to zk-verifier PublicInputs).
- Plan §0/§4/§5/§8/§9 updated; fork PR row canceled.

Tests:
- 4 new tests in zk-circuit (compile_emits_64_char_hex_hash,
  compile_is_deterministic, compile_different_program_different_hash,
  hash_shape_matches_rfc_0958).
- 7 new tests in zk-verifier (casm_hash_mismatch, clock_skew_exceeded,
  max_skew_secs_constant, skew_within_window_ok,
  clock_skew_at_boundary, stub_proof_can_verify,
  stub_proof_wrong_salt_rejected).
- 2 new tests in zk-vendor (vendor_state_is_stub_for_now,
  stwo_stub_marker_is_deterministic).
- zk_vectors.rs 8/8 tests green (rebuilt stub_proof_bytes
  constructor under new commitment contract).

Verification:
- cargo test -p octo-wallet --lib: 91/91 pass.
- cargo test --test {eleven_step,fixtures_asks,goldens,egress_boundary,zk_vectors}
  --features full: 41/41 pass.
- cargo test --lib -p zk-circuit -p zk-verifier -p zk-vendor: 13/13.
- cargo clippy --workspace --all-targets --features full -- -D warnings:
  clean.
- cargo fmt --all --check: clean.

Migration scope:
- Master plan §0: +3 crate rows (zk-circuit, zk-verifier, zk-vendor);
  fork PR row canceled (no cross-repo PR for CASM/STWO).
- Master plan §4 Phase B.2 + C.2: location updated to cipherocto
  workspace crates (not stoolap fork).
- Master plan §5 S05 row: same migration note.
- Master plan §8 Risk #6, #10: stove-of-work now lives in cipherocto
  workspace (no fork coordination).
- Mission 0958-a v0.3: crypto extraction amendment; cross-repo
  coordination section marked N/A.
- Sibling mission zk-proof-verification.md: cross-link note added.
mmacedoeu added a commit that referenced this pull request Aug 3, 2026
Round 1 review (background subagent, 2026-07-30) found 38 findings
(4 BLOCKER + 11 MAJOR + 15 MINOR + 8 NIT). All BLOCKER + most MAJOR/MINOR
findings addressed:

**BLOCKER fixes**:
- B1: Parent path corrected. 0968a lives at `missions/claimed/`, NOT
  `missions/archived/`. No Path B closure was ever executed on 0968a.
  Removed the stale "closed via Path B" framing from Status header.
- B2: Implications of B1 propagated. 0968a remains in `claimed/` with
  9 ungrounded ACs. 0968a2 does NOT supersede 0968a — it tracks the
  remaining work.
- B3: Removed fabricated "RFC-0968 cross-cutting rule" + "2 minor
  versions" deprecation. No such rule exists. Replaced with honest
  framing: "consumers using serde over the error enum will silently
  misdeserialize during the swap; a coordinated release is required."
- B4: Scope item 2 reframed. IMPL `ReputationAnchorBatch` has 5
  fields; RFC-0955-R1 has 14. The drift is two-part: (a) 9 per-tuple
  fields moved to `AnchorLeaf` per RFC-0955-R1 amendment 48 (deliberate
  per-controller refactor — NOT a drift to fix); (b) 3 governance fields
  missing entirely. Mission now only claims item (b) is the fix scope.

**MAJOR fixes**:
- 0855p-b is now archived (closed 2026-07-27). Added explicit
  ## Dependencies section with hard deps (Mission 0968a, chain-substrate
  selection RFC) + soft dep (0855p-b successor).
- Scope item 6: `constants.rs:30 area` → `constants.rs:53` (actual
  location of `DEFAULT_ANCHOR_INTERVAL_SECS`). Removed the fabricated
  `peers_reputation::anchor` config block (RFC-0927 is RouterConfig,
  not reputation — no such reputation config block exists in any RFC).
- Scope item 8: Idempotency is on `reputation_anchors(event_id)` per
  the UNIQUE constraint, NOT on `anchor_tx_hash` as previously claimed.
  Composite-PK scope is on `reputation_events(recorder_did, event_id)`,
  not `reputation_anchors`.
- Error.rs citation: `362-363` → `359-364` (multi-line test mapping).
- Line range `§ReputationAnchorBatch (lines 148-198)` → `148-198`
  is plausible; section content extends to 201.
- Line range `§Governance Snapshot Binding (lines 250-267)` → 250-266.
- Added DID-rotation finality handler to Scope item 4 (per RFC-0955-R1
  §"Finality" lines 227-248 — was previously omitted).
- ## RFC section added (was missing).
- ## Dependencies section added (was missing).
- AC #10 downgraded to explanatory note (process check, not testable).
- 'ANCHOR_INTERVAL_SECS' → 'DEFAULT_ANCHOR_INTERVAL_SECS'.

**MINOR fixes**:
- N21: Header format consistent with prior art (`# Mission 0968a2: `).
- N22: ## RFC and ## Dependencies sections added.
- N23: prettier formatted.
- N25: Scope item 3 chain-substrate noted as a separate dependency.
- N33: Complexity justified (comparable to 0968a, plus extra
  IMPL/RFC reconciliation + cross-mission ownership).

**NIT fixes**:
- N35: 'ANCHOR_INTERVAL_SECS' → 'DEFAULT_ANCHOR_INTERVAL_SECS'.

The 19 ([ ]) items (9 Scope + 10 AC) are now grounded in actual code
+ RFC text. Mission remains in `open/` state. The 4 BLOCKER + 11 MAJOR
+ 15 MINOR + 8 NIT findings have all been addressed.

**Coordinated release note**: the StakeBelowMinimum 0x2D → 0x17 swap
is a wire-format break. Mission notes "consumers using serde over
the error enum will silently misdeserialize during the swap; a
coordinated release is required."
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.
mmacedoeu added a commit that referenced this pull request Aug 21, 2026
S6c Round 1 finding #10 — seed() + try_deduct() wrote SystemTime::now()
non-deterministically; masked only because no TV asserted the column.

Substrate:
- StoolapSpendLedger gains clock: Arc<dyn Clock> field
- Reuses existing quota-router-storage::clock::Clock trait
  (unix_millis() -> u64, SystemClock + FixedClock impls from 0957-c)
- Default constructors (open_in_memory / open_path) inject SystemClock
- _with_clock(clock: Arc<dyn Clock>) variants for caller-supplied clocks
- 2 SystemTime::now() sites -> self.clock.unix_millis() as i64
- Test-only raw_query(sql, params) accessor on the substrate

Test:
- TV-0862-10 byte-pins updated_at_unix_ms = 1_700_000_000_000 via
  injected FixedClock + raw SQL column round-trip
- Existing 16 TV byte-stable (no regression)

RFC-0862 v2.0.6:
- Version History table v2.0.6 row (additive on v2.0.5)
- §Clock precondition paragraph added to §StoolapSpendLedger

Mission: missions/claimed/0862-c2-clock-trait.md (status LANDED)
Memory: memory/mission-0862-c2-clock-trait-status.md
mmacedoeu added a commit that referenced this pull request Aug 29, 2026
…ubstrate

- CapabilitySummary + CaveatSummary CLI summary types
- free fns: list_active, mint, attenuate
- MintError::InvalidCaveat(String) additive variant

Per RFC-0011 §Subcommand Taxonomy entries #10-13.
Layer B additive per [[cipherocto-design-principles]].
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant