glm-5.3-flash
d74a27f764
phase 1: architecture spec — overview, server/client, ADR-001..006
...
- ADR-001: inherit the alknet TLS design as the baseline; deviations
recorded as alktls ADRs
- ADR-002: TlsError ships the ADR-088 six-variant shape from day one
(typed #[from] sources; NoqWrap; no string catch-all)
- ADR-003: the QUIC feature is noq (iroh's extracted fork), pre-
consumer rename; default = [] per the lean-crate convention
(corrects the extracted code's default = ["quinn"])
- ADR-004: complete accessors — for_tcp_tls() adopted, rustls_config()
adopted; server accessors borrow (&self), client accessors consume
- ADR-005: identity + credentials + fingerprint types move into
alktls; auth layer stays out
- ADR-006: eight-module layout; seed tests + integration invariant
pins (exact nine-scheme list, client enable_early_data)
- specs: overview (transport picture, terminology), server.md (ACME
lifecycle, invariants), client.md (verifier selection matrix, root-
store fallback); open-questions.md promotes OQ-TLS-01..08 (all
resolved at entry)
- Cargo.toml: quinn feature -> noq (per ADR-003); AGENTS.md aligned
Architecture review pass done: 0 critical, 2 major (ADR-002 AcmeConfig
doc comment contradiction; ADR-003 unrecorded default deviation) and
8 minors all addressed; cross-references verified against alknet ADRs,
rustls/noq/iroh sources.
Verified: cargo test, test --all-features, clippy -D warnings,
fmt --check, doc --no-deps
2026-09-10 05:37:55 +00:00
glm-5.3-flash
e93238cb4a
adopt ecosystem MSRV floor 1.88; drop the time pin
...
- rust-version 1.85 -> 1.88 (ecosystem-wide resolution from the audit
sessions; matches noq 1.2's floor, sits below iroh 1.91)
- Cargo.lock: time 0.3.36 pin removed (existed only to keep the 1.85
claim satisfiable); tree re-floated to current
- phase-0: MSRV thread marked RESOLVED; OQ-TLS-08 narrowed to the
quinn->noq feature-rename half; lesson recorded (rust-version is
passive metadata — claims must be compile-checked, not assumed)
Verified: cargo test, test --all-features, clippy -D warnings,
fmt --check, rustup run 1.88 cargo check
2026-09-10 03:51:31 +00:00
glm-5.3-flash
6bd19994f8
phase-0: noq/iroh investigation — quinn→noq shift recorded
...
- noq 1.2.0 published (iroh's extracted quinn fork); iroh 1.1.0 is
built on noq 1.2.0 and re-exports noq as its public API
- TLS seam verified API-compatible with quinn 0.11: QuicServerConfig/
QuicClientConfig try_from + NoInitialCipherSuite — port is mechanical
- one rustls 0.23 tree across all QUIC paths (both pin 0.23.33);
ADR-084 posture strengthens (no ring/aws-lc provider split possible)
- iroh key surface unchanged (32-byte Ed25519 SecretKey) —
key-not-config exception intact
- OQ-TLS-08 opened: quinn feature → noq feature rename + honest MSRV
floor (noq 1.88, iroh 1.91); OQ-TLS-04/07 updated; survey + checklist
extended
Verified: cargo fmt --check, cargo test, cargo doc --no-deps
2026-09-09 16:45:41 +00:00
glm-5.3-flash
a570bee0fe
repo scaffold + AGENTS.md + Phase 0 research
...
- Cargo scaffold: feature gates (quinn/tcp/acme), lean tokio subset,
placeholder lib; Cargo.lock committed with time pinned to 0.3.36 so
rust-version = 1.85 is actually satisfiable (rcgen's default time
resolution requires 1.88 — alknet-tls fails the same check)
- AGENTS.md adapted from alktunnels: TLS-crate conventions (behavior-
preservation invariants, fail-closed verifier selection, one ACME
state machine, config-construction scope boundary, no wasm target)
- .opencode/agents: implementation-specialist conventions + coordinator
prompt template + architect deferral examples updated for alktls
- docs/research/phase-0.md: extraction inventory with verified
invariants (line-referenced), spec-vs-code gaps (TlsError shape,
for_tcp_tls, config-type ownership), rewrite requirements,
OQ-TLS-01..07, MSRV verification record
Verified: cargo test, clippy -D warnings, fmt --check, doc --no-deps,
test --all-features, rustup run 1.85 cargo check
2026-09-09 16:25:55 +00:00
glm-5.3-flash
dbc77af3d3
init
2026-09-09 14:47:09 +00:00