feat(voyage): wire 4 downstream commands to brief.phase_signals + composition rule (v5.1)
This commit is contained in:
parent
56fed8f305
commit
d3975c441c
4 changed files with 121 additions and 0 deletions
|
|
@ -357,6 +357,36 @@ VOYAGE_PROFILE=premium /trekreview --project ...
|
|||
|
||||
Stats records emit `profile` and `profile_source`.
|
||||
|
||||
## Composition rule (v5.1)
|
||||
|
||||
Independent of the profile system. When `brief.md` carries
|
||||
`phase_signals` (brief_version ≥ 2.1), each downstream phase resolves
|
||||
effort + model as:
|
||||
|
||||
```
|
||||
effort_for_phase = brief.phase_signals[<phase>]?.effort ?? 'standard'
|
||||
model_for_phase = brief.phase_signals[<phase>]?.model ?? profile.phase_models[<phase>]
|
||||
```
|
||||
|
||||
The brief signal wins per-phase when present; the profile fills any
|
||||
gaps. There is no helper module — composition is documented prose in
|
||||
each downstream command.
|
||||
|
||||
For `/trekreview` specifically: `effort == 'low'` activates the existing
|
||||
`--quick`-equivalent code-path (skip the brief-conformance reviewer; run
|
||||
correctness-only). `effort == 'standard'` (or absent) → no change.
|
||||
High-effort behavior is deferred to v5.1.1 per brief Non-Goal.
|
||||
|
||||
### Sequencing gate surface
|
||||
|
||||
Phase 1 already calls `brief-validator.mjs --soft` against `{brief_path}`.
|
||||
If the validator returns `BRIEF_V51_MISSING_SIGNALS` in `errors`
|
||||
(brief_version ≥ 2.1 without `phase_signals` or `phase_signals_partial:
|
||||
true`), halt with: `Brief is brief_version 2.1 but does not carry
|
||||
phase_signals — re-run /trekbrief to commit them (Phase 3.5).`
|
||||
Enforcement is validator-only; this surface just makes the friendly hint
|
||||
readable.
|
||||
|
||||
## Hard rules
|
||||
|
||||
- **Brief is the contract.** Every finding in the review traces to a
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue