Files
stack/docs/plans/CURRENT.md
T
jason.woltje 073bbfdb6a feat(auth): M19 harness auth tooling — auth.sh checkpoint + per-launch account injection (#47)
Investigation (pi 0.84.4 docs + host auth.json metadata, values never
read): provider stacking is native (one auth.json keyed by provider;
resolution --api-key > auth.json > env > models.json; OAuth auto-refresh).
Multi-account per provider is NOT native -> named-file design:
auth.<account>.json + per-launch injection.

- scripts/auth.sh: status (provider names, credential types, perms,
  env-side names informational — never credential material) and accounts
  (named files, active marker). Exit codes per convention: 3 missing for
  a read, 2 unparseable, 4 file/environment (symlinks refuse).
- scripts/agent.sh --auth <account>: resolves auth.<account>.json and
  exports PI_AUTH_FILE (the existing compose read-only mount source — no
  new plumbing); missing/invalid account refuses pre-container.
- scripts/test-auth.sh: 13 no-Docker cases; core assertion is the safety
  property itself — fixture key/token/env VALUES never reach output.
- Docs: TOOLS.md Auth section, AGENTS.md command surface + suites.

Headless task runs keep the default credential (worker auth selection is
a separate policy decision). Real-host smoke: anthropic/openai-codex
oauth + zai api_key reported, perms 600, no named accounts yet.

Suites 24/90/14/17/13 + verify green. Agreed sequence M16-M19 complete;
M20 owner-gated.
2026-09-03 19:58:50 -05:00

4.2 KiB
Raw Blame History

CURRENT — single source of "what happens next"

This file always names exactly one next action. Any "continue" / "next" / "proceed" message means: execute the action below, fully (implement → test → verify against its acceptance criteria → commit → push → close the issue → update this file to the next action). No ambiguity, no re-planning.

Next action

(none queued — M19 completes the agreed ROADMAP sequence M16M19. M20 — packages/* restructure + unified CLI — is owner-gated per ROADMAP; say "plan M20" to draft its issue, or point at anything else.)

Queue (ordered per docs/plans/ROADMAP.md)

  1. Deferred by owner: CI runners (Gitea hardware slow); second real adapter; push automation

Rules

  • One action in flight. Update this file at the END of every action.
  • Blocked? Move the item to "Blocked" below with the reason and stop.
  • Completed actions move to the log at the bottom (date + issue + result).
  • Corrected entries are marked, never silently rewritten (see 2026-09-03 dedup note).

Blocked

(none)

Completed log

Note (2026-09-03): this log was deduplicated after editor-session races appended duplicate blocks. The dedup removed repeated lines only; every distinct action appears exactly once, in completion order. Ground truth: git history + Gitea issues.

  • 2026-09-03 — POC: containerized pi hello-world (poc-container-hello-v0)
  • 2026-09-03 — M1 configuration-driven hello world (#1#4; config-hello-v1); hotfix #5 stdin detach
  • 2026-09-03 — M2 mission/task abstraction (#6#9; mission-task-v1); hotfix #14 release identity in task path
  • 2026-09-03 — M3 release model + safe updates (#10#13; release-model-v1); drills: update/refusal/rollback
  • 2026-09-03 — M14 live user context layer (user/ dispatched to all launches; 0.0.9 built)
  • 2026-09-03 — M15 agent seats: per-agent SOUL + role contracts (#36; agent-seats-v1); roles/ convention (root = bootstrap-only)
  • 2026-09-03 — M13 interactive TUI agent + TOOLS.md (#35; interactive-agent-v1); release 0.0.8 activated
  • 2026-09-03 — M12 conductor auto-apply policy (#34; auto-apply-v1); 17 conductor selftests
  • 2026-09-03 — M11 session forking (#33; session-fork-v1); child recalls ancestor, base untouched
  • 2026-09-03 — M10 run-record retention (#32; retention-v1); prune keep-N, dry-run default, receipt
  • 2026-09-03 — M9 mission capability policy (#30; mission-policy-v1); least-privilege intersection
  • 2026-09-03 — test UX: green OK/red FAIL status colors; NO_COLOR-aware
  • 2026-09-03 — M10-era hotfix: retry lineage (#28) + AGENTS.md/SESSIONS.md recovery shim
  • 2026-09-03 — release 0.0.10 packaged and health-gated activated (user context + agent seats live)
  • 2026-09-03 — release 0.0.11 shipped (onboarding + live user context); ROADMAP.md agreed (M16M19); CI deferred by owner
  • 2026-09-03 — M16 release self-determination (#38; release.sh ensure at launch, drift warnings, recursion guard) — logged late: CURRENT.md had gone stale while M16/M17 shipped; ground truth = git history
  • 2026-09-03 — M17 skill lifecycle + ms-* skill set completion (#40#42; skill-lifecycle-v1); release 0.0.12 packaged, health-gated active — logged late, same staleness correction
  • 2026-09-03 — conductor-loop calibration with live collaborator (#43): dispatch via agent-send.sh → receipt → line-by-line diff review → suite-gated integration; docs/TOOLS.md gains Tools (host-side) section + corrected suite counts
  • 2026-09-03 — skill revisions adjudicated (#44): ms-communications integrated as-authored; ms-conductor redraft + conductor remediation (refusal vs outage); TOOLS.md release.sh ensure row
  • 2026-09-03 — M18 seat-role progressive capability restriction (#45; roles resolve to contracts, ceiling ∩ seat grant, fail-closed refusals, roles/researcher.json); task suite 74 → 88
  • 2026-09-03 — M18 follow-up: fail-closed seat resolution under MOSAIC_AGENTS_DIR override (#46, owner decision after live verification); task suite 88 → 90; next action M19
  • 2026-09-03 — M19 harness auth tooling (#47; auth.sh status/accounts, agent.sh --auth per-launch injection via PI_AUTH_FILE, test-auth suite 13 cases with secret-never-printed assertions); agreed sequence M16M19 complete, M20 owner-gated