{"format": "ta-amps.seed-pack.nouns.v1", "pack_id": "usability-heuristics-review", "status": "proposal_only", "records": [ {"store": "seedpack.usability-heuristics-review", "key": "usability-heuristics-review.v0.1.0.pack", "expected_version": 0, "producer_surface": "surface:tessera", "visibility_scope": "surface_only", "allowed_surfaces": [], "target_cohorts": ["all"], "tags": ["category:noun.skill_pack", "pack:usability-heuristics-review", "role:pack", "content:authored", "spdx:MIT", "status:quarantined"], "value": {"category_id": "noun.skill_pack", "role": "pack", "pack": "usability-heuristics-review", "pack_version": "0.1.0", "title": "A collection of nouns and verbs for reviewing a page or app against ten usability heuristics", "lets_workers": "Scope a review to pages, tasks, widths and themes; have several evaluators walk the tasks independently against ten heuristics kept as nouns; combine their findings by a fixed rule; have a different worker confirm each one; and propose one fix verb per confirmed finding, ranked by severity.", "flow": [{"verb": "usability-heuristics-review.scope-review", "when": "Before evaluating."}, {"verb": "usability-heuristics-review.evaluate-against-heuristics", "when": "Once per evaluator, as separate attempts that do not see each other's sheets."}, {"verb": "usability-heuristics-review.combine-findings", "when": "When at least two sheets are in; deterministic."}, {"verb": "usability-heuristics-review.review-findings", "when": "A different worker or a person confirms, changes or rejects each finding."}, {"verb": "usability-heuristics-review.propose-fixes", "when": "For the confirmed findings."}], "heuristics": [{"store": "seedpack.usability-heuristics-review", "key": "usability-heuristics-review.v0.1.0.heuristic.visibility-of-status", "version": 1, "value_sha256": "4f82c9fc7b3ea7b17601f9b8f473c0a108dfbd3bc7bb42296fb78fca86ee6055"}, {"store": "seedpack.usability-heuristics-review", "key": "usability-heuristics-review.v0.1.0.heuristic.match-real-world", "version": 1, "value_sha256": "04a34c4dc8c54969dcc2809a549963e15dd4ee54fd38235350e11243eb3daabe"}, {"store": "seedpack.usability-heuristics-review", "key": "usability-heuristics-review.v0.1.0.heuristic.user-control", "version": 1, "value_sha256": "4a8bb0c642c9ca6bae1d9e0f4866dad04456f4f7be7011f6fbd2c8c57dee104e"}, {"store": "seedpack.usability-heuristics-review", "key": "usability-heuristics-review.v0.1.0.heuristic.consistency", "version": 1, "value_sha256": "6335578728abbb307c84149ab94b1fb71165b86d619d04c55b7dcbfdc688e0d4"}, {"store": "seedpack.usability-heuristics-review", "key": "usability-heuristics-review.v0.1.0.heuristic.error-prevention", "version": 1, "value_sha256": "bcd21c99901402af38f3ae18aeb90a805d63e14f3cea08b41ce9da8491f65f9d"}, {"store": "seedpack.usability-heuristics-review", "key": "usability-heuristics-review.v0.1.0.heuristic.recognition-over-recall", "version": 1, "value_sha256": "9684494a5f40c1948574929d5c8b251a3f440f16b6ac692ceaf70290a1231334"}, {"store": "seedpack.usability-heuristics-review", "key": "usability-heuristics-review.v0.1.0.heuristic.flexibility-efficiency", "version": 1, "value_sha256": "efa550722c23a44ab20737018c69e75b378a67bae364afa1081fac9e679d1491"}, {"store": "seedpack.usability-heuristics-review", "key": "usability-heuristics-review.v0.1.0.heuristic.minimalist-design", "version": 1, "value_sha256": "67069d0251f06c713c32a43154696fd64ccb39742e2481fa88f80f3322e1e4c7"}, {"store": "seedpack.usability-heuristics-review", "key": "usability-heuristics-review.v0.1.0.heuristic.error-recovery", "version": 1, "value_sha256": "75c077e920f14f69028a88eb3931bee7f4fc0d5e6f05846094804f8f259d5433"}, {"store": "seedpack.usability-heuristics-review", "key": "usability-heuristics-review.v0.1.0.heuristic.help-documentation", "version": 1, "value_sha256": "cb5a26d51122e37813fde5bc392cd218019f3e722d14fa0984d3ae772d78c664"}], "guardrails": ["Evaluators work independently and only then are combined; one evaluator finds fewer problems than several.", "Each finding names one primary heuristic, a severity from 1 to 4 with its reasons, and a screenshot region as evidence.", "A heuristic review is expert inspection, not testing with real users; it complements acceptance testing, never replaces it.", "Findings describe the design, never the people who use or build it.", "Each confirmed finding proposes a fix verb; workers never fix during a review."], "worked_examples": [{"store": "seedpack.usability-heuristics-review", "key": "usability-heuristics-review.v0.1.0.heuristic-checks", "version": 1, "value_sha256": "d1f3ff5e5791b37eb4ad1f9a3dcb8208e9ea58a8b8e58f3a0d4eba07e9f304a8"}, {"store": "seedpack.usability-heuristics-review", "key": "usability-heuristics-review.v0.1.0.example.review-scope", "version": 1, "value_sha256": "e0c3aafbe6804504b80fd0d7cc1740e7f4b990cc20cfb7428738855aea5089f9"}, {"store": "seedpack.usability-heuristics-review", "key": "usability-heuristics-review.v0.1.0.example.evaluation-sheet", "version": 1, "value_sha256": "d5416a3711fd5e6bbe498a49b34bb232736026a9796594195b34e36c34ed46aa"}, {"store": "seedpack.usability-heuristics-review", "key": "usability-heuristics-review.v0.1.0.example.combined-findings", "version": 1, "value_sha256": "e919328b79aa5902317631c9a66bebca0b4b19df614134f22a0ca437d148cf3d"}, {"store": "seedpack.usability-heuristics-review", "key": "usability-heuristics-review.v0.1.0.example.fix-plan", "version": 1, "value_sha256": "80f12be13e57b9d8efca66685604a80909281e3ed5309e78dc26a782ff79ea8c"}], "complements": ["Accessibility problems found here cite their WCAG criterion and go to the accessibility audit pack for a full check.", "Wording and layout choices with no single right answer go to the taste palettes pack.", "Personas and tasks can come from the user acceptance testing pack.", "A screenshot sent with little or no text, or a measured layout rule such as cropping or spacing, goes to the screenshot design review pack; this pack judges whole tasks against heuristics."], "status": "proposal", "admission": "not_admitted", "content_kind": "authored_guidance", "license": "MIT", "provenance": {"source": "original ta-amps authored proposal", "license": "MIT", "generator": "scripts/build_packs.py", "independently_verified": false}, "dimensions": {"determinism": 0.0, "evidence_grounding": 0.0, "token_efficiency": 0.0, "safety_compliance": 0.0, "verification_tier": "unverified"}, "dimension_basis": {"measured": false, "method": "unmeasured_floor", "reason": "Tessera requires these axes, so each is set to its lowest value and the tier is unverified. No quality is claimed. Replace them only with measured values and the evidence that produced them."}, "relations": [{"relation": "requires_noun", "target_id": "seedpack.usability-heuristics-review/usability-heuristics-review.v0.1.0.method", "target_category": "noun.skill_pack", "note": ""}, {"relation": "requires_noun", "target_id": "seedpack.usability-heuristics-review/usability-heuristics-review.v0.1.0.severity-scale", "target_category": "noun.reflex_procedure", "note": ""}, {"relation": "requires_noun", "target_id": "seedpack.usability-heuristics-review/usability-heuristics-review.v0.1.0.combine-rules", "target_category": "noun.reflex_procedure", "note": ""}, {"relation": "requires_noun", "target_id": "seedpack.usability-heuristics-review/usability-heuristics-review.v0.1.0.evidence-rules", "target_category": "noun.reflex_procedure", "note": ""}, {"relation": "requires_noun", "target_id": "seedpack.usability-heuristics-review/usability-heuristics-review.v0.1.0.heuristic-checks", "target_category": "noun.benchmark_suite", "note": ""}, {"relation": "requires_noun", "target_id": "seedpack.usability-heuristics-review/usability-heuristics-review.v0.1.0.heuristic.visibility-of-status", "target_category": "noun.skill_pack", "note": ""}, {"relation": "requires_noun", "target_id": "seedpack.usability-heuristics-review/usability-heuristics-review.v0.1.0.heuristic.match-real-world", "target_category": "noun.skill_pack", "note": ""}, {"relation": "requires_noun", "target_id": "seedpack.usability-heuristics-review/usability-heuristics-review.v0.1.0.heuristic.user-control", "target_category": "noun.skill_pack", "note": ""}, {"relation": "requires_noun", "target_id": "seedpack.usability-heuristics-review/usability-heuristics-review.v0.1.0.heuristic.consistency", "target_category": "noun.skill_pack", "note": ""}, {"relation": "requires_noun", "target_id": "seedpack.usability-heuristics-review/usability-heuristics-review.v0.1.0.heuristic.error-prevention", "target_category": "noun.skill_pack", "note": ""}, {"relation": "requires_noun", "target_id": "seedpack.usability-heuristics-review/usability-heuristics-review.v0.1.0.heuristic.recognition-over-recall", "target_category": "noun.skill_pack", "note": ""}, {"relation": "requires_noun", "target_id": "seedpack.usability-heuristics-review/usability-heuristics-review.v0.1.0.heuristic.flexibility-efficiency", "target_category": "noun.skill_pack", "note": ""}, {"relation": "requires_noun", "target_id": "seedpack.usability-heuristics-review/usability-heuristics-review.v0.1.0.heuristic.minimalist-design", "target_category": "noun.skill_pack", "note": ""}, {"relation": "requires_noun", "target_id": "seedpack.usability-heuristics-review/usability-heuristics-review.v0.1.0.heuristic.error-recovery", "target_category": "noun.skill_pack", "note": ""}, {"relation": "requires_noun", "target_id": "seedpack.usability-heuristics-review/usability-heuristics-review.v0.1.0.heuristic.help-documentation", "target_category": "noun.skill_pack", "note": ""}]}}, {"store": "seedpack.usability-heuristics-review", "key": "usability-heuristics-review.v0.1.0.method", "expected_version": 0, "producer_surface": "surface:tessera", "visibility_scope": "surface_only", "allowed_surfaces": [], "target_cohorts": ["all"], "tags": ["category:noun.skill_pack", "pack:usability-heuristics-review", "role:method", "content:authored", "spdx:MIT", "status:quarantined"], "value": {"category_id": "noun.skill_pack", "role": "method", "pack": "usability-heuristics-review", "pack_version": "0.1.0", "title": "How a heuristic review runs from scope to fix verbs", "category_reason": "A reusable procedure with guardrails, followed by every verb in this pack.", "lifecycle": ["scope-review names the pages, tasks, personas, widths, themes and heuristics.", "evaluate-against-heuristics: each evaluator walks the tasks alone and records findings with evidence.", "combine-findings groups the same problem across sheets and takes the median severity; disagreements stay visible.", "review-findings: a worker who evaluated nothing confirms, changes or rejects each combined finding.", "propose-fixes picks one fix verb per confirmed finding and ranks them."], "rules": ["Two to five independent evaluators; more evaluators find more problems, with diminishing returns.", "Walk real tasks, not screens: every finding names the task step it interrupts.", "One primary heuristic per finding; related WCAG criteria are listed when the problem is also an accessibility issue.", "Severity combines frequency, impact and persistence by the severity scale.", "Failures stay on the record: a rejected finding keeps its reason."], "follow_ups": {"accessibility": "accessibility-audit.plan-audit", "taste": "taste-palettes.draft-embodiments", "record": "findings-to-fixes.record-finding"}, "sources": ["Paraphrased from the ten usability heuristics Jakob Nielsen published in 1994 and revised in 2020 (https://www.nngroup.com/articles/ten-usability-heuristics/); the questions, examples and fixes here are original."], "status": "proposal", "admission": "not_admitted", "content_kind": "authored_guidance", "license": "MIT", "provenance": {"source": "original ta-amps authored proposal", "license": "MIT", "generator": "scripts/build_packs.py", "independently_verified": false}, "dimensions": {"determinism": 0.0, "evidence_grounding": 0.0, "token_efficiency": 0.0, "safety_compliance": 0.0, "verification_tier": "unverified"}, "dimension_basis": {"measured": false, "method": "unmeasured_floor", "reason": "Tessera requires these axes, so each is set to its lowest value and the tier is unverified. No quality is claimed. Replace them only with measured values and the evidence that produced them."}, "relations": []}}, {"store": "seedpack.usability-heuristics-review", "key": "usability-heuristics-review.v0.1.0.heuristic.visibility-of-status", "expected_version": 0, "producer_surface": "surface:tessera", "visibility_scope": "surface_only", "allowed_surfaces": [], "target_cohorts": ["all"], "tags": ["category:noun.skill_pack", "pack:usability-heuristics-review", "role:heuristic", "content:authored", "spdx:MIT", "status:quarantined"], "value": {"category_id": "noun.skill_pack", "role": "heuristic", "pack": "usability-heuristics-review", "pack_version": "0.1.0", "title": "H1: Visibility of system status", "category_reason": "A reusable inspection rule: its questions, typical violations and fix patterns. Applying it takes judgment.", "id": "H1", "name": "Visibility of system status", "asks": "People can always tell what is happening and what just happened, soon enough to act on it.", "questions": ["After each action, is there a visible change that confirms it?", "Does a slow step say it is working and how long it may take?", "Can people tell where they are in a multi-step task?"], "common_violations": ["A button that gives no sign it was pressed", "A long load with no indicator", "A copy action with no confirmation"], "fix_patterns": ["Confirm each action in place, and announce it to assistive technology as a status message", "Show progress for anything slower than a second"], "related_wcag": ["4.1.3"], "evidence_hint": "A screenshot region at the width and theme where the problem shows, with the task step it interrupts.", "source": "Paraphrased from the ten usability heuristics Jakob Nielsen published in 1994 and revised in 2020 (https://www.nngroup.com/articles/ten-usability-heuristics/); the questions, examples and fixes here are original.", "status": "proposal", "admission": "not_admitted", "content_kind": "authored_guidance", "license": "MIT", "provenance": {"source": "original ta-amps authored proposal", "license": "MIT", "generator": "scripts/build_packs.py", "independently_verified": false}, "dimensions": {"determinism": 0.0, "evidence_grounding": 0.0, "token_efficiency": 0.0, "safety_compliance": 0.0, "verification_tier": "unverified"}, "dimension_basis": {"measured": false, "method": "unmeasured_floor", "reason": "Tessera requires these axes, so each is set to its lowest value and the tier is unverified. No quality is claimed. Replace them only with measured values and the evidence that produced them."}, "relations": []}}, {"store": "seedpack.usability-heuristics-review", "key": "usability-heuristics-review.v0.1.0.heuristic.match-real-world", "expected_version": 0, "producer_surface": "surface:tessera", "visibility_scope": "surface_only", "allowed_surfaces": [], "target_cohorts": ["all"], "tags": ["category:noun.skill_pack", "pack:usability-heuristics-review", "role:heuristic", "content:authored", "spdx:MIT", "status:quarantined"], "value": {"category_id": "noun.skill_pack", "role": "heuristic", "pack": "usability-heuristics-review", "pack_version": "0.1.0", "title": "H2: Match between the system and the real world", "category_reason": "A reusable inspection rule: its questions, typical violations and fix patterns. Applying it takes judgment.", "id": "H2", "name": "Match between the system and the real world", "asks": "The words, order and ideas are the ones the people using it already use, not the builders' own terms.", "questions": ["Would the intended reader use these words for this?", "Are internal or technical terms explained where they first appear?", "Does information appear in the order the task happens?"], "common_violations": ["Internal product or architecture terms shown to newcomers", "Jargon in a button label", "Dates or numbers in an unfamiliar format"], "fix_patterns": ["Use the reader's words and explain any term that must stay", "Order the page the way the task unfolds"], "related_wcag": ["3.1.3"], "evidence_hint": "A screenshot region at the width and theme where the problem shows, with the task step it interrupts.", "source": "Paraphrased from the ten usability heuristics Jakob Nielsen published in 1994 and revised in 2020 (https://www.nngroup.com/articles/ten-usability-heuristics/); the questions, examples and fixes here are original.", "status": "proposal", "admission": "not_admitted", "content_kind": "authored_guidance", "license": "MIT", "provenance": {"source": "original ta-amps authored proposal", "license": "MIT", "generator": "scripts/build_packs.py", "independently_verified": false}, "dimensions": {"determinism": 0.0, "evidence_grounding": 0.0, "token_efficiency": 0.0, "safety_compliance": 0.0, "verification_tier": "unverified"}, "dimension_basis": {"measured": false, "method": "unmeasured_floor", "reason": "Tessera requires these axes, so each is set to its lowest value and the tier is unverified. No quality is claimed. Replace them only with measured values and the evidence that produced them."}, "relations": []}}, {"store": "seedpack.usability-heuristics-review", "key": "usability-heuristics-review.v0.1.0.heuristic.user-control", "expected_version": 0, "producer_surface": "surface:tessera", "visibility_scope": "surface_only", "allowed_surfaces": [], "target_cohorts": ["all"], "tags": ["category:noun.skill_pack", "pack:usability-heuristics-review", "role:heuristic", "content:authored", "spdx:MIT", "status:quarantined"], "value": {"category_id": "noun.skill_pack", "role": "heuristic", "pack": "usability-heuristics-review", "pack_version": "0.1.0", "title": "H3: User control and freedom", "category_reason": "A reusable inspection rule: its questions, typical violations and fix patterns. Applying it takes judgment.", "id": "H3", "name": "User control and freedom", "asks": "People can undo, go back, cancel or leave any state they entered by mistake, without losing their work.", "questions": ["Is there a clear way out of every dialog, mode and step?", "Does going back keep what was typed?", "Can a mistaken action be undone?"], "common_violations": ["A modal with no close control", "A form that clears on back", "An action with no undo or confirmation"], "fix_patterns": ["Give every state an exit and keep entered data", "Offer undo for reversible actions and confirmation for irreversible ones"], "related_wcag": ["2.1.2", "3.3.4"], "evidence_hint": "A screenshot region at the width and theme where the problem shows, with the task step it interrupts.", "source": "Paraphrased from the ten usability heuristics Jakob Nielsen published in 1994 and revised in 2020 (https://www.nngroup.com/articles/ten-usability-heuristics/); the questions, examples and fixes here are original.", "status": "proposal", "admission": "not_admitted", "content_kind": "authored_guidance", "license": "MIT", "provenance": {"source": "original ta-amps authored proposal", "license": "MIT", "generator": "scripts/build_packs.py", "independently_verified": false}, "dimensions": {"determinism": 0.0, "evidence_grounding": 0.0, "token_efficiency": 0.0, "safety_compliance": 0.0, "verification_tier": "unverified"}, "dimension_basis": {"measured": false, "method": "unmeasured_floor", "reason": "Tessera requires these axes, so each is set to its lowest value and the tier is unverified. No quality is claimed. Replace them only with measured values and the evidence that produced them."}, "relations": []}}, {"store": "seedpack.usability-heuristics-review", "key": "usability-heuristics-review.v0.1.0.heuristic.consistency", "expected_version": 0, "producer_surface": "surface:tessera", "visibility_scope": "surface_only", "allowed_surfaces": [], "target_cohorts": ["all"], "tags": ["category:noun.skill_pack", "pack:usability-heuristics-review", "role:heuristic", "content:authored", "spdx:MIT", "status:quarantined"], "value": {"category_id": "noun.skill_pack", "role": "heuristic", "pack": "usability-heuristics-review", "pack_version": "0.1.0", "title": "H4: Consistency and standards", "category_reason": "A reusable inspection rule: its questions, typical violations and fix patterns. Applying it takes judgment.", "id": "H4", "name": "Consistency and standards", "asks": "The same thing looks, is named and behaves the same everywhere, and follows the conventions people know from elsewhere.", "questions": ["Is one destination or action named the same in every place?", "Do links look like links and buttons like buttons?", "Do pages of the same kind share one layout?"], "common_violations": ["Two labels for the same page", "A page that drops the site's navigation and styles", "A brand name spelled two ways"], "fix_patterns": ["Pick one name per thing and use it everywhere", "Keep shared navigation and layout on every page"], "related_wcag": ["3.2.3", "3.2.4"], "evidence_hint": "A screenshot region at the width and theme where the problem shows, with the task step it interrupts.", "source": "Paraphrased from the ten usability heuristics Jakob Nielsen published in 1994 and revised in 2020 (https://www.nngroup.com/articles/ten-usability-heuristics/); the questions, examples and fixes here are original.", "status": "proposal", "admission": "not_admitted", "content_kind": "authored_guidance", "license": "MIT", "provenance": {"source": "original ta-amps authored proposal", "license": "MIT", "generator": "scripts/build_packs.py", "independently_verified": false}, "dimensions": {"determinism": 0.0, "evidence_grounding": 0.0, "token_efficiency": 0.0, "safety_compliance": 0.0, "verification_tier": "unverified"}, "dimension_basis": {"measured": false, "method": "unmeasured_floor", "reason": "Tessera requires these axes, so each is set to its lowest value and the tier is unverified. No quality is claimed. Replace them only with measured values and the evidence that produced them."}, "relations": []}}, {"store": "seedpack.usability-heuristics-review", "key": "usability-heuristics-review.v0.1.0.heuristic.error-prevention", "expected_version": 0, "producer_surface": "surface:tessera", "visibility_scope": "surface_only", "allowed_surfaces": [], "target_cohorts": ["all"], "tags": ["category:noun.skill_pack", "pack:usability-heuristics-review", "role:heuristic", "content:authored", "spdx:MIT", "status:quarantined"], "value": {"category_id": "noun.skill_pack", "role": "heuristic", "pack": "usability-heuristics-review", "pack_version": "0.1.0", "title": "H5: Error prevention", "category_reason": "A reusable inspection rule: its questions, typical violations and fix patterns. Applying it takes judgment.", "id": "H5", "name": "Error prevention", "asks": "The design prevents mistakes before they happen, especially costly or irreversible ones.", "questions": ["Are risky actions confirmed and explained?", "Do inputs prevent invalid values instead of rejecting them later?", "Is it clear what will happen before an action is taken?"], "common_violations": ["A public submission with no warning that it is public", "A free-text field where a choice list would prevent errors", "Destructive actions next to common ones"], "fix_patterns": ["State consequences before the action", "Constrain inputs and separate risky actions"], "related_wcag": ["3.3.4"], "evidence_hint": "A screenshot region at the width and theme where the problem shows, with the task step it interrupts.", "source": "Paraphrased from the ten usability heuristics Jakob Nielsen published in 1994 and revised in 2020 (https://www.nngroup.com/articles/ten-usability-heuristics/); the questions, examples and fixes here are original.", "status": "proposal", "admission": "not_admitted", "content_kind": "authored_guidance", "license": "MIT", "provenance": {"source": "original ta-amps authored proposal", "license": "MIT", "generator": "scripts/build_packs.py", "independently_verified": false}, "dimensions": {"determinism": 0.0, "evidence_grounding": 0.0, "token_efficiency": 0.0, "safety_compliance": 0.0, "verification_tier": "unverified"}, "dimension_basis": {"measured": false, "method": "unmeasured_floor", "reason": "Tessera requires these axes, so each is set to its lowest value and the tier is unverified. No quality is claimed. Replace them only with measured values and the evidence that produced them."}, "relations": []}}, {"store": "seedpack.usability-heuristics-review", "key": "usability-heuristics-review.v0.1.0.heuristic.recognition-over-recall", "expected_version": 0, "producer_surface": "surface:tessera", "visibility_scope": "surface_only", "allowed_surfaces": [], "target_cohorts": ["all"], "tags": ["category:noun.skill_pack", "pack:usability-heuristics-review", "role:heuristic", "content:authored", "spdx:MIT", "status:quarantined"], "value": {"category_id": "noun.skill_pack", "role": "heuristic", "pack": "usability-heuristics-review", "pack_version": "0.1.0", "title": "H6: Recognition rather than recall", "category_reason": "A reusable inspection rule: its questions, typical violations and fix patterns. Applying it takes judgment.", "id": "H6", "name": "Recognition rather than recall", "asks": "People see their options and the information they need, instead of having to remember it from somewhere else.", "questions": ["Must people remember something from an earlier page to continue?", "Are the available actions visible where they are needed?", "Are examples shown next to inputs that need them?"], "common_violations": ["Instructions only on a previous page", "A command people must retype from memory", "Hidden actions with no hint"], "fix_patterns": ["Show the needed information in place", "Provide examples and copyable values next to the input"], "related_wcag": ["3.3.2"], "evidence_hint": "A screenshot region at the width and theme where the problem shows, with the task step it interrupts.", "source": "Paraphrased from the ten usability heuristics Jakob Nielsen published in 1994 and revised in 2020 (https://www.nngroup.com/articles/ten-usability-heuristics/); the questions, examples and fixes here are original.", "status": "proposal", "admission": "not_admitted", "content_kind": "authored_guidance", "license": "MIT", "provenance": {"source": "original ta-amps authored proposal", "license": "MIT", "generator": "scripts/build_packs.py", "independently_verified": false}, "dimensions": {"determinism": 0.0, "evidence_grounding": 0.0, "token_efficiency": 0.0, "safety_compliance": 0.0, "verification_tier": "unverified"}, "dimension_basis": {"measured": false, "method": "unmeasured_floor", "reason": "Tessera requires these axes, so each is set to its lowest value and the tier is unverified. No quality is claimed. Replace them only with measured values and the evidence that produced them."}, "relations": []}}, {"store": "seedpack.usability-heuristics-review", "key": "usability-heuristics-review.v0.1.0.heuristic.flexibility-efficiency", "expected_version": 0, "producer_surface": "surface:tessera", "visibility_scope": "surface_only", "allowed_surfaces": [], "target_cohorts": ["all"], "tags": ["category:noun.skill_pack", "pack:usability-heuristics-review", "role:heuristic", "content:authored", "spdx:MIT", "status:quarantined"], "value": {"category_id": "noun.skill_pack", "role": "heuristic", "pack": "usability-heuristics-review", "pack_version": "0.1.0", "title": "H7: Flexibility and efficiency of use", "category_reason": "A reusable inspection rule: its questions, typical violations and fix patterns. Applying it takes judgment.", "id": "H7", "name": "Flexibility and efficiency of use", "asks": "Newcomers can get through slowly and safely, and frequent users have faster paths.", "questions": ["Is there a short path for people who know what they want?", "Do shortcuts stay out of the way of newcomers?", "Can people skip what they do not need?"], "common_violations": ["Every visit forces the full tour", "Shortcuts that fire by accident", "No way to jump to the part that matters"], "fix_patterns": ["Offer a direct link for the common task", "Make shortcuts discoverable and easy to turn off"], "related_wcag": ["2.1.4", "2.4.1"], "evidence_hint": "A screenshot region at the width and theme where the problem shows, with the task step it interrupts.", "source": "Paraphrased from the ten usability heuristics Jakob Nielsen published in 1994 and revised in 2020 (https://www.nngroup.com/articles/ten-usability-heuristics/); the questions, examples and fixes here are original.", "status": "proposal", "admission": "not_admitted", "content_kind": "authored_guidance", "license": "MIT", "provenance": {"source": "original ta-amps authored proposal", "license": "MIT", "generator": "scripts/build_packs.py", "independently_verified": false}, "dimensions": {"determinism": 0.0, "evidence_grounding": 0.0, "token_efficiency": 0.0, "safety_compliance": 0.0, "verification_tier": "unverified"}, "dimension_basis": {"measured": false, "method": "unmeasured_floor", "reason": "Tessera requires these axes, so each is set to its lowest value and the tier is unverified. No quality is claimed. Replace them only with measured values and the evidence that produced them."}, "relations": []}}, {"store": "seedpack.usability-heuristics-review", "key": "usability-heuristics-review.v0.1.0.heuristic.minimalist-design", "expected_version": 0, "producer_surface": "surface:tessera", "visibility_scope": "surface_only", "allowed_surfaces": [], "target_cohorts": ["all"], "tags": ["category:noun.skill_pack", "pack:usability-heuristics-review", "role:heuristic", "content:authored", "spdx:MIT", "status:quarantined"], "value": {"category_id": "noun.skill_pack", "role": "heuristic", "pack": "usability-heuristics-review", "pack_version": "0.1.0", "title": "H8: Aesthetic and minimalist design", "category_reason": "A reusable inspection rule: its questions, typical violations and fix patterns. Applying it takes judgment.", "id": "H8", "name": "Aesthetic and minimalist design", "asks": "Each screen holds what this task needs; everything else competes with it and makes it harder to find.", "questions": ["Does the most important thing stand out first?", "Is anything here that this reader does not need for this task?", "Is text short enough to scan?"], "common_violations": ["Several banners competing above the main content", "Long paragraphs before the call to action", "Tiny text to fit more in"], "fix_patterns": ["Lead with the one thing this page is for", "Move secondary detail behind a link or disclosure"], "related_wcag": ["1.4.4", "1.4.8"], "evidence_hint": "A screenshot region at the width and theme where the problem shows, with the task step it interrupts.", "source": "Paraphrased from the ten usability heuristics Jakob Nielsen published in 1994 and revised in 2020 (https://www.nngroup.com/articles/ten-usability-heuristics/); the questions, examples and fixes here are original.", "status": "proposal", "admission": "not_admitted", "content_kind": "authored_guidance", "license": "MIT", "provenance": {"source": "original ta-amps authored proposal", "license": "MIT", "generator": "scripts/build_packs.py", "independently_verified": false}, "dimensions": {"determinism": 0.0, "evidence_grounding": 0.0, "token_efficiency": 0.0, "safety_compliance": 0.0, "verification_tier": "unverified"}, "dimension_basis": {"measured": false, "method": "unmeasured_floor", "reason": "Tessera requires these axes, so each is set to its lowest value and the tier is unverified. No quality is claimed. Replace them only with measured values and the evidence that produced them."}, "relations": []}}, {"store": "seedpack.usability-heuristics-review", "key": "usability-heuristics-review.v0.1.0.heuristic.error-recovery", "expected_version": 0, "producer_surface": "surface:tessera", "visibility_scope": "surface_only", "allowed_surfaces": [], "target_cohorts": ["all"], "tags": ["category:noun.skill_pack", "pack:usability-heuristics-review", "role:heuristic", "content:authored", "spdx:MIT", "status:quarantined"], "value": {"category_id": "noun.skill_pack", "role": "heuristic", "pack": "usability-heuristics-review", "pack_version": "0.1.0", "title": "H9: Help people recognize, diagnose and recover from errors", "category_reason": "A reusable inspection rule: its questions, typical violations and fix patterns. Applying it takes judgment.", "id": "H9", "name": "Help people recognize, diagnose and recover from errors", "asks": "Error messages say in plain words what went wrong and how to fix it, next to where it happened.", "questions": ["Does each error say what happened and what to do next?", "Is the error shown next to the field and announced?", "Does a missing page offer a way back?"], "common_violations": ["An error code with no explanation", "A not-found page that returns success to machines", "An error only shown by color"], "fix_patterns": ["Write errors as a cause and a next step", "Return the right status and offer a way home"], "related_wcag": ["3.3.1", "3.3.3"], "evidence_hint": "A screenshot region at the width and theme where the problem shows, with the task step it interrupts.", "source": "Paraphrased from the ten usability heuristics Jakob Nielsen published in 1994 and revised in 2020 (https://www.nngroup.com/articles/ten-usability-heuristics/); the questions, examples and fixes here are original.", "status": "proposal", "admission": "not_admitted", "content_kind": "authored_guidance", "license": "MIT", "provenance": {"source": "original ta-amps authored proposal", "license": "MIT", "generator": "scripts/build_packs.py", "independently_verified": false}, "dimensions": {"determinism": 0.0, "evidence_grounding": 0.0, "token_efficiency": 0.0, "safety_compliance": 0.0, "verification_tier": "unverified"}, "dimension_basis": {"measured": false, "method": "unmeasured_floor", "reason": "Tessera requires these axes, so each is set to its lowest value and the tier is unverified. No quality is claimed. Replace them only with measured values and the evidence that produced them."}, "relations": []}}, {"store": "seedpack.usability-heuristics-review", "key": "usability-heuristics-review.v0.1.0.heuristic.help-documentation", "expected_version": 0, "producer_surface": "surface:tessera", "visibility_scope": "surface_only", "allowed_surfaces": [], "target_cohorts": ["all"], "tags": ["category:noun.skill_pack", "pack:usability-heuristics-review", "role:heuristic", "content:authored", "spdx:MIT", "status:quarantined"], "value": {"category_id": "noun.skill_pack", "role": "heuristic", "pack": "usability-heuristics-review", "pack_version": "0.1.0", "title": "H10: Help and documentation", "category_reason": "A reusable inspection rule: its questions, typical violations and fix patterns. Applying it takes judgment.", "id": "H10", "name": "Help and documentation", "asks": "Help is easy to find, focused on the task and lists concrete steps; the best design needs little of it.", "questions": ["Can people find help from where they are stuck?", "Does help list steps instead of concepts?", "Is help in the same place on every page?"], "common_violations": ["Help only in a separate repository", "Concept explanations where steps are needed", "Contact or help links that move around"], "fix_patterns": ["Put task help next to the task", "Keep help in one consistent place"], "related_wcag": ["3.2.6"], "evidence_hint": "A screenshot region at the width and theme where the problem shows, with the task step it interrupts.", "source": "Paraphrased from the ten usability heuristics Jakob Nielsen published in 1994 and revised in 2020 (https://www.nngroup.com/articles/ten-usability-heuristics/); the questions, examples and fixes here are original.", "status": "proposal", "admission": "not_admitted", "content_kind": "authored_guidance", "license": "MIT", "provenance": {"source": "original ta-amps authored proposal", "license": "MIT", "generator": "scripts/build_packs.py", "independently_verified": false}, "dimensions": {"determinism": 0.0, "evidence_grounding": 0.0, "token_efficiency": 0.0, "safety_compliance": 0.0, "verification_tier": "unverified"}, "dimension_basis": {"measured": false, "method": "unmeasured_floor", "reason": "Tessera requires these axes, so each is set to its lowest value and the tier is unverified. No quality is claimed. Replace them only with measured values and the evidence that produced them."}, "relations": []}}, {"store": "seedpack.usability-heuristics-review", "key": "usability-heuristics-review.v0.1.0.severity-scale", "expected_version": 0, "producer_surface": "surface:tessera", "visibility_scope": "surface_only", "allowed_surfaces": [], "target_cohorts": ["all"], "tags": ["category:noun.reflex_procedure", "pack:usability-heuristics-review", "role:severity_scale", "content:authored", "spdx:MIT", "status:quarantined"], "value": {"category_id": "noun.reflex_procedure", "role": "severity_scale", "pack": "usability-heuristics-review", "pack_version": "0.1.0", "title": "Rating a usability problem from 1 to 4", "category_reason": "A zero-call rating rule applied the same way by every evaluator.", "levels": {"1": "Cosmetic: fix if time allows.", "2": "Minor: low priority, people get past it.", "3": "Major: important to fix, many people are slowed or misled.", "4": "Catastrophe: people cannot finish the task; fix before release."}, "factors": {"frequency": ["rare", "sometimes", "often"], "impact": ["low", "medium", "high"], "persistence": ["once", "repeated"]}, "rule": "Start from impact (low 1, medium 2, high 3); add one when frequency is often and persistence is repeated; 4 needs high impact.", "zero": "0 means not a usability problem; it is not recorded as a finding.", "mapping_to_findings": {"4": "P1", "3": "P2", "2": "P3", "1": "P3"}, "note": "A problem that exposes data or spends money is not a usability rating; route it to the security review pack.", "status": "proposal", "admission": "not_admitted", "content_kind": "authored_guidance", "license": "MIT", "provenance": {"source": "original ta-amps authored proposal", "license": "MIT", "generator": "scripts/build_packs.py", "independently_verified": false}, "dimensions": {"determinism": 0.0, "evidence_grounding": 0.0, "token_efficiency": 0.0, "safety_compliance": 0.0, "verification_tier": "unverified"}, "dimension_basis": {"measured": false, "method": "unmeasured_floor", "reason": "Tessera requires these axes, so each is set to its lowest value and the tier is unverified. No quality is claimed. Replace them only with measured values and the evidence that produced them."}, "relations": []}}, {"store": "seedpack.usability-heuristics-review", "key": "usability-heuristics-review.v0.1.0.combine-rules", "expected_version": 0, "producer_surface": "surface:tessera", "visibility_scope": "surface_only", "allowed_surfaces": [], "target_cohorts": ["all"], "tags": ["category:noun.reflex_procedure", "pack:usability-heuristics-review", "role:combine_rules", "content:authored", "spdx:MIT", "status:quarantined"], "value": {"category_id": "noun.reflex_procedure", "role": "combine_rules", "pack": "usability-heuristics-review", "pack_version": "0.1.0", "title": "Combining evaluators' findings into one list", "category_reason": "A zero-call deterministic rule: the same sheets always combine the same way.", "same_problem": "Two findings are the same problem when they name the same page and heuristic and their screenshot regions overlap by at least half of the smaller region, at the same width.", "severity": "The combined severity is the median of the evaluators' ratings, rounded up; spread is the highest minus the lowest.", "disagreement": "A spread of 2 or more marks disagreement for the reviewer to settle.", "kept_separate": "Findings that look alike but fail the same-problem test stay separate, with the reason recorded.", "never": "Never drop a finding because only one evaluator saw it.", "model_calls": 0, "status": "proposal", "admission": "not_admitted", "content_kind": "authored_guidance", "license": "MIT", "provenance": {"source": "original ta-amps authored proposal", "license": "MIT", "generator": "scripts/build_packs.py", "independently_verified": false}, "dimensions": {"determinism": 0.0, "evidence_grounding": 0.0, "token_efficiency": 0.0, "safety_compliance": 0.0, "verification_tier": "unverified"}, "dimension_basis": {"measured": false, "method": "unmeasured_floor", "reason": "Tessera requires these axes, so each is set to its lowest value and the tier is unverified. No quality is claimed. Replace them only with measured values and the evidence that produced them."}, "relations": []}}, {"store": "seedpack.usability-heuristics-review", "key": "usability-heuristics-review.v0.1.0.evidence-rules", "expected_version": 0, "producer_surface": "surface:tessera", "visibility_scope": "surface_only", "allowed_surfaces": [], "target_cohorts": ["all"], "tags": ["category:noun.reflex_procedure", "pack:usability-heuristics-review", "role:evidence_rules", "content:authored", "spdx:MIT", "status:quarantined"], "value": {"category_id": "noun.reflex_procedure", "role": "evidence_rules", "pack": "usability-heuristics-review", "pack_version": "0.1.0", "title": "Screenshot regions as evidence", "category_reason": "A zero-call rule for the evidence every finding carries.", "screenshot": "Full-page or viewport PNG at a named width and theme, stored by SHA-256 with its image size.", "region": "[x, y, width, height] in image pixels; it lies inside the image and shows only the problem and enough context to see it.", "what_it_shows": "One sentence naming what the region shows, readable without the image.", "never": ["Screenshots with personal data or someone else's private information", "A region covering the whole screenshot"], "status": "proposal", "admission": "not_admitted", "content_kind": "authored_guidance", "license": "MIT", "provenance": {"source": "original ta-amps authored proposal", "license": "MIT", "generator": "scripts/build_packs.py", "independently_verified": false}, "dimensions": {"determinism": 0.0, "evidence_grounding": 0.0, "token_efficiency": 0.0, "safety_compliance": 0.0, "verification_tier": "unverified"}, "dimension_basis": {"measured": false, "method": "unmeasured_floor", "reason": "Tessera requires these axes, so each is set to its lowest value and the tier is unverified. No quality is claimed. Replace them only with measured values and the evidence that produced them."}, "relations": []}}, {"store": "seedpack.usability-heuristics-review", "key": "usability-heuristics-review.v0.1.0.heuristic-checks", "expected_version": 0, "producer_surface": "surface:tessera", "visibility_scope": "surface_only", "allowed_surfaces": [], "target_cohorts": ["all"], "tags": ["category:noun.benchmark_suite", "pack:usability-heuristics-review", "role:record_checks", "content:authored", "spdx:MIT", "status:quarantined"], "value": {"category_id": "noun.benchmark_suite", "role": "record_checks", "pack": "usability-heuristics-review", "pack_version": "0.1.0", "title": "Record checks for heuristic findings, with synthetic golden findings", "category_reason": "Deterministic checks with synthetic known-good and known-bad records; the validator recomputes them.", "fixture_kind": "finding_checks", "purpose": "Checks every heuristic finding must pass before it is combined with other evaluators' findings: one heuristic, a rating with its reasons, a screenshot region, the page and width, and a fix verb. The two synthetic good findings pass; each synthetic bad finding fails exactly the one check named in fails.", "deterministic_checks": [{"id": "heuristic-named", "rule": {"rule": "pattern_present", "path": "heuristic", "pattern": "^H(10|[1-9])$"}, "why": "Every finding names one primary heuristic, H1 to H10."}, {"id": "severity-on-scale", "rule": {"rule": "enum", "path": "severity", "values": [1, 2, 3, 4]}, "why": "Severity is 1 to 4; 0 means not a problem and is not recorded."}, {"id": "severity-explained", "rule": {"rule": "present", "path": "severity_reason"}, "why": "The rating says why, from frequency, impact and persistence."}, {"id": "frequency-known", "rule": {"rule": "enum", "path": "frequency", "values": ["rare", "sometimes", "often"]}, "why": "Frequency is rated."}, {"id": "impact-known", "rule": {"rule": "enum", "path": "impact", "values": ["low", "medium", "high"]}, "why": "Impact is rated."}, {"id": "screenshot-hashed", "rule": {"rule": "pattern_present", "path": "evidence.screenshot_sha256", "pattern": "^[0-9a-f]{64}$"}, "why": "The screenshot is stored by SHA-256."}, {"id": "region-given", "rule": {"rule": "min_items", "path": "evidence.region", "min": 4}, "why": "The region is x, y, width and height in the screenshot."}, {"id": "region-described", "rule": {"rule": "present", "path": "evidence.what_it_shows"}, "why": "The evidence says what the region shows."}, {"id": "page-recorded", "rule": {"rule": "pattern_present", "path": "page_url", "pattern": "^https?://"}, "why": "The page address is recorded."}, {"id": "width-recorded", "rule": {"rule": "present", "path": "width_px"}, "why": "The viewport width is recorded."}, {"id": "observed-stated", "rule": {"rule": "present", "path": "observed"}, "why": "What was seen is written down."}, {"id": "fix-verb-named", "rule": {"rule": "pattern_present", "path": "fix_verb.template_id", "pattern": "^[a-z0-9-]+\\.[a-z0-9-]+$"}, "why": "Each finding proposes a fix verb by template id."}, {"id": "fix-outcome-stated", "rule": {"rule": "present", "path": "fix_verb.outcome"}, "why": "The fix verb says what it should produce."}, {"id": "catastrophe-is-high-impact", "rule": {"rule": "when", "if": {"path": "severity", "equals": 4}, "then": {"rule": "enum", "path": "impact", "values": ["high"]}}, "why": "A severity 4 finding has high impact."}, {"id": "design-not-people", "rule": {"rule": "pattern_absent", "path": "$", "pattern": "(?i)\\b(stupid|dumb users?|idiots?|lazy|incompetent|careless users?)\\b"}, "why": "Findings describe the design, never the people using it or building it."}, {"id": "no-contact-data", "rule": {"rule": "pattern_absent", "path": "$", "pattern": "[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,}|\\b[0-9]{3}[-. )]{1,2}[0-9]{3}[-. ][0-9]{4}\\b"}, "why": "Findings hold no email addresses or phone numbers."}], "finding_schema": {"type": "object", "additionalProperties": false, "required": ["id", "heuristic", "title", "page_url", "task", "width_px", "theme", "severity", "severity_reason", "frequency", "impact", "persistence", "evidence", "observed", "why_it_matters", "fix_verb", "wcag_sc"], "properties": {"id": {"type": "string", "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,40}$"}, "heuristic": {"type": "string", "pattern": "^H(10|[1-9])$"}, "title": {"type": "string", "minLength": 1, "maxLength": 300}, "page_url": {"type": "string", "pattern": "^https?://", "minLength": 8, "maxLength": 300}, "task": {"type": "string", "minLength": 1, "maxLength": 200}, "width_px": {"type": "integer", "minimum": 200, "maximum": 8000}, "theme": {"type": "string", "enum": ["light", "dark", "high_contrast"]}, "severity": {"type": "integer", "minimum": 1, "maximum": 4}, "severity_reason": {"type": "string", "minLength": 1, "maxLength": 400}, "frequency": {"type": "string", "enum": ["rare", "sometimes", "often"]}, "impact": {"type": "string", "enum": ["low", "medium", "high"]}, "persistence": {"type": "string", "enum": ["once", "repeated"]}, "evidence": {"type": "object", "additionalProperties": false, "required": ["screenshot_sha256", "image_size", "region", "what_it_shows"], "properties": {"screenshot_sha256": {"type": "string", "pattern": "^[0-9a-f]{64}$"}, "image_size": {"type": "array", "minItems": 2, "maxItems": 2, "items": {"type": "integer", "minimum": 1, "maximum": 100000}}, "region": {"type": "array", "minItems": 4, "maxItems": 4, "items": {"type": "integer", "minimum": 0, "maximum": 100000}}, "what_it_shows": {"type": "string", "minLength": 1, "maxLength": 300}}}, "observed": {"type": "string", "minLength": 1, "maxLength": 600}, "why_it_matters": {"type": "string", "minLength": 1, "maxLength": 400}, "fix_verb": {"type": "object", "additionalProperties": false, "required": ["template_id", "outcome"], "properties": {"template_id": {"type": "string", "pattern": "^[a-z0-9-]+\\.[a-z0-9-]+$", "maxLength": 120}, "outcome": {"type": "string", "minLength": 1, "maxLength": 300}}}, "wcag_sc": {"type": "array", "minItems": 0, "maxItems": 3, "items": {"type": "string", "pattern": "^[1-4]\\.[0-9]\\.[0-9]{1,2}$"}}}}, "golden_fixtures": [{"id": "good-jargon", "label": "known_good", "provenance": "synthetic", "finding": {"id": "UH-4", "heuristic": "H2", "title": "The request button uses a term volunteers do not use.", "page_url": "https://pantry.example.invalid/", "task": "Find where to offer a weekend shift", "width_px": 390, "theme": "light", "severity": 3, "severity_reason": "Seen by both evaluators on the first screen; most new volunteers would hesitate, and it repeats on every visit.", "frequency": "often", "impact": "medium", "persistence": "repeated", "evidence": {"screenshot_sha256": "6c2d8e1f0a3b5c7d9e1f2a4b6c8d0e2f4a6b8c0d2e4f6a8b0c2d4e6f8a0b2c4d", "image_size": [390, 844], "region": [16, 412, 358, 64], "what_it_shows": "The main button reads Engage capacity."}, "observed": "The only call to action on the home page is labeled Engage capacity; both personas looked for words like volunteer or sign up.", "why_it_matters": "People who do not recognize the action leave before finding the shift list.", "fix_verb": {"template_id": "taste-palettes.draft-embodiments", "outcome": "Three labeled options for the button, compared side by side for the coordinator to choose."}, "wcag_sc": []}}, {"id": "good-cosmetic", "label": "known_good", "provenance": "synthetic", "finding": {"id": "UH-7", "heuristic": "H1", "title": "Copying the address gives no confirmation.", "page_url": "https://pantry.example.invalid/visit", "task": "Copy the pantry's address", "width_px": 1440, "theme": "dark", "severity": 1, "severity_reason": "Cosmetic: the copy works, people just cannot tell; seen by one evaluator once.", "frequency": "rare", "impact": "low", "persistence": "once", "evidence": {"screenshot_sha256": "6c2d8e1f0a3b5c7d9e1f2a4b6c8d0e2f4a6b8c0d2e4f6a8b0c2d4e6f8a0b2c4d", "image_size": [1440, 900], "region": [980, 300, 160, 40], "what_it_shows": "The Copy button looks the same before and after."}, "observed": "Pressing Copy changes nothing on screen and announces nothing.", "why_it_matters": "People copy again or paste to check, which wastes a step.", "fix_verb": {"template_id": "findings-to-fixes.propose-fix", "outcome": "A fix proposal that shows Copied in place and announces it as a status message."}, "wcag_sc": ["4.1.3"]}}, {"id": "bad-no-heuristic", "label": "known_bad", "fails": "heuristic-named", "why": "No heuristic.", "finding": {"id": "UH-4", "heuristic": "general", "title": "The request button uses a term volunteers do not use.", "page_url": "https://pantry.example.invalid/", "task": "Find where to offer a weekend shift", "width_px": 390, "theme": "light", "severity": 3, "severity_reason": "Seen by both evaluators on the first screen; most new volunteers would hesitate, and it repeats on every visit.", "frequency": "often", "impact": "medium", "persistence": "repeated", "evidence": {"screenshot_sha256": "6c2d8e1f0a3b5c7d9e1f2a4b6c8d0e2f4a6b8c0d2e4f6a8b0c2d4e6f8a0b2c4d", "image_size": [390, 844], "region": [16, 412, 358, 64], "what_it_shows": "The main button reads Engage capacity."}, "observed": "The only call to action on the home page is labeled Engage capacity; both personas looked for words like volunteer or sign up.", "why_it_matters": "People who do not recognize the action leave before finding the shift list.", "fix_verb": {"template_id": "taste-palettes.draft-embodiments", "outcome": "Three labeled options for the button, compared side by side for the coordinator to choose."}, "wcag_sc": []}}, {"id": "bad-severity-zero", "label": "known_bad", "fails": "severity-on-scale", "why": "A zero rating is not a finding.", "finding": {"id": "UH-4", "heuristic": "H2", "title": "The request button uses a term volunteers do not use.", "page_url": "https://pantry.example.invalid/", "task": "Find where to offer a weekend shift", "width_px": 390, "theme": "light", "severity": 0, "severity_reason": "Seen by both evaluators on the first screen; most new volunteers would hesitate, and it repeats on every visit.", "frequency": "often", "impact": "medium", "persistence": "repeated", "evidence": {"screenshot_sha256": "6c2d8e1f0a3b5c7d9e1f2a4b6c8d0e2f4a6b8c0d2e4f6a8b0c2d4e6f8a0b2c4d", "image_size": [390, 844], "region": [16, 412, 358, 64], "what_it_shows": "The main button reads Engage capacity."}, "observed": "The only call to action on the home page is labeled Engage capacity; both personas looked for words like volunteer or sign up.", "why_it_matters": "People who do not recognize the action leave before finding the shift list.", "fix_verb": {"template_id": "taste-palettes.draft-embodiments", "outcome": "Three labeled options for the button, compared side by side for the coordinator to choose."}, "wcag_sc": []}}, {"id": "bad-no-reason", "label": "known_bad", "fails": "severity-explained", "why": "No reason for the rating.", "finding": {"id": "UH-4", "heuristic": "H2", "title": "The request button uses a term volunteers do not use.", "page_url": "https://pantry.example.invalid/", "task": "Find where to offer a weekend shift", "width_px": 390, "theme": "light", "severity": 3, "severity_reason": "", "frequency": "often", "impact": "medium", "persistence": "repeated", "evidence": {"screenshot_sha256": "6c2d8e1f0a3b5c7d9e1f2a4b6c8d0e2f4a6b8c0d2e4f6a8b0c2d4e6f8a0b2c4d", "image_size": [390, 844], "region": [16, 412, 358, 64], "what_it_shows": "The main button reads Engage capacity."}, "observed": "The only call to action on the home page is labeled Engage capacity; both personas looked for words like volunteer or sign up.", "why_it_matters": "People who do not recognize the action leave before finding the shift list.", "fix_verb": {"template_id": "taste-palettes.draft-embodiments", "outcome": "Three labeled options for the button, compared side by side for the coordinator to choose."}, "wcag_sc": []}}, {"id": "bad-frequency", "label": "known_bad", "fails": "frequency-known", "why": "Frequency off the scale.", "finding": {"id": "UH-4", "heuristic": "H2", "title": "The request button uses a term volunteers do not use.", "page_url": "https://pantry.example.invalid/", "task": "Find where to offer a weekend shift", "width_px": 390, "theme": "light", "severity": 3, "severity_reason": "Seen by both evaluators on the first screen; most new volunteers would hesitate, and it repeats on every visit.", "frequency": "always", "impact": "medium", "persistence": "repeated", "evidence": {"screenshot_sha256": "6c2d8e1f0a3b5c7d9e1f2a4b6c8d0e2f4a6b8c0d2e4f6a8b0c2d4e6f8a0b2c4d", "image_size": [390, 844], "region": [16, 412, 358, 64], "what_it_shows": "The main button reads Engage capacity."}, "observed": "The only call to action on the home page is labeled Engage capacity; both personas looked for words like volunteer or sign up.", "why_it_matters": "People who do not recognize the action leave before finding the shift list.", "fix_verb": {"template_id": "taste-palettes.draft-embodiments", "outcome": "Three labeled options for the button, compared side by side for the coordinator to choose."}, "wcag_sc": []}}, {"id": "bad-impact", "label": "known_bad", "fails": "impact-known", "why": "Impact off the scale.", "finding": {"id": "UH-4", "heuristic": "H2", "title": "The request button uses a term volunteers do not use.", "page_url": "https://pantry.example.invalid/", "task": "Find where to offer a weekend shift", "width_px": 390, "theme": "light", "severity": 3, "severity_reason": "Seen by both evaluators on the first screen; most new volunteers would hesitate, and it repeats on every visit.", "frequency": "often", "impact": "", "persistence": "repeated", "evidence": {"screenshot_sha256": "6c2d8e1f0a3b5c7d9e1f2a4b6c8d0e2f4a6b8c0d2e4f6a8b0c2d4e6f8a0b2c4d", "image_size": [390, 844], "region": [16, 412, 358, 64], "what_it_shows": "The main button reads Engage capacity."}, "observed": "The only call to action on the home page is labeled Engage capacity; both personas looked for words like volunteer or sign up.", "why_it_matters": "People who do not recognize the action leave before finding the shift list.", "fix_verb": {"template_id": "taste-palettes.draft-embodiments", "outcome": "Three labeled options for the button, compared side by side for the coordinator to choose."}, "wcag_sc": []}}, {"id": "bad-no-hash", "label": "known_bad", "fails": "screenshot-hashed", "why": "The screenshot is a path, not a digest.", "finding": {"id": "UH-4", "heuristic": "H2", "title": "The request button uses a term volunteers do not use.", "page_url": "https://pantry.example.invalid/", "task": "Find where to offer a weekend shift", "width_px": 390, "theme": "light", "severity": 3, "severity_reason": "Seen by both evaluators on the first screen; most new volunteers would hesitate, and it repeats on every visit.", "frequency": "often", "impact": "medium", "persistence": "repeated", "evidence": {"screenshot_sha256": "shots/home.png", "image_size": [390, 844], "region": [16, 412, 358, 64], "what_it_shows": "The main button reads Engage capacity."}, "observed": "The only call to action on the home page is labeled Engage capacity; both personas looked for words like volunteer or sign up.", "why_it_matters": "People who do not recognize the action leave before finding the shift list.", "fix_verb": {"template_id": "taste-palettes.draft-embodiments", "outcome": "Three labeled options for the button, compared side by side for the coordinator to choose."}, "wcag_sc": []}}, {"id": "bad-no-region", "label": "known_bad", "fails": "region-given", "why": "The whole screenshot instead of a region.", "finding": {"id": "UH-4", "heuristic": "H2", "title": "The request button uses a term volunteers do not use.", "page_url": "https://pantry.example.invalid/", "task": "Find where to offer a weekend shift", "width_px": 390, "theme": "light", "severity": 3, "severity_reason": "Seen by both evaluators on the first screen; most new volunteers would hesitate, and it repeats on every visit.", "frequency": "often", "impact": "medium", "persistence": "repeated", "evidence": {"screenshot_sha256": "6c2d8e1f0a3b5c7d9e1f2a4b6c8d0e2f4a6b8c0d2e4f6a8b0c2d4e6f8a0b2c4d", "image_size": [390, 844], "region": [], "what_it_shows": "The main button reads Engage capacity."}, "observed": "The only call to action on the home page is labeled Engage capacity; both personas looked for words like volunteer or sign up.", "why_it_matters": "People who do not recognize the action leave before finding the shift list.", "fix_verb": {"template_id": "taste-palettes.draft-embodiments", "outcome": "Three labeled options for the button, compared side by side for the coordinator to choose."}, "wcag_sc": []}}, {"id": "bad-region-undescribed", "label": "known_bad", "fails": "region-described", "why": "The region is not described.", "finding": {"id": "UH-4", "heuristic": "H2", "title": "The request button uses a term volunteers do not use.", "page_url": "https://pantry.example.invalid/", "task": "Find where to offer a weekend shift", "width_px": 390, "theme": "light", "severity": 3, "severity_reason": "Seen by both evaluators on the first screen; most new volunteers would hesitate, and it repeats on every visit.", "frequency": "often", "impact": "medium", "persistence": "repeated", "evidence": {"screenshot_sha256": "6c2d8e1f0a3b5c7d9e1f2a4b6c8d0e2f4a6b8c0d2e4f6a8b0c2d4e6f8a0b2c4d", "image_size": [390, 844], "region": [16, 412, 358, 64], "what_it_shows": ""}, "observed": "The only call to action on the home page is labeled Engage capacity; both personas looked for words like volunteer or sign up.", "why_it_matters": "People who do not recognize the action leave before finding the shift list.", "fix_verb": {"template_id": "taste-palettes.draft-embodiments", "outcome": "Three labeled options for the button, compared side by side for the coordinator to choose."}, "wcag_sc": []}}, {"id": "bad-no-page", "label": "known_bad", "fails": "page-recorded", "why": "No address.", "finding": {"id": "UH-4", "heuristic": "H2", "title": "The request button uses a term volunteers do not use.", "page_url": "home", "task": "Find where to offer a weekend shift", "width_px": 390, "theme": "light", "severity": 3, "severity_reason": "Seen by both evaluators on the first screen; most new volunteers would hesitate, and it repeats on every visit.", "frequency": "often", "impact": "medium", "persistence": "repeated", "evidence": {"screenshot_sha256": "6c2d8e1f0a3b5c7d9e1f2a4b6c8d0e2f4a6b8c0d2e4f6a8b0c2d4e6f8a0b2c4d", "image_size": [390, 844], "region": [16, 412, 358, 64], "what_it_shows": "The main button reads Engage capacity."}, "observed": "The only call to action on the home page is labeled Engage capacity; both personas looked for words like volunteer or sign up.", "why_it_matters": "People who do not recognize the action leave before finding the shift list.", "fix_verb": {"template_id": "taste-palettes.draft-embodiments", "outcome": "Three labeled options for the button, compared side by side for the coordinator to choose."}, "wcag_sc": []}}, {"id": "bad-no-width", "label": "known_bad", "fails": "width-recorded", "why": "No width.", "finding": {"id": "UH-4", "heuristic": "H2", "title": "The request button uses a term volunteers do not use.", "page_url": "https://pantry.example.invalid/", "task": "Find where to offer a weekend shift", "theme": "light", "severity": 3, "severity_reason": "Seen by both evaluators on the first screen; most new volunteers would hesitate, and it repeats on every visit.", "frequency": "often", "impact": "medium", "persistence": "repeated", "evidence": {"screenshot_sha256": "6c2d8e1f0a3b5c7d9e1f2a4b6c8d0e2f4a6b8c0d2e4f6a8b0c2d4e6f8a0b2c4d", "image_size": [390, 844], "region": [16, 412, 358, 64], "what_it_shows": "The main button reads Engage capacity."}, "observed": "The only call to action on the home page is labeled Engage capacity; both personas looked for words like volunteer or sign up.", "why_it_matters": "People who do not recognize the action leave before finding the shift list.", "fix_verb": {"template_id": "taste-palettes.draft-embodiments", "outcome": "Three labeled options for the button, compared side by side for the coordinator to choose."}, "wcag_sc": []}}, {"id": "bad-no-observation", "label": "known_bad", "fails": "observed-stated", "why": "Nothing observed.", "finding": {"id": "UH-4", "heuristic": "H2", "title": "The request button uses a term volunteers do not use.", "page_url": "https://pantry.example.invalid/", "task": "Find where to offer a weekend shift", "width_px": 390, "theme": "light", "severity": 3, "severity_reason": "Seen by both evaluators on the first screen; most new volunteers would hesitate, and it repeats on every visit.", "frequency": "often", "impact": "medium", "persistence": "repeated", "evidence": {"screenshot_sha256": "6c2d8e1f0a3b5c7d9e1f2a4b6c8d0e2f4a6b8c0d2e4f6a8b0c2d4e6f8a0b2c4d", "image_size": [390, 844], "region": [16, 412, 358, 64], "what_it_shows": "The main button reads Engage capacity."}, "observed": "", "why_it_matters": "People who do not recognize the action leave before finding the shift list.", "fix_verb": {"template_id": "taste-palettes.draft-embodiments", "outcome": "Three labeled options for the button, compared side by side for the coordinator to choose."}, "wcag_sc": []}}, {"id": "bad-no-fix-verb", "label": "known_bad", "fails": "fix-verb-named", "why": "A fix written as advice, not a verb.", "finding": {"id": "UH-4", "heuristic": "H2", "title": "The request button uses a term volunteers do not use.", "page_url": "https://pantry.example.invalid/", "task": "Find where to offer a weekend shift", "width_px": 390, "theme": "light", "severity": 3, "severity_reason": "Seen by both evaluators on the first screen; most new volunteers would hesitate, and it repeats on every visit.", "frequency": "often", "impact": "medium", "persistence": "repeated", "evidence": {"screenshot_sha256": "6c2d8e1f0a3b5c7d9e1f2a4b6c8d0e2f4a6b8c0d2e4f6a8b0c2d4e6f8a0b2c4d", "image_size": [390, 844], "region": [16, 412, 358, 64], "what_it_shows": "The main button reads Engage capacity."}, "observed": "The only call to action on the home page is labeled Engage capacity; both personas looked for words like volunteer or sign up.", "why_it_matters": "People who do not recognize the action leave before finding the shift list.", "fix_verb": {"template_id": "make it clearer", "outcome": "Three labeled options for the button, compared side by side for the coordinator to choose."}, "wcag_sc": []}}, {"id": "bad-no-fix-outcome", "label": "known_bad", "fails": "fix-outcome-stated", "why": "A verb with no outcome.", "finding": {"id": "UH-4", "heuristic": "H2", "title": "The request button uses a term volunteers do not use.", "page_url": "https://pantry.example.invalid/", "task": "Find where to offer a weekend shift", "width_px": 390, "theme": "light", "severity": 3, "severity_reason": "Seen by both evaluators on the first screen; most new volunteers would hesitate, and it repeats on every visit.", "frequency": "often", "impact": "medium", "persistence": "repeated", "evidence": {"screenshot_sha256": "6c2d8e1f0a3b5c7d9e1f2a4b6c8d0e2f4a6b8c0d2e4f6a8b0c2d4e6f8a0b2c4d", "image_size": [390, 844], "region": [16, 412, 358, 64], "what_it_shows": "The main button reads Engage capacity."}, "observed": "The only call to action on the home page is labeled Engage capacity; both personas looked for words like volunteer or sign up.", "why_it_matters": "People who do not recognize the action leave before finding the shift list.", "fix_verb": {"template_id": "taste-palettes.draft-embodiments", "outcome": ""}, "wcag_sc": []}}, {"id": "bad-catastrophe-low", "label": "known_bad", "fails": "catastrophe-is-high-impact", "why": "Severity 4 with medium impact.", "finding": {"id": "UH-4", "heuristic": "H2", "title": "The request button uses a term volunteers do not use.", "page_url": "https://pantry.example.invalid/", "task": "Find where to offer a weekend shift", "width_px": 390, "theme": "light", "severity": 4, "severity_reason": "Seen by both evaluators on the first screen; most new volunteers would hesitate, and it repeats on every visit.", "frequency": "often", "impact": "medium", "persistence": "repeated", "evidence": {"screenshot_sha256": "6c2d8e1f0a3b5c7d9e1f2a4b6c8d0e2f4a6b8c0d2e4f6a8b0c2d4e6f8a0b2c4d", "image_size": [390, 844], "region": [16, 412, 358, 64], "what_it_shows": "The main button reads Engage capacity."}, "observed": "The only call to action on the home page is labeled Engage capacity; both personas looked for words like volunteer or sign up.", "why_it_matters": "People who do not recognize the action leave before finding the shift list.", "fix_verb": {"template_id": "taste-palettes.draft-embodiments", "outcome": "Three labeled options for the button, compared side by side for the coordinator to choose."}, "wcag_sc": []}}, {"id": "bad-blame", "label": "known_bad", "fails": "design-not-people", "why": "A finding that blames people.", "finding": {"id": "UH-4", "heuristic": "H2", "title": "The request button uses a term volunteers do not use.", "page_url": "https://pantry.example.invalid/", "task": "Find where to offer a weekend shift", "width_px": 390, "theme": "light", "severity": 3, "severity_reason": "Seen by both evaluators on the first screen; most new volunteers would hesitate, and it repeats on every visit.", "frequency": "often", "impact": "medium", "persistence": "repeated", "evidence": {"screenshot_sha256": "6c2d8e1f0a3b5c7d9e1f2a4b6c8d0e2f4a6b8c0d2e4f6a8b0c2d4e6f8a0b2c4d", "image_size": [390, 844], "region": [16, 412, 358, 64], "what_it_shows": "The main button reads Engage capacity."}, "observed": "Lazy users never read the button, so they miss it.", "why_it_matters": "People who do not recognize the action leave before finding the shift list.", "fix_verb": {"template_id": "taste-palettes.draft-embodiments", "outcome": "Three labeled options for the button, compared side by side for the coordinator to choose."}, "wcag_sc": []}}, {"id": "bad-contact-data", "label": "known_bad", "fails": "no-contact-data", "why": "A personal email address in the observation.", "finding": {"id": "UH-4", "heuristic": "H2", "title": "The request button uses a term volunteers do not use.", "page_url": "https://pantry.example.invalid/", "task": "Find where to offer a weekend shift", "width_px": 390, "theme": "light", "severity": 3, "severity_reason": "Seen by both evaluators on the first screen; most new volunteers would hesitate, and it repeats on every visit.", "frequency": "often", "impact": "medium", "persistence": "repeated", "evidence": {"screenshot_sha256": "6c2d8e1f0a3b5c7d9e1f2a4b6c8d0e2f4a6b8c0d2e4f6a8b0c2d4e6f8a0b2c4d", "image_size": [390, 844], "region": [16, 412, 358, 64], "what_it_shows": "The main button reads Engage capacity."}, "observed": "The only call to action on the home page is labeled Engage capacity; both personas looked for words like volunteer or sign up.", "why_it_matters": "A volunteer, sam.real@mailbox.net, said they nearly gave up.", "fix_verb": {"template_id": "taste-palettes.draft-embodiments", "outcome": "Three labeled options for the button, compared side by side for the coordinator to choose."}, "wcag_sc": []}}], "expected": {"good-jargon": {"verdict": "pass", "failed_checks": []}, "good-cosmetic": {"verdict": "pass", "failed_checks": []}, "bad-no-heuristic": {"verdict": "fail", "failed_checks": ["heuristic-named"]}, "bad-severity-zero": {"verdict": "fail", "failed_checks": ["severity-on-scale"]}, "bad-no-reason": {"verdict": "fail", "failed_checks": ["severity-explained"]}, "bad-frequency": {"verdict": "fail", "failed_checks": ["frequency-known"]}, "bad-impact": {"verdict": "fail", "failed_checks": ["impact-known"]}, "bad-no-hash": {"verdict": "fail", "failed_checks": ["screenshot-hashed"]}, "bad-no-region": {"verdict": "fail", "failed_checks": ["region-given"]}, "bad-region-undescribed": {"verdict": "fail", "failed_checks": ["region-described"]}, "bad-no-page": {"verdict": "fail", "failed_checks": ["page-recorded"]}, "bad-no-width": {"verdict": "fail", "failed_checks": ["width-recorded"]}, "bad-no-observation": {"verdict": "fail", "failed_checks": ["observed-stated"]}, "bad-no-fix-verb": {"verdict": "fail", "failed_checks": ["fix-verb-named"]}, "bad-no-fix-outcome": {"verdict": "fail", "failed_checks": ["fix-outcome-stated"]}, "bad-catastrophe-low": {"verdict": "fail", "failed_checks": ["catastrophe-is-high-impact"]}, "bad-blame": {"verdict": "fail", "failed_checks": ["design-not-people"]}, "bad-contact-data": {"verdict": "fail", "failed_checks": ["no-contact-data"]}}, "status": "proposal", "admission": "not_admitted", "content_kind": "authored_guidance", "license": "MIT", "provenance": {"source": "original ta-amps authored proposal", "license": "MIT", "generator": "scripts/build_packs.py", "independently_verified": false}, "dimensions": {"determinism": 0.0, "evidence_grounding": 0.0, "token_efficiency": 0.0, "safety_compliance": 0.0, "verification_tier": "unverified"}, "dimension_basis": {"measured": false, "method": "unmeasured_floor", "reason": "Tessera requires these axes, so each is set to its lowest value and the tier is unverified. No quality is claimed. Replace them only with measured values and the evidence that produced them."}, "relations": []}}, {"store": "seedpack.usability-heuristics-review", "key": "usability-heuristics-review.v0.1.0.template.review-scope", "expected_version": 0, "producer_surface": "surface:tessera", "visibility_scope": "surface_only", "allowed_surfaces": [], "target_cohorts": ["all"], "tags": ["category:noun.seed_hypothesis", "pack:usability-heuristics-review", "role:template", "content:authored", "spdx:MIT", "status:quarantined"], "value": {"category_id": "noun.seed_hypothesis", "role": "template", "pack": "usability-heuristics-review", "pack_version": "0.1.0", "title": "Template: the scope of a heuristic review: pages, tasks, widths, themes and heuristics", "category_reason": "A scope is a testable statement of what will be reviewed.", "describes": "the scope of a heuristic review: pages, tasks, widths, themes and heuristics", "schema": {"type": "object", "additionalProperties": false, "required": ["scope_id", "surface", "build", "pages", "tasks", "personas", "widths_px", "themes", "heuristics", "evaluators", "out_of_scope"], "properties": {"scope_id": {"type": "string", "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,40}$"}, "surface": {"type": "string", "minLength": 1, "maxLength": 200}, "build": {"type": "string", "minLength": 1, "maxLength": 120}, "pages": {"type": "array", "minItems": 1, "maxItems": 30, "items": {"type": "object", "additionalProperties": false, "required": ["page_id", "url"], "properties": {"page_id": {"type": "string", "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,40}$"}, "url": {"type": "string", "pattern": "^https?://", "minLength": 8, "maxLength": 300}}}}, "tasks": {"type": "array", "minItems": 1, "maxItems": 12, "items": {"type": "string", "minLength": 1, "maxLength": 200}}, "personas": {"type": "array", "minItems": 0, "maxItems": 6, "items": {"type": "string", "minLength": 1, "maxLength": 200}}, "widths_px": {"type": "array", "minItems": 1, "maxItems": 4, "items": {"type": "integer", "minimum": 200, "maximum": 8000}}, "themes": {"type": "array", "minItems": 1, "maxItems": 3, "items": {"type": "string", "enum": ["light", "dark", "high_contrast"]}}, "heuristics": {"type": "array", "minItems": 1, "maxItems": 10, "items": {"type": "string", "pattern": "^H(10|[1-9])$"}}, "evaluators": {"type": "integer", "minimum": 1, "maximum": 8}, "out_of_scope": {"type": "array", "minItems": 0, "maxItems": 12, "items": {"type": "string", "minLength": 1, "maxLength": 300}}}}, "rules": ["evaluators is at least 2.", "Every task is something the intended people come to do."], "status": "proposal", "admission": "not_admitted", "content_kind": "authored_guidance", "license": "MIT", "provenance": {"source": "original ta-amps authored proposal", "license": "MIT", "generator": "scripts/build_packs.py", "independently_verified": false}, "dimensions": {"determinism": 0.0, "evidence_grounding": 0.0, "token_efficiency": 0.0, "safety_compliance": 0.0, "verification_tier": "unverified"}, "dimension_basis": {"measured": false, "method": "unmeasured_floor", "reason": "Tessera requires these axes, so each is set to its lowest value and the tier is unverified. No quality is claimed. Replace them only with measured values and the evidence that produced them."}, "relations": []}}, {"store": "seedpack.usability-heuristics-review", "key": "usability-heuristics-review.v0.1.0.template.evaluation-sheet", "expected_version": 0, "producer_surface": "surface:tessera", "visibility_scope": "surface_only", "allowed_surfaces": [], "target_cohorts": ["all"], "tags": ["category:noun.eval_run", "pack:usability-heuristics-review", "role:template", "content:authored", "spdx:MIT", "status:quarantined"], "value": {"category_id": "noun.eval_run", "role": "template", "pack": "usability-heuristics-review", "pack_version": "0.1.0", "title": "Template: one evaluator's independent findings against the heuristics", "category_reason": "A sheet is one evaluator's recorded run.", "describes": "one evaluator's independent findings against the heuristics", "schema": {"type": "object", "additionalProperties": false, "required": ["sheet_id", "scope_ref", "evaluator_role", "evaluated_at", "independent", "findings", "tasks_walked", "not_reviewed"], "properties": {"sheet_id": {"type": "string", "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,40}$"}, "scope_ref": {"type": "object", "additionalProperties": false, "required": ["key", "version", "value_sha256"], "properties": {"key": {"type": "string", "minLength": 1, "maxLength": 256}, "version": {"type": "integer", "minimum": 1, "maximum": 1000000000}, "value_sha256": {"type": "string", "pattern": "^[0-9a-f]{64}$"}}}, "evaluator_role": {"type": "string", "minLength": 1, "maxLength": 120}, "evaluated_at": {"type": "string", "pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}(:[0-9]{2})?Z$", "maxLength": 30}, "independent": {"type": "boolean"}, "findings": {"type": "array", "minItems": 0, "maxItems": 40, "items": {"type": "object", "additionalProperties": false, "required": ["id", "heuristic", "title", "page_url", "task", "width_px", "theme", "severity", "severity_reason", "frequency", "impact", "persistence", "evidence", "observed", "why_it_matters", "fix_verb", "wcag_sc"], "properties": {"id": {"type": "string", "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,40}$"}, "heuristic": {"type": "string", "pattern": "^H(10|[1-9])$"}, "title": {"type": "string", "minLength": 1, "maxLength": 300}, "page_url": {"type": "string", "pattern": "^https?://", "minLength": 8, "maxLength": 300}, "task": {"type": "string", "minLength": 1, "maxLength": 200}, "width_px": {"type": "integer", "minimum": 200, "maximum": 8000}, "theme": {"type": "string", "enum": ["light", "dark", "high_contrast"]}, "severity": {"type": "integer", "minimum": 1, "maximum": 4}, "severity_reason": {"type": "string", "minLength": 1, "maxLength": 400}, "frequency": {"type": "string", "enum": ["rare", "sometimes", "often"]}, "impact": {"type": "string", "enum": ["low", "medium", "high"]}, "persistence": {"type": "string", "enum": ["once", "repeated"]}, "evidence": {"type": "object", "additionalProperties": false, "required": ["screenshot_sha256", "image_size", "region", "what_it_shows"], "properties": {"screenshot_sha256": {"type": "string", "pattern": "^[0-9a-f]{64}$"}, "image_size": {"type": "array", "minItems": 2, "maxItems": 2, "items": {"type": "integer", "minimum": 1, "maximum": 100000}}, "region": {"type": "array", "minItems": 4, "maxItems": 4, "items": {"type": "integer", "minimum": 0, "maximum": 100000}}, "what_it_shows": {"type": "string", "minLength": 1, "maxLength": 300}}}, "observed": {"type": "string", "minLength": 1, "maxLength": 600}, "why_it_matters": {"type": "string", "minLength": 1, "maxLength": 400}, "fix_verb": {"type": "object", "additionalProperties": false, "required": ["template_id", "outcome"], "properties": {"template_id": {"type": "string", "pattern": "^[a-z0-9-]+\\.[a-z0-9-]+$", "maxLength": 120}, "outcome": {"type": "string", "minLength": 1, "maxLength": 300}}}, "wcag_sc": {"type": "array", "minItems": 0, "maxItems": 3, "items": {"type": "string", "pattern": "^[1-4]\\.[0-9]\\.[0-9]{1,2}$"}}}}}, "tasks_walked": {"type": "array", "minItems": 1, "maxItems": 12, "items": {"type": "string", "minLength": 1, "maxLength": 200}}, "not_reviewed": {"type": "array", "minItems": 0, "maxItems": 12, "items": {"type": "string", "minLength": 1, "maxLength": 300}}}}, "rules": ["independent is true: the evaluator saw no other sheet.", "Every finding passes the heuristic checks."], "status": "proposal", "admission": "not_admitted", "content_kind": "authored_guidance", "license": "MIT", "provenance": {"source": "original ta-amps authored proposal", "license": "MIT", "generator": "scripts/build_packs.py", "independently_verified": false}, "dimensions": {"determinism": 0.0, "evidence_grounding": 0.0, "token_efficiency": 0.0, "safety_compliance": 0.0, "verification_tier": "unverified"}, "dimension_basis": {"measured": false, "method": "unmeasured_floor", "reason": "Tessera requires these axes, so each is set to its lowest value and the tier is unverified. No quality is claimed. Replace them only with measured values and the evidence that produced them."}, "relations": []}}, {"store": "seedpack.usability-heuristics-review", "key": "usability-heuristics-review.v0.1.0.template.combined-findings", "expected_version": 0, "producer_surface": "surface:tessera", "visibility_scope": "surface_only", "allowed_surfaces": [], "target_cohorts": ["all"], "tags": ["category:noun.eval_run", "pack:usability-heuristics-review", "role:template", "content:authored", "spdx:MIT", "status:quarantined"], "value": {"category_id": "noun.eval_run", "role": "template", "pack": "usability-heuristics-review", "pack_version": "0.1.0", "title": "Template: findings from several sheets combined by the fixed rule", "category_reason": "A deterministic evaluation of recorded sheets.", "describes": "findings from several sheets combined by the fixed rule", "schema": {"type": "object", "additionalProperties": false, "required": ["merged_id", "sheets", "findings", "kept_separate"], "properties": {"merged_id": {"type": "string", "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,40}$"}, "sheets": {"type": "array", "minItems": 2, "maxItems": 8, "items": {"type": "string", "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,40}$"}}, "findings": {"type": "array", "minItems": 0, "maxItems": 80, "items": {"type": "object", "additionalProperties": false, "required": ["id", "heuristic", "title", "from", "severities", "severity", "spread", "disagreement", "evidence", "page_url"], "properties": {"id": {"type": "string", "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,40}$"}, "heuristic": {"type": "string", "pattern": "^H(10|[1-9])$"}, "title": {"type": "string", "minLength": 1, "maxLength": 300}, "from": {"type": "array", "minItems": 1, "maxItems": 8, "items": {"type": "string", "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,40}$"}}, "severities": {"type": "array", "minItems": 1, "maxItems": 8, "items": {"type": "integer", "minimum": 1, "maximum": 4}}, "severity": {"type": "integer", "minimum": 1, "maximum": 4}, "spread": {"type": "integer", "minimum": 0, "maximum": 3}, "disagreement": {"type": "boolean"}, "evidence": {"type": "object", "additionalProperties": false, "required": ["screenshot_sha256", "region"], "properties": {"screenshot_sha256": {"type": "string", "pattern": "^[0-9a-f]{64}$"}, "region": {"type": "array", "minItems": 4, "maxItems": 4, "items": {"type": "integer", "minimum": 0, "maximum": 100000}}}}, "page_url": {"type": "string", "pattern": "^https?://", "minLength": 8, "maxLength": 300}}}}, "kept_separate": {"type": "array", "minItems": 0, "maxItems": 40, "items": {"type": "object", "additionalProperties": false, "required": ["a", "b", "why"], "properties": {"a": {"type": "string", "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,40}$"}, "b": {"type": "string", "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,40}$"}, "why": {"type": "string", "minLength": 1, "maxLength": 300}}}}}}, "rules": ["severity is the median of severities rounded up; spread is the range.", "disagreement is true when spread is 2 or more."], "status": "proposal", "admission": "not_admitted", "content_kind": "authored_guidance", "license": "MIT", "provenance": {"source": "original ta-amps authored proposal", "license": "MIT", "generator": "scripts/build_packs.py", "independently_verified": false}, "dimensions": {"determinism": 0.0, "evidence_grounding": 0.0, "token_efficiency": 0.0, "safety_compliance": 0.0, "verification_tier": "unverified"}, "dimension_basis": {"measured": false, "method": "unmeasured_floor", "reason": "Tessera requires these axes, so each is set to its lowest value and the tier is unverified. No quality is claimed. Replace them only with measured values and the evidence that produced them."}, "relations": []}}, {"store": "seedpack.usability-heuristics-review", "key": "usability-heuristics-review.v0.1.0.template.finding-review", "expected_version": 0, "producer_surface": "surface:tessera", "visibility_scope": "surface_only", "allowed_surfaces": [], "target_cohorts": ["all"], "tags": ["category:noun.eval_run", "pack:usability-heuristics-review", "role:template", "content:authored", "spdx:MIT", "status:quarantined"], "value": {"category_id": "noun.eval_run", "role": "template", "pack": "usability-heuristics-review", "pack_version": "0.1.0", "title": "Template: a different worker's confirmation, change or rejection of each combined finding", "category_reason": "A review is a recorded verification.", "describes": "a different worker's confirmation, change or rejection of each combined finding", "schema": {"type": "object", "additionalProperties": false, "required": ["review_id", "merged_ref", "reviewer_role", "distinct_from_evaluators", "decisions"], "properties": {"review_id": {"type": "string", "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,40}$"}, "merged_ref": {"type": "object", "additionalProperties": false, "required": ["key", "version", "value_sha256"], "properties": {"key": {"type": "string", "minLength": 1, "maxLength": 256}, "version": {"type": "integer", "minimum": 1, "maximum": 1000000000}, "value_sha256": {"type": "string", "pattern": "^[0-9a-f]{64}$"}}}, "reviewer_role": {"type": "string", "minLength": 1, "maxLength": 120}, "distinct_from_evaluators": {"type": "boolean"}, "decisions": {"type": "array", "minItems": 1, "maxItems": 80, "items": {"type": "object", "additionalProperties": false, "required": ["finding_id", "decision", "reason", "severity"], "properties": {"finding_id": {"type": "string", "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,40}$"}, "decision": {"type": "string", "enum": ["confirmed", "changed", "rejected"]}, "reason": {"type": "string", "minLength": 1, "maxLength": 400}, "severity": {"type": "integer", "minimum": 1, "maximum": 4}}}}}}, "rules": ["distinct_from_evaluators is true.", "Every combined finding has one decision with a reason."], "status": "proposal", "admission": "not_admitted", "content_kind": "authored_guidance", "license": "MIT", "provenance": {"source": "original ta-amps authored proposal", "license": "MIT", "generator": "scripts/build_packs.py", "independently_verified": false}, "dimensions": {"determinism": 0.0, "evidence_grounding": 0.0, "token_efficiency": 0.0, "safety_compliance": 0.0, "verification_tier": "unverified"}, "dimension_basis": {"measured": false, "method": "unmeasured_floor", "reason": "Tessera requires these axes, so each is set to its lowest value and the tier is unverified. No quality is claimed. Replace them only with measured values and the evidence that produced them."}, "relations": []}}, {"store": "seedpack.usability-heuristics-review", "key": "usability-heuristics-review.v0.1.0.template.fix-plan", "expected_version": 0, "producer_surface": "surface:tessera", "visibility_scope": "surface_only", "allowed_surfaces": [], "target_cohorts": ["all"], "tags": ["category:noun.seed_hypothesis", "pack:usability-heuristics-review", "role:template", "content:authored", "spdx:MIT", "status:quarantined"], "value": {"category_id": "noun.seed_hypothesis", "role": "template", "pack": "usability-heuristics-review", "pack_version": "0.1.0", "title": "Template: one proposed fix verb per confirmed finding, ranked", "category_reason": "A plan of proposed work, for a requester to decide on.", "describes": "one proposed fix verb per confirmed finding, ranked", "schema": {"type": "object", "additionalProperties": false, "required": ["plan_id", "review_ref", "fixes", "taste_calls"], "properties": {"plan_id": {"type": "string", "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,40}$"}, "review_ref": {"type": "object", "additionalProperties": false, "required": ["key", "version", "value_sha256"], "properties": {"key": {"type": "string", "minLength": 1, "maxLength": 256}, "version": {"type": "integer", "minimum": 1, "maximum": 1000000000}, "value_sha256": {"type": "string", "pattern": "^[0-9a-f]{64}$"}}}, "fixes": {"type": "array", "minItems": 1, "maxItems": 80, "items": {"type": "object", "additionalProperties": false, "required": ["finding_id", "severity", "fix_verb", "why_this_verb", "priority"], "properties": {"finding_id": {"type": "string", "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,40}$"}, "severity": {"type": "integer", "minimum": 1, "maximum": 4}, "fix_verb": {"type": "object", "additionalProperties": false, "required": ["template_id", "outcome"], "properties": {"template_id": {"type": "string", "pattern": "^[a-z0-9-]+\\.[a-z0-9-]+$", "maxLength": 120}, "outcome": {"type": "string", "minLength": 1, "maxLength": 300}}}, "why_this_verb": {"type": "string", "minLength": 1, "maxLength": 300}, "priority": {"type": "integer", "minimum": 1, "maximum": 3}}}}, "taste_calls": {"type": "array", "minItems": 0, "maxItems": 20, "items": {"type": "string", "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,40}$"}}}}, "rules": ["Every confirmed finding has one fix.", "Severity 4 findings have priority 1."], "status": "proposal", "admission": "not_admitted", "content_kind": "authored_guidance", "license": "MIT", "provenance": {"source": "original ta-amps authored proposal", "license": "MIT", "generator": "scripts/build_packs.py", "independently_verified": false}, "dimensions": {"determinism": 0.0, "evidence_grounding": 0.0, "token_efficiency": 0.0, "safety_compliance": 0.0, "verification_tier": "unverified"}, "dimension_basis": {"measured": false, "method": "unmeasured_floor", "reason": "Tessera requires these axes, so each is set to its lowest value and the tier is unverified. No quality is claimed. Replace them only with measured values and the evidence that produced them."}, "relations": []}}, {"store": "seedpack.usability-heuristics-review", "key": "usability-heuristics-review.v0.1.0.example.review-scope", "expected_version": 0, "producer_surface": "surface:tessera", "visibility_scope": "surface_only", "allowed_surfaces": [], "target_cohorts": ["all"], "tags": ["category:noun.seed_hypothesis", "pack:usability-heuristics-review", "role:example", "synthetic:true", "spdx:MIT", "status:quarantined"], "value": {"category_id": "noun.seed_hypothesis", "role": "example", "pack": "usability-heuristics-review", "pack_version": "0.1.0", "title": "Worked example: scope for a volunteer site review", "category_reason": "A synthetic instance in the template's shape.", "conforms_to": {"store": "seedpack.usability-heuristics-review", "key": "usability-heuristics-review.v0.1.0.template.review-scope", "version": 1, "value_sha256": "f9af7149001fbe0f242bbc483da75768534531adb0b37c38c2ddc64d78d13ff7"}, "instance": {"scope_id": "RS-2", "surface": "The synthetic pantry volunteer site", "build": "site build 2026-10-30.3", "pages": [{"page_id": "home", "url": "https://pantry.example.invalid/"}, {"page_id": "shifts", "url": "https://pantry.example.invalid/shifts"}, {"page_id": "visit", "url": "https://pantry.example.invalid/visit"}], "tasks": ["Find where to offer a weekend shift", "Pick a shift and see what to bring", "Copy the pantry's address"], "personas": ["Volunteer coordinator on a phone between shifts", "Retired volunteer who uses only a keyboard"], "widths_px": [1440, 390], "themes": ["light", "dark"], "heuristics": ["H1", "H2", "H3", "H4", "H5", "H6", "H7", "H8", "H9", "H10"], "evaluators": 2, "out_of_scope": ["Confirming a shift, which books a real place"]}, "shows": "Three pages, three real tasks, two personas, both widths and themes, all ten heuristics and two evaluators.", "source": "Synthetic. Written for this pack; every name, address, number and identifier is made up.", "status": "proposal", "admission": "not_admitted", "content_kind": "synthetic_example", "license": "MIT", "provenance": {"source": "original ta-amps authored proposal", "license": "MIT", "generator": "scripts/build_packs.py", "independently_verified": false}, "dimensions": {"determinism": 0.0, "evidence_grounding": 0.0, "token_efficiency": 0.0, "safety_compliance": 0.0, "verification_tier": "unverified"}, "dimension_basis": {"measured": false, "method": "unmeasured_floor", "reason": "Tessera requires these axes, so each is set to its lowest value and the tier is unverified. No quality is claimed. Replace them only with measured values and the evidence that produced them."}, "relations": []}}, {"store": "seedpack.usability-heuristics-review", "key": "usability-heuristics-review.v0.1.0.example.evaluation-sheet", "expected_version": 0, "producer_surface": "surface:tessera", "visibility_scope": "surface_only", "allowed_surfaces": [], "target_cohorts": ["all"], "tags": ["category:noun.eval_run", "pack:usability-heuristics-review", "role:example", "synthetic:true", "spdx:MIT", "status:quarantined"], "value": {"category_id": "noun.eval_run", "role": "example", "pack": "usability-heuristics-review", "pack_version": "0.1.0", "title": "Worked example: one evaluator's sheet", "category_reason": "A synthetic instance in the template's shape.", "conforms_to": {"store": "seedpack.usability-heuristics-review", "key": "usability-heuristics-review.v0.1.0.template.evaluation-sheet", "version": 1, "value_sha256": "87a8f6fd1ab20c8922c955bd09c0789bfec8ae341c0423fbba6c78cf96abd35a"}, "instance": {"sheet_id": "ES-2a", "scope_ref": {"key": "usability-heuristics-review.review_scope.t-3", "version": 1, "value_sha256": "1f2e3d4c5b6a79881f2e3d4c5b6a79881f2e3d4c5b6a79881f2e3d4c5b6a7988"}, "evaluator_role": "evaluator A, an agent", "evaluated_at": "2026-10-30T16:00Z", "independent": true, "findings": [{"id": "UH-4", "heuristic": "H2", "title": "The request button uses a term volunteers do not use.", "page_url": "https://pantry.example.invalid/", "task": "Find where to offer a weekend shift", "width_px": 390, "theme": "light", "severity": 3, "severity_reason": "Medium impact, seen often, repeated on every visit.", "frequency": "often", "impact": "medium", "persistence": "repeated", "evidence": {"screenshot_sha256": "6c2d8e1f0a3b5c7d9e1f2a4b6c8d0e2f4a6b8c0d2e4f6a8b0c2d4e6f8a0b2c4d", "image_size": [390, 844], "region": [16, 412, 358, 64], "what_it_shows": "The main button reads Engage capacity."}, "observed": "The only call to action is labeled Engage capacity.", "why_it_matters": "People who do not recognize the action leave.", "fix_verb": {"template_id": "taste-palettes.draft-embodiments", "outcome": "Three labeled options for the coordinator to choose from."}, "wcag_sc": []}, {"id": "UH-5", "heuristic": "H4", "title": "The visit page drops the site's navigation and styles.", "page_url": "https://pantry.example.invalid/visit", "task": "Copy the pantry's address", "width_px": 1440, "theme": "dark", "severity": 2, "severity_reason": "Low impact, but it happens on every visit to the page.", "frequency": "often", "impact": "low", "persistence": "repeated", "evidence": {"screenshot_sha256": "6c2d8e1f0a3b5c7d9e1f2a4b6c8d0e2f4a6b8c0d2e4f6a8b0c2d4e6f8a0b2c4d", "image_size": [1440, 900], "region": [0, 0, 1440, 320], "what_it_shows": "An unstyled page with default fonts and no menu."}, "observed": "The page shows plain default styles in a white page, even in the dark theme, with no way back but a Home link.", "why_it_matters": "People think they left the site and stop trusting the address.", "fix_verb": {"template_id": "findings-to-fixes.propose-fix", "outcome": "A fix proposal that renders the page in the shared layout."}, "wcag_sc": ["3.2.3"]}], "tasks_walked": ["Find where to offer a weekend shift", "Copy the pantry's address"], "not_reviewed": ["Pick a shift and see what to bring: the shift list was empty in this build."]}, "shows": "Independent findings with one heuristic each, rated with reasons, a region per screenshot and a fix verb.", "source": "Synthetic. Written for this pack; every name, address, number and identifier is made up.", "status": "proposal", "admission": "not_admitted", "content_kind": "synthetic_example", "license": "MIT", "provenance": {"source": "original ta-amps authored proposal", "license": "MIT", "generator": "scripts/build_packs.py", "independently_verified": false}, "dimensions": {"determinism": 0.0, "evidence_grounding": 0.0, "token_efficiency": 0.0, "safety_compliance": 0.0, "verification_tier": "unverified"}, "dimension_basis": {"measured": false, "method": "unmeasured_floor", "reason": "Tessera requires these axes, so each is set to its lowest value and the tier is unverified. No quality is claimed. Replace them only with measured values and the evidence that produced them."}, "relations": []}}, {"store": "seedpack.usability-heuristics-review", "key": "usability-heuristics-review.v0.1.0.example.combined-findings", "expected_version": 0, "producer_surface": "surface:tessera", "visibility_scope": "surface_only", "allowed_surfaces": [], "target_cohorts": ["all"], "tags": ["category:noun.eval_run", "pack:usability-heuristics-review", "role:example", "synthetic:true", "spdx:MIT", "status:quarantined"], "value": {"category_id": "noun.eval_run", "role": "example", "pack": "usability-heuristics-review", "pack_version": "0.1.0", "title": "Worked example: two sheets combined, with one disagreement", "category_reason": "A synthetic instance in the template's shape.", "conforms_to": {"store": "seedpack.usability-heuristics-review", "key": "usability-heuristics-review.v0.1.0.template.combined-findings", "version": 1, "value_sha256": "d21a91b5f1ce663f19ca09293c375a0b05fe8062abd29c3605558f6acd7328a2"}, "instance": {"merged_id": "CF-2", "sheets": ["ES-2a", "ES-2b"], "findings": [{"id": "CUH-1", "heuristic": "H2", "title": "The request button uses a term volunteers do not use.", "from": ["UH-4", "UH-12"], "severities": [3, 3], "severity": 3, "spread": 0, "disagreement": false, "evidence": {"screenshot_sha256": "6c2d8e1f0a3b5c7d9e1f2a4b6c8d0e2f4a6b8c0d2e4f6a8b0c2d4e6f8a0b2c4d", "region": [16, 412, 358, 64]}, "page_url": "https://pantry.example.invalid/"}, {"id": "CUH-2", "heuristic": "H4", "title": "The visit page drops the site's navigation and styles.", "from": ["UH-5", "UH-14"], "severities": [2, 4], "severity": 3, "spread": 2, "disagreement": true, "evidence": {"screenshot_sha256": "6c2d8e1f0a3b5c7d9e1f2a4b6c8d0e2f4a6b8c0d2e4f6a8b0c2d4e6f8a0b2c4d", "region": [0, 0, 1440, 320]}, "page_url": "https://pantry.example.invalid/visit"}], "kept_separate": [{"a": "UH-7", "b": "UH-15", "why": "Same heuristic and page, but the regions do not overlap: one is the Copy button, the other the map link."}]}, "shows": "Median severity rounded up, the spread, a disagreement left for the reviewer and two look-alikes kept apart with the reason.", "source": "Synthetic. Written for this pack; every name, address, number and identifier is made up.", "status": "proposal", "admission": "not_admitted", "content_kind": "synthetic_example", "license": "MIT", "provenance": {"source": "original ta-amps authored proposal", "license": "MIT", "generator": "scripts/build_packs.py", "independently_verified": false}, "dimensions": {"determinism": 0.0, "evidence_grounding": 0.0, "token_efficiency": 0.0, "safety_compliance": 0.0, "verification_tier": "unverified"}, "dimension_basis": {"measured": false, "method": "unmeasured_floor", "reason": "Tessera requires these axes, so each is set to its lowest value and the tier is unverified. No quality is claimed. Replace them only with measured values and the evidence that produced them."}, "relations": []}}, {"store": "seedpack.usability-heuristics-review", "key": "usability-heuristics-review.v0.1.0.example.fix-plan", "expected_version": 0, "producer_surface": "surface:tessera", "visibility_scope": "surface_only", "allowed_surfaces": [], "target_cohorts": ["all"], "tags": ["category:noun.seed_hypothesis", "pack:usability-heuristics-review", "role:example", "synthetic:true", "spdx:MIT", "status:quarantined"], "value": {"category_id": "noun.seed_hypothesis", "role": "example", "pack": "usability-heuristics-review", "pack_version": "0.1.0", "title": "Worked example: fix verbs for the confirmed findings", "category_reason": "A synthetic instance in the template's shape.", "conforms_to": {"store": "seedpack.usability-heuristics-review", "key": "usability-heuristics-review.v0.1.0.template.fix-plan", "version": 1, "value_sha256": "12682073758eb4d2d53500ca50193a530c265c7b5efc69d9fd0882a237a3c662"}, "instance": {"plan_id": "FP-2", "review_ref": {"key": "usability-heuristics-review.finding_review.t-5", "version": 1, "value_sha256": "aa55aa55aa55aa55aa55aa55aa55aa55aa55aa55aa55aa55aa55aa55aa55aa55"}, "fixes": [{"finding_id": "CUH-1", "severity": 3, "fix_verb": {"template_id": "taste-palettes.draft-embodiments", "outcome": "Three button labels in the volunteers' words, compared side by side."}, "why_this_verb": "Wording has no single right answer; the coordinator chooses.", "priority": 1}, {"finding_id": "CUH-2", "severity": 3, "fix_verb": {"template_id": "findings-to-fixes.propose-fix", "outcome": "A fix proposal that renders the visit page in the shared layout, with its guard."}, "why_this_verb": "A repair to the site's own layout contract.", "priority": 2}], "taste_calls": ["CUH-1"]}, "shows": "One fix verb per confirmed finding, a taste call routed to the palette pack and a repair routed to findings to fixes.", "source": "Synthetic. Written for this pack; every name, address, number and identifier is made up.", "status": "proposal", "admission": "not_admitted", "content_kind": "synthetic_example", "license": "MIT", "provenance": {"source": "original ta-amps authored proposal", "license": "MIT", "generator": "scripts/build_packs.py", "independently_verified": false}, "dimensions": {"determinism": 0.0, "evidence_grounding": 0.0, "token_efficiency": 0.0, "safety_compliance": 0.0, "verification_tier": "unverified"}, "dimension_basis": {"measured": false, "method": "unmeasured_floor", "reason": "Tessera requires these axes, so each is set to its lowest value and the tier is unverified. No quality is claimed. Replace them only with measured values and the evidence that produced them."}, "relations": []}} ]}