@kenkaiiii/gg-editor 0.6.3 → 0.6.4

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.
Files changed (114) hide show
  1. package/README.md +5 -1
  2. package/dist/core/doctor-runner.js +1 -3
  3. package/dist/core/doctor-runner.js.map +1 -1
  4. package/dist/core/hosts/lazy.d.ts +5 -5
  5. package/dist/core/hosts/lazy.d.ts.map +1 -1
  6. package/dist/core/hosts/lazy.js +16 -0
  7. package/dist/core/hosts/lazy.js.map +1 -1
  8. package/dist/core/hosts/premiere/adapter.d.ts +4 -1
  9. package/dist/core/hosts/premiere/adapter.d.ts.map +1 -1
  10. package/dist/core/hosts/premiere/adapter.js +6 -5
  11. package/dist/core/hosts/premiere/adapter.js.map +1 -1
  12. package/dist/core/hosts/premiere/bridge-source.d.ts.map +1 -1
  13. package/dist/core/hosts/premiere/bridge-source.js +45 -0
  14. package/dist/core/hosts/premiere/bridge-source.js.map +1 -1
  15. package/dist/core/hosts/resolve/adapter.d.ts +6 -2
  16. package/dist/core/hosts/resolve/adapter.d.ts.map +1 -1
  17. package/dist/core/hosts/resolve/adapter.js +13 -5
  18. package/dist/core/hosts/resolve/adapter.js.map +1 -1
  19. package/dist/core/hosts/resolve/bridge-source.d.ts.map +1 -1
  20. package/dist/core/hosts/resolve/bridge-source.js +376 -2
  21. package/dist/core/hosts/resolve/bridge-source.js.map +1 -1
  22. package/dist/core/hosts/resolve/bridge.d.ts +22 -4
  23. package/dist/core/hosts/resolve/bridge.d.ts.map +1 -1
  24. package/dist/core/hosts/resolve/bridge.integration.test.js +338 -0
  25. package/dist/core/hosts/resolve/bridge.integration.test.js.map +1 -1
  26. package/dist/core/hosts/resolve/bridge.js +56 -6
  27. package/dist/core/hosts/resolve/bridge.js.map +1 -1
  28. package/dist/core/hosts/resolve/bridge.test.js +61 -1
  29. package/dist/core/hosts/resolve/bridge.test.js.map +1 -1
  30. package/dist/core/hosts/types.d.ts +81 -0
  31. package/dist/core/hosts/types.d.ts.map +1 -1
  32. package/dist/core/hosts/types.js.map +1 -1
  33. package/dist/core/safe-paths.d.ts +47 -0
  34. package/dist/core/safe-paths.d.ts.map +1 -0
  35. package/dist/core/safe-paths.js +102 -0
  36. package/dist/core/safe-paths.js.map +1 -0
  37. package/dist/core/safe-paths.test.d.ts +2 -0
  38. package/dist/core/safe-paths.test.d.ts.map +1 -0
  39. package/dist/core/safe-paths.test.js +76 -0
  40. package/dist/core/safe-paths.test.js.map +1 -0
  41. package/dist/skills.d.ts.map +1 -1
  42. package/dist/skills.js +125 -0
  43. package/dist/skills.js.map +1 -1
  44. package/dist/system-prompt.d.ts.map +1 -1
  45. package/dist/system-prompt.js +33 -1
  46. package/dist/system-prompt.js.map +1 -1
  47. package/dist/tools/compose-layered.d.ts.map +1 -1
  48. package/dist/tools/compose-layered.js +2 -1
  49. package/dist/tools/compose-layered.js.map +1 -1
  50. package/dist/tools/compose-thumbnail.d.ts.map +1 -1
  51. package/dist/tools/compose-thumbnail.js +10 -2
  52. package/dist/tools/compose-thumbnail.js.map +1 -1
  53. package/dist/tools/concat-videos.d.ts.map +1 -1
  54. package/dist/tools/concat-videos.js +2 -1
  55. package/dist/tools/concat-videos.js.map +1 -1
  56. package/dist/tools/cut-filler-words.d.ts.map +1 -1
  57. package/dist/tools/cut-filler-words.js +2 -1
  58. package/dist/tools/cut-filler-words.js.map +1 -1
  59. package/dist/tools/extract-frame.d.ts.map +1 -1
  60. package/dist/tools/extract-frame.js +9 -2
  61. package/dist/tools/extract-frame.js.map +1 -1
  62. package/dist/tools/fusion-comp.d.ts +49 -0
  63. package/dist/tools/fusion-comp.d.ts.map +1 -0
  64. package/dist/tools/fusion-comp.js +129 -0
  65. package/dist/tools/fusion-comp.js.map +1 -0
  66. package/dist/tools/generate-gif.d.ts.map +1 -1
  67. package/dist/tools/generate-gif.js +12 -2
  68. package/dist/tools/generate-gif.js.map +1 -1
  69. package/dist/tools/host-eval.d.ts +35 -0
  70. package/dist/tools/host-eval.d.ts.map +1 -0
  71. package/dist/tools/host-eval.js +70 -0
  72. package/dist/tools/host-eval.js.map +1 -0
  73. package/dist/tools/host-tools.test.js +42 -0
  74. package/dist/tools/host-tools.test.js.map +1 -1
  75. package/dist/tools/index.d.ts +2 -0
  76. package/dist/tools/index.d.ts.map +1 -1
  77. package/dist/tools/index.js +9 -0
  78. package/dist/tools/index.js.map +1 -1
  79. package/dist/tools/index.test.js +4 -0
  80. package/dist/tools/index.test.js.map +1 -1
  81. package/dist/tools/overlay-watermark.d.ts.map +1 -1
  82. package/dist/tools/overlay-watermark.js +2 -1
  83. package/dist/tools/overlay-watermark.js.map +1 -1
  84. package/dist/tools/reformat-timeline.d.ts.map +1 -1
  85. package/dist/tools/reformat-timeline.js +3 -2
  86. package/dist/tools/reformat-timeline.js.map +1 -1
  87. package/dist/tools/reorder-timeline.d.ts.map +1 -1
  88. package/dist/tools/reorder-timeline.js +3 -2
  89. package/dist/tools/reorder-timeline.js.map +1 -1
  90. package/dist/tools/transcribe.d.ts.map +1 -1
  91. package/dist/tools/transcribe.js +2 -1
  92. package/dist/tools/transcribe.js.map +1 -1
  93. package/dist/tools/write-ass.d.ts.map +1 -1
  94. package/dist/tools/write-ass.js +3 -2
  95. package/dist/tools/write-ass.js.map +1 -1
  96. package/dist/tools/write-edl.d.ts.map +1 -1
  97. package/dist/tools/write-edl.js +3 -2
  98. package/dist/tools/write-edl.js.map +1 -1
  99. package/dist/tools/write-fcpxml.d.ts.map +1 -1
  100. package/dist/tools/write-fcpxml.js +3 -2
  101. package/dist/tools/write-fcpxml.js.map +1 -1
  102. package/dist/tools/write-keyword-captions.d.ts.map +1 -1
  103. package/dist/tools/write-keyword-captions.js +2 -1
  104. package/dist/tools/write-keyword-captions.js.map +1 -1
  105. package/dist/tools/write-lower-third.d.ts.map +1 -1
  106. package/dist/tools/write-lower-third.js +3 -2
  107. package/dist/tools/write-lower-third.js.map +1 -1
  108. package/dist/tools/write-srt.d.ts.map +1 -1
  109. package/dist/tools/write-srt.js +3 -2
  110. package/dist/tools/write-srt.js.map +1 -1
  111. package/dist/tools/write-title-card.d.ts.map +1 -1
  112. package/dist/tools/write-title-card.js +3 -2
  113. package/dist/tools/write-title-card.js.map +1 -1
  114. package/package.json +3 -3
@@ -25,6 +25,98 @@ describe.skipIf(skipReason)("ResolveBridge (integration with fake Resolve)", ()
25
25
  // the real API for the bridge methods to succeed.
26
26
  fakeModulesDir = mkdtempSync(join(tmpdir(), "gg-editor-fakeres-"));
27
27
  writeFileSync(join(fakeModulesDir, "DaVinciResolveScript.py"), String.raw `
28
+ class _FusionInput:
29
+ def __init__(self, name, value=None):
30
+ self._name = name
31
+ self._value = value
32
+ self._keys = {}
33
+ self._connected_to = None
34
+ def __call__(self): return self._value
35
+ def SetKeyFrames(self, m):
36
+ self._keys.update(m)
37
+ return True
38
+ def ConnectTo(self, output):
39
+ self._connected_to = output
40
+ return True
41
+
42
+ class _FusionOutput:
43
+ def __init__(self, owner): self._owner = owner
44
+
45
+ class _FusionTool:
46
+ def __init__(self, tool_id, name=None):
47
+ self._tool_id = tool_id
48
+ self._name = name or tool_id + "1"
49
+ self._inputs = {}
50
+ self._connections = []
51
+ def GetAttrs(self, key=None):
52
+ attrs = {"TOOLS_RegID": self._tool_id, "TOOLS_Name": self._name}
53
+ return attrs.get(key) if key else attrs
54
+ def SetAttrs(self, m):
55
+ if "TOOLS_Name" in m:
56
+ self._name = m["TOOLS_Name"]
57
+ return True
58
+ def __getattr__(self, name):
59
+ # Auto-create input handles on access (Fusion behaviour: any input
60
+ # name resolves to an input object). Underscore-prefixed names are
61
+ # reserved for internal state — raise AttributeError so the
62
+ # getattr(obj, _x, default) idiom returns the default.
63
+ if name.startswith("_"):
64
+ raise AttributeError(name)
65
+ d = self.__dict__.setdefault("_inputs", {})
66
+ if name not in d:
67
+ d[name] = _FusionInput(name)
68
+ return d[name]
69
+ def __setattr__(self, name, value):
70
+ if name.startswith("_"):
71
+ super().__setattr__(name, value)
72
+ return
73
+ d = self.__dict__.setdefault("_inputs", {})
74
+ inp = d.setdefault(name, _FusionInput(name))
75
+ inp._value = value
76
+ def FindMainOutput(self, idx): return _FusionOutput(self)
77
+ def FindMainInput(self, idx):
78
+ d = self.__dict__.setdefault("_inputs", {})
79
+ if "Input" not in d:
80
+ d["Input"] = _FusionInput("Input")
81
+ return d["Input"]
82
+ def Delete(self):
83
+ # Mark deleted; the parent comp tracks the live list by identity.
84
+ self._deleted = True
85
+
86
+ class _Comp:
87
+ def __init__(self):
88
+ self._tools = {}
89
+ self._attrs = {}
90
+ self._keyframes = []
91
+ def AddTool(self, tool_id):
92
+ t = _FusionTool(tool_id)
93
+ suffix = sum(1 for x in self._tools.values() if x._tool_id == tool_id) + 1
94
+ t._name = f"{tool_id}{suffix}"
95
+ # Use object identity as the key so renames via SetAttrs don't strand
96
+ # the entry; FindTool walks values to look up by current _name.
97
+ self._tools[id(t)] = t
98
+ return t
99
+ def FindTool(self, name):
100
+ for t in self._tools.values():
101
+ if not getattr(t, "_deleted", False) and t._name == name:
102
+ return t
103
+ return None
104
+ def GetToolList(self, selected=False):
105
+ return {k: v for k, v in self._tools.items() if not getattr(v, "_deleted", False)}
106
+ def SetKeyFrames(self, m):
107
+ self._keyframes.append(m)
108
+ return True
109
+ def SetAttrs(self, m):
110
+ self._attrs.update(m)
111
+ return True
112
+
113
+ _FUSION_COMP = _Comp()
114
+
115
+ class _Fusion:
116
+ def GetCurrentComp(self): return _FUSION_COMP
117
+
118
+ _FUSION_INSTANCE = _Fusion()
119
+
28
120
  class _Item:
29
121
  def __init__(self, name, start, end):
30
122
  self._name, self._start, self._end = name, start, end
@@ -32,6 +124,7 @@ class _Item:
32
124
  self.cdl = None
33
125
  self.copied_to = None
34
126
  self.props = {}
127
+ self._fusion_comps = []
35
128
  def GetUniqueId(self): return f"id-{self._name}"
36
129
  def GetName(self): return self._name
37
130
  def GetStart(self): return self._start
@@ -40,9 +133,16 @@ class _Item:
40
133
  self.lut = (idx, path)
41
134
  return True
42
135
  def SetCDL(self, cdl):
136
+ # Real Resolve silently no-ops SetCDL when the user isn't on the
137
+ # color page. Mirror that here so the bridge's auto-retry logic
138
+ # (which OpenPage(color)s and retries) is exercised end-to-end.
139
+ if _Resolve._opened_page != "color":
140
+ return False
43
141
  self.cdl = dict(cdl)
44
142
  return True
45
143
  def CopyGrades(self, targets):
144
+ if _Resolve._opened_page != "color":
145
+ return False
46
146
  self.copied_to = list(targets)
47
147
  return True
48
148
  def SetClipProperty(self, k, v):
@@ -54,6 +154,12 @@ class _Item:
54
154
  def SmartReframe(self, *args):
55
155
  self._reframed = args
56
156
  return True
157
+ def GetFusionCompCount(self): return len(self._fusion_comps)
158
+ def GetFusionCompByIndex(self, i): return self._fusion_comps[i - 1]
159
+ def AddFusionComp(self):
160
+ c = _Comp()
161
+ self._fusion_comps.append(c)
162
+ return c
57
163
 
58
164
  _TIMELINE_ITEMS = [_Item("clip-a", 0, 600), _Item("clip-b", 600, 1200)]
59
165
 
@@ -165,9 +271,11 @@ class _Resolve:
165
271
  def GetMediaStorage(self): return _MediaStorage()
166
272
  def GetProductName(self): return "FakeResolve"
167
273
  def GetVersionString(self): return "0.0-test"
274
+ def GetCurrentPage(self): return _Resolve._opened_page
168
275
  def OpenPage(self, name):
169
276
  _Resolve._opened_page = name
170
277
  return True
278
+ def Fusion(self): return _FUSION_INSTANCE
171
279
 
172
280
  def scriptapp(name): return _Resolve()
173
281
  `);
@@ -348,6 +456,28 @@ def scriptapp(name): return _Resolve()
348
456
  b.kill();
349
457
  }
350
458
  });
459
+ it("set_primary_correction auto-opens the Color page when SetCDL fails", async () => {
460
+ // The fake SetCDL returns False unless _Resolve._opened_page == 'color'.
461
+ // We deliberately steer the page to 'edit' first, then call CDL — the
462
+ // bridge should silently OpenPage('color') and retry, succeeding.
463
+ const b = new ResolveBridge();
464
+ try {
465
+ await b.call("open_page", { name: "edit" });
466
+ const r = await b.call("set_primary_correction", {
467
+ clipId: "id-clip-a",
468
+ saturation: 1.0,
469
+ });
470
+ expect(r.clipId).toBe("id-clip-a");
471
+ // Verify the bridge actually flipped the page on our behalf.
472
+ const probe = await b.call("execute_code", {
473
+ code: "set_result(resolve.GetCurrentPage())",
474
+ });
475
+ expect(probe.result).toBe("color");
476
+ }
477
+ finally {
478
+ b.kill();
479
+ }
480
+ });
351
481
  it("lists render presets", async () => {
352
482
  const b = new ResolveBridge();
353
483
  try {
@@ -468,5 +598,213 @@ def scriptapp(name): return _Resolve()
468
598
  b.kill();
469
599
  }
470
600
  });
601
+ describe("execute_code (escape hatch)", () => {
602
+ it("returns a value via set_result", async () => {
603
+ const b = new ResolveBridge();
604
+ try {
605
+ const r = await b.call("execute_code", {
606
+ code: "set_result(project.GetCurrentTimeline().GetName())",
607
+ });
608
+ expect(r.result).toBe("Fake Timeline");
609
+ }
610
+ finally {
611
+ b.kill();
612
+ }
613
+ });
614
+ it("returns a value via top-level `result =`", async () => {
615
+ const b = new ResolveBridge();
616
+ try {
617
+ const r = await b.call("execute_code", {
618
+ code: "result = resolve.GetProductName()",
619
+ });
620
+ expect(r.result).toBe("FakeResolve");
621
+ }
622
+ finally {
623
+ b.kill();
624
+ }
625
+ });
626
+ it("captures stdout", async () => {
627
+ const b = new ResolveBridge();
628
+ try {
629
+ const r = await b.call("execute_code", {
630
+ code: "print('hello'); print('world'); set_result(42)",
631
+ });
632
+ expect(r.result).toBe(42);
633
+ expect(r.stdout).toContain("hello");
634
+ expect(r.stdout).toContain("world");
635
+ }
636
+ finally {
637
+ b.kill();
638
+ }
639
+ });
640
+ it("surfaces python exceptions with stdout tail", async () => {
641
+ const b = new ResolveBridge();
642
+ try {
643
+ await expect(b.call("execute_code", {
644
+ code: "print('before crash'); raise ValueError('boom')",
645
+ })).rejects.toThrow(/ValueError: boom[\s\S]*before crash/);
646
+ }
647
+ finally {
648
+ b.kill();
649
+ }
650
+ });
651
+ it("rejects empty code", async () => {
652
+ const b = new ResolveBridge();
653
+ try {
654
+ await expect(b.call("execute_code", { code: "" })).rejects.toThrow(/non-empty 'code' string/);
655
+ }
656
+ finally {
657
+ b.kill();
658
+ }
659
+ });
660
+ it("coerces non-JSON-serialisable results to repr", async () => {
661
+ const b = new ResolveBridge();
662
+ try {
663
+ // The fake _Resolve object has no JSON encoder; should come back as repr.
664
+ const r = await b.call("execute_code", {
665
+ code: "set_result(resolve)",
666
+ });
667
+ expect(typeof r.result).toBe("string");
668
+ expect(r.result).toMatch(/_Resolve/);
669
+ }
670
+ finally {
671
+ b.kill();
672
+ }
673
+ });
674
+ });
675
+ describe("fusion_comp", () => {
676
+ it("adds a TextPlus node and reads it back via list_nodes", async () => {
677
+ const b = new ResolveBridge();
678
+ try {
679
+ const added = await b.call("fusion_comp", {
680
+ action: "add_node",
681
+ toolId: "TextPlus",
682
+ name: "LowerThirdText",
683
+ });
684
+ expect(added.toolId).toBe("TextPlus");
685
+ expect(added.name).toBe("LowerThirdText");
686
+ const listed = await b.call("fusion_comp", { action: "list_nodes" });
687
+ expect(listed.count).toBeGreaterThan(0);
688
+ expect(listed.nodes.some((n) => n.name === "LowerThirdText")).toBe(true);
689
+ }
690
+ finally {
691
+ b.kill();
692
+ }
693
+ });
694
+ it("set_input + get_input round-trip", async () => {
695
+ const b = new ResolveBridge();
696
+ try {
697
+ await b.call("fusion_comp", {
698
+ action: "add_node",
699
+ toolId: "TextPlus",
700
+ name: "Title",
701
+ });
702
+ await b.call("fusion_comp", {
703
+ action: "set_input",
704
+ node: "Title",
705
+ input: "StyledText",
706
+ value: "Hello",
707
+ });
708
+ const got = await b.call("fusion_comp", {
709
+ action: "get_input",
710
+ node: "Title",
711
+ input: "StyledText",
712
+ });
713
+ expect(got.value).toBe("Hello");
714
+ }
715
+ finally {
716
+ b.kill();
717
+ }
718
+ });
719
+ it("connect wires two nodes", async () => {
720
+ const b = new ResolveBridge();
721
+ try {
722
+ await b.call("fusion_comp", { action: "add_node", toolId: "Background", name: "BG" });
723
+ await b.call("fusion_comp", { action: "add_node", toolId: "TextPlus", name: "TXT" });
724
+ await b.call("fusion_comp", { action: "add_node", toolId: "Merge", name: "COMP" });
725
+ const r = await b.call("fusion_comp", {
726
+ action: "connect",
727
+ fromNode: "BG",
728
+ toNode: "COMP",
729
+ toInput: "Background",
730
+ });
731
+ expect(r.from).toBe("BG");
732
+ expect(r.to).toBe("COMP");
733
+ }
734
+ finally {
735
+ b.kill();
736
+ }
737
+ });
738
+ it("set_keyframe and set_render_range succeed", async () => {
739
+ const b = new ResolveBridge();
740
+ try {
741
+ await b.call("fusion_comp", {
742
+ action: "add_node",
743
+ toolId: "Transform",
744
+ name: "XF",
745
+ });
746
+ const k = await b.call("fusion_comp", {
747
+ action: "set_keyframe",
748
+ node: "XF",
749
+ input: "Center",
750
+ frame: 24,
751
+ value: [0.5, 0.5],
752
+ });
753
+ expect(k.frame).toBe(24);
754
+ const rr = await b.call("fusion_comp", {
755
+ action: "set_render_range",
756
+ start: 0,
757
+ end: 120,
758
+ });
759
+ expect(rr.start).toBe(0);
760
+ expect(rr.end).toBe(120);
761
+ }
762
+ finally {
763
+ b.kill();
764
+ }
765
+ });
766
+ it("delete_node removes a node", async () => {
767
+ const b = new ResolveBridge();
768
+ try {
769
+ await b.call("fusion_comp", { action: "add_node", toolId: "Glow", name: "GLOW1" });
770
+ const r = await b.call("fusion_comp", {
771
+ action: "delete_node",
772
+ name: "GLOW1",
773
+ });
774
+ expect(r.deleted).toBe("GLOW1");
775
+ }
776
+ finally {
777
+ b.kill();
778
+ }
779
+ });
780
+ it("unknown action errors with action list", async () => {
781
+ const b = new ResolveBridge();
782
+ try {
783
+ await expect(b.call("fusion_comp", { action: "teleport" })).rejects.toThrow(/unknown fusion_comp action/);
784
+ }
785
+ finally {
786
+ b.kill();
787
+ }
788
+ });
789
+ });
790
+ describe("auto-respawn after death", () => {
791
+ it("respawns the bridge on the next call after kill()", async () => {
792
+ const b = new ResolveBridge();
793
+ try {
794
+ const a = await b.call("ping");
795
+ expect(a.pong).toBe(true);
796
+ // Simulate Resolve quitting / Python crashing.
797
+ b.kill();
798
+ // Next call must succeed: ensureStarted() should detect the dead
799
+ // flag and respawn from scratch instead of returning the stale
800
+ // (resolved) readyPromise tied to a killed child.
801
+ const c = await b.call("ping");
802
+ expect(c.pong).toBe(true);
803
+ }
804
+ finally {
805
+ b.kill();
806
+ }
807
+ });
808
+ });
471
809
  });
472
810
  //# sourceMappingURL=bridge.integration.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"bridge.integration.test.js","sourceRoot":"","sources":["../../../../src/core/hosts/resolve/bridge.integration.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bridge.integration.test.js","sourceRoot":"","sources":["../../../../src/core/hosts/resolve/bridge.integration.test.ts"],"names":[],"mappings":"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"}
@@ -10,11 +10,37 @@ export class ResolveBridge {
10
10
  readyPromise;
11
11
  nextId = 1;
12
12
  bridgePath;
13
+ /**
14
+ * The child process is dead when:
15
+ * - we never spawned it,
16
+ * - it exited naturally (exitCode !== null),
17
+ * - or it was signalled (signalCode !== null).
18
+ *
19
+ * Node's ChildProcess exposes both fields directly so we don't keep a
20
+ * parallel `dead` flag in sync — the standard idiom across real codebases
21
+ * (mastra, openclaw, AFFiNE, midscene, paseo, takt, rivet) reads them
22
+ * straight off the child.
23
+ */
24
+ isChildDead() {
25
+ if (!this.child)
26
+ return true;
27
+ return this.child.exitCode !== null || this.child.signalCode !== null;
28
+ }
13
29
  /**
14
30
  * Start the bridge. Idempotent — subsequent calls return the same readiness
15
- * promise.
31
+ * promise. After the bridge dies (Resolve quit, Python crash), the next
32
+ * call respawns from scratch.
16
33
  */
17
34
  ensureStarted() {
35
+ // Recovery: if the previous bridge died, drop the cached promise and
36
+ // respawn. Concurrent callers all observe the same fresh promise because
37
+ // we set `readyPromise` synchronously before returning.
38
+ if (this.readyPromise && this.isChildDead()) {
39
+ this.readyPromise = undefined;
40
+ this.handshakeDone = false;
41
+ this.buffer = "";
42
+ this.child = undefined;
43
+ }
18
44
  if (this.readyPromise)
19
45
  return this.readyPromise;
20
46
  this.readyPromise = new Promise((resolve, reject) => {
@@ -28,7 +54,7 @@ export class ResolveBridge {
28
54
  const scriptPath = join(dir, "bridge.py");
29
55
  writeFileSync(scriptPath, BRIDGE_PY, { encoding: "utf8" });
30
56
  this.bridgePath = scriptPath;
31
- const env = resolveEnv();
57
+ const env = resolveEnv(py);
32
58
  const child = spawn(py.cmd, [...py.args, scriptPath], {
33
59
  env,
34
60
  stdio: ["pipe", "pipe", "pipe"],
@@ -47,6 +73,7 @@ export class ResolveBridge {
47
73
  stderrBuf = stderrBuf.slice(-8192);
48
74
  });
49
75
  child.on("error", (err) => {
76
+ // child.exitCode/signalCode will be set by the runtime; no extra flag needed.
50
77
  reject(new Error(`Failed to spawn Python: ${err.message}`));
51
78
  });
52
79
  child.on("exit", (code, signal) => {
@@ -127,7 +154,10 @@ export class ResolveBridge {
127
154
  */
128
155
  async call(method, params = {}, opts = {}) {
129
156
  await this.ensureStarted();
130
- if (!this.child || this.child.killed) {
157
+ // Use the same exitCode/signalCode probe `ensureStarted` does — catches
158
+ // both natural exits and signals. `child.killed` only goes true after
159
+ // an explicit kill() and would miss e.g. a Python crash mid-flight.
160
+ if (this.isChildDead()) {
131
161
  throw new Error("Resolve bridge is not running.");
132
162
  }
133
163
  if (opts.signal?.aborted) {
@@ -177,6 +207,9 @@ export class ResolveBridge {
177
207
  }
178
208
  this.child.kill();
179
209
  }
210
+ // Drop the reference so isChildDead() returns true on the next call.
211
+ // Node's exit event will fire async; we don't wait for it — the next
212
+ // ensureStarted() sees `child === undefined` and respawns from scratch.
180
213
  this.child = undefined;
181
214
  }
182
215
  get scriptPath() {
@@ -204,8 +237,16 @@ export function findPython() {
204
237
  });
205
238
  if (r.status === 0) {
206
239
  const out = (r.stdout || r.stderr || "").trim();
207
- if (/Python 3\./.test(out))
208
- return c;
240
+ if (/Python 3\./.test(out)) {
241
+ // Best-effort: probe sys.prefix for PYTHONHOME on Windows. We do this
242
+ // here (not in resolveEnv) so we pay the spawn cost exactly once.
243
+ const pr = spawnSync(c.cmd, [...c.args, "-c", "import sys;print(sys.prefix)"], {
244
+ encoding: "utf8",
245
+ windowsHide: true,
246
+ });
247
+ const prefix = pr.status === 0 && typeof pr.stdout === "string" ? pr.stdout.trim() : undefined;
248
+ return prefix ? { ...c, prefix } : c;
249
+ }
209
250
  }
210
251
  }
211
252
  return undefined;
@@ -218,7 +259,7 @@ export function findPython() {
218
259
  * Honours pre-set env vars (so power users with custom installs aren't
219
260
  * overridden).
220
261
  */
221
- export function resolveEnv() {
262
+ export function resolveEnv(py) {
222
263
  const env = { ...process.env };
223
264
  const apiDefault = defaultApiPath();
224
265
  const libDefault = defaultLibPath();
@@ -239,6 +280,15 @@ export function resolveEnv() {
239
280
  env.PYTHONIOENCODING = env.PYTHONIOENCODING ?? "utf-8";
240
281
  // Don't write .pyc to the embedded script's tempdir.
241
282
  env.PYTHONDONTWRITEBYTECODE = "1";
283
+ // PYTHONHOME on Windows: when multiple Python installs sit on PATH (system,
284
+ // Microsoft Store, conda, virtualenvs), the embedded interpreter Resolve
285
+ // hosts can pick up the wrong stdlib and crash on import. Pinning
286
+ // PYTHONHOME to the *probed* interpreter's sys.prefix avoids that.
287
+ // No-op on macOS / Linux — they don't suffer this and forcing PYTHONHOME
288
+ // can break Homebrew/pyenv setups.
289
+ if (platform() === "win32" && py?.prefix && !env.PYTHONHOME) {
290
+ env.PYTHONHOME = py.prefix;
291
+ }
242
292
  return env;
243
293
  }
244
294
  function defaultApiPath() {
@@ -1 +1 @@
1
- {"version":3,"file":"bridge.js","sourceRoot":"","sources":["../../../../src/core/hosts/resolve/bridge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bridge.js","sourceRoot":"","sources":["../../../../src/core/hosts/resolve/bridge.ts"],"names":[],"mappings":"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"}