Skip to content

docs: reconcile adaptive-context bundle with the protocol spec (#27) - #61

Merged
macanderson merged 2 commits into
mainfrom
reconcile/adaptive-context-27
Jul 24, 2026
Merged

docs: reconcile adaptive-context bundle with the protocol spec (#27)#61
macanderson merged 2 commits into
mainfrom
reconcile/adaptive-context-27

Conversation

@macanderson

@macanderson macanderson commented Jul 24, 2026

Copy link
Copy Markdown
Owner

Closes the analysis half of #27: draws the protocol/product boundary and classifies every delta from the adaptive-context bundle against the CGP spec.

What's here

  • ADR 0007 — the protocol/product boundary. The bundle's task-wide ContextFrame is the host-owned CompiledContextFrame, not the protocol's atomic ContextFrame — the name collision is the root of the drift. Records what the protocol owns vs. hosts/providers; keeps frames as evidence (not directives) while leaving the P1: Specify the Context Exchange Provider profile #28 exchange profile free to carry directive records; rejects the CGEP rename (canonical name stays Context Graph Protocol (CGP) / contextgraph/1.0-draft).
  • Delta table. Every item classified adopt-upstream / push-downstream / reject, routed to a spec change or a normative-track issue.

Disposition

Enforcement

Structural: normative frame text lives in exactly one place; downstream docs (stella, oxagen) hold only a pinned NORMATIVE-HOME: pointer, landing in companion PRs. The downstream canary (#29) guards the code side.

Does not touch the frozen 1.0 core, publish crates, or cut a tag (pre-freeze).

Draw the protocol/product boundary and classify every delta from the
adaptive-context bundle (stella context-frame-spec.md / directive-schema.md /
CGP build prompt; oxagen docs/specs/adaptive-context) against the CGP spec.

- ADR 0007: the protocol/product boundary. The bundle's task-wide `ContextFrame`
  is the host-owned `CompiledContextFrame`, not the protocol's atomic
  `ContextFrame`. Records what the protocol owns vs. what hosts/providers own;
  keeps frames as evidence (not directives) while leaving the #28 exchange
  profile free to carry directive *records*; rejects the CGEP rename — canonical
  name stays Context Graph Protocol (CGP) / contextgraph/1.0-draft.
- adaptive-context-reconciliation.md: the delta table for #27. Each item is
  adopt-upstream / push-downstream / reject, routed to a spec change or a
  normative-track issue (#49, #28, #5, #50, #12, #10; #6 unchanged).

Claude-Session: https://claude.ai/code/session_01NGCCkBsqCdJiNvFBHQKgyw

@sourcery-ai sourcery-ai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry @macanderson, you have reached your weekly rate limit of 500000 diff characters.

Please try again later or upgrade to continue using Sourcery

)

Add an explicit coverage row for every issue in the #5-#13 range #27 names,
including the ones the bundle does not touch (#7 graph, #11 query filters, #13
HTTP auth) and the ones already closed by prior work (#8 token_cost), so 'every
adopted item is routed' is verifiable at a glance.

Claude-Session: https://claude.ai/code/session_01NGCCkBsqCdJiNvFBHQKgyw
@macanderson
macanderson marked this pull request as ready for review July 24, 2026 03:19

@sourcery-ai sourcery-ai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry @macanderson, you have reached your weekly rate limit of 500000 diff characters.

Please try again later or upgrade to continue using Sourcery

@macanderson
macanderson enabled auto-merge (squash) July 24, 2026 03:19
@macanderson
macanderson disabled auto-merge July 24, 2026 03:19
@macanderson
macanderson merged commit eb51c58 into main Jul 24, 2026
11 checks passed
@macanderson
macanderson deleted the reconcile/adaptive-context-27 branch July 24, 2026 03:19
macanderson added a commit that referenced this pull request Aug 1, 2026
…og, and backfill the gaps (#73)

CHANGELOG.md relied on every PR remembering to write its own [Unreleased]
entry. An audit of the 22 merges since v0.1.0 whose numbers never appear
in the file found 9 user-visible changes with no entry at all — including
the OCP -> CGP rename itself, the repo's biggest breaking change. The
Unreleased section had also accumulated duplicate category headings
(two '### Added', two '### Changed', two '### Fixed') from PRs appending
their own blocks.

Go-forward: .github/workflows/changelog.yml watches pushes to main. When
a merge lands without touching CHANGELOG.md, it drafts the missing
entries from the merge's actual diff (.github/scripts/changelog-ai.sh,
Vercel AI Gateway, degrade-open: no key or a failed call is a log line,
never a red check) and proposes them as a bot/changelog PR — a draft for
human review, never a direct push. The gap is measured from the last
commit that touched CHANGELOG.md, so merging the bot PR resets it, and
each run regenerates the whole current gap, so a superseded bot PR loses
nothing.

Backfill: entries for the rename (#1), frame identity/composition/usage
reports (#32), golden wire fixtures (#35), ADR 0007 (#61, #27),
composition conformance + the canary scheduled-run gate (#70) — written
from each PR's diff, in the file's existing voice. Three further audit
hits (#68, #69, #71) turned out to be already covered by newer entries
and were left alone. Duplicate category headings merged: one heading per
category, Keep-a-Changelog order.
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.

1 participant