- Rewrote em dash prose across the whole tree outside docs/reviews/ (the historical reviews stay verbatim, matching the alktunnels and alktty precedent): src doc comments and inline comments (587), docs/architecture (319), docs/research + sdd_process (484), tests (361), tasks (899), fuzz (28), README/CHANGELOG/Cargo.toml (77), AGENTS.md (85), and the .opencode/agents prompts (109) - Fenced content follows the precedent: comments, ASCII-diagram label separators, and template placeholders rewritten; wire data, JSON/BAST documents, byte diagrams, and transcripts survive verbatim; assert, expect, panic, error-display, and format message literals rewritten as prose; no code, fixture, or test data change - src/rfc1928/LICENSE: the two dashes in alksocks' own provenance header rewritten; the MIT legal text untouched - AGENTS.md adds Project Convention 18: no em dashes in prose; varied restructure, no spaced-hyphen substitutes, fenced prose rule, en dash numeric ranges exempt, docs/reviews/ exempt from the greps - tasks/*.md frontmatter: the name values rewritten by the sweep are now quoted (a raw colon inside an unquoted YAML scalar parsed as null); taskgraph validate reports 37 tasks, no issues Verification: cargo test; cargo clippy --all-targets -D warnings; cargo fmt --check; cargo doc --no-deps; fuzz corpus replay (cargo test --manifest-path fuzz/shared/Cargo.toml); wasm check and clippy for wasm32-unknown-unknown with -D warnings; em dash grep over the repo returns matches only in docs/reviews/ and the bast.md BAST JSON data fence
1.5 KiB
id, name, status, depends_on, scope, risk, impact, level
| id | name | status | depends_on | scope | risk | impact | level |
|---|---|---|---|---|---|---|---|
| architecture/oq-sk2-07-virtual-subnet-helper | Track for OQ-SK2-07 unblock condition (virtual-subnet deployment) | pending | single | trivial | component | research |
Description
External-trigger tracker for OQ-SK2-07 (docs/architecture/ open-questions.md): the virtual-subnet translation-layer helper.
This task is NOT actionable work; it tracks whether the external
unblocking condition has arrived. Tagged [external-trigger, deferred-oq] per docs/sdd_process.md §Deferred OQs.
Unblocking condition: a concrete deployment wants identity-scoped virtual subnets (proxied resources IP-addressable per identity), the shape ADR-012 resolved as assembly-layer policy over the dial callback.
Work
When the condition arrives:
- Mark this task
completed(the condition arrived). - Transition OQ-SK2-07 from
deferred(scope)toopen(or directly toresolvedif assembly-layer policy still suffices). - Decide: does a translation-table helper graduate into the crate
(subnet sizing, per-identity tables, hub exposure)? Check
tun2proxy's virtual-network/virtual-DNS support as prior art
(
/workspace/tun2proxy).
Verification
N/A (tracking task; trivial risk, no code).
Out of scope
Any crate-level implementation of the translation layer before the condition arrives (ADR-012: the dial callback is the seam; the crate's obligation is only that the seams support it).
Notes
Agent fills this during implementation.
Summary
Agent fills this on completion.