Skip to content

chore: prompt files 0o600 + record bulletproof certification verdict#69

Merged
tzone85 merged 1 commit into
mainfrom
chore/cert-record-and-low-followups
Jun 11, 2026
Merged

chore: prompt files 0o600 + record bulletproof certification verdict#69
tzone85 merged 1 commit into
mainfrom
chore/cert-record-and-low-followups

Conversation

@tzone85

@tzone85 tzone85 commented Jun 11, 2026

Copy link
Copy Markdown
Owner

Summary

Closes the two LOW findings from the certification audit and records the verdict in CLAUDE.md + the Obsidian launch playbook.

Prompt file perms (LOW)

`internal/runtime/registry.go` (`CLIRuntime.BuildCommand`) and `internal/runtime/tmux_runner.go` (`Runner.Run`) wrote agent prompt files at `0o644` — readable by every user on a shared dispatch host. Prompt content carries goal text + system context + WAVE_CONTEXT + acceptance criteria, any of which may include DSNs. Now `0o600`, with the parent `.vxd-prompts` dir at `0o700`.

YAML pipe/semicolon caveat (DOCUMENTED)

`ValidateConfigShellCommand` deliberately allows `|`, `;`, `&&` for legitimate multi-step QA commands. CLAUDE.md item 52 records this as an explicit operator trust boundary.

Certification record

  • CLAUDE.md Bulletproofing pass section extended with items 43–52 + a new "Bulletproof certification 2026-06-11" subsection containing the verdict sentence verbatim and the 24-PR closing summary.
  • `~/Documents/Obsidian Vault/Vortex Dispatch/README.md` updated with a 🛡️ certification banner: govulncheck zero reachable, 28/28 packages green with `-race`, both CRITICAL findings closed, Go 1.26.4 stdlib chain, OWASP headers, bearer auth + single-use bootstrap nonce.

Test plan

  • `go test ./... -count=1` — all 29 packages green
  • `go vet ./...` clean
  • `go build ./...` clean

Closes the two LOW findings from the certification audit and records
the audit verdict in CLAUDE.md and the Obsidian launch playbook.

1. Prompt file perms 0o644 → 0o600 (LOW).
   internal/runtime/registry.go (CLIRuntime.BuildCommand) and
   internal/runtime/tmux_runner.go (Runner.Run) wrote agent prompt
   files at 0o644 — readable by every user on a shared dispatch host.
   Prompt content carries goal text + system context + WAVE_CONTEXT +
   acceptance criteria, any of which may include DSNs or other
   sensitive context. Tightened to 0o600 (and the parent .vxd-prompts
   dir to 0o700).

2. YAML pipe/semicolon caveat documented (LOW).
   ValidateConfigShellCommand deliberately allows `|`, `;`, `&&` for
   legitimate multi-step QA commands. CLAUDE.md item 52 records this
   as an explicit operator trust boundary so a future reviewer
   doesn't mistake it for a bypass.

3. CLAUDE.md certification block (item 43-52 + "Bulletproof
   certification 2026-06-11" subsection). Records the six-audit cycle,
   the verdict sentence verbatim, the 24-PR closing summary, and the
   remaining non-security tech debt.

4. Obsidian launch playbook — adds the 🛡️ certification banner with
   the verdict sentence and the audit-trail summary (govulncheck zero,
   28/28 packages green, OWASP headers, bearer auth + bootstrap nonce,
   both CRITICAL findings closed, Go 1.26.4).

All 28 packages still pass with -count=1.
@tzone85 tzone85 merged commit 8ed341d into main Jun 11, 2026
4 of 5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant