Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .agents/skills/process-event-sources/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ Firstmate registers a source, keeps working, and is woken when that process comp
## Arming a source

Use the adapter, not the generic runner, for a real source.
For a Lavish review artifact:
For a Lavish review artifact firstmate owns (a live investigating scout should host its own loop):

```sh
bin/fm-procevent-lavish.sh arm <artifact.html>
Expand Down
1 change: 1 addition & 0 deletions AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -372,6 +372,7 @@ Retire one only on an explicit captain or main-firstmate decision, after loading
A completed scout must leave a self-contained report before its scratch worktree can be discarded; read and relay its findings, record the report as the Done artifact, and re-evaluate the queue.
A report may recommend implementation but does not authorize it.
Before treating the investigation or any visual review as complete, load `decision-hold-lifecycle`; teardown enforces that shared completion gate.
When a scout's deliverable is a visual artifact the captain will iterate on, prefer keeping that scout alive to host its own Lavish loop rather than tearing it down and mediating from firstmate, so the scout keeps its investigation context and the captain iterates in one continuous session.
When implementation is separately authorized, promote the existing scout through `bin/fm-promote.sh` rather than creating a duplicate task.
The promoted worker must inventory scratch state, return to a clean default-branch base, carry over only intended fix changes, create the ship branch, and follow the project's selected delivery path while leaving scratch commits and debug edits behind and turning a reproduced bug into the regression test.

Expand Down
1 change: 1 addition & 0 deletions bin/fm-brief.sh
Original file line number Diff line number Diff line change
Expand Up @@ -339,6 +339,7 @@ The report is the only thing that survives, so anything worth keeping must be in
# Definition of done
Write your findings to \`$DATA/$ID/report.md\`.
The report must stand alone: what you did, what you found, the evidence (commands run, output, file:line references), and what you recommend.
If your deliverable is a visual artifact the captain will review and iterate on, you may host the Lavish review loop yourself (poll, revise, re-serve, staying alive) instead of handing it back to firstmate.
Before reporting done, read and follow \`$FM_ROOT/.agents/skills/decision-hold-lifecycle/SKILL.md\` and pass its shared completion gate for the report and any visual review.
When the report is complete, append \`done: {one-line conclusion}\` to the status file and stop.
If your findings reveal work that should ship (e.g. you reproduced a bug and the fix is clear), say so in the report; firstmate may promote this task in place, and you would then receive mode-specific ship instructions as a follow-up message.
Expand Down
2 changes: 2 additions & 0 deletions tests/fm-brief.test.sh
Original file line number Diff line number Diff line change
Expand Up @@ -699,6 +699,8 @@ test_scout_and_secondmate_scaffold() {
assert_present "$brief" "scout brief was not scaffolded"
assert_grep "SCOUT task" "$brief" "scout brief must declare itself a scout task"
assert_grep "report.md" "$brief" "scout brief must point at the report deliverable"
assert_grep "you may host the Lavish review loop yourself" "$brief" \
"scout brief must mention the option to host a Lavish review loop"

FM_SECONDMATE_CHARTER='Supervise the alpha domain.' \
FM_HOME="$BRIEF_HOME" "$ROOT/bin/fm-brief.sh" brief-sm-q6 --secondmate alpha >/dev/null 2>&1 \
Expand Down
Loading