Resolve defined questions against original evidence without mutating frozen candidate artifacts.
9 tool files copied and hash-verified against the original.
Source evidence, candidate evidence, human decision, audit acceptance, release and production are six separate things. This step produces the highlighted one and nothing further.
An authorised human reviewer is shown the original page or crop beside the exact captured value and its context, and answers a typed question. Answers are append-only and attributable. A correction is stored in a separate adjudication layer and never written back over CAP-RAW.
Nothing continues on a failed gate. Uncertainty becomes an explicit HOLD, and no later step may read an unanswered item as an accepted one.
https://review.marsoom.app verified reachable 2026-09-04
Three facts that must travel with that link.
The bare root is deliberate: the review client has no URL routing, so a deep path would 404 against its static asset map. That site belongs to a different session; nothing here modifies, redeploys or writes to it.
grouping, label, title, subtitle, spelling, date, furniture. Each answer is addressed to an item id of the form ITEM:<dimension>:<id>. Free-form commentary is not a review answer.CONFIRMED, CORRECTED, UNREADABLE, DEFERRED, CONFLICT. The export additionally carries cannot_determine and an excluded_by code (E1–E6: cannot-determine, illegible, owner void, integrity failure, subtitle true-negative, overlap duplicate) so an exclusion is always attributable to a stated reason rather than a silent drop.assignment.reviewer_ref is an opaque id and, by contract, never a username. Reviewer identity must not appear in this repository, in the portal, or in any public artifact.answered_at, and an approved correction records approved_at, in UTC ISO-8601. Timestamps are written once at the moment of the decision. There is no update path that rewrites them, so the order of events stays reconstructable.CONFLICT, the item goes to adjudication rather than to a majority vote. Both positions are retained. A correction carries status of proposed, approved or rejected, and only approved may reach designer feedback or training.UNREADABLE and DEFERRED escalate to the owner rather than resolving themselves. An unanswered or unreadable item is never converted into an accept by omission, and no downstream step may treat it as one. If the original evidence itself is insufficient, the escalation is against the source, not the reviewer.marsoom.human-review-import.v47.profile-review-site-1 is the schema document's $id. The payload's schema field must read exactly marsoom.human-review-import.v47 — bare, with no profile suffix. The import gate compares that string and rejects the entire file at G1.1 if it differs; nothing is loaded, not even partially. The payload must also carry presentation_status: "HOLD" (gate G1.2). Two identifiers, two different jobs. (Confirmed by the VER V1 session, 2026-09-04.)marsoom.review-answers-export.v1 — here the $id and the emitted schema field are the same string. Owner-only, at GET /api/owner/export. Not public, so this portal cannot read it.spelling_metric.recall is a hard constant not_measured in the export contract — no code path may compute or display one.17 SPELL19 EXTRACTNot a model. Reviewer instructions, calibration and the closed question set are defined by the review contract. The review site deliberately withholds model confidence from the reviewer before they answer, so the machine cannot lead the witness.
Failure codes this step may emit:
Uncertainty becomes an explicit HOLD. Omission never converts uncertainty into acceptance, and no downstream step may treat an unanswered item as an accepted one.
Adjudicated truth layer, Separate acceptance/release policy
python BUILDER_STAGE_A.py then BUILDER_STAGE_B.py to build the immutable review package; the package is then imported into the review websiteV005 is the highest version under review_packages/issue_4547 and was built 2026-09-04T06:34Z, AFTER the V004 pixel audit found V004's confidence heuristic yielded only 33.8 percent real errors. V005 replaces that heuristic with the trained SPELL detector plus SUPPRESSED_CANDIDATES.json and VERIFIER_REGISTRY_V3.json. The two contract schemas are the canonical copies placed by the review-site owner in the Human review Tool folder.
| File | Original SHA-256 | Bytes | Copy |
|---|---|---|---|
BUILDER_STAGE_A.py |
349254e19aaed59a… | 10,209 | verified |
BUILDER_STAGE_B.py |
3ce3f956bacd8c35… | 19,136 | verified |
REVIEW_FLOW.json |
1c5e4bf4965b1f59… | 283,388 | verified |
SCORING_CONTRACT.json |
04821b2aa9cf9409… | 3,182 | verified |
EXPORT_CONTRACT.json |
3970d1246ba47e56… | 2,083 | verified |
TEST_CONTRACT.json |
9881201a2ab04ddf… | 1,599 | verified |
READY.json |
492579508714c8d7… | 2,881 | verified |
contracts/marsoom.human-review-import.v47.profile-review-site-1.schema.json |
02e515a950d533e8… | 12,539 | verified |
contracts/marsoom.review-answers-export.v1.schema.json |
8ea123d0680c47d7… | 12,189 | verified |
9 file(s), all hash-verified against the original.
Full detail in tool/SOURCE_RECEIPT.json. Copy-only: the historical source is never modified.
| Archived version | Why superseded | Retained value | Bytes |
|---|---|---|---|
| legacy-roles-28.json#VER | SUPERSEDED_BY_OWNER_CORRECTION_2026-09-04. VER was a pinned Flash vision verifier occupying this pipeline slot. The owner ruled that REV is human review and must not be represented as an automatic AI verifier. Corroborated by ARCHITECTURE_FREEZE V8 section 4.14, which already placed VER outside production. | The full VER contract is preserved verbatim in this record so the retired design remains auditable. | copied |
| V004 | V004 spelling candidates came from a Document AI confidence heuristic. The 2026-09-04 direct-pixel audit classified all 160 candidates and found only 54 (33.8 percent) were clear printed errors. | The superseded candidate set and the audit that retired it | referenced |
| V004_SPELL_PIXEL_AUDIT_2026-09-04 | Current audit, retained as evidence | Direct-pixel classification of all 160 V004 candidates with 16 contact sheets. Verdict: HOLD as a list of real spelling errors. | referenced |
3 archived version(s). Historical packages are never deleted or mutated; large ones are referenced with verified paths rather than copied, because the source archive is 11 GB.
Reviewer identity is an opaque id and never a username. Owner-only fields such as model confidence are stripped server-side for non-owner responses. Private reviewer detail must never appear in this repository or in the portal.
Human reviewer time. No metered provider cost.
Copying a tool into this repository does not authorise running it, retraining it, calling a model, or processing a new issue. No paid call may be made without the owner's explicit authorisation and a hard cost cap.
registry/roles.json (schema marsoom.e2t.roles.v1)HUMANFeedback is recorded per source and never merged into an invented consensus. Where sources disagree, both positions stand and the owner decides.
| Source | Events |
|---|---|
| Naser / owner Final authority. Overrides every other source. |
none recorded |
| Codex / orchestrator Architecture and sequencing. |
none recorded |
| Builder / designer Implementation reality and constraints. |
none recorded |
| Independent reviewer Adversarial review of claims. |
none recorded |
| Auditor Evidence verification against artifacts. |
none recorded |
| Human REV reviewer Page-level truth from the review site. |
none recorded |
No feedback events recorded yet. The ledger exists and is append-only:
feedback/FEEDBACK_LEDGER.jsonl.
Editing feedback is not possible: a change is a new event whose
supersedes names the one it replaces, and the original stays exactly as written.
Generated from registry/roles.json by tools/build-reports.mjs.
Do not hand-edit — edit the registry and rebuild.
Original page pixels are the visual authority. CAP owns the exact captured text.