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
This commit is contained in:
@@ -191,7 +191,7 @@ also include:
|
||||
Example prompt template:
|
||||
|
||||
```
|
||||
You are an implementation specialist for the @alkdev/alknet project.
|
||||
You are an implementation specialist for the @alkdev/alktls project.
|
||||
|
||||
Your task: {{task}}
|
||||
|
||||
@@ -204,13 +204,14 @@ Your task: {{task}}
|
||||
7. Push: git push origin $(git branch --show-current)
|
||||
8. Notify: worktree({action: "notify", args: {message: "Task completed: {{task}}. <brief summary>", level: "info"}})
|
||||
|
||||
Key project constraints (@alkdev/alknet):
|
||||
Key project constraints (@alkdev/alktls):
|
||||
- Rust: use cargo build, cargo clippy, cargo fmt, cargo test
|
||||
- No comments in code
|
||||
- anyhow::Result for application errors, thiserror for library error types
|
||||
- Feature flags for transports (tls, iroh, acme)
|
||||
- Async via tokio runtime
|
||||
- No panics in library code
|
||||
- thiserror for the library error type (`TlsError`, `#[non_exhaustive]`)
|
||||
- Feature gates for transports (quinn, tcp, acme)
|
||||
- Async via tokio runtime (no `features = ["full"]` in dependencies)
|
||||
- No panics in library code; no unwrap/expect outside tests
|
||||
- Behavior-preservation invariants are load-bearing (see AGENTS.md §5)
|
||||
```
|
||||
|
||||
### Partial Generation Spawning
|
||||
|
||||
Reference in New Issue
Block a user