instar 1.3.201 → 1.3.203

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 (203) hide show
  1. package/dist/cli.js +4 -4
  2. package/dist/cli.js.map +1 -1
  3. package/dist/commands/init.d.ts +2 -2
  4. package/dist/commands/init.d.ts.map +1 -1
  5. package/dist/commands/init.js +2 -0
  6. package/dist/commands/init.js.map +1 -1
  7. package/dist/commands/route.d.ts.map +1 -1
  8. package/dist/commands/route.js +2 -0
  9. package/dist/commands/route.js.map +1 -1
  10. package/dist/commands/server.d.ts.map +1 -1
  11. package/dist/commands/server.js +25 -10
  12. package/dist/commands/server.js.map +1 -1
  13. package/dist/commands/setup.d.ts +1 -1
  14. package/dist/commands/setup.d.ts.map +1 -1
  15. package/dist/commands/setup.js +47 -12
  16. package/dist/commands/setup.js.map +1 -1
  17. package/dist/core/Config.d.ts +12 -2
  18. package/dist/core/Config.d.ts.map +1 -1
  19. package/dist/core/Config.js +36 -10
  20. package/dist/core/Config.js.map +1 -1
  21. package/dist/core/FeatureRegistry.d.ts.map +1 -1
  22. package/dist/core/FeatureRegistry.js +6 -0
  23. package/dist/core/FeatureRegistry.js.map +1 -1
  24. package/dist/core/FrameworkSessionStore.d.ts +2 -9
  25. package/dist/core/FrameworkSessionStore.d.ts.map +1 -1
  26. package/dist/core/FrameworkSessionStore.js +16 -0
  27. package/dist/core/FrameworkSessionStore.js.map +1 -1
  28. package/dist/core/GeminiCliIntelligenceProvider.d.ts +44 -0
  29. package/dist/core/GeminiCliIntelligenceProvider.d.ts.map +1 -0
  30. package/dist/core/GeminiCliIntelligenceProvider.js +65 -0
  31. package/dist/core/GeminiCliIntelligenceProvider.js.map +1 -0
  32. package/dist/core/IdentityRenderer.d.ts.map +1 -1
  33. package/dist/core/IdentityRenderer.js +6 -3
  34. package/dist/core/IdentityRenderer.js.map +1 -1
  35. package/dist/core/LeaseCoordinator.d.ts +40 -0
  36. package/dist/core/LeaseCoordinator.d.ts.map +1 -1
  37. package/dist/core/LeaseCoordinator.js +54 -0
  38. package/dist/core/LeaseCoordinator.js.map +1 -1
  39. package/dist/core/LocalLeaseStore.d.ts +11 -0
  40. package/dist/core/LocalLeaseStore.d.ts.map +1 -1
  41. package/dist/core/LocalLeaseStore.js +18 -0
  42. package/dist/core/LocalLeaseStore.js.map +1 -1
  43. package/dist/core/MultiMachineCoordinator.d.ts +35 -0
  44. package/dist/core/MultiMachineCoordinator.d.ts.map +1 -1
  45. package/dist/core/MultiMachineCoordinator.js +94 -0
  46. package/dist/core/MultiMachineCoordinator.js.map +1 -1
  47. package/dist/core/PostUpdateMigrator.d.ts.map +1 -1
  48. package/dist/core/PostUpdateMigrator.js +7 -1
  49. package/dist/core/PostUpdateMigrator.js.map +1 -1
  50. package/dist/core/PreCompactionFlush.d.ts +3 -1
  51. package/dist/core/PreCompactionFlush.d.ts.map +1 -1
  52. package/dist/core/PreCompactionFlush.js +3 -1
  53. package/dist/core/PreCompactionFlush.js.map +1 -1
  54. package/dist/core/ResumeValidator.d.ts +1 -1
  55. package/dist/core/ResumeValidator.d.ts.map +1 -1
  56. package/dist/core/SqliteRegistry.d.ts +59 -0
  57. package/dist/core/SqliteRegistry.d.ts.map +1 -0
  58. package/dist/core/SqliteRegistry.js +97 -0
  59. package/dist/core/SqliteRegistry.js.map +1 -0
  60. package/dist/core/StopGateDb.d.ts +2 -0
  61. package/dist/core/StopGateDb.d.ts.map +1 -1
  62. package/dist/core/StopGateDb.js +22 -0
  63. package/dist/core/StopGateDb.js.map +1 -1
  64. package/dist/core/TopicFrameworksStore.d.ts.map +1 -1
  65. package/dist/core/TopicFrameworksStore.js +1 -0
  66. package/dist/core/TopicFrameworksStore.js.map +1 -1
  67. package/dist/core/TopicResumeMap.d.ts.map +1 -1
  68. package/dist/core/TopicResumeMap.js +13 -0
  69. package/dist/core/TopicResumeMap.js.map +1 -1
  70. package/dist/core/frameworkSessionLaunch.d.ts.map +1 -1
  71. package/dist/core/frameworkSessionLaunch.js +73 -0
  72. package/dist/core/frameworkSessionLaunch.js.map +1 -1
  73. package/dist/core/intelligenceProviderFactory.d.ts +8 -1
  74. package/dist/core/intelligenceProviderFactory.d.ts.map +1 -1
  75. package/dist/core/intelligenceProviderFactory.js +13 -1
  76. package/dist/core/intelligenceProviderFactory.js.map +1 -1
  77. package/dist/core/types.d.ts +6 -4
  78. package/dist/core/types.d.ts.map +1 -1
  79. package/dist/memory/SemanticMemory.d.ts.map +1 -1
  80. package/dist/memory/SemanticMemory.js +8 -0
  81. package/dist/memory/SemanticMemory.js.map +1 -1
  82. package/dist/memory/TopicMemory.d.ts.map +1 -1
  83. package/dist/memory/TopicMemory.js +7 -0
  84. package/dist/memory/TopicMemory.js.map +1 -1
  85. package/dist/messaging/MessageProcessingLedger.d.ts.map +1 -1
  86. package/dist/messaging/MessageProcessingLedger.js +7 -0
  87. package/dist/messaging/MessageProcessingLedger.js.map +1 -1
  88. package/dist/messaging/imessage/NativeBackend.d.ts.map +1 -1
  89. package/dist/messaging/imessage/NativeBackend.js +6 -0
  90. package/dist/messaging/imessage/NativeBackend.js.map +1 -1
  91. package/dist/messaging/pending-relay-store.d.ts.map +1 -1
  92. package/dist/messaging/pending-relay-store.js +6 -0
  93. package/dist/messaging/pending-relay-store.js.map +1 -1
  94. package/dist/messaging/shared/telegramRelayPrompt.d.ts +1 -1
  95. package/dist/messaging/shared/telegramRelayPrompt.d.ts.map +1 -1
  96. package/dist/messaging/shared/telegramRelayPrompt.js.map +1 -1
  97. package/dist/monitoring/CompactionSentinel.d.ts +2 -0
  98. package/dist/monitoring/CompactionSentinel.d.ts.map +1 -1
  99. package/dist/monitoring/CompactionSentinel.js +10 -0
  100. package/dist/monitoring/CompactionSentinel.js.map +1 -1
  101. package/dist/monitoring/CorrectionLedger.d.ts.map +1 -1
  102. package/dist/monitoring/CorrectionLedger.js +6 -0
  103. package/dist/monitoring/CorrectionLedger.js.map +1 -1
  104. package/dist/monitoring/FailureLedger.d.ts.map +1 -1
  105. package/dist/monitoring/FailureLedger.js +6 -0
  106. package/dist/monitoring/FailureLedger.js.map +1 -1
  107. package/dist/monitoring/FeatureMetricsLedger.d.ts.map +1 -1
  108. package/dist/monitoring/FeatureMetricsLedger.js +6 -0
  109. package/dist/monitoring/FeatureMetricsLedger.js.map +1 -1
  110. package/dist/monitoring/FrameworkIssueLedger.d.ts.map +1 -1
  111. package/dist/monitoring/FrameworkIssueLedger.js +6 -0
  112. package/dist/monitoring/FrameworkIssueLedger.js.map +1 -1
  113. package/dist/monitoring/RateLimitSentinel.d.ts +2 -0
  114. package/dist/monitoring/RateLimitSentinel.d.ts.map +1 -1
  115. package/dist/monitoring/RateLimitSentinel.js +15 -1
  116. package/dist/monitoring/RateLimitSentinel.js.map +1 -1
  117. package/dist/monitoring/RevertDetector.d.ts.map +1 -1
  118. package/dist/monitoring/RevertDetector.js +7 -1
  119. package/dist/monitoring/RevertDetector.js.map +1 -1
  120. package/dist/monitoring/SessionReaper.d.ts +1 -1
  121. package/dist/monitoring/SessionReaper.d.ts.map +1 -1
  122. package/dist/monitoring/SessionReaper.js +7 -0
  123. package/dist/monitoring/SessionReaper.js.map +1 -1
  124. package/dist/monitoring/TokenLedger.d.ts.map +1 -1
  125. package/dist/monitoring/TokenLedger.js +8 -0
  126. package/dist/monitoring/TokenLedger.js.map +1 -1
  127. package/dist/monitoring/frameworkActivitySignals.d.ts.map +1 -1
  128. package/dist/monitoring/frameworkActivitySignals.js +17 -0
  129. package/dist/monitoring/frameworkActivitySignals.js.map +1 -1
  130. package/dist/monitoring/frameworkProcessSignals.d.ts.map +1 -1
  131. package/dist/monitoring/frameworkProcessSignals.js +15 -0
  132. package/dist/monitoring/frameworkProcessSignals.js.map +1 -1
  133. package/dist/providers/adapters/gemini-cli/capabilities.d.ts +28 -0
  134. package/dist/providers/adapters/gemini-cli/capabilities.d.ts.map +1 -0
  135. package/dist/providers/adapters/gemini-cli/capabilities.js +38 -0
  136. package/dist/providers/adapters/gemini-cli/capabilities.js.map +1 -0
  137. package/dist/providers/adapters/gemini-cli/config.d.ts +50 -0
  138. package/dist/providers/adapters/gemini-cli/config.d.ts.map +1 -0
  139. package/dist/providers/adapters/gemini-cli/config.js +36 -0
  140. package/dist/providers/adapters/gemini-cli/config.js.map +1 -0
  141. package/dist/providers/adapters/gemini-cli/control/geminiHardKill.d.ts +19 -0
  142. package/dist/providers/adapters/gemini-cli/control/geminiHardKill.d.ts.map +1 -0
  143. package/dist/providers/adapters/gemini-cli/control/geminiHardKill.js +67 -0
  144. package/dist/providers/adapters/gemini-cli/control/geminiHardKill.js.map +1 -0
  145. package/dist/providers/adapters/gemini-cli/credentials.d.ts +40 -0
  146. package/dist/providers/adapters/gemini-cli/credentials.d.ts.map +1 -0
  147. package/dist/providers/adapters/gemini-cli/credentials.js +41 -0
  148. package/dist/providers/adapters/gemini-cli/credentials.js.map +1 -0
  149. package/dist/providers/adapters/gemini-cli/errors.d.ts +23 -0
  150. package/dist/providers/adapters/gemini-cli/errors.d.ts.map +1 -0
  151. package/dist/providers/adapters/gemini-cli/errors.js +41 -0
  152. package/dist/providers/adapters/gemini-cli/errors.js.map +1 -0
  153. package/dist/providers/adapters/gemini-cli/index.d.ts +38 -0
  154. package/dist/providers/adapters/gemini-cli/index.d.ts.map +1 -0
  155. package/dist/providers/adapters/gemini-cli/index.js +66 -0
  156. package/dist/providers/adapters/gemini-cli/index.js.map +1 -0
  157. package/dist/providers/adapters/gemini-cli/models.d.ts +29 -0
  158. package/dist/providers/adapters/gemini-cli/models.d.ts.map +1 -0
  159. package/dist/providers/adapters/gemini-cli/models.js +43 -0
  160. package/dist/providers/adapters/gemini-cli/models.js.map +1 -0
  161. package/dist/providers/adapters/gemini-cli/observability/sessionId.d.ts +26 -0
  162. package/dist/providers/adapters/gemini-cli/observability/sessionId.d.ts.map +1 -0
  163. package/dist/providers/adapters/gemini-cli/observability/sessionId.js +52 -0
  164. package/dist/providers/adapters/gemini-cli/observability/sessionId.js.map +1 -0
  165. package/dist/providers/adapters/gemini-cli/observability/sessionPaths.d.ts +72 -0
  166. package/dist/providers/adapters/gemini-cli/observability/sessionPaths.d.ts.map +1 -0
  167. package/dist/providers/adapters/gemini-cli/observability/sessionPaths.js +202 -0
  168. package/dist/providers/adapters/gemini-cli/observability/sessionPaths.js.map +1 -0
  169. package/dist/providers/adapters/gemini-cli/transport/geminiSpawn.d.ts +79 -0
  170. package/dist/providers/adapters/gemini-cli/transport/geminiSpawn.d.ts.map +1 -0
  171. package/dist/providers/adapters/gemini-cli/transport/geminiSpawn.js +221 -0
  172. package/dist/providers/adapters/gemini-cli/transport/geminiSpawn.js.map +1 -0
  173. package/dist/providers/adapters/gemini-cli/transport/oneShotCompletion.d.ts +21 -0
  174. package/dist/providers/adapters/gemini-cli/transport/oneShotCompletion.d.ts.map +1 -0
  175. package/dist/providers/adapters/gemini-cli/transport/oneShotCompletion.js +80 -0
  176. package/dist/providers/adapters/gemini-cli/transport/oneShotCompletion.js.map +1 -0
  177. package/dist/providers/parity/rules/skillParityRule.d.ts.map +1 -1
  178. package/dist/providers/parity/rules/skillParityRule.js +8 -0
  179. package/dist/providers/parity/rules/skillParityRule.js.map +1 -1
  180. package/dist/providers/uxConfirm/PreferenceStore.d.ts +1 -0
  181. package/dist/providers/uxConfirm/PreferenceStore.d.ts.map +1 -1
  182. package/dist/providers/uxConfirm/PreferenceStore.js +13 -0
  183. package/dist/providers/uxConfirm/PreferenceStore.js.map +1 -1
  184. package/dist/threadline/SpawnLedger.d.ts +1 -0
  185. package/dist/threadline/SpawnLedger.d.ts.map +1 -1
  186. package/dist/threadline/SpawnLedger.js +13 -0
  187. package/dist/threadline/SpawnLedger.js.map +1 -1
  188. package/dist/threadline/ThreadResumeMap.d.ts.map +1 -1
  189. package/dist/threadline/ThreadResumeMap.js +14 -0
  190. package/dist/threadline/ThreadResumeMap.js.map +1 -1
  191. package/dist/threadline/relay/RegistryStore.d.ts.map +1 -1
  192. package/dist/threadline/relay/RegistryStore.js +6 -0
  193. package/dist/threadline/relay/RegistryStore.js.map +1 -1
  194. package/package.json +1 -1
  195. package/src/data/builtin-manifest.json +50 -50
  196. package/src/templates/scripts/convergence-check.sh +49 -0
  197. package/upgrades/1.3.202.md +65 -0
  198. package/upgrades/1.3.203.md +30 -0
  199. package/upgrades/side-effects/APPRENTICESHIP-STEP2-GEMINI-RUNTIME-ADAPTER-SPEC.md +78 -0
  200. package/upgrades/side-effects/evo003-revertdetector-git-arg.md +106 -0
  201. package/upgrades/side-effects/git-less-lease-convergence.md +31 -0
  202. package/upgrades/side-effects/sqlite-close-on-exit-registry.md +27 -0
  203. package/upgrades/side-effects/time-awareness-component4-reporting-nudge.md +20 -0
@@ -60,9 +60,11 @@ export interface PreCompactionFlushDeps {
60
60
  * 'claude-code' — the historical behavior, so Claude installs are
61
61
  * byte-for-byte unchanged.
62
62
  */
63
- framework?: 'claude-code' | 'codex-cli';
63
+ framework?: 'claude-code' | 'codex-cli' | 'gemini-cli';
64
64
  /** Optional override for the Codex sessions root (testing). */
65
65
  codexSessionsRoot?: string;
66
+ /** Optional override for the Gemini home dir (testing). */
67
+ geminiHome?: string;
66
68
  /** Now provider — overridable for tests. */
67
69
  now?: () => Date;
68
70
  }
@@ -1 +1 @@
1
- {"version":3,"file":"PreCompactionFlush.d.ts","sourceRoot":"","sources":["../../src/core/PreCompactionFlush.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AAMH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAGvD,MAAM,WAAW,wBAAwB;IACvC,oCAAoC;IACpC,OAAO,EAAE,OAAO,CAAC;IACjB,uEAAuE;IACvE,gBAAgB,EAAE,MAAM,CAAC;IACzB,sEAAsE;IACtE,oBAAoB,EAAE,MAAM,CAAC;CAC9B;AAED,eAAO,MAAM,mCAAmC,EAAE,wBAIjD,CAAC;AAEF,MAAM,WAAW,sBAAsB;IACrC,YAAY,EAAE,oBAAoB,GAAG,IAAI,CAAC;IAC1C,+DAA+D;IAC/D,UAAU,EAAE,MAAM,CAAC;IACnB,iDAAiD;IACjD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,uFAAuF;IACvF,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;;;;OAKG;IACH,SAAS,CAAC,EAAE,aAAa,GAAG,WAAW,CAAC;IACxC,+DAA+D;IAC/D,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,4CAA4C;IAC5C,GAAG,CAAC,EAAE,MAAM,IAAI,CAAC;CAClB;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,MAAM,YAAY,GACpB,IAAI,GACJ,UAAU,GACV,iBAAiB,GACjB,eAAe,GACf,eAAe,GACf,UAAU,GACV,eAAe,GACf,gBAAgB,GAChB,aAAa,CAAC;AAElB,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,YAAY,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAyB;IAC9C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA2B;gBAEtC,IAAI,EAAE,sBAAsB,EAAE,MAAM,EAAE,wBAAwB;IAK1E;;;OAGG;IACG,MAAM,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,eAAe,CAAC;IA2DlE,wEAAwE;IACxE,WAAW,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM;IA2B3C,oGAAoG;IACpG,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,UAAU,EAAE;IA2B1C,OAAO,CAAC,UAAU;IAiBlB,OAAO,CAAC,qBAAqB;IAe7B,OAAO,CAAC,kBAAkB;IAqB1B,OAAO,CAAC,SAAS;IA0BjB,OAAO,CAAC,iBAAiB;IAyBzB,OAAO,CAAC,UAAU;CAUnB"}
1
+ {"version":3,"file":"PreCompactionFlush.d.ts","sourceRoot":"","sources":["../../src/core/PreCompactionFlush.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AAMH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAGvD,MAAM,WAAW,wBAAwB;IACvC,oCAAoC;IACpC,OAAO,EAAE,OAAO,CAAC;IACjB,uEAAuE;IACvE,gBAAgB,EAAE,MAAM,CAAC;IACzB,sEAAsE;IACtE,oBAAoB,EAAE,MAAM,CAAC;CAC9B;AAED,eAAO,MAAM,mCAAmC,EAAE,wBAIjD,CAAC;AAEF,MAAM,WAAW,sBAAsB;IACrC,YAAY,EAAE,oBAAoB,GAAG,IAAI,CAAC;IAC1C,+DAA+D;IAC/D,UAAU,EAAE,MAAM,CAAC;IACnB,iDAAiD;IACjD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,uFAAuF;IACvF,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;;;;OAKG;IACH,SAAS,CAAC,EAAE,aAAa,GAAG,WAAW,GAAG,YAAY,CAAC;IACvD,+DAA+D;IAC/D,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,2DAA2D;IAC3D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,4CAA4C;IAC5C,GAAG,CAAC,EAAE,MAAM,IAAI,CAAC;CAClB;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,MAAM,YAAY,GACpB,IAAI,GACJ,UAAU,GACV,iBAAiB,GACjB,eAAe,GACf,eAAe,GACf,UAAU,GACV,eAAe,GACf,gBAAgB,GAChB,aAAa,CAAC;AAElB,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,YAAY,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAyB;IAC9C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA2B;gBAEtC,IAAI,EAAE,sBAAsB,EAAE,MAAM,EAAE,wBAAwB;IAK1E;;;OAGG;IACG,MAAM,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,eAAe,CAAC;IA2DlE,wEAAwE;IACxE,WAAW,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM;IA2B3C,oGAAoG;IACpG,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,UAAU,EAAE;IA2B1C,OAAO,CAAC,UAAU;IAiBlB,OAAO,CAAC,qBAAqB;IAiB7B,OAAO,CAAC,kBAAkB;IAqB1B,OAAO,CAAC,SAAS;IA0BjB,OAAO,CAAC,iBAAiB;IAyBzB,OAAO,CAAC,UAAU;CAUnB"}
@@ -200,7 +200,9 @@ export class PreCompactionFlush {
200
200
  projectDir: this.deps.projectDir,
201
201
  rootOverride: framework === 'codex-cli'
202
202
  ? this.deps.codexSessionsRoot
203
- : this.deps.claudeProjectsRoot,
203
+ : framework === 'gemini-cli'
204
+ ? this.deps.geminiHome
205
+ : this.deps.claudeProjectsRoot,
204
206
  });
205
207
  }
206
208
  readTranscriptTail(transcriptPath) {
@@ -1 +1 @@
1
- {"version":3,"file":"PreCompactionFlush.js","sourceRoot":"","sources":["../../src/core/PreCompactionFlush.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PreCompactionFlush.js","sourceRoot":"","sources":["../../src/core/PreCompactionFlush.ts"],"names":[],"mappings":"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"}
@@ -47,7 +47,7 @@ export interface ResumeValidatorDeps {
47
47
  * path resolution via FrameworkSessionStore (portability audit Gap 3).
48
48
  * Defaults to 'claude-code' — historical behavior, Claude unchanged.
49
49
  */
50
- framework?: 'claude-code' | 'codex-cli';
50
+ framework?: 'claude-code' | 'codex-cli' | 'gemini-cli';
51
51
  }
52
52
  /**
53
53
  * Validate that a resume UUID's session content is coherent with a topic's history.
@@ -1 +1 @@
1
- {"version":3,"file":"ResumeValidator.d.ts","sourceRoot":"","sources":["../../src/core/ResumeValidator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAGH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAGvD,MAAM,WAAW,oBAAoB;IACnC,SAAS,CAAC,IAAI,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,OAAO,CAAC;QAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;IACvH,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;CAC1D;AAED,MAAM,WAAW,mBAAmB;IAClC,yCAAyC;IACzC,eAAe,CAAC,EAAE,MAAM,OAAO,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,KAAK,CAAC;YAAE,MAAM,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC,CAAA;KAAE,CAAC,CAAC;IAC1G,0CAA0C;IAC1C,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IACjD,gDAAgD;IAChD,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;IAC5C;;;;OAIG;IACH,SAAS,CAAC,EAAE,aAAa,GAAG,WAAW,CAAC;CACzC;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,0BAA0B,CAC9C,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,EAClB,QAAQ,CAAC,EAAE,oBAAoB,GAAG,IAAI,EACtC,YAAY,CAAC,EAAE,oBAAoB,GAAG,IAAI,EAC1C,IAAI,GAAE,mBAAwB,GAC7B,OAAO,CAAC,OAAO,CAAC,CAmKlB"}
1
+ {"version":3,"file":"ResumeValidator.d.ts","sourceRoot":"","sources":["../../src/core/ResumeValidator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAGH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAGvD,MAAM,WAAW,oBAAoB;IACnC,SAAS,CAAC,IAAI,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,OAAO,CAAC;QAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;IACvH,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;CAC1D;AAED,MAAM,WAAW,mBAAmB;IAClC,yCAAyC;IACzC,eAAe,CAAC,EAAE,MAAM,OAAO,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,KAAK,CAAC;YAAE,MAAM,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC,CAAA;KAAE,CAAC,CAAC;IAC1G,0CAA0C;IAC1C,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IACjD,gDAAgD;IAChD,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;IAC5C;;;;OAIG;IACH,SAAS,CAAC,EAAE,aAAa,GAAG,WAAW,GAAG,YAAY,CAAC;CACxD;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,0BAA0B,CAC9C,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,EAClB,QAAQ,CAAC,EAAE,oBAAoB,GAAG,IAAI,EACtC,YAAY,CAAC,EAAE,oBAAoB,GAAG,IAAI,EAC1C,IAAI,GAAE,mBAAwB,GAC7B,OAAO,CAAC,OAAO,CAAC,CAmKlB"}
@@ -0,0 +1,59 @@
1
+ /**
2
+ * SqliteRegistry — a central close-on-exit registry for every long-lived
3
+ * better-sqlite3 database handle in the process.
4
+ *
5
+ * WHY THIS EXISTS (the bug it fixes):
6
+ * When the process calls `process.exit()`, any better-sqlite3 database left
7
+ * OPEN triggers a C++ static-destructor `std::mutex` lock during teardown
8
+ * (`__cxa_finalize_ranges → exit`), which fails with
9
+ * "mutex lock failed: Invalid argument" → std::terminate → SIGABRT. The
10
+ * process ABORTS instead of exiting cleanly, and on a crash-loop it never
11
+ * recovers. The codebase already knew this and closed TWO stores
12
+ * (topicMemory, semanticMemory) before exit — but there are FIFTEEN
13
+ * long-lived stores. Any of the other thirteen left open still aborts.
14
+ *
15
+ * THE STRUCTURAL FIX (Structure > Willpower):
16
+ * Every store signs into ONE registry the moment its db opens. On exit, ONE
17
+ * call (`closeAllSqlite`) closes them all. A new store added later is closed
18
+ * automatically by registering — the close-list can never silently fall
19
+ * behind again (the exact failure mode that produced this bug). This replaces
20
+ * the hand-maintained two-store close-list in `server.ts`.
21
+ *
22
+ * CONTRACT:
23
+ * - register AFTER the db is fully open (never in a half-constructed state);
24
+ * - the store's own `.close()` calls the returned unregister fn BEFORE it
25
+ * closes its handle, so the registry never double-closes it;
26
+ * - `closeAllSqlite()` invokes each registered handle AT MOST ONCE (a closed
27
+ * set guards re-entrancy — e.g. SIGTERM after an uncaughtException already
28
+ * started teardown), best-effort per handle (a throwing close — such as an
29
+ * already-closed handle — never blocks the others);
30
+ * - run it LAST on every exit path, AFTER all writers stop + after any WAL
31
+ * checkpoint / sidecar flush, so no later tick re-opens a statement on a
32
+ * closed db and no unflushed write is lost.
33
+ *
34
+ * Spec: docs/specs/MULTI-MACHINE-LEASE-ROBUSTNESS-SPEC.md §Problem B.
35
+ */
36
+ type SqliteCloseFn = () => void;
37
+ /**
38
+ * Register a SQLite handle's close function. Call this AFTER the db is open.
39
+ * Returns an unregister fn the store MUST call from its own `.close()` BEFORE
40
+ * closing its handle (so `closeAllSqlite` never double-closes it).
41
+ */
42
+ export declare function registerSqliteHandle(closeFn: SqliteCloseFn): () => void;
43
+ /**
44
+ * Close EVERY registered handle exactly once, best-effort. Returns the number
45
+ * of handles actually closed. Safe to call multiple times (idempotent via the
46
+ * closed set) and from any exit path. NEVER throws — a per-handle failure is
47
+ * swallowed so one bad close can't block the rest (the whole point).
48
+ */
49
+ export declare function closeAllSqlite(): number;
50
+ /** Number of handles currently registered (not yet closed/unregistered). */
51
+ export declare function sqliteRegistrySize(): number;
52
+ /**
53
+ * Test-isolation reset. Clears BOTH the handle list AND the closed set — a
54
+ * half-reset would leak an "already closed" verdict from one test into the
55
+ * next (a handle registered in the next test would appear pre-closed).
56
+ */
57
+ export declare function __resetSqliteRegistryForTests(): void;
58
+ export {};
59
+ //# sourceMappingURL=SqliteRegistry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SqliteRegistry.d.ts","sourceRoot":"","sources":["../../src/core/SqliteRegistry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AAEH,KAAK,aAAa,GAAG,MAAM,IAAI,CAAC;AAgBhC;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,aAAa,GAAG,MAAM,IAAI,CASvE;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,IAAI,MAAM,CAgBvC;AAED,4EAA4E;AAC5E,wBAAgB,kBAAkB,IAAI,MAAM,CAE3C;AAED;;;;GAIG;AACH,wBAAgB,6BAA6B,IAAI,IAAI,CAGpD"}
@@ -0,0 +1,97 @@
1
+ /**
2
+ * SqliteRegistry — a central close-on-exit registry for every long-lived
3
+ * better-sqlite3 database handle in the process.
4
+ *
5
+ * WHY THIS EXISTS (the bug it fixes):
6
+ * When the process calls `process.exit()`, any better-sqlite3 database left
7
+ * OPEN triggers a C++ static-destructor `std::mutex` lock during teardown
8
+ * (`__cxa_finalize_ranges → exit`), which fails with
9
+ * "mutex lock failed: Invalid argument" → std::terminate → SIGABRT. The
10
+ * process ABORTS instead of exiting cleanly, and on a crash-loop it never
11
+ * recovers. The codebase already knew this and closed TWO stores
12
+ * (topicMemory, semanticMemory) before exit — but there are FIFTEEN
13
+ * long-lived stores. Any of the other thirteen left open still aborts.
14
+ *
15
+ * THE STRUCTURAL FIX (Structure > Willpower):
16
+ * Every store signs into ONE registry the moment its db opens. On exit, ONE
17
+ * call (`closeAllSqlite`) closes them all. A new store added later is closed
18
+ * automatically by registering — the close-list can never silently fall
19
+ * behind again (the exact failure mode that produced this bug). This replaces
20
+ * the hand-maintained two-store close-list in `server.ts`.
21
+ *
22
+ * CONTRACT:
23
+ * - register AFTER the db is fully open (never in a half-constructed state);
24
+ * - the store's own `.close()` calls the returned unregister fn BEFORE it
25
+ * closes its handle, so the registry never double-closes it;
26
+ * - `closeAllSqlite()` invokes each registered handle AT MOST ONCE (a closed
27
+ * set guards re-entrancy — e.g. SIGTERM after an uncaughtException already
28
+ * started teardown), best-effort per handle (a throwing close — such as an
29
+ * already-closed handle — never blocks the others);
30
+ * - run it LAST on every exit path, AFTER all writers stop + after any WAL
31
+ * checkpoint / sidecar flush, so no later tick re-opens a statement on a
32
+ * closed db and no unflushed write is lost.
33
+ *
34
+ * Spec: docs/specs/MULTI-MACHINE-LEASE-ROBUSTNESS-SPEC.md §Problem B.
35
+ */
36
+ // Process-global mutable singleton. Module identity is the lifetime: a single
37
+ // instar process imports this module once and shares one registry.
38
+ const registry = new Map();
39
+ // The "closed set": ids that have already been closed (via closeAllSqlite OR
40
+ // an explicit unregister). Guarantees AT-MOST-ONCE invocation even if both the
41
+ // registry close and an explicit store close target the same handle.
42
+ const closedIds = new Set();
43
+ let nextId = 1;
44
+ /**
45
+ * Register a SQLite handle's close function. Call this AFTER the db is open.
46
+ * Returns an unregister fn the store MUST call from its own `.close()` BEFORE
47
+ * closing its handle (so `closeAllSqlite` never double-closes it).
48
+ */
49
+ export function registerSqliteHandle(closeFn) {
50
+ const id = nextId++;
51
+ registry.set(id, { id, closeFn });
52
+ return function unregisterSqliteHandle() {
53
+ registry.delete(id);
54
+ // An explicit store close means this handle is (about to be) closed — record
55
+ // it so a racing closeAllSqlite never re-invokes a now-stale closeFn.
56
+ closedIds.add(id);
57
+ };
58
+ }
59
+ /**
60
+ * Close EVERY registered handle exactly once, best-effort. Returns the number
61
+ * of handles actually closed. Safe to call multiple times (idempotent via the
62
+ * closed set) and from any exit path. NEVER throws — a per-handle failure is
63
+ * swallowed so one bad close can't block the rest (the whole point).
64
+ */
65
+ export function closeAllSqlite() {
66
+ let closed = 0;
67
+ // Snapshot: a closeFn could (in principle) touch the registry; iterate a copy.
68
+ for (const [id, handle] of Array.from(registry.entries())) {
69
+ registry.delete(id);
70
+ if (closedIds.has(id))
71
+ continue; // already closed — at-most-once
72
+ closedIds.add(id); // mark BEFORE invoking so a re-entrant call can't double-fire
73
+ try {
74
+ handle.closeFn();
75
+ closed++;
76
+ }
77
+ catch {
78
+ // Best-effort: an already-closed handle throws "database connection is
79
+ // not open" — that's fine, the goal (no open handle at exit) still holds.
80
+ }
81
+ }
82
+ return closed;
83
+ }
84
+ /** Number of handles currently registered (not yet closed/unregistered). */
85
+ export function sqliteRegistrySize() {
86
+ return registry.size;
87
+ }
88
+ /**
89
+ * Test-isolation reset. Clears BOTH the handle list AND the closed set — a
90
+ * half-reset would leak an "already closed" verdict from one test into the
91
+ * next (a handle registered in the next test would appear pre-closed).
92
+ */
93
+ export function __resetSqliteRegistryForTests() {
94
+ registry.clear();
95
+ closedIds.clear();
96
+ }
97
+ //# sourceMappingURL=SqliteRegistry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SqliteRegistry.js","sourceRoot":"","sources":["../../src/core/SqliteRegistry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AASH,8EAA8E;AAC9E,mEAAmE;AACnE,MAAM,QAAQ,GAAG,IAAI,GAAG,EAA4B,CAAC;AACrD,6EAA6E;AAC7E,+EAA+E;AAC/E,qEAAqE;AACrE,MAAM,SAAS,GAAG,IAAI,GAAG,EAAU,CAAC;AACpC,IAAI,MAAM,GAAG,CAAC,CAAC;AAEf;;;;GAIG;AACH,MAAM,UAAU,oBAAoB,CAAC,OAAsB;IACzD,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC;IACpB,QAAQ,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;IAClC,OAAO,SAAS,sBAAsB;QACpC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACpB,6EAA6E;QAC7E,sEAAsE;QACtE,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACpB,CAAC,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,cAAc;IAC5B,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,+EAA+E;IAC/E,KAAK,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC;QAC1D,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACpB,IAAI,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC;YAAE,SAAS,CAAC,gCAAgC;QACjE,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,8DAA8D;QACjF,IAAI,CAAC;YACH,MAAM,CAAC,OAAO,EAAE,CAAC;YACjB,MAAM,EAAE,CAAC;QACX,CAAC;QAAC,MAAM,CAAC;YACP,uEAAuE;YACvE,0EAA0E;QAC5E,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,4EAA4E;AAC5E,MAAM,UAAU,kBAAkB;IAChC,OAAO,QAAQ,CAAC,IAAI,CAAC;AACvB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,6BAA6B;IAC3C,QAAQ,CAAC,KAAK,EAAE,CAAC;IACjB,SAAS,CAAC,KAAK,EAAE,CAAC;AACpB,CAAC"}
@@ -60,6 +60,8 @@ export declare class StopGateDb {
60
60
  } | {
61
61
  db: BetterSqliteDatabase;
62
62
  });
63
+ private _unregisterSqlite?;
64
+ private _closed;
63
65
  private prepareStatements;
64
66
  recordEvent(event: EvalEvent): void;
65
67
  addAnnotation(ann: Annotation): void;
@@ -1 +1 @@
1
- {"version":3,"file":"StopGateDb.d.ts","sourceRoot":"","sources":["../../src/core/StopGateDb.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"StopGateDb.d.ts","sourceRoot":"","sources":["../../src/core/StopGateDb.ts"],"names":[],"mappings":"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"}
@@ -23,6 +23,7 @@
23
23
  * with the DB file is out of scope.
24
24
  */
25
25
  import Database from 'better-sqlite3';
26
+ import { registerSqliteHandle } from './SqliteRegistry.js';
26
27
  import fs from 'node:fs';
27
28
  import path from 'node:path';
28
29
  // ── Schema ────────────────────────────────────────────────────────────
@@ -104,7 +105,17 @@ export class StopGateDb {
104
105
  for (const ddl of SCHEMA)
105
106
  this.db.exec(ddl);
106
107
  this.prepareStatements();
108
+ // Close-on-exit registry — see SqliteRegistry.ts. Registered AFTER the db is
109
+ // fully open so closeAllSqlite() never targets a half-constructed handle.
110
+ this._unregisterSqlite = registerSqliteHandle(() => {
111
+ try {
112
+ this.db?.close();
113
+ }
114
+ catch { /* already closed — fine */ }
115
+ });
107
116
  }
117
+ _unregisterSqlite;
118
+ _closed = false;
108
119
  prepareStatements() {
109
120
  this.stmts = {
110
121
  insertEvent: this.db.prepare(`
@@ -257,6 +268,17 @@ export class StopGateDb {
257
268
  };
258
269
  }
259
270
  close() {
271
+ // Unregister BEFORE closing our own handle so closeAllSqlite() never
272
+ // double-closes it. Idempotent via the _closed guard (the spec flagged
273
+ // StopGateDb.close() as lacking one — better-sqlite3 .close() throws on a
274
+ // second call).
275
+ if (this._unregisterSqlite) {
276
+ this._unregisterSqlite();
277
+ this._unregisterSqlite = undefined;
278
+ }
279
+ if (this._closed)
280
+ return;
281
+ this._closed = true;
260
282
  this.db.close();
261
283
  }
262
284
  }
@@ -1 +1 @@
1
- {"version":3,"file":"StopGateDb.js","sourceRoot":"","sources":["../../src/core/StopGateDb.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"StopGateDb.js","sourceRoot":"","sources":["../../src/core/StopGateDb.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"TopicFrameworksStore.d.ts","sourceRoot":"","sources":["../../src/core/TopicFrameworksStore.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAIH,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AAE9E;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC,wCAAwC;IACxC,SAAS,EAAE,MAAM,CAAC;IAClB,wDAAwD;IACxD,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;CAC/C;AAED,MAAM,WAAW,2BAA2B;IAC1C,yEAAyE;IACzE,aAAa,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;CACxD;AAED;;;;;;GAMG;AACH,eAAO,MAAM,oBAAoB,EAAE,aAAa,CAAC,qBAAqB,CAGrE,CAAC;AAEF,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;IACvC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAwC;IACvE,wEAAwE;IACxE,OAAO,CAAC,SAAS,CAA6C;gBAElD,OAAO,EAAE,2BAA2B;IAMhD;;;;OAIG;IACH,GAAG,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,qBAAqB,GAAG,IAAI;IAK3D;;;OAGG;IACH,GAAG,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,SAAS,EAAE,qBAAqB,GAAG,IAAI;IAMrE,sEAAsE;IACtE,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAQrC,4EAA4E;IAC5E,QAAQ,IAAI,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC;IAIjD,OAAO,CAAC,IAAI;IAsBZ,OAAO,CAAC,OAAO;CAahB"}
1
+ {"version":3,"file":"TopicFrameworksStore.d.ts","sourceRoot":"","sources":["../../src/core/TopicFrameworksStore.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAIH,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AAE9E;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC,wCAAwC;IACxC,SAAS,EAAE,MAAM,CAAC;IAClB,wDAAwD;IACxD,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;CAC/C;AAED,MAAM,WAAW,2BAA2B;IAC1C,yEAAyE;IACzE,aAAa,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;CACxD;AAED;;;;;;GAMG;AACH,eAAO,MAAM,oBAAoB,EAAE,aAAa,CAAC,qBAAqB,CAIrE,CAAC;AAEF,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;IACvC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAwC;IACvE,wEAAwE;IACxE,OAAO,CAAC,SAAS,CAA6C;gBAElD,OAAO,EAAE,2BAA2B;IAMhD;;;;OAIG;IACH,GAAG,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,qBAAqB,GAAG,IAAI;IAK3D;;;OAGG;IACH,GAAG,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,SAAS,EAAE,qBAAqB,GAAG,IAAI;IAMrE,sEAAsE;IACtE,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAQrC,4EAA4E;IAC5E,QAAQ,IAAI,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC;IAIjD,OAAO,CAAC,IAAI;IAsBZ,OAAO,CAAC,OAAO;CAahB"}
@@ -28,6 +28,7 @@ import path from 'node:path';
28
28
  export const SUPPORTED_FRAMEWORKS = [
29
29
  'claude-code',
30
30
  'codex-cli',
31
+ 'gemini-cli',
31
32
  ];
32
33
  export class TopicFrameworksStore {
33
34
  stateFilePath;
@@ -1 +1 @@
1
- {"version":3,"file":"TopicFrameworksStore.js","sourceRoot":"","sources":["../../src/core/TopicFrameworksStore.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAwB7B;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAyC;IACxE,aAAa;IACb,WAAW;CACZ,CAAC;AAEF,MAAM,OAAO,oBAAoB;IACd,aAAa,CAAS;IACtB,cAAc,CAAwC;IACvE,wEAAwE;IAChE,SAAS,GAA0C,EAAE,CAAC;IAE9D,YAAY,OAAoC;QAC9C,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC;QAC3C,IAAI,CAAC,cAAc,GAAG,EAAE,GAAG,CAAC,OAAO,CAAC,cAAc,IAAI,EAAE,CAAC,EAAE,CAAC;QAC5D,IAAI,CAAC,IAAI,EAAE,CAAC;IACd,CAAC;IAED;;;;OAIG;IACH,GAAG,CAAC,OAAwB;QAC1B,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;QAC5B,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC;IACjE,CAAC;IAED;;;OAGG;IACH,GAAG,CAAC,OAAwB,EAAE,SAAgC;QAC5D,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;QAC5B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC;QAChC,IAAI,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC;IAED,sEAAsE;IACtE,KAAK,CAAC,OAAwB;QAC5B,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;QAC5B,IAAI,GAAG,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YAC1B,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;YAC3B,IAAI,CAAC,OAAO,EAAE,CAAC;QACjB,CAAC;IACH,CAAC;IAED,4EAA4E;IAC5E,QAAQ;QACN,OAAO,EAAE,GAAG,IAAI,CAAC,cAAc,EAAE,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;IACvD,CAAC;IAEO,IAAI;QACV,IAAI,CAAC;YACH,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC;gBAAE,OAAO;YAC/C,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;YACzD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAkC,CAAC;YAChE,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,MAAM,IAAI,OAAO,MAAM,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;gBAC/F,gEAAgE;gBAChE,iCAAiC;gBACjC,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;oBACnD,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAK,oBAA8C,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;wBACzF,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAA0B,CAAC;oBACjD,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,6DAA6D;YAC7D,6DAA6D;YAC7D,2DAA2D;YAC3D,OAAO,CAAC,IAAI,CAAC,oDAAoD,IAAI,CAAC,aAAa,KAAK,GAAG,EAAE,CAAC,CAAC;QACjG,CAAC;IACH,CAAC;IAEO,OAAO;QACb,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC7C,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACxB,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACzC,CAAC;QACD,MAAM,KAAK,GAAyB;YAClC,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,MAAM,EAAE,EAAE,GAAG,IAAI,CAAC,SAAS,EAAE;SAC9B,CAAC;QACF,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,aAAa,IAAI,OAAO,CAAC,GAAG,MAAM,CAAC;QACvD,EAAE,CAAC,aAAa,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;QAC7E,EAAE,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;IACzC,CAAC;CACF"}
1
+ {"version":3,"file":"TopicFrameworksStore.js","sourceRoot":"","sources":["../../src/core/TopicFrameworksStore.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"TopicResumeMap.d.ts","sourceRoot":"","sources":["../../src/core/TopicResumeMap.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAqBH,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,QAAQ,CAAS;gBAEb,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM;IAMnE;;;;OAIG;IACH,OAAO,CAAC,oBAAoB;IAI5B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAI7B;;;;;OAKG;IACH,qBAAqB,IAAI,MAAM,GAAG,IAAI;IAqCtC;;;;;;;OAOG;IACH,kBAAkB,CAAC,WAAW,EAAE,MAAM,EAAE,eAAe,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAUhF;;OAEG;IACH,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI;IAyB9D;;;OAGG;IACH,GAAG,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAkBnC;;OAEG;IACH,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAU7B;;;;;;;;;OASG;IACH,qBAAqB,CAAC,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,eAAe,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,GAAG,IAAI;IAmE1G,OAAO,CAAC,IAAI;IAWZ;;;OAGG;IACH,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAIxC;;OAEG;IACH,OAAO,CAAC,WAAW;CAmBpB"}
1
+ {"version":3,"file":"TopicResumeMap.d.ts","sourceRoot":"","sources":["../../src/core/TopicResumeMap.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAsBH,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,QAAQ,CAAS;gBAEb,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM;IAMnE;;;;OAIG;IACH,OAAO,CAAC,oBAAoB;IAI5B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAI7B;;;;;OAKG;IACH,qBAAqB,IAAI,MAAM,GAAG,IAAI;IAqCtC;;;;;;;OAOG;IACH,kBAAkB,CAAC,WAAW,EAAE,MAAM,EAAE,eAAe,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAUhF;;OAEG;IACH,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI;IAyB9D;;;OAGG;IACH,GAAG,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAkBnC;;OAEG;IACH,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAU7B;;;;;;;;;OASG;IACH,qBAAqB,CAAC,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,eAAe,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,GAAG,IAAI;IAmE1G,OAAO,CAAC,IAAI;IAWZ;;;OAGG;IACH,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAIxC;;OAEG;IACH,OAAO,CAAC,WAAW;CA6BpB"}
@@ -14,6 +14,7 @@ import path from 'node:path';
14
14
  import os from 'node:os';
15
15
  import { spawnSync } from 'node:child_process';
16
16
  import { findRolloutFileSync } from '../providers/adapters/openai-codex/observability/sessionPaths.js';
17
+ import { findGeminiSessionFileSync } from '../providers/adapters/gemini-cli/observability/sessionPaths.js';
17
18
  /** Entries older than 24 hours are pruned */
18
19
  const MAX_AGE_MS = 24 * 60 * 60 * 1000;
19
20
  export class TopicResumeMap {
@@ -269,6 +270,18 @@ export class TopicResumeMap {
269
270
  catch {
270
271
  // Can't check the codex layout — treat as not found.
271
272
  }
273
+ // Gemini: ~/.gemini/tmp/<projectHash>/chats/session-<ts>-<short8>.json[l].
274
+ // Without this every gemini session looks expired/missing and resume breaks
275
+ // fleet-wide for gemini agents (the gemini analog of the codex-compat resume
276
+ // root — apprenticeship Step 2 §4.0.1; the parallel TopicResumeMap the
277
+ // harvest names alongside ThreadResumeMap).
278
+ try {
279
+ if (findGeminiSessionFileSync(uuid) !== null)
280
+ return true;
281
+ }
282
+ catch {
283
+ // Can't check the gemini layout — treat as not found.
284
+ }
272
285
  return false;
273
286
  }
274
287
  }
@@ -1 +1 @@
1
- {"version":3,"file":"TopicResumeMap.js","sourceRoot":"","sources":["../../src/core/TopicResumeMap.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TopicResumeMap.js","sourceRoot":"","sources":["../../src/core/TopicResumeMap.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"frameworkSessionLaunch.d.ts","sourceRoot":"","sources":["../../src/core/frameworkSessionLaunch.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AAG9E;;;;;;GAMG;AACH,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,UAAU,GAAG,SAAS,CAAC;AAE/D;;;;;;;;;GASG;AACH,wBAAgB,wBAAwB,CACtC,SAAS,EAAE,qBAAqB,EAChC,WAAW,EAAE,MAAM,GAAG,SAAS,GAC9B,MAAM,GAAG,SAAS,CA6BpB;AAmBD,MAAM,WAAW,wBAAwB;IACvC,kEAAkE;IAClE,UAAU,EAAE,MAAM,CAAC;IACnB;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,WAAW,GAAG,iBAAiB,GAAG,oBAAoB,CAAC;IAC1E;;;;;;OAMG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAC;IAC3C;;;;;;OAMG;IACH,kBAAkB,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;CAC1D;AAED,MAAM,WAAW,qBAAqB;IACpC,kFAAkF;IAClF,IAAI,EAAE,MAAM,EAAE,CAAC;IACf;;;;OAIG;IACH,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACtC;AA8GD;;;;;;;;GAQG;AACH,wBAAgB,sBAAsB,CACpC,SAAS,EAAE,qBAAqB,EAChC,OAAO,EAAE,wBAAwB,GAChC,qBAAqB,CAMvB;AAED;;;;;GAKG;AACH,wBAAgB,2BAA2B,CAAC,KAAK,EAAE;IACjD,OAAO,CAAC,EAAE,qBAAqB,CAAC;IAChC,eAAe,CAAC,EAAE,qBAAqB,CAAC;IACxC,YAAY,CAAC,EAAE,qBAAqB,GAAG,IAAI,CAAC;CAC7C,GAAG,qBAAqB,CAExB;AAED;;;;;GAKG;AACH,MAAM,WAAW,qBAAqB;IACpC,kEAAkE;IAClE,UAAU,EAAE,MAAM,CAAC;IACnB,mCAAmC;IACnC,MAAM,EAAE,MAAM,CAAC;IACf;;;;;;;OAOG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,WAAW,GAAG,iBAAiB,GAAG,oBAAoB,CAAC;IAC1E;;;;;;;;OAQG;IACH,kBAAkB,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAC;IAC3C;;;;;OAKG;IACH,kBAAkB,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IACzD;;;;;;;OAOG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED,MAAM,WAAW,kBAAkB;IACjC,kFAAkF;IAClF,IAAI,EAAE,MAAM,EAAE,CAAC;IACf;;;;OAIG;IACH,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACtC;AAyFD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,mBAAmB,CACjC,SAAS,EAAE,qBAAqB,EAChC,OAAO,EAAE,qBAAqB,GAC7B,kBAAkB,CAMpB;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE;IAC7C,SAAS,EAAE,qBAAqB,GAAG,MAAM,CAAC;IAC1C,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B,GAAG,MAAM,EAAE,CAUX"}
1
+ {"version":3,"file":"frameworkSessionLaunch.d.ts","sourceRoot":"","sources":["../../src/core/frameworkSessionLaunch.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AAG9E;;;;;;GAMG;AACH,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,UAAU,GAAG,SAAS,CAAC;AAE/D;;;;;;;;;GASG;AACH,wBAAgB,wBAAwB,CACtC,SAAS,EAAE,qBAAqB,EAChC,WAAW,EAAE,MAAM,GAAG,SAAS,GAC9B,MAAM,GAAG,SAAS,CAwCpB;AAmBD,MAAM,WAAW,wBAAwB;IACvC,kEAAkE;IAClE,UAAU,EAAE,MAAM,CAAC;IACnB;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,WAAW,GAAG,iBAAiB,GAAG,oBAAoB,CAAC;IAC1E;;;;;;OAMG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAC;IAC3C;;;;;;OAMG;IACH,kBAAkB,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;CAC1D;AAED,MAAM,WAAW,qBAAqB;IACpC,kFAAkF;IAClF,IAAI,EAAE,MAAM,EAAE,CAAC;IACf;;;;OAIG;IACH,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACtC;AAgJD;;;;;;;;GAQG;AACH,wBAAgB,sBAAsB,CACpC,SAAS,EAAE,qBAAqB,EAChC,OAAO,EAAE,wBAAwB,GAChC,qBAAqB,CAMvB;AAED;;;;;GAKG;AACH,wBAAgB,2BAA2B,CAAC,KAAK,EAAE;IACjD,OAAO,CAAC,EAAE,qBAAqB,CAAC;IAChC,eAAe,CAAC,EAAE,qBAAqB,CAAC;IACxC,YAAY,CAAC,EAAE,qBAAqB,GAAG,IAAI,CAAC;CAC7C,GAAG,qBAAqB,CAExB;AAED;;;;;GAKG;AACH,MAAM,WAAW,qBAAqB;IACpC,kEAAkE;IAClE,UAAU,EAAE,MAAM,CAAC;IACnB,mCAAmC;IACnC,MAAM,EAAE,MAAM,CAAC;IACf;;;;;;;OAOG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE,WAAW,GAAG,iBAAiB,GAAG,oBAAoB,CAAC;IAC1E;;;;;;;;OAQG;IACH,kBAAkB,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAC;IAC3C;;;;;OAKG;IACH,kBAAkB,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IACzD;;;;;;;OAOG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED,MAAM,WAAW,kBAAkB;IACjC,kFAAkF;IAClF,IAAI,EAAE,MAAM,EAAE,CAAC;IACf;;;;OAIG;IACH,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACtC;AAqHD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,mBAAmB,CACjC,SAAS,EAAE,qBAAqB,EAChC,OAAO,EAAE,qBAAqB,GAC7B,kBAAkB,CAMpB;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE;IAC7C,SAAS,EAAE,qBAAqB,GAAG,MAAM,CAAC;IAC1C,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B,GAAG,MAAM,EAAE,CAUX"}
@@ -57,6 +57,20 @@ export function resolveModelForFramework(framework, modelOrTier) {
57
57
  return 'gpt-5.5'; // heavy — frontier reasoning
58
58
  return modelOrTier;
59
59
  }
60
+ if (framework === 'gemini-cli') {
61
+ // Generic tiers map to the verified-working Gemini model ids (kept in sync
62
+ // with src/providers/adapters/gemini-cli/models.ts — single source of truth).
63
+ // Claude-style tier names from legacy callers map to a sensible Gemini
64
+ // equivalent so an unported call site doesn't crash for a Gemini agent.
65
+ // gemini-2.5-flash is the verified one-shot default (v0.25.2, cached-OAuth).
66
+ if (key === 'fast' || key === 'haiku')
67
+ return 'gemini-2.5-flash';
68
+ if (key === 'balanced' || key === 'sonnet')
69
+ return 'gemini-2.5-flash';
70
+ if (key === 'capable' || key === 'opus')
71
+ return 'gemini-2.5-pro';
72
+ return modelOrTier;
73
+ }
60
74
  return modelOrTier;
61
75
  }
62
76
  /**
@@ -174,9 +188,41 @@ const codexCliBuilder = (options) => {
174
188
  },
175
189
  };
176
190
  };
191
+ const geminiCliBuilder = (options) => {
192
+ // Gemini CLI interactive launch (apprenticeship Step 2 minimal body).
193
+ // Resume is a FLAG (`--resume latest|<index>`), unlike Codex's `resume`
194
+ // subcommand.
195
+ //
196
+ // APPROVAL MODE — the agentic launch auto-approves, exactly like the rest of
197
+ // the fleet: Claude agents launch with `--dangerously-skip-permissions` and
198
+ // codex agents with `--dangerously-bypass-approvals-and-sandbox`. A Gemini
199
+ // *agent* doing autonomous work (Codey drives it through real tasks in the
200
+ // apprenticeship's Step 4) must not block on per-tool confirmation, so the
201
+ // interactive autonomous launch uses `--yolo` (Gemini's equivalent of
202
+ // skip-permissions/bypass). This is the SESSION path. The lockdown
203
+ // (`--approval-mode default`, no tools) lives ONLY on the one-shot
204
+ // intelligence-provider EVALUATION path (GeminiCliIntelligenceProvider —
205
+ // the analog of `codex exec --sandbox read-only`), never here.
206
+ const resolvedModel = resolveModelForFramework('gemini-cli', options.defaultModel) ?? 'gemini-2.5-flash';
207
+ const argv = [options.binaryPath, '-m', resolvedModel, '--yolo'];
208
+ if (options.resumeSessionId) {
209
+ // Gemini resumes by `latest` or a numeric index. The tracked resume id is
210
+ // passed through verbatim (callers store whatever --list-sessions surfaced).
211
+ argv.push('--resume', options.resumeSessionId);
212
+ }
213
+ return {
214
+ argv,
215
+ envOverrides: {
216
+ // Defense-in-depth: clear CLAUDECODE so a Gemini session can't be
217
+ // mis-detected as a Claude one by env-grepping tooling.
218
+ CLAUDECODE: '',
219
+ },
220
+ };
221
+ };
177
222
  const BUILDERS = {
178
223
  'claude-code': claudeCodeBuilder,
179
224
  'codex-cli': codexCliBuilder,
225
+ 'gemini-cli': geminiCliBuilder,
180
226
  };
181
227
  /**
182
228
  * Build the argv + env overrides for a Telegram/Slack-driven
@@ -283,9 +329,36 @@ const codexCliHeadlessBuilder = (options) => {
283
329
  },
284
330
  };
285
331
  };
332
+ const geminiCliHeadlessBuilder = (options) => {
333
+ // Gemini CLI headless (prompt-and-exit) — the CANONICAL one-shot argv:
334
+ // gemini -m <model> --approval-mode default -p <prompt>
335
+ // This mirrors the gemini adapter's transport (buildGeminiOneShotArgv).
336
+ // --approval-mode default is pinned (NEVER --yolo / --approval-mode yolo on
337
+ // this path); the prompt is exactly one argv element (the value of -p), so a
338
+ // leading-dash prompt can't be re-parsed as a flag.
339
+ const model = resolveModelForFramework('gemini-cli', options.model) ?? 'gemini-2.5-flash';
340
+ const argv = [
341
+ options.binaryPath,
342
+ '-m', model,
343
+ '--approval-mode', 'default',
344
+ '-p', options.prompt,
345
+ ];
346
+ return {
347
+ argv,
348
+ envOverrides: {
349
+ // The canonical Google/Gemini billing-var scrubbing happens when
350
+ // SessionManager merges these with the universal block + the
351
+ // framework-specific provider-env logic (the Rule-1a analog lives in
352
+ // providers/adapters/gemini-cli/transport/geminiSpawn.ts for the
353
+ // direct-spawn path). Clear CLAUDECODE as defense-in-depth.
354
+ CLAUDECODE: '',
355
+ },
356
+ };
357
+ };
286
358
  const HEADLESS_BUILDERS = {
287
359
  'claude-code': claudeCodeHeadlessBuilder,
288
360
  'codex-cli': codexCliHeadlessBuilder,
361
+ 'gemini-cli': geminiCliHeadlessBuilder,
289
362
  };
290
363
  /**
291
364
  * Build the argv + env overrides for a headless (one-shot prompt)