feat/companion-app #2 / 15
aaronrene · 1 day ago · Jun 6, 2026 · Diff

Add companion app phase session prompts

Captures the companion app phase handoff prompts on the feature branch so the implementation checkpoints and security guidance remain reproducible.

sha256:0ea4a431a9629cf4c8dee2519372a36bf44bff101d670127d7312bbfd52b8c69 sha
+28 symbols
795 changed · 795 in snapshot files
sha256:1940bf326e3c56da8926389c0a50ef65dc58b577e6da8df4aee731dd06feb7a2 snapshot
+28
symbols added
795
files changed
795
files in snapshot
0
dead code introduced
Semantic Changes 28 symbols
+ Companion App — Phase 2 Session Prompt (Loopback Endpoint Security Core) section Companion App — Phase 2 Session Prompt (Loopback Endpoint Security Core) L1–155
+ Copy-paste prompt (paste this into the new session) section 0. Copy-paste prompt (paste this into the new session) L8–71
+ code[text] variable variable code[text] L10–68
+ Where we are (state at end of this session) section 1. Where we are (state at end of this session) L71–96
+ What Phase 2 is (gate §12, row 2 — 🧠 Thinking) section 2. What Phase 2 is (gate §12, row 2 — 🧠 Thinking) L96–103
+ The 8 mandatory controls (gate §4 — verbatim intent) section 3. The 8 mandatory controls (gate §4 — verbatim intent) L103–119
+ Threat model to reason against (do not pattern-match — argue each) section 4. Threat model to reason against (do not pattern-match — argue each) L119–131
+ Proposed deliverables (confirm scope first — see §0 scope question) section 5. Proposed deliverables (confirm scope first — see §0 scope question) L131–139
+ Definition of done section 6. Definition of done L139–148
+ Open questions to settle at session start section 7. Open questions to settle at session start L148–155
+ Companion App — Phase 3 Session Prompt (OAuth Native/Public Client — PKCE + Loopback Redirect, JWT in OS Keychain) section Companion App — Phase 3 Session Prompt (OAuth Native/Public Client — PKCE + Loopback Redirect, JWT in OS Keychain) L1–228
+ Copy-paste prompt (paste this into the new session) section 0. Copy-paste prompt (paste this into the new session) L9–125
+ code[text] variable variable code[text] L11–122
+ Where we are (state at start of Phase 3) section 1. Where we are (state at start of Phase 3) L125–142
+ The pure-then-bind discipline (carried from Phases 1–2) section 2. The pure-then-bind discipline (carried from Phases 1–2) L142–156
+ table section table L148–155
+ Mandatory controls / standards to argue against the attacker section 3. Mandatory controls / standards to argue against the attacker L156–175
+ Threat model to reason against (argue each — do not pattern-match) section 4. Threat model to reason against (argue each — do not pattern-match) L175–188
+ Proposed deliverables (confirm scope first — see §0 scope questions) section 5. Proposed deliverables (confirm scope first — see §0 scope questions) L188–199
+ Definition of done section 6. Definition of done L199–211
+ Open questions to settle at session start section 7. Open questions to settle at session start L211–228
+ code variable variable code L227–228
+ Phase 5 Implementation — Next-Session Prompt section Phase 5 Implementation — Next-Session Prompt L1–95
+ Hard constraints section Hard constraints L66–76
+ Read first (in full) section Read first (in full) L16–32
+ Suggested order section Suggested order L85–95
+ Tests (Aaron's Rule #0 — all 7 tiers before any merge to main) section Tests (Aaron's Rule #0 — all 7 tiers before any merge to main) L76–85
+ What to build (run-from-source; NOT packaging — that's Phase 7, §0) section What to build (run-from-source; NOT packaging — that's Phase 7, §0) L32–66
Files Changed
+795
795 in snapshot
+ .env.example .example
+ .gitignore .gitignore
+ .gitleaks.toml .toml
+ .museattributes .museattributes
+ .museignore .museignore
+ .nvmrc .nvmrc
+ AGENTS.md .md
+ README.md .md
+ backups/.gitignore .gitignore
+ cli/index.mjs .mjs
+ docs/SPEC.md .md
+ hub/roles.mjs .mjs
+ lib/air.mjs .mjs
+ lib/chunk.mjs .mjs
+ lib/vault.mjs .mjs
+ lib/write.mjs .mjs
+ netlify.toml .toml
+ package.json .json
+ public/.gitkeep .gitkeep
+ vault/meta/.gitkeep .gitkeep
+ web/index.html .html

0 comments

No comments yet. Be the first to start the discussion.

To add a comment, use the Muse CLI: muse hub commit comment sha256:0ea4a431a9629cf4c8dee2519372a36bf44bff101d670127d7312bbfd52b8c69 --body "your comment"