Files
alktunnels/tasks/architecture/oq-tn-12-tracker.md
T
glm-5.3-flash 508fc6fc28 docs: complete oq-promotion-sync — AGENTS.md current with Phase 1, add TN-12 tracker
- AGENTS.md architecture bullet: spec exists (present tense), OQ tracker
  authoritative; convention 16 de-hedged (shape pinned by ADR-004/005);
  alkcall version drift fixed (v0.4.x/v0.5.x -> v0.7.x per Cargo.toml);
  Phase 1-work bullet -> Phase 1 complete, Phase 2 in tasks/
- phase-0-findings.md: promotion note atop the Open Questions section
  pointing at docs/architecture/open-questions.md; convergence
  checklist's final item checked
- tasks: add architecture/oq-tn-12-tracker (external-trigger tracker for
  OQ-TN-12 deferred(scope), per sdd_process.md deferred-OQ two-halves
  rule); OQ-TN-12 Blocked-on text now references the tracker id
- tasks: oq-promotion-sync completed (scope grew: 3 folded stale
  AGENTS.md refs found during review + the TN-12 tracker)

Verified: taskgraph validate (13 tasks), grep sweep clean for stale
'not exist yet'/version-drift language, cargo test + cargo fmt --check
2026-09-08 06:18:55 +00:00

2.3 KiB

id, name, status, depends_on, scope, risk, impact, level, tags
id name status depends_on scope risk impact level tags
architecture/oq-tn-12-tracker OQ-TN-12 follow-through: hub re-produce composition helper (deferred scope) pending
single trivial isolated research
architecture
external-trigger
deferred-oq
hub
producer
consumer

Description

OQ-TN-12 is deferred(scope) (open-questions.md): the hub re-produce composition helper — whether a crate that re-produces a tunnel resource it consumes (a hub proxy: consumer + register_openable on the same connection) needs a composition helper from this crate, or assembles from the public producer/consumer surface as-is. ADR-004 resolved the substrate inversion point to "no trait, halves functions"; the re-produce half has no concrete consumer yet, so the decision is deferred until one exists.

This task is the machine-readable half of the deferral (per docs/sdd_process.md §Deferred OQs and the blocker-task half): it tracks whether the unblocking condition has arrived. It is not implementation work and blocks nothing.

The unblocking condition: a concrete hub-proxy consumer — a crate that re-produces a consumed tunnel resource (the reverse POC's hub is the seed shape minus re-export: consumer + register_openable on the same connection, without exercising re-export).

Work

  • Re-read OQ-TN-12 + ADR-004 at triage; confirm no hub-proxy consumer has materialized (if one has, the OQ transitions deferred(scope) → open and the composition-helper decision runs as its own task).

Verification

  • Tracked (this file existing and being reviewed at triage time IS the tracking mechanism — no code or doc change is expected unless the unblocking condition above arrives)

Out of scope

  • Deciding the composition-helper question itself (runs as a new architecture task once the condition arrives)
  • Building a hub proxy (the condition is a consumer existing, not us building one)

References

  • docs/architecture/open-questions.md OQ-TN-12 (the deferral + Blocked-on condition)
  • docs/architecture/decisions/004-no-backend-trait.md (the no-trait resolution this deferral rides on)
  • docs/sdd_process.md §Deferred OQs and the blocker-task half

Notes

Agent fills during implementation.

Summary

Agent fills this on completion.