docs(meta-257): add the ratified conformance taxonomy - #6
Merged
Conversation
Records the vocabulary that separates standard conformance from first-party adapter parity from external consumer conformance, so that adapter behaviour cannot become the contract by citation. The taxonomy half of META-257 is ratified. The contract classes in the final section remain provisional pending second-adapter evidence (META-260), and are marked as such in the document. Companion to docs/migration/identity-catalog.md, which named this document as the taxonomy half's destination.
qmarcelle
added a commit
that referenced
this pull request
Aug 12, 2026
Calibration ran on PR #11 (canary, closed unmerged) against this policy. All seven criteria observed. Greptile caught the positive control (P1 on extension/src/pathMatch.ts at e22d6f5) citing the branch-local rule by name, stayed silent on the reverted clean head (447a318, 0 comments), and retriggered on push. Merge eligibility behaved as claimed: PR #10 sat at BLOCKED on one unresolved thread. Two results qualify how a required check should be read, and are recorded rather than smoothed over: - the Greptile check concluded success on the head carrying the P1, so the check encodes review completion, not absence of findings; - GitHub auto-resolved the canary thread when the revert removed its lines, so required_conversation_resolution can be satisfied without anyone answering a finding. Decision: Greptile Review is eligible as a required current-head gate. The required-contexts mutation is deliberately not applied here — PR #6 is BEHIND and predates the policy, so the change costs a PR this issue does not own. Reconciles review findings on #10 individually: - Greptile P2: corrected a false coverage claim. extension/test/intelligence.check.ts does exercise pathsMatch; the real limitation is that no gate runs that suite. Chasing it down found the suite is already red on main against pre-META-291 assertions — filed as META-329, not repaired here. - Sourcery 1: audited rules.md/config.json scope parity, all nine scoped rules match; config.json declared authoritative for scope so drift has a resolution direction. - Sourcery 2: added a refresh procedure and measurement stamp to the branch protection section, which transcribes settings that can change externally. Refs META-322, META-329
This was referenced Aug 12, 2026
qmarcelle
added a commit
that referenced
this pull request
Aug 12, 2026
Records the 2026-08-12 branch-protection change: Greptile Review added to required contexts, pinned to app id 867647, with strict, both build-and-smoke contexts, and required_conversation_resolution preserved. Sourcery deliberately not promoted. Also records the first post-policy proof on PR #12 at 76d495d and the accepted cost to stale PR #6. Refs META-322
There was a problem hiding this comment.
qmarcelle has reached the 50-credit limit for trial accounts. To continue receiving code reviews, upgrade your plan.
There was a problem hiding this comment.
qmarcelle has reached the 50-credit limit for trial accounts. To continue receiving code reviews, upgrade your plan.
|
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.



What this is
The taxonomy half of META-257: the ratified vocabulary separating standard conformance from first-party adapter parity from external consumer conformance.
docs/migration/identity-catalog.mdalready names this document as the taxonomy half's destination ("This catalog is input to META-257's taxonomy half (conformance vocabulary)"). This commit supplies it. The file had been sitting untracked on a working copy ofmain.Why it matters
Without this vocabulary, the first adapter's shape leaks into the contract by citation — "Codex does X, so the standard requires X." The three classes are made structurally distinct so that adapter behaviour cannot become normative by repetition, and so that a second adapter differing in an unspecified area reads as revealing an underspecification rather than as non-conformance.
Ratification status — please read before merging
The document is deliberately two-speed, and the PR should not be read as ratifying all of it:
native/adapted/unavailable)Boundary ratification waits on META-260. That split is stated in the document itself (intro and §"Contract classes (provisional)").
One tension worth a reviewer's eye
§"Why this vocabulary exists" argues that "'Provisional' is not a load-bearing safeguard — provisional ratifications become canonical through repeated reference." The document then ends with a section of explicitly provisional contract classes.
This is answered rather than ignored — the closing §"Exit criteria for provisional interfaces" requires every provisional interface to declare what evidence would stabilise, retire, or change it, on the grounds that "an interface with no exit criteria is not provisional; it is permanent in disguise." But whether the contract classes in the preceding section actually carry those declared exit criteria yet is a fair review question, and the honest answer today is that they carry a pointer to META-260 rather than a per-interface set.
Scope
One file added, 91 lines. No code, no config, no behaviour change.