Post-provider security freeze checklist (JOE-1981)¶
Purpose: cut one immutable candidate covering the provider platform + remediation (JOE-1975–1980, F-005 snap staging), then hand to JOE-1920 human review.
Historical freeze: v0.0.18 remains the pre-provider security freeze only.
Do not¶
- Overwrite or re-point
v0.0.18 - Represent green PR CI alone as independent security review
- Mark JOE-1655 Done without residual closeout (v0021-residual-closeout.md)
- Tag without explicit maintainer approval
Freeze prep (maintainer)¶
Historical candidate VERSION: 0.0.19 (shipped as post-provider freeze; JOE-1920 signed off). Current published tip at docs refresh: 0.0.20. Next assurance cut: 0.0.21.
- Ensure
masteris clean and contains the remediation merges (1975–1980 + F-005 snap). - Record exact
git rev-parse HEAD(full 40 hex). - Align
VERSION, workspace crate versions, and CHANGELOG Unreleased notes for the cut. - Run locally (clean tree):
- Optional release rehearsal (no publish):
- Propose tag name on the 0.0.x line (e.g.
v0.0.19) — wait for human GO. Do not invent a parallel1.0.0tag for this programme. - After tag: independent clean clone of that tag only for retest.
Independent retest recipes (clean clone + Cargo)¶
| Finding | Recipe (redacted results only) |
|---|---|
| F-001 | Synthetic keys for openrouter/openai/elevenlabs/xai through doctor/support/JSON; canary matrix |
| F-002 | verify publish policy inject/restore on disposable worktree |
| F-005 | stage_verified_isolates_from_source_swap + pack symlink tests |
| F-006 | verify_release_assets.sh with full 40-hex expect; wrong-commit must fail |
| JOE-1975 | remote::interrupt cancel/deadline/permit isolation tests |
| JOE-1976 | xAI mock /v1/stt + /v1/tts; reject OpenAI paths/voices |
| JOE-1977 | remote::wire_format matrix |
| JOE-1978–1980 | OpenRouter exact default; ProviderId serde; SecretString Debug; public_network_reason |
| Local-only | Synthetic keys present; local_only + default local; zero network expectation |
Provider tier honesty (at freeze)¶
| Provider | Tier claim |
|---|---|
| local | supported |
| openrouter STT | supported (reviewed models) |
| openrouter TTS | experimental until protected smoke |
| openai | supported (reviewed models; protected smoke optional) |
| elevenlabs | supported (reviewed models; protected smoke optional) |
| xai | experimental (official REST; protected smoke pending) |
Human sign-off¶
JOE-1920 only: qualified independent human on the tagged candidate. Automation may prepare evidence; it may not self-approve the assurance cut (v0.0.19 freeze; subsequent v0.0.21 programme GO).