Skip to content

docs(adr): supersede ADR-0011 with ADR-0012 — json-family implemented (V-L2-F3)#152

Merged
hyperpolymath merged 1 commit into
mainfrom
claude/adr-0012-json-family
May 30, 2026
Merged

docs(adr): supersede ADR-0011 with ADR-0012 — json-family implemented (V-L2-F3)#152
hyperpolymath merged 1 commit into
mainfrom
claude/adr-0012-json-family

Conversation

@hyperpolymath
Copy link
Copy Markdown
Owner

Docs-only reconciliation of a merge race. No code changes.

What happened

While the V-L2-F2 wrap-up (#149, ADR-0011 documenting the json drop) was in flight, the maintainer merged #148 for #146 (V-L2-F3), which deliberately reverses that drop and implements a JSON-family sidecar backend (plain / JSON-LD / NDJSON) with full SQLite-parity octad runtime and a real storage abstraction (sidecar::StorageKind + a format-independent SidecarData codec). #149 merged seconds later, so ADR-0011 / CHANGELOG / README landed on main contradicting the code that #148 had just added.

This PR

  • ADR-0012 (new) — documents the V-L2-F3 reversal + implementation; explains how it answers ADR-0011's "no abstraction / relational-only" premise (it introduced the abstraction and re-encodes the invariants in code, with a documented single-writer trade-off).
  • ADR-0011 — marked Superseded by ADR-0012, retained as the historical record of the F2 decision (which did ship in feat(manifest): drop unimplemented json sidecar store (V-L2-F2, #112) #144).
  • CHANGELOG — the intra-cycle Removed: drop json entry is replaced by an Added: JSON-family sidecar backend entry (the net state for the release).
  • README — legacy example now lists sqlite | postgres | json.

Validation

Follows up #112 / #144 / #147 / #149 (V-L2-F2) and #146 / #148 (V-L2-F3).


Generated by Claude Code

… V-L2-F3)

Reconcile the decision record with main. V-L2-F3 (#146, shipped in #148)
deliberately reversed the V-L2-F2 json *drop* and implemented a JSON-family
sidecar backend (plain / JSON-LD / NDJSON) with full SQLite-parity octad
runtime and a real storage abstraction (sidecar::StorageKind + a
format-independent SidecarData codec). That landed on main just before the
V-L2-F2 wrap-up docs (#149), leaving ADR-0011, the CHANGELOG, and the README
contradicting the code.

- docs(adr): add ADR-0012 documenting the V-L2-F3 reversal + implementation;
  mark ADR-0011 "Superseded by ADR-0012" (retained as the historical record
  of the F2 decision, which did ship in #144).
- docs(changelog): replace the intra-cycle "Removed: drop json" entry with an
  "Added: JSON-family sidecar backend" entry reflecting the net state.
- docs(readme): the legacy [tier1.provenance] example now lists
  "sqlite | postgres | json".

Docs only; no code change. fmt/clippy/test (142) green on main.

https://claude.ai/code/session_01Ux144vBDdySvLUqUrCgkT4
@hyperpolymath hyperpolymath marked this pull request as ready for review May 30, 2026 23:26
@hyperpolymath hyperpolymath merged commit 158c10f into main May 30, 2026
11 of 20 checks passed
@hyperpolymath hyperpolymath deleted the claude/adr-0012-json-family branch May 30, 2026 23:26
@github-actions
Copy link
Copy Markdown

🔍 Hypatia Security Scan

Findings: 82 issues detected

Severity Count
🔴 Critical 3
🟠 High 7
🟡 Medium 72

⚠️ Action Required: Critical security issues found!

View findings
[
  {
    "reason": "Action perpolymath/standards/.github/workflows/governance-reusable.yml@main\n needs attention",
    "type": "unpinned_action",
    "file": "governance.yml",
    "action": "pin_sha",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Action actions/checkout@v4 needs attention",
    "type": "unpinned_action",
    "file": "rust-ci.yml",
    "action": "pin_sha",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Action dtolnay/rust-toolchain@stable needs attention",
    "type": "unpinned_action",
    "file": "rust-ci.yml",
    "action": "pin_sha",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Action Swatinem/rust-cache@v2 needs attention",
    "type": "unpinned_action",
    "file": "rust-ci.yml",
    "action": "pin_sha",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Action actions/checkout@v4 needs attention",
    "type": "unpinned_action",
    "file": "rust-ci.yml",
    "action": "pin_sha",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Action dtolnay/rust-toolchain@master needs attention",
    "type": "unpinned_action",
    "file": "rust-ci.yml",
    "action": "pin_sha",
    "rule_module": "workflow_audit",
    "severity": "high"
  },
  {
    "reason": "Action Swatinem/rust-cache@v2 needs attention",
    "type": "unpinned_action",
    "file": "rust-ci.yml",
    "action": "pin_sha",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in boj-build.yml",
    "type": "missing_timeout_minutes",
    "file": "boj-build.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in casket-pages.yml",
    "type": "missing_timeout_minutes",
    "file": "casket-pages.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in casket-pages.yml",
    "type": "missing_timeout_minutes",
    "file": "casket-pages.yml",
    "action": "flag",
    "rule_module": "workflow_audit",
    "severity": "medium"
  }
]

Powered by Hypatia Neurosymbolic CI/CD Intelligence

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants