trantor 0.18.66 → 0.18.67
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/.claude-plugin/plugin.json +1 -1
- package/hooks/lib/handoff.mjs +14 -24
- package/package.json +1 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "trantor",
|
|
3
|
-
"version": "0.18.
|
|
3
|
+
"version": "0.18.67",
|
|
4
4
|
"description": "Trantor — the hub-world for AI agent crews: live message bus, presence, project Kanban/flow board + crew orchestration for independent AI coding agents (Claude, Codex, Gemini, Kimi, DeepSeek)",
|
|
5
5
|
"mcpServers": {
|
|
6
6
|
"relay": {
|
package/hooks/lib/handoff.mjs
CHANGED
|
@@ -751,33 +751,23 @@ export function maybeSpawn(projectDir, conf = readConfig(), handoffFile = "", de
|
|
|
751
751
|
try {
|
|
752
752
|
if (_platform !== "darwin") return false;
|
|
753
753
|
if (_env.TRANTOR_NO_HANDOFF_SPAWN === "1") return false;
|
|
754
|
-
// #8089
|
|
755
|
-
//
|
|
756
|
-
//
|
|
757
|
-
//
|
|
758
|
-
//
|
|
759
|
-
//
|
|
760
|
-
|
|
761
|
-
|
|
762
|
-
|
|
763
|
-
|
|
764
|
-
|
|
765
|
-
}
|
|
766
|
-
const ok = _spawnPane(projectDir, handoffFile, paneId);
|
|
767
|
-
_log(`[trantor] herdr pane ${paneId}: ${ok ? "baton driver spawned — it replaces this pane in place" : "baton driver FAILED to spawn — no successor"}\n`);
|
|
768
|
-
return ok;
|
|
754
|
+
// #8089 REVERTED 2026-09-19, and the revert is the point. A pane session gets NO Terminal
|
|
755
|
+
// window AND no baton driver from here: the APP owns the replacement. app handoff_now runs
|
|
756
|
+
// `trantor handoff --write-only`, waits for the record (including the armed-mid-turn case it
|
|
757
|
+
// explicitly handles), then does its OWN idle gate, kill and reopen (#6081, #5509). Making this
|
|
758
|
+
// spawn a pane baton put a SECOND driver on the same pane, racing the app's — which broke the
|
|
759
|
+
// chat handoff button and the skill, both of which had been working. The stranding this was
|
|
760
|
+
// meant to fix is real but lives in the SKILL path, where no app driver exists; fixing it here
|
|
761
|
+
// cannot tell the two flows apart, so it must be fixed where the flows are distinguishable.
|
|
762
|
+
if (_pane(_env)) {
|
|
763
|
+
_log(`[trantor] session lives in herdr pane ${_pane(_env)} — no Terminal window and no baton driver from here; the app (or the skill path) owns the replacement\n`);
|
|
764
|
+
return false;
|
|
769
765
|
}
|
|
770
766
|
if (conf.autoHandoffPrompt === false) return false;
|
|
771
767
|
if (_hasPane(basename(projectDir))) {
|
|
772
|
-
|
|
773
|
-
|
|
774
|
-
|
|
775
|
-
_log(`[trantor] orch pane hosts ${basename(projectDir)} but no handoff file was given — no successor opened\n`);
|
|
776
|
-
return false;
|
|
777
|
-
}
|
|
778
|
-
const ok = _spawnPane(projectDir, handoffFile);
|
|
779
|
-
_log(`[trantor] orch pane hosts ${basename(projectDir)}: ${ok ? "baton driver spawned — it replaces the pane in place" : "baton driver FAILED to spawn — no successor"}\n`);
|
|
780
|
-
return ok;
|
|
768
|
+
_log(`[trantor] orch pane hosts ${basename(projectDir)} — no Terminal window; the app or the skill path claims the handoff
|
|
769
|
+
`);
|
|
770
|
+
return false;
|
|
781
771
|
}
|
|
782
772
|
const script = join(HERE, "..", "..", "bin", "handoff-prompt.sh");
|
|
783
773
|
if (!existsSync(script)) { _log(`[trantor] handoff-prompt.sh missing\n`); return false; }
|