Commit Graph

1 Commits

Author SHA1 Message Date
Levi Neuwirth e26ddd5ec3 docs(journey): frame Stage 1b-1 — make building discoverable
`COHERENCE.md` §20 Priority 1 names Journey Stage 1b as the golden
journey's remainder and it had no branch, no framing, and no lane —
the only §20 priority with nothing in flight. This frames the first
third of it: journey step 9, build or test the project.

Scope is a global `C-c c` for `compile.run` plus a first prompt
prefilled from the detected project kind instead of empty. Lua, tests
and docs; no Rust change, no protocol change. LSP spawn guidance and
the welcome buffer are separate stages (§7).

Three ground-truth findings the framing rests on:

- `ProjectKind::Cargo` does not exist. COHERENCE names it twice; the
  variant is `ProjectKind::Rust` and line 77 is its doc comment. Lua
  matches the tag string `pmacs.project.detect` already returns, so
  the stage needs no new Rust primitive.
- The compile cwd is resolved inside `run`, after the prompt closes,
  so a suggestion built in the command's `fn` would obey a different
  rule than the run. The stage extracts one resolution and has both
  consume it.
- The last-resort cwd is `std::env::current_dir()` at call time, which
  in tests is the pmacs repo root — itself a Cargo project. Negative
  pins are built so that fallback is never reached.

Records one limitation rather than fixing it: after `pmacs <dir>` the
active buffer is dired's and pathless, so the cwd falls through to the
process cwd. That needs COHERENCE §8's execution-location model, not a
reach into dired's private handle table.

Adds the journey lane to the active-work ledger.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Lv428Fth9LRtffwJSsqH7T
2026-07-30 18:15:58 -04:00