Describe the handover checks of #110, the nonce-store tests of #111, and the new counts
The renounce phase now takes neither the Safe nor the timelock on trust: phases 3 and 5 refuse a timelock whose code is not the TimelockController phase 2 deploys (the metadata solc appends is ignored) or that the deployer did not create, and a Safe that is an EIP-7702 delegated account. Phase 5 refuses a Safe that cannot be asked for its threshold unless CONFIRM_UNINSPECTABLE_SAFE vouches for it. Governance and Upgrades gets the four new errors with what to do about each, and Deployment Strategies the variable and the extended list.
The Gate pages say that the SDK README now shows a Redis NonceStore, and the SDK testing page says what the two-gate tests show. Counts: 699 contract tests (692 run, 7 skip) and 206 SDK tests. Home names main 17cccb8.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Make the labels of the moved links match their anchors
The visible line numbers in 102 source-link labels showed the old range after the previous commit moved the anchors. Each label now takes its anchor's range. URLs are untouched.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Move the source-link anchors from main 3e8faed to 17cccb8
Main moved by three merges: the count fix (#109), the handover trust checks (#110) and the nonce-store tests (#111). Anchors into script/SplitAuthority.s.sol, the root README, the SDK README and the Gate test moved with their files.
Only the digits of line anchors change in this commit. Each was mapped through the git diff between the two commits and checked for the same first and last line of text; five approximate moves are the root README's setup and testing sections, whose last line is a count that was reworded.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Describe the three merged changes and bring the test counts to 29 October
Pull requests 103, 104 and 105 change what the pages say.
The oracle answers 202 with durable false for a flag, a resolve and a link when
the state file cannot be written, as it already did for an attestation, and
counts them in sigvara_oracle_writes_not_durable_total. The monitoring, API,
flag and deployment pages say so.
The renounce phase refuses a timelock with a delay under 48 hours, one the Safe
cannot propose to or cancel on, one that not everyone can execute on or that the
Safe or the deployer administers, a timelock address with no code, and a Safe
with a threshold under 2. Governance and Deployment Strategies list the errors
and what to do about each. The deploy script now records the block it starts at
as deployBlock, and the role replay starts there.
The attestation page says why one confirmation is enough on Arc, as Arc's
documentation states it, and why the scan keeps six. The pages that describe the
alpha.9 key leak say that a key that was ever logged or serialized should be
treated as exposed and rotated.
Test counts follow main 58d6b27: 698 contract tests (691 run without a fork
URL), 784 oracle and 197 SDK. The Home page names 58d6b27.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Make the line numbers in the link labels match the anchors again
The label of a source link names the lines its anchor points at, and the
previous commit moved 359 anchors, so their labels said the old numbers. Each
label now takes the range of its anchor. The URLs are untouched, and nothing
outside the square brackets of a link changes.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Move the source-link anchors from main ff0fa68 to 58d6b27
Three pull requests landed after the pages were last checked: the durable
answer for flag, resolve and link in the oracle, the timelock and Safe policy
in the handover script with the recorded deploy block, and the key-rotation
and finality notes in the docs. Only the digits of the line anchors change, so
that each link points at the lines it named before. 359 anchors on 36 pages
moved; 5 end on a paragraph whose wording changed and are approximate.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Cover what the first pass left out
A read-only review of the pages against the code turned up pages that still described the old
behaviour or lacked the new:
- the primary replaces a stranded proposal from its finalizableAt, not from proposedAt plus the
window in force now
- /attest answers 202 on the payment page, the operations troubleshooting list and the service
page
- check-role-holders.mjs runs before the renounce as well, and the registries are required in the
four phases that read them (deploy-timelock only creates the timelock)
- the AI framework diagrams read the bond with the status, and the bond check is marked unreleased
wherever a page mentions it
- maxScoreAgeSeconds is among the values the constructor refuses
- the summaries of the dispute lifecycle say an uphold is refused once the dispute can be expired
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Describe the 202 answer of /attest, the proposal's own deadline and the handover checks
/attest answers 202 with durable: false while the oracle cannot write its state file, and the metric
accepted_not_durable counts it. The oracle and the watcher decide when a proposal can be finalized
from the contract's stored finalizableAt, and judge a proposal that predates the field against the
live window, as the contract does. SplitAuthority needs the four launch registries in every phase,
and check-role-holders.mjs runs with BEFORE_RENOUNCE=1 before the last phase and again after it.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Make each source link's label show the lines its anchor points at
The previous commit moved 911 anchors, so the line numbers printed in their labels were out of
date. Each label now takes the numbers of its anchor. The 3,688 that were already right and every
URL are untouched; the links, their order and all text outside the labels are byte-identical.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Move the line anchors from main 638650f to main 457fa9e
Pull requests 91 to 95 changed lines in SigvaraStaking.sol, the oracle, the SDK and their
README files, so the floating blob/main links drifted. Each anchor was mapped through the git
diff between the two commits: 911 anchors on 58 pages moved, 8 that spanned an edited block
now cover the whole block, none was dropped. Nothing but the digits of an anchor changed.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Make each source link's label show the lines its anchor points at
Follows the anchor move to main 27d03c4. A label such as SigvaraStaking.sol:441-488 has to say
the lines its link points at, so the 587 whose anchor moved are updated to match.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Move the line anchors to main 27d03c4
The staking contract gained about 100 lines across PRs 72 to 74, and the README and four
docs changed, so the wiki's links into them moved. Each anchor is mapped through the
git diff from the tree the wiki was last pinned to (1e5d833). 665 moved exactly (the first
and last line of each still match), 15 moved approximately because the cited lines were
edited (six distinct ranges, each read by hand), none was dropped.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Make each source link's label show the lines its anchor points at
A label such as verifier.ts:15-209 was written from the tree the wiki was generated from, and the anchor
behind it was moved to main later, so the two disagreed on 3,871 links. With an anchor, the label now takes
the anchor's range (the wiki writes 'to the end of the file' as one past the last line, so the label is
clamped to the file). A label with numbers and no anchor linked the whole file and claimed a range nothing
backed, so 414 of those lose their numbers. Link targets are untouched.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Bring the wiki in line with the code on main
Rewrote the prose of 74 of the 75 pages against main at d8e44c2, and marked
what the Arc testnet proxies, which still run the September 2026
implementations, do differently. Each page was read again against the code
by an independent reviewer, and every finding was checked before it was
applied.
Notable corrections: the admin, not the committee, rules on disputes and an
upheld ruling waits for the challenge deadline; a slash nobody executes can
be lapsed by anyone 14 days after its deadline; the outcome in an evidence
leaf is not on chain; meetsThreshold ignores status and bond; the archived
SVR sale and vesting contracts are not the mainnet design; SDK changes
after alpha.9 are marked as unreleased.
Also fixed four Mermaid diagrams that did not parse. All 532 diagrams now
parse, and every source link resolves against main.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Fix dead source links and move line anchors to main
1,755 source links carried a stray Sigvara-main/ path segment and returned 404; the segment is removed. Two links were malformed by hand (a space inside packages/sdk, a stray character inside test/E2E.t.sol) and are repaired.
The line anchors were taken from the tree the wiki was generated from (main at f852051, 2 October 2026). Each one is now mapped to the current main through the git diff: 3,788 land on the same code they started on, 312 sit on code that changed and are approximate, 413 pointed at code that no longer exists and become plain file links, and 488 are in files that did not change. No prose is changed in this commit.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Publish the repository wiki, edited for a reader rather than a generator
73 pages generated from the source tree at f852051, plus a landing page and a
sidebar. Three changes were needed before any of it was fit to publish.
5,591 citation links pointed at `file://` paths, which resolve to nothing on a
wiki. Repointed at the repository, line ranges intact, so every claim on a
generated page can be checked against the code it came from. That turns the
densest thing about these pages into the most useful.
124 placeholder lines reading "[No sources needed since this section provides
general guidance]" are generator scaffolding and are gone.
One claim was misleading rather than wrong: System Overview said payment
scanning is off by default, which is true of the shipped default and not of this
deployment, where it has been on since 3 October. Now says both.
Flattened from nine nested sections into page names, since wiki pages are
addressed by name. No collisions, and the generator never cross-linked pages, so
nothing broke: 75 pages, zero broken internal links.
The landing page is written rather than generated. It leads with what the
protocol is, the six factors and their caps, what has actually been proven on a
live deployment, and what has not — no audit, admin rights still on a deployer
EOA, both operators run by the same party. It also says these pages are derived
and that the code and `docs/` win where they disagree, because a generated wiki
drifts and readers should know which half to trust.
The `.qoder/repowiki/knowledge` tree is deliberately not published: ten pages of
tool-internal notes carrying `kind:` and `scope:` frontmatter and source paths
prefixed `Sigvara-main/`, written for a machine rather than a reader.