{
  "meta": {
    "generatedAt": "2026-06-03T23:20:06.494Z",
    "count": 17,
    "permalink": "/mechanisms",
    "release": {
      "id": "2026.01",
      "label": "2026.01",
      "date": "2026-01-09",
      "permalink": "/api/v/2026.01"
    }
  },
  "antiPatterns": [
    {
      "id": "MEC-01-AP-1",
      "type": "anti-pattern",
      "title": "Logs without dissent",
      "failure": "Records the decision but omits rejected options and dissenting views.",
      "counterfactual": "Decision logs include rejected options, dissent, and a dated review owner.",
      "warning": "If no dissent exists, log the absence explicitly so future reviewers can see it was considered.",
      "mechanism_id": "MEC-01",
      "mechanism_href": "/mechanisms/patterns/decision-log",
      "related_mechanisms": [
        "MEC-01"
      ],
      "refs": [
        "MEC-01"
      ],
      "deprecated_by": null,
      "supersedes": []
    },
    {
      "id": "MEC-01-AP-2",
      "type": "anti-pattern",
      "title": "Out-of-band records",
      "failure": "Keeps accountability logs in private documents that impacted teams cannot access.",
      "counterfactual": "Logs live in the canonical record with a shareable receipt link.",
      "warning": "Sensitive data can be redacted, but the receipt must remain referenceable.",
      "mechanism_id": "MEC-01",
      "mechanism_href": "/mechanisms/patterns/decision-log",
      "related_mechanisms": [
        "MEC-01"
      ],
      "refs": [
        "MEC-01"
      ],
      "deprecated_by": null,
      "supersedes": []
    },
    {
      "id": "MEC-02-AP-1",
      "type": "anti-pattern",
      "title": "One-shot consent bundles",
      "failure": "Asks for every permission at once without explaining timing or scope.",
      "counterfactual": "Requests are staged with clear rationale, timing, and reversible defaults.",
      "warning": "Bundling can be acceptable if the scope is minimal and opt-outs are explicit.",
      "mechanism_id": "MEC-02",
      "mechanism_href": "/mechanisms/patterns/progressive-consent",
      "related_mechanisms": [
        "MEC-02"
      ],
      "refs": [
        "MEC-02"
      ],
      "deprecated_by": null,
      "supersedes": []
    },
    {
      "id": "MEC-02-AP-2",
      "type": "anti-pattern",
      "title": "Opt-out that does not stick",
      "failure": "Offers a toggle but automation continues or re-enables without notice.",
      "counterfactual": "Opt-outs pause automation and are logged with a visible confirmation.",
      "warning": "Some baseline data use can remain if it is disclosed and required for service safety.",
      "mechanism_id": "MEC-02",
      "mechanism_href": "/mechanisms/patterns/progressive-consent",
      "related_mechanisms": [
        "MEC-02"
      ],
      "refs": [
        "MEC-02"
      ],
      "deprecated_by": null,
      "supersedes": []
    },
    {
      "id": "MEC-03-AP-1",
      "type": "anti-pattern",
      "title": "Stewardship without owners",
      "failure": "Publishes a maintenance window without naming accountable owners or success criteria.",
      "counterfactual": "Each window has a named owner, success criteria, and rollback authority.",
      "warning": "Shared ownership is fine if responsibilities are explicit and visible.",
      "mechanism_id": "MEC-03",
      "mechanism_href": "/mechanisms/patterns/maintenance-windowing",
      "related_mechanisms": [
        "MEC-03"
      ],
      "refs": [
        "MEC-03"
      ],
      "deprecated_by": null,
      "supersedes": []
    },
    {
      "id": "MEC-03-AP-2",
      "type": "anti-pattern",
      "title": "Silent maintenance",
      "failure": "Ships changes without comms or status updates, leaving users unaware of risks.",
      "counterfactual": "Comms are published by audience and risk tier, with fallback coverage noted.",
      "warning": "Emergency patches can shorten comms, but they still require an after-action log.",
      "mechanism_id": "MEC-03",
      "mechanism_href": "/mechanisms/patterns/maintenance-windowing",
      "related_mechanisms": [
        "MEC-03"
      ],
      "refs": [
        "MEC-03"
      ],
      "deprecated_by": null,
      "supersedes": []
    },
    {
      "id": "MEC-05-AP-1",
      "type": "anti-pattern",
      "title": "Kill switch without rehearsal",
      "failure": "A halt path exists but no drills confirm that it works under pressure.",
      "counterfactual": "Teams rehearse halts and document restore steps with time-to-halt targets.",
      "warning": "Simulation is acceptable when production drills are risky, but it must be documented.",
      "mechanism_id": "MEC-05",
      "mechanism_href": "/mechanisms/patterns/kill-switch",
      "related_mechanisms": [
        "MEC-05"
      ],
      "refs": [
        "MEC-05"
      ],
      "deprecated_by": null,
      "supersedes": []
    },
    {
      "id": "MEC-05-AP-2",
      "type": "anti-pattern",
      "title": "Single-point approval",
      "failure": "Only one person can trigger the halt, creating dead zones off-hours.",
      "counterfactual": "A pre-authorized roster can halt automation without retaliation risk.",
      "warning": "Small teams can assign a primary/secondary if coverage is explicit.",
      "mechanism_id": "MEC-05",
      "mechanism_href": "/mechanisms/patterns/kill-switch",
      "related_mechanisms": [
        "MEC-05"
      ],
      "refs": [
        "MEC-05"
      ],
      "deprecated_by": null,
      "supersedes": []
    },
    {
      "id": "MEC-06-AP-1",
      "type": "anti-pattern",
      "title": "Appeal link buried",
      "failure": "Appeals exist but are hidden in help docs or separate portals far from the decision.",
      "counterfactual": "Appeal entry points sit next to the affected decision with visible timelines.",
      "warning": "Low-frequency contexts can use a help center if it is still clear and accessible.",
      "mechanism_id": "MEC-06",
      "mechanism_href": "/mechanisms/patterns/appeal-paths",
      "related_mechanisms": [
        "MEC-06"
      ],
      "refs": [
        "MEC-06"
      ],
      "deprecated_by": null,
      "supersedes": []
    },
    {
      "id": "MEC-06-AP-2",
      "type": "anti-pattern",
      "title": "Appeals without feedback",
      "failure": "Collects disputes but provides no receipt, timeline, or outcome signal.",
      "counterfactual": "Every appeal generates a receipt, timeline, and outcome log.",
      "warning": "Timelines can vary by case complexity if the variance is stated and tracked.",
      "mechanism_id": "MEC-06",
      "mechanism_href": "/mechanisms/patterns/appeal-paths",
      "related_mechanisms": [
        "MEC-06"
      ],
      "refs": [
        "MEC-06"
      ],
      "deprecated_by": null,
      "supersedes": []
    },
    {
      "id": "MEC-07-AP-1",
      "type": "anti-pattern",
      "title": "Latency tracked without owners",
      "failure": "Metrics exist, but no one is accountable for acting on latency breaches.",
      "counterfactual": "Dashboards list named owners and escalation paths for each latency tier.",
      "warning": "Shared ownership works when escalation paths are explicit and rehearsed.",
      "mechanism_id": "MEC-07",
      "mechanism_href": "/mechanisms/patterns/accountability-latency-tracker",
      "related_mechanisms": [
        "MEC-07"
      ],
      "refs": [
        "MEC-07"
      ],
      "deprecated_by": null,
      "supersedes": []
    },
    {
      "id": "MEC-07-AP-2",
      "type": "anti-pattern",
      "title": "Telemetry without repair links",
      "failure": "Latency events are logged but never tied to remediation plans.",
      "counterfactual": "Every breach links to a repair log entry with follow-up actions.",
      "warning": "If the repair log lives elsewhere, provide a canonical cross-link.",
      "mechanism_id": "MEC-07",
      "mechanism_href": "/mechanisms/patterns/accountability-latency-tracker",
      "related_mechanisms": [
        "MEC-07"
      ],
      "refs": [
        "MEC-07"
      ],
      "deprecated_by": null,
      "supersedes": []
    },
    {
      "id": "MEC-08-AP-1",
      "type": "anti-pattern",
      "title": "Contest intake without state change",
      "failure": "Contests are accepted but never mutate the underlying decision state.",
      "counterfactual": "Contestation outcomes are wired directly to state-change workflows.",
      "warning": "Manual overrides are acceptable only when logs prove timely updates.",
      "mechanism_id": "MEC-08",
      "mechanism_href": "/mechanisms/patterns/contestation-apis",
      "related_mechanisms": [
        "MEC-08"
      ],
      "refs": [
        "MEC-08"
      ],
      "deprecated_by": null,
      "supersedes": []
    },
    {
      "id": "MEC-09-AP-1",
      "type": "anti-pattern",
      "title": "Burden tracking without action",
      "failure": "Teams measure burden but do not assign remediation owners.",
      "counterfactual": "Burden alerts route to named owners with fix timelines.",
      "warning": "Small teams can use rotating ownership if coverage is clear.",
      "mechanism_id": "MEC-09",
      "mechanism_href": "/mechanisms/patterns/burden-dashboards",
      "related_mechanisms": [
        "MEC-09"
      ],
      "refs": [
        "MEC-09"
      ],
      "deprecated_by": null,
      "supersedes": []
    },
    {
      "id": "MEC-10-AP-1",
      "type": "anti-pattern",
      "title": "Implicit irreversibility",
      "failure": "Actions are treated as irreversible without documenting why.",
      "counterfactual": "Reversibility status and rationale are explicit and reviewed.",
      "warning": "Short-term irreversibility is acceptable if mitigations are documented.",
      "mechanism_id": "MEC-10",
      "mechanism_href": "/mechanisms/patterns/reversibility-audit-logs",
      "related_mechanisms": [
        "MEC-10"
      ],
      "refs": [
        "MEC-10"
      ],
      "deprecated_by": null,
      "supersedes": []
    },
    {
      "id": "MEC-11-AP-1",
      "type": "anti-pattern",
      "title": "Escalation without coverage",
      "failure": "Escalation timelines exist but no staffing covers nights or weekends.",
      "counterfactual": "Coverage rosters align with published escalation SLAs.",
      "warning": "Limited hours are acceptable if clearly disclosed and mitigated.",
      "mechanism_id": "MEC-11",
      "mechanism_href": "/mechanisms/patterns/escalation-slas",
      "related_mechanisms": [
        "MEC-11"
      ],
      "refs": [
        "MEC-11"
      ],
      "deprecated_by": null,
      "supersedes": []
    },
    {
      "id": "MEC-12-AP-1",
      "type": "anti-pattern",
      "title": "Stoppability assumed, not tested",
      "failure": "Teams rely on documentation without running drills.",
      "counterfactual": "Stoppability drills run on a calendar and log outcomes.",
      "warning": "Simulated drills are acceptable if production tests are risky.",
      "mechanism_id": "MEC-12",
      "mechanism_href": "/mechanisms/patterns/stoppability-testing",
      "related_mechanisms": [
        "MEC-12"
      ],
      "refs": [
        "MEC-12"
      ],
      "deprecated_by": null,
      "supersedes": []
    }
  ]
}