@@ -9,13 +9,33 @@ project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
99
1010### Added
1111
12+ ### Changed
13+
14+ ### Fixed
15+ <!-- oss-changelog:unreleased-end -->
16+
17+ ## [ 0.8.2] - 2026-09-08
18+
19+ ### Added
20+
1221- Add ` run discard ` as an audited, idempotent cleanup path for preserved work
1322 from terminal failed or cancelled runs, with explicit force required for a
1423 verified dirty worktree.
1524- Expose preserved work and recorded source-repository identity in run output;
1625 add exact repository filtering to ` run list ` and an explicit
1726 ` condition-met ` /` timed-out ` outcome to ` run wait ` .
1827
28+ - Add configurable agent profiles (` add-configurable-agent ` ).
29+ - Add teardown for terminal failed runs with preserved worktrees (` intake-feature-taskfleet-41343c4dd3e4 ` ).
30+ - Archive exact Pi session and terminal worker evidence (` durable-worker-evidence ` ).
31+ - Bound completed windows in persistent agent sessions (` agent-session-retention ` ).
32+ - Capture autonomous agent pane output to durable ` <run-dir>/agent.log ` (` capture-agent-output-to-run-dir ` ).
33+ - Remove end-to-end stint friction without durable lifecycle state (` end-end-stint ` ).
34+ - Spinoff blocked on user input at a genuine fork must propagate to the parent agent, not silently block (` uncommonly-fuzzy-swing ` ).
35+ - Stamp issue trailers in issue-driven worktree skills (` run-merge-stamp ` ).
36+ - run list has no repo filter, so sibling-repo runs are indistinguishable by title (` phenomenally-noisy-behavior ` ).
37+ - stint-start should safely rebase a clean diverged main (` intake-feature-taskfleet-5565259bd11f ` ).
38+
1939### Changed
2040
2141- Carry a bounded stint from orientation through its product-owner report,
@@ -28,6 +48,46 @@ project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
2848 the exact clean bump commit; retain ordered crates.io publication and
2949 cargo-dist GitHub binary/Homebrew workflows.
3050
51+ - Adopt ossctl for cutting this project's releases (` adopt-ossctl-release-cut ` ).
52+ - Align green gate with CI (` align-green-gate ` ).
53+ - Audit: no user-specific facts in a public artifact (` audit-no-user-specifics ` ).
54+ - Bundled skills still claim publishing channels are TBD (` skills-stale-tbd-channels ` ).
55+ - Cargo scaffolding for taskfleet workspace (` cargo-scaffolding ` ).
56+ - Conform skill installer to canon section 15 (` overly-knowing-family ` ).
57+ - Converge canonical Taskfleet filesystem paths (` taskfleet-filesystem-path-convergence ` ).
58+ - Cut the dead plan module from taskfleet-core's public API (` cut-plan-module ` ).
59+ - DECISION (ADR): harden the current model vs re-architect the lifecycle core (` arch-decision-rearchitect-vs-harden ` ).
60+ - Define external pi telemetry adapter contract (` worker-telemetry-pi-adapter ` ).
61+ - Deterministic floor: baseline snapshot + supervisor-enforced gates (tests/clippy vs baseline, file-scope, test-gaming) as standalone module (` deterministic-floor ` ).
62+ - Distinguish untriaged work from explicit deferral (` distinguish-untriaged-work ` ).
63+ - Establish Taskfleet as the sole product identity (` rename-taskfleet ` ).
64+ - Implement configurable agent profile resolver (` worker-profile-config-resolver ` ).
65+ - Implement worker telemetry control and bounded sample (` worker-telemetry-core-control ` ).
66+ - Integrate selected agent launch and telemetry visibility (` worker-telemetry-harness-enforcement ` ).
67+ - Keep only the Taskfleet identity (` taskfleet-zero-legacy-identity ` ).
68+ - Let workers choose proportionate review depth (` worker-review-scope-discretion ` ).
69+ - MVP polish wave 2 (B4 + B5 + B6 + B7) (` mvp-polish-wave-2 ` ).
70+ - Make pi the built-in default harness per ADR 0001 D4 (` harness-pi-default ` ).
71+ - Migrate stint skills from TODO markdown DAG to issuectl dag (` stint-skills-issuectl-dag ` ).
72+ - Recover interrupted run-create reservations and child publication (` create-idempotency-lease-recovery ` ).
73+ - Redesign spin-off issuectl materialization to avoid duplicate external issues (` spinoff-issuectl-materialization-arch ` ).
74+ - Remove project-specific intake concepts leaked into stint-handoff + execution-DAG (keep these skills generic/open-source) (` stint-skills-drop-intake-specifics ` ).
75+ - Remove stint local source installation (` remove-stint-local-install ` ).
76+ - Replace unmaintained fs2 with fs4 (or rustix) (` replace-fs2-with-fs4 ` ).
77+ - Reshape worker control plane implementation DAG (` reshape-worker-control-plane-dag ` ).
78+ - Review worker telemetry and agent profiles as one control plane (` worker-control-plane-review ` ).
79+ - Structured --help --json output across all subcommands (` help-json-structured ` ).
80+ - Taskfleet bug analysis should emit canonical triage heading (` canonical-triage-heading ` ).
81+ - Use current Shipshape release protocol (` shipshape-current-protocol ` ).
82+ - Use local validation instead of GitHub test CI (` local-release-validation ` ).
83+ - Validate and roll out worker telemetry end to end (` worker-telemetry-e2e-rollout ` ).
84+ - Worktree-filed issues must not be laned and must record AI-review provenance (` worktree-issue-provenance ` ).
85+ - plan.json v2 schema + validator (checks/assertions, immutable plan_rev, intent_rev, DAG validity) (` plan-json-v2-schema ` ).
86+ - supervise_gates: replace fixed sleeps with readiness polling (V8 flake under load) (` supervise-gate-test-flake ` ).
87+ - supervisor: qualify tmux liveness by session: window_id + socket (` supervisor-tmux-window-identity ` ).
88+ - taskfleet-core: verify projection id key matches file body (` projection-key-body-consistency ` ).
89+ - tracing_appender::non_blocking for JSONL log throughput (` nonblocking-log-appender ` ).
90+
3191### Fixed
3292
3393- Resolve build-script input paths from each Cargo invocation so a shared target
@@ -42,7 +102,37 @@ project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
42102 heading.
43103- Seed the real-protocol release fixture with its own unpublished note so it
44104 remains valid when the production changelog has just been finalized.
45- <!-- oss-changelog:unreleased-end -->
105+
106+ - (` agent-skips-run-merge-idle-pending ` ).
107+ - (` stint-handoff-nonexistent ` ).
108+ - Autonomous-merge SKILLs do not tell agent to submit terminal node.report (` spinoff-must-submit-node-report ` ).
109+ - Blocked terminal report (success: false ) deletes the worktree branch instead of preserving it for the human (` blocked-report-deletes-branch ` ).
110+ - Bundled SKILLs document flag forms, terminology, and envelope shapes that don't match the binary (` skill-binary-doc-sync ` ).
111+ - Cancelled run hides preserved dirty worktree (` cancelled-run-hides-preserved-worktree ` ).
112+ - Clippy format push warnings break CI (` clippy-format-push-ci ` ).
113+ - Doctor skill test depends on host tools (` doctor-test-host-tools ` ).
114+ - Interactive 'code' run self-merged to done without user's /worktree-merge (` interactive-code-run-self-merged ` ).
115+ - Isolate protocol fixture from finalized release notes (` protocol-fixture-release-notes ` ).
116+ - Read build paths from the current Cargo invocation (` build-script-worktree-path ` ).
117+ - Recovery merge leaves landed run failed (` recovery-merge-status ` ).
118+ - Release gate fails on CI jq and workflow token (` taskfleet-release-gate-ci-portability ` ).
119+ - Release wrapper rejects ossctl 0.10.1 (` release-wrapper-rejects-3 ` ).
120+ - Release wrapper uses unsupported gh repo shorthand (` release-wrapper-uses ` ).
121+ - Restore bare-CI portability before Taskfleet R8 (` pre-r8-ci-portability ` ).
122+ - Restore the single canonical default state root (` canonical-root-regression ` ).
123+ - Restore the workmux project prefix emoji on Taskfleet worktree windows (` workmux-project-prefix-emoji ` ).
124+ - Spawning session gets no completion notification when an async run finishes/merges (` no-completion-notification-to-parent ` ).
125+ - Taskfleet selected incidental default state over runs in a nondefault root (` taskfleet-dual-state-root ` ).
126+ - Use ULID entropy in run-create branch names (` run-branch-name-ulid-entropy ` ).
127+ - Worker Claude process can hang mid-run; run reports failed though work is committed-unmerged (` worker-process-hang ` ).
128+ - contract under-declares the release surface: no homebrew target, and cargo-publish contradicts the documented CI publish (` contract-declare-ci-publish-surface ` ).
129+ - notify test fires_hook_with_completion_env is order-dependent (TOCTOU on async hook file) (` notify-test-toctou-flake ` ).
130+ - publish-crates fixture chmods symlinked system tools on Linux CI (` publish-crates-fixture-symlink-chmod ` ).
131+ - run create with a long --title spawns stillborn (tmux window-name truncation mismatch) (` run-create-long-title-stillborn ` ).
132+ - run show reports null worktree_path/source_branch for a live pending run (` run-show-null-worktree-path ` ).
133+ - run wait JSON cannot distinguish a timeout from a settled result (` run-wait-json ` ).
134+ - stint-handoff blocks on unrelated global runs (` intake-bug-taskfleet-6edf517c691a ` ).
135+ - version_envelopes snapshot stale after bump to 0.1.5 (` version-envelopes-snapshot ` ).
46136
47137## [ 0.7.1] - 2026-09-07
48138
0 commit comments