Skip to content

docs(adr): ADR-0076 rev.7 — dissolve the ObjectStackProtocol union (D9) + framework-agnostic transport port (D11)#2428

Merged
os-zhuang merged 1 commit into
mainfrom
docs/adr-0076-d9d11
Jun 28, 2026
Merged

docs(adr): ADR-0076 rev.7 — dissolve the ObjectStackProtocol union (D9) + framework-agnostic transport port (D11)#2428
os-zhuang merged 1 commit into
mainfrom
docs/adr-0076-d9d11

Conversation

@os-zhuang

Copy link
Copy Markdown
Contributor

What

Concludes the kernel review in ADR-0076 (rev.7), in one ADR per maintainer preference.

D9 refinement — no unified protocol interface

The composed ObjectStackProtocol = DataProtocol & MetadataProtocol & … alias is transitional only; the end-state dissolves the union. The two things a "unified protocol" is actually for already exist and are not the god-interface:

  • runtime discovery services registry (spec/api/discovery.zod.ts — "single source of truth for service availability"; capabilities/features was removed as derivable from services[x].enabled);
  • shared envelope/error spine (errors.zod.ts, shared/error-map.zod.ts, dispatcher.zod.ts).

So ObjectStackProtocol is a static, lesser duplicate of the runtime services map → keep N independent domain protocols + the thin spine + discovery; delete the alias at the cross-repo window. Better for tiering (capabilities = what's installed, computed at runtime).

D11 — transport is a framework-agnostic port (multi-adapter)

The transport repeats the kernel's pattern — clean port, god implementation:

  • Port (ratify): http-dispatcher has no Hono import (normalized HttpProtocolContextHttpDispatcherResult); IHttpServer is in spec; plugin-hono-server is an adapter. Deliberately abstracted for multi-adapter — correct.
  • God impl (fix): dispatcher (~3.8k) + rest-server (~5.1k) hardcode every domain. Each capability plugin should register a normalized handler into a thin registry — not Hono routes (that would couple to Hono and break multi-adapter). Decompose incrementally; cross-repo window.
  • Caveats: multi-adapter unproven (only Hono; validate with a 2nd adapter); dispatcher/rest-server overlap to confirm.

Scope

Docs only — edits docs/adr/0076-objectql-core-tiering.md (Status → rev.7). No code. Empty changeset.

🤖 Generated with Claude Code

…9 refinement) + framework-agnostic transport port (D11)

D9 refinement: the composed `ObjectStackProtocol` alias is transitional only; the
end-state dissolves the union. Unification is already provided by the runtime
discovery `services` registry (the source of truth; `capabilities` was removed as
derivable from `services[x].enabled`) + a shared envelope/error spine — not a
static union interface.

D11: transport is a clean framework-agnostic port (http-dispatcher has no Hono
import; IHttpServer in spec; Hono is one adapter) — ratify it (multi-adapter).
But the dispatcher (~3.8k) + rest-server (~5.1k) are god implementations that
hardcode every domain. Each capability plugin should register a NORMALIZED
handler into a thin registry (not Hono routes — that would break multi-adapter).
Caveats: multi-adapter unproven (only Hono; validate with a 2nd adapter);
dispatcher/rest-server overlap to confirm.

Docs only; empty changeset.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@vercel

vercel Bot commented Jun 28, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
spec Ready Ready Preview, Comment Jun 28, 2026 2:13pm

Request Review

@github-actions github-actions Bot added documentation Improvements or additions to documentation tooling size/s labels Jun 28, 2026
@os-zhuang
os-zhuang merged commit 4899c47 into main Jun 28, 2026
15 checks passed
@os-zhuang
os-zhuang deleted the docs/adr-0076-d9d11 branch June 28, 2026 14:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation size/s tooling

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant