synartesis 0.6.15 → 0.6.16
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +13 -0
- package/dist/cli.js +6 -2
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,19 @@
|
|
|
2
2
|
|
|
3
3
|
What changed, and why it mattered. Dates are release dates.
|
|
4
4
|
|
|
5
|
+
## 0.6.16 — 2026-09-15
|
|
6
|
+
|
|
7
|
+
### Fixed
|
|
8
|
+
|
|
9
|
+
- **A run stopped by drift said it had already been undone.** Undo halts on a
|
|
10
|
+
conflict and prints three ways on, one of them `undo <id> --force`. Running
|
|
11
|
+
that answered "Nothing in it is still applied; it has already been undone"
|
|
12
|
+
-- about a change still sitting in the file -- and refused the very command
|
|
13
|
+
it had just recommended. A halted action is `unrecoverable`, keeps its
|
|
14
|
+
inverse, and is exactly what `--force` and `--replan` exist for; the check
|
|
15
|
+
counted only `applied` and read that as nothing left to do. Found by walking
|
|
16
|
+
the drift case end to end rather than by reading the code.
|
|
17
|
+
|
|
5
18
|
## 0.6.15 — 2026-09-15
|
|
6
19
|
|
|
7
20
|
One gap, named by a stranger on Reddit and real.
|
package/dist/cli.js
CHANGED
|
@@ -3852,7 +3852,9 @@ async function runUndo(argv, journal) {
|
|
|
3852
3852
|
const runId = chosen.id;
|
|
3853
3853
|
if (given === void 0) {
|
|
3854
3854
|
const actions = journal.getActions(runId);
|
|
3855
|
-
const left = actions.filter(
|
|
3855
|
+
const left = actions.filter(
|
|
3856
|
+
(action) => action.status === "applied" || action.status === "rolling_back" || action.status === "unrecoverable"
|
|
3857
|
+
).length;
|
|
3856
3858
|
out("");
|
|
3857
3859
|
out(
|
|
3858
3860
|
` ${style.quiet("no session named, so the most recent:")} ${style.strong(runId.slice(0, 8))} ` + style.quiet(`${chosen.label ?? "an agent"}, ${shortTime(chosen.startedAt).trim()}`)
|
|
@@ -3865,7 +3867,9 @@ async function runUndo(argv, journal) {
|
|
|
3865
3867
|
)}`
|
|
3866
3868
|
);
|
|
3867
3869
|
const other = [...journal.listRuns()].reverse().find(
|
|
3868
|
-
(run) => run.id !== runId && journal.getActions(run.id).some(
|
|
3870
|
+
(run) => run.id !== runId && journal.getActions(run.id).some(
|
|
3871
|
+
(action) => action.inverse !== void 0 && (action.status === "applied" || action.status === "unrecoverable")
|
|
3872
|
+
)
|
|
3869
3873
|
);
|
|
3870
3874
|
if (other !== void 0) {
|
|
3871
3875
|
out("");
|