Skip to content

docs(adr): ADR-078 — multimodal/vision serving priority (deferral)#731

Merged
oceanwaves630 merged 2 commits into
mainfrom
docs/adr-078-multimodal-deferral-priority
Jul 9, 2026
Merged

docs(adr): ADR-078 — multimodal/vision serving priority (deferral)#731
oceanwaves630 merged 2 commits into
mainfrom
docs/adr-078-multimodal-deferral-priority

Conversation

@oceanwaves630

@oceanwaves630 oceanwaves630 commented Jul 9, 2026

Copy link
Copy Markdown
Collaborator

PR description authored by Claude (Anthropic agent) on behalf of @oceanwaves630.

ADR-078 — Multimodal / Vision Serving Priority (Deferral)

Eighth and final sequencing ADR in the bundle set (siblings ADR-071…077). Docs-only — one new
file. Records the priority placement of multimodal / vision serving, distinct from the
already-accepted technical vision design in ADR-069 (which it does not re-litigate or amend).

Verdict — DEFERRED-NOT-RANKED (gated on the vision dev lane)

Multimodal serving does not enter the near-term lever ranking of this bundle: there is no served
image capability to optimize at head. The vision path is inert scaffold, and the correct interim
serving contract — a truthful fail-closed 400 — is already shipped. This is a priority-sequencing
decision, not a technical one; ADR-069's staged S1–S6 recalibration is accepted and stands.

Measured / source-verified (origin/main @ 594b557be)

Framing

Explicit non-deprioritization: vision is an active, tracked development lane. "Deferred in the
near-term serving-lever ranking" ≠ "vision deprioritized." The deferral carries a named re-entry
trigger
— multimodal serving re-enters the ranking when either (a) the vision lane reaches
ADR-069 S5–S6 (S5 gate: end-to-end greedy first-N token parity vs HF Qwen3.5-0.8B; S6: chat/serve
wiring), the first point at which served-multimodal latency/throughput is a real optimization target,
or (b) an explicit decision schedules the vision build lane (#564) as near-term. Until one fires,
the vision work is build-lane work (land PR #670 → ADR-069 S2–S6, tracked #564). No experiment
needed; amends nothing. An S-row rider records the eventual activation whichever way the ranking
then falls.

Docs-only; no code paths change.

oceanwaves630 and others added 2 commits July 9, 2026 07:14
Eighth/final sequencing ADR (bundle I). Records the PRIORITY placement of multimodal serving (deferred-not-ranked, gated on the vision dev lane) — distinct from ADR-069's already-accepted technical vision design, which it does not re-litigate or amend. Verdict rests on source/issue state at origin/main@594b557be: serve fails closed on image_url (PR #656), vision module inert scaffold (called only from tests), zero vision fields in the runtime config, ADR-069 merged (#669), S1 idle as draft PR #670, tracking #564/#565/#566 open. Explicit non-deprioritization: vision is an active tracked dev lane. No experiment needed; amends nothing.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…ed re-entry trigger

R1 mediums, TBV'd vs origin/main@594b557be:
- M1 (R2): generate_multimodal has more test callers than listed (:22396,:22417 in metal_generate_multimodal_honors_stop_string); rephrased to 'every live caller is a test fn' + VisionEncoder::new sole call site vision/mod.rs:265. Conclusion (no binary/non-test path) unchanged.
- M2 (R3): 'zero Metal references' overstated — 5 doc-comment Metal mentions exist (vit.rs:12,14; mod.rs:19; multimodal.rs:7,38). Rephrased to 'no Metal implementation/API; only doc comments'.
Leo press-time gate: added a NAMED re-entry trigger to the gated-deferral decision (ADR-069 S5-S6 served-parity milestone, or explicit #564 lane scheduling) so the deferral has a concrete re-entry condition, not an open-ended park.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@oceanwaves630 oceanwaves630 marked this pull request as ready for review July 9, 2026 11:36
@oceanwaves630 oceanwaves630 enabled auto-merge (squash) July 9, 2026 11:36

@ohdearquant ohdearquant left a comment

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

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

SPEC-GATE: SIGNED (Leo). Both press-time reads verified at content level: the re-entry trigger is named and two-armed (ADR-069 S5-S6 parity-gated served path, OR an explicit decision scheduling #564) so this is a decision with a re-entry condition rather than a parking ticket, and the explicit non-deprioritization paragraph routes through the public tracking issues with the fail-closed contract correctly pinned as the honest current state. With this press the sequencing set 071-078 is COMPLETE: eight ADRs, every verdict measured, experiment-gated, or deferral-with-named-trigger, zero survey-trusted rankings, all corrections landed as cited amendments. The P2-scope hold is exactly right — do not cut the build branch until the shipped-fusion recon resolves and I sign the scope; finding a possibly-already-shipped P2 half by applying the lane's own shipped-not-greenfield check to itself is the discipline paying for its keep.

@oceanwaves630 oceanwaves630 merged commit b060472 into main Jul 9, 2026
24 checks passed
@oceanwaves630 oceanwaves630 deleted the docs/adr-078-multimodal-deferral-priority branch July 9, 2026 11:45
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.

2 participants