Repository navigation
v7.0.0
·
643 commits
to main
since this release
Immutable
release. Only release title and notes can be modified.
Breaking
- Saved state moves to state format 7, in
.dreamcatcher/v7/. Saved
work from v6 does not carry across: before upgrading, let each
assignment reach its wrap-up or finish its pull request by hand, and
accept that conversations start afresh, as
the upgrade instructions
describe. (#662)
Added
- Campaigns, a third kind of agent work. A
[[campaign]]route in
dreamcatcher.tomlnames a label and the lead's recipes. Labelling a
parent issue assigned to you starts a campaign: the lead takes a round
in a worktree checked out at main, posts on GitHub itself, and keeps
its final output in the feed. Each comment you post on the parent then
wakes the lead in the same harness session, on main refreshed, and
comments posted while the campaign is paused reach it when it resumes.
Closing the parent ends the campaign. The lead's input also holds the
parent's sub-issues and where each one's assignment stands, and a
sub-issue that needs the lead's attention wakes it too. The lead
leaves the agent marker off its feedback on a sub-issue's pull
request, so the assignment's agent is given that feedback as it is
given yours. Start a campaign explains how, and
the campaign skill contract
says what the lead is given.
(#662,
#667,
#671,
#672,
#674) - The web home page has a Campaigns tab, where each active campaign
counts its closed sub-issues and expands to show each one's assignment
card, request or issue, and the terminal has adreamcatcher campaign
view.stopandfeedtake--campaign, andretryalso clears the
fault of the newest campaign at the issue.
(#662,
#671,
#673) - The
dreamcatcher.tomlthatdreamcatcher initwrites routes the
dream:leadlabel to campaigns, andinitcreates that label. The
route's recipes run the dream plugin'sdream:leadskill, which
carries a parent issue's sub-issues through their assignments to
merge. Start a campaign explains what it does.
(#677) - Campaigns can be queued: a campaign shows as blocked while an open
issue blocks its parent on GitHub, and starts once every blocker is
closed. Start a campaign
explains how.
(#682) - A second tutorial,
From parent issue to merged stages, takes a
parent issue with two dependent sub-issues throughdream:leadto
merge. (#680)
Fixed
- Starting dreamcatcher for the first time in a repository no longer
fails on Python 3.13 before any agent work exists.
(#664) - Stop and recover work now says that work
resumed after an errored or interrupted round also takes up what
arrived meanwhile.
(#680) - The animated status view on the documentation home page now shows the
statuses, round details and dispatch labels that the web home page
shows, rather than a "needs user feedback" status that the web page no
longer has.
(#647) - A request blocked by an issue in another repository now names that
issue with its repository, asowner/name#123, on the web home page
and indreamcatcher status, and the web page links to it there. It
had been shown and linked as an issue in this repository. The web home
page also no longer puts a space before each comma between the issues
a request names.
(#676)
What's Changed
- Bring the documentation home page hero up to date with the web page by @alimanfoo in #647
- Clarify triage conventions and documentation workflow by @alimanfoo in #651
- Bump the uv group with 5 updates by @dependabot[bot] in #649
- Specify campaign coordination by @alimanfoo in #631
- Bump the uv-security group across 1 directory with 2 updates by @dependabot[bot] in #653
- Fresh startup fails on Python 3.13 when the work directory is absent by @alimanfoo in #664
- Stage 1: Start and end a campaign by @alimanfoo in #662
- Stage 2: Continue the lead through parent comments by @alimanfoo in #667
- Stage 3: Observe the campaign's children by @alimanfoo in #671
- Stage 4: Wake a stub lead for actionable child changes by @alimanfoo in #672
- Stage 5: Expand child assignment cards within campaigns by @alimanfoo in #673
- Stage 6: Coordinate a campaign with a project-local lead skill by @alimanfoo in #674
- Stage 7: Use the published lead skill by @alimanfoo in #677
- Stage 8: Review and resolve semantic inconsistencies by @alimanfoo in #678
- Blocked by across repos by @alimanfoo in #676
- Complete the user documentation for campaigns by @alimanfoo in #680
- Queue campaigns using parent issue dependencies by @alimanfoo in #682
- Prepare v7.0.0 release by @alimanfoo in #688
Full Changelog: v6.3.0...v7.0.0