Skip to content

[AI] #222: adopt night-crew 0.12 report_path, align blanket-ready-batch - #224

Merged
turtlemonvh merged 2 commits into
masterfrom
ai/issue-222-night-crew-0-12
Oct 19, 2026
Merged

turtlemonvh merged 2 commits into
masterfrom
ai/issue-222-night-crew-0-12

Conversation

@turtlemonvh

Copy link
Copy Markdown
Owner

Decision needed: none. Once this merges, close #121 (the retired summary issue). Proposed: close it as "superseded by the local report".

What changed

  • .claude/night-crew.json: summary_issue: 121 replaced with report_path: "STATUS_REPORT.html". .gitignore now ignores /STATUS_REPORT.html.
  • CONTRIBUTORS.md and CLAUDE.md: the passages about the morning-summary comment on night-crew: morning summary log #121 now describe the local report file (gitignored, and shared as an Artifact only when asked). CLAUDE.md still says the core plugin injects these rules.
  • blanket-ready-batch: removed "Merge PRs" from the "does not do" list and "never auto-merge" from the description, because step 6 already merges ship-to-merge + risk:low PRs. The subagent brief now gives a PR-body template in night-crew's "PR shape and size" order, plus the ~400-line budget and the 🤖 Claude: comment rule.
  • Comment marker: CONTRIBUTORS.md "Visible attribution" and the blanket-issue-triage templates now start each comment with a 🤖 Claude: line instead of **🤖 Claude** placed after the hidden label-note.

Judgment calls

  • I widened the marker change beyond ready-batch. night-crew treats any comment that doesn't start with 🤖 Claude: as the reviewer speaking. The old triage notes started with <!-- blanket-label-note -->, so night-crew could misread them. ready-batch posts its comments through triage, so changing ready-batch alone would not have fixed this. The audit skill matches the hidden marker anywhere in a comment, so the new line order doesn't affect it. Old comments are not backfilled.
  • I gitignored the report in .gitignore. night-crew's own fallback is .git/info/exclude, and its loop never edits .gitignore. A committed rule covers every checkout without that step. The .claude/* block already sets the precedent for committed tooling ignores.

Verification

  • No Go, script or CI files changed, so I didn't run the docker test suites or make check-fmt.
  • python3 -m json.tool .claude/night-crew.json succeeds.
  • git check-ignore -v STATUS_REPORT.html matches the new .gitignore:32 rule.
  • No summary_issue or #121 references are left outside the one historical note in CONTRIBUTORS.md.

Closes #222

🤖 Generated with Claude Code

core 0.12.0 dropped `summary_issue`: the status report is now a local
file only, so the old key pointing at #121 was silently ignored. Replace
it with `report_path: "STATUS_REPORT.html"`, gitignore that file, and
rewrite the CONTRIBUTORS.md / CLAUDE.md passages that described the
morning-summary comment on #121.

blanket-ready-batch's step 6 merges ship-to-merge + risk:low PRs, yet
its "does not do" list said "Merge PRs" and its description said "never
auto-merge" — drop both contradictions. Its subagent brief now gives
the PR body in night-crew's "PR shape and size" order (Decision needed /
What changed / Judgment calls / Verification).

night-crew reads any turtlemonvh comment that does not start with
`🤖 Claude:` as the reviewer speaking, and the repo's visible marker
(`**🤖 Claude**`, placed after the hidden label-note) never matched that.
Switch the convention in CONTRIBUTORS.md and the triage templates to a
leading `🤖 Claude:` line so label notes can't be misread as LGTMs or
change requests.

Closes #222

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@turtlemonvh

Copy link
Copy Markdown
Owner Author

I gitignored the report in .gitignore. night-crew's own fallback is .git/info/exclude, and its loop never edits .gitignore. A committed rule covers every checkout without that step. The .claude/* block already sets the precedent for committed tooling ignores.

I don't understand this.
What does "night-crew's own fallback" mean? What is it a "fallback" from?
What told you "its loop never edits .gitignore"?
When you say "A committed rule covers every checkout without that step." - I understand you mean a .gitignore rule, but what is "that step"?
What is "The .claude/* block"?

Aside from that, the rest LGTM

@turtlemonvh

Copy link
Copy Markdown
Owner Author

🤖 Claude: That paragraph explained it badly. Plain answers:

  • "night-crew's own fallback": night-crew's setup step (core 0.12.0, skills/night-crew/SKILL.md, step 3) runs git check-ignore -q STATUS_REPORT.html. If the report isn't already ignored, it appends the path to .git/info/exclude. That file is local to one checkout and never committed. "Fallback" meant "what it does when the path isn't ignored yet."
  • "its loop never edits .gitignore": the same step says, word for word, "Never git add the report and never edit the repo's .gitignore for it."
  • "that step": the append to .git/info/exclude, which every fresh checkout has to repeat for itself. A committed .gitignore rule makes it unnecessary.
  • "the .claude/* block": lines 25–30 of .gitignore. They ignore .claude/* except the committed skills and night-crew.json, which is the existing example of a tooling ignore living in .gitignore.

Where the line came from: my instructions to the subagent asked it to "make sure STATUS_REPORT.html is gitignored". night-crew didn't ask for it, and it doesn't need it, since night-crew already keeps the file untracked on its own.

Recommendation: drop the /STATUS_REPORT.html line from .gitignore and leave ignoring to night-crew. The cost is that someone opening the repo without night-crew could see an untracked STATUS_REPORT.html after a run on their machine. The alternative is to keep the line, which is harmless but goes against night-crew's own rule. I'll push the removal unless you'd rather keep it.

@turtlemonvh

Copy link
Copy Markdown
Owner Author

OK it's a fair point, but yes, let's remove the .gitignore rule

night-crew keeps its report untracked itself (it appends the path to
.git/info/exclude when needed) and its skill says never to edit the
repo's .gitignore for it. The rule came from an over-specified
instruction, not from night-crew; review on #224 agreed to remove it.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@turtlemonvh
turtlemonvh merged commit b66b727 into master Oct 19, 2026
10 checks passed
@turtlemonvh
turtlemonvh deleted the ai/issue-222-night-crew-0-12 branch October 19, 2026 21:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Adopt night-crew 0.12.0: summary_issue to report_path, align blanket-ready-batch night-crew: morning summary log

1 participant