Repository navigation
Accepts ADR-0002: the datamodel document's JSON Schema - #39
Merged
Merged
Conversation
ADR-0002's status line moves from proposed to accepted in place, and the ADR index row's status cell with it. A dated Note at the foot of the record says the code it decides shipped in 0.5.0 (tag v0.5.0 at 71de7e0) and that every claim was verified against that tag and against main at fde6da6, whose one later commit touches none of the files the record cites. The Note also records two readings that change nothing the record decides: the keys decision 5 requires without a type are required and untyped in the file, and the $id decision 8 spells is an identifier that does not resolve. The status line is the only line removed from the record; the index row's status cell is the only other change in docs/adr/. Documentation only: no code, and no changelog fragment (changelog.d/README.md excludes ADRs). The full gate ran green on this exact tree. Refs: sd-mr3
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Flips ADR-0002 (the datamodel document's JSON Schema) to accepted. Its code shipped in statifier_datamodel 0.5.0 (tag
v0.5.0at71de7e0); acceptance was given by the operator on 2026-09-27.What changes
docs/adr/0002-datamodel-document-json-schema.md: the status line moves fromproposed (2026-09-26)toaccepted (2026-09-27)in place, the date moving with the word as ADR-0001's own flip did; a dated## Noteat the foot records the flip, the version and the SHAs verified at.docs/adr/README.md: the ADR-0002 row's status cell moves toaccepted.git diff origin/main -- docs/adr/removes two lines: the record's status line and the index row whose status cell moved. Every other line is an addition at the foot of the record. No code, no changelog fragment (changelog.d/README.mdexcludes ADRs).Direction check (every claim against the tag and main)
Verified at
71de7e0(thev0.5.0tag) and atfde6da6(origin/main). The one commit between them touches.claude/wurk/release.mdonly, and no commit after the record merged (c631e97) touches the record's cited files other than the code commitc61a52aand the release commit71de7e0(version bump, README pin, changelog).index/1admits any map with a list under"scopes"and answersnilotherwise:StatifierDatamodel.Index.index/1. Holds.scope: nil:Index's privatescope_name/1answersnilfor a name outside@scopes. Holds.mix.exs, the comment abovedeps/0. Holds.priv/schemas/datamodel-document.schema.jsoncarries the draft-07$schema;priv/schemasis inmix.exspackage/0files:. Holds.test/statifier_datamodel/schema_test.exs, "each spelling the schema lists indexes to a type; one outside them does not", againstindex.ex's private@types. Holds.StatifierDatamodel.Schema.path/0andjson/0, embedded with@external_resource, text not a map, no caller inlib/:lib/statifier_datamodel/schema.ex; a search oflib/finds no other reference to the module. Holds.schema_test.exs, "the near-misses". Holds.definitions(scope,entry,declaration,field) and top-levelrequired. Holds; the keys the decision names without a type are required and untyped in the file, which the foot Note records as a reading, not a change.typeanditem_typeare strings and the nine are listed underdefinitions/closed_type: the file; the declared-name case isschema_test.exs, "an entry whose type names a declaration validates". Holds.additionalProperties: falseanywhere: the file has noadditionalPropertieskey. Holds.$idkeyed on document version 1: the file's$id;schema_test.exs, "the file is draft-07 and its $id is keyed on document version 1". Holds; the URL does not resolve, which the decision already allows ("never fetched") and the foot Note records.changelog.d/README.md. Holds.ex_json_schema ~> 0.11,only: :test:mix.exsdeps/0;mix.lockresolves 0.11.5. Holds.event;card.last4not sensitive;Settleableundeclared and read as opaque; version 2 indexed as 2; the declared-name entry typed{:declared, "cards.credit_txn"}):schema_test.exsnegatives/0andStatifierDatamodel.Types.parse/2's opaque answer. Holds.No claim failed. The record's own sentence "this record does not flip its own status" stays true and is met in the foot Note: the operator flipped it.
Gate
mix qualityran green on the committed tree (format, compile with warnings as errors, doc links, dependencies, credo, docs, tests with coverage, dialyzer).