docs: 1.4.7 release notes, vendor-global decision, architecture pages#22
Merged
Conversation
Review #2 candidate B: keep VENDOR_MEDIA_TYPE as class-global state; instance-scoping collides with the response-class mechanism and one-vendor-per-process is accepted. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Living-truth pages for Accept-header version negotiation and OpenAPI schema versioning, plus the ubiquitous-language glossary. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
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.
Documentation close-out after the two architecture reviews. No code changes.
1. Release notes —
planning/releases/1.4.7.mdDrafts 1.4.7 (patch). Headline: the case-insensitive vendor matching fix (#18) — a mixed-case configured vendor previously never matched and silently fell back to v1.0. Also lists the internal refactors (#17, #21). No API changes, so downstream needs no action. The tag/publish is yours to cut — this only stages the note (versioning is tag-driven).
2. Decision —
planning/decisions/2026-07-04-vendor-media-type-stays-process-global.mdRecords review #2's candidate B (vendor as process-global class state) as rejected, closing that review's loop so it isn't re-suggested. Rationale: instance-scoping collides with the response-class mechanism kept by the ClassProperty decision, and one-vendor-per-process is an accepted, documented constraint. Includes a revisit trigger (needing two different vendors in one process).
3. Architecture pages —
architecture/Seeds the living-truth home, which until now held only its README:
glossary.md— the ubiquitous language (Vendor media type, Version, Versioned route, …).accept-header-version-negotiation.md— the parse → match → respond flow acrossaccept.py/router.py.openapi-schema-versioning.md—_iter_openapi_routes+_collapse_versioned_pathsand why only request bodies are rewritten.Both pages cross-reference the three decision records for the deliberate constraints.
just check-planning→planning: OK;just lint-ciclean.🤖 Generated with Claude Code