crewly 1.14.1 → 1.15.0

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 (452) hide show
  1. package/README.md +28 -0
  2. package/config/constants.ts +57 -0
  3. package/config/index.ts +6 -2
  4. package/config/roles/architect/soul.md +31 -0
  5. package/config/roles/auditor/soul.md +30 -0
  6. package/config/roles/backend-developer/soul.md +30 -0
  7. package/config/roles/content-strategist/soul.md +29 -0
  8. package/config/roles/designer/soul.md +30 -0
  9. package/config/roles/developer/soul.md +4 -1
  10. package/config/roles/frontend-developer/soul.md +28 -0
  11. package/config/roles/fullstack-dev/soul.md +28 -0
  12. package/config/roles/generalist/soul.md +28 -0
  13. package/config/roles/ops/soul.md +31 -0
  14. package/config/roles/orchestrator/fragments/lifecycle.md +2 -22
  15. package/config/roles/orchestrator/fragments/recovery.md +1 -1
  16. package/config/roles/orchestrator/prompt.md +18 -49
  17. package/config/roles/orchestrator/soul.md +2 -1
  18. package/config/roles/product-manager/prompt.md +1 -1
  19. package/config/roles/product-manager/soul.md +30 -0
  20. package/config/roles/qa/soul.md +31 -0
  21. package/config/roles/qa-engineer/soul.md +31 -0
  22. package/config/roles/researcher/soul.md +4 -1
  23. package/config/roles/sales/soul.md +30 -0
  24. package/config/roles/support/soul.md +30 -0
  25. package/config/roles/team-leader/prompt.md +1 -1
  26. package/config/roles/team-leader/soul.md +32 -0
  27. package/config/roles/tpm/soul.md +31 -0
  28. package/config/roles/ux-designer/soul.md +31 -0
  29. package/config/skills/_common/lib.sh +124 -2
  30. package/config/skills/_common/lib.test.sh +68 -1
  31. package/config/skills/orchestrator/delegate-task/SKILL.md +17 -21
  32. package/config/skills/orchestrator/delegate-task/execute.sh +18 -9
  33. package/config/skills/orchestrator/delegate-task/execute.test.sh +1 -1
  34. package/config/skills/orchestrator/wiki-migrate/SKILL.md +33 -3
  35. package/config/skills/orchestrator/wiki-migrate/compact.jq +36 -0
  36. package/config/skills/orchestrator/wiki-migrate/execute.sh +35 -5
  37. package/config/skills/orchestrator/wiki-migrate/execute.test.sh +124 -0
  38. package/config/skills/team-leader/verify-output/execute.sh +14 -6
  39. package/config/skills/team-leader/verify-output/execute.test.sh +117 -0
  40. package/dist/backend/backend/src/constants.d.ts +100 -0
  41. package/dist/backend/backend/src/constants.d.ts.map +1 -1
  42. package/dist/backend/backend/src/constants.js +88 -1
  43. package/dist/backend/backend/src/constants.js.map +1 -1
  44. package/dist/backend/backend/src/controllers/mission/mission-policy.controller.d.ts.map +1 -1
  45. package/dist/backend/backend/src/controllers/mission/mission-policy.controller.js +4 -6
  46. package/dist/backend/backend/src/controllers/mission/mission-policy.controller.js.map +1 -1
  47. package/dist/backend/backend/src/controllers/mission/mission-policy.routes.d.ts +10 -0
  48. package/dist/backend/backend/src/controllers/mission/mission-policy.routes.d.ts.map +1 -1
  49. package/dist/backend/backend/src/controllers/mission/mission-policy.routes.js +78 -16
  50. package/dist/backend/backend/src/controllers/mission/mission-policy.routes.js.map +1 -1
  51. package/dist/backend/backend/src/controllers/orchestrator/orchestrator.controller.d.ts.map +1 -1
  52. package/dist/backend/backend/src/controllers/orchestrator/orchestrator.controller.js +11 -1
  53. package/dist/backend/backend/src/controllers/orchestrator/orchestrator.controller.js.map +1 -1
  54. package/dist/backend/backend/src/controllers/task-pool/task-pool.controller.d.ts +14 -0
  55. package/dist/backend/backend/src/controllers/task-pool/task-pool.controller.d.ts.map +1 -1
  56. package/dist/backend/backend/src/controllers/task-pool/task-pool.controller.js +59 -0
  57. package/dist/backend/backend/src/controllers/task-pool/task-pool.controller.js.map +1 -1
  58. package/dist/backend/backend/src/controllers/task-pool/task-pool.routes.d.ts +9 -0
  59. package/dist/backend/backend/src/controllers/task-pool/task-pool.routes.d.ts.map +1 -1
  60. package/dist/backend/backend/src/controllers/task-pool/task-pool.routes.js +14 -1
  61. package/dist/backend/backend/src/controllers/task-pool/task-pool.routes.js.map +1 -1
  62. package/dist/backend/backend/src/controllers/team/team.controller.d.ts.map +1 -1
  63. package/dist/backend/backend/src/controllers/team/team.controller.js +16 -1
  64. package/dist/backend/backend/src/controllers/team/team.controller.js.map +1 -1
  65. package/dist/backend/backend/src/index.d.ts +12 -0
  66. package/dist/backend/backend/src/index.d.ts.map +1 -1
  67. package/dist/backend/backend/src/index.js +187 -9
  68. package/dist/backend/backend/src/index.js.map +1 -1
  69. package/dist/backend/backend/src/middleware/api-token.middleware.d.ts +139 -0
  70. package/dist/backend/backend/src/middleware/api-token.middleware.d.ts.map +1 -0
  71. package/dist/backend/backend/src/middleware/api-token.middleware.js +301 -0
  72. package/dist/backend/backend/src/middleware/api-token.middleware.js.map +1 -0
  73. package/dist/backend/backend/src/routes/api.routes.d.ts.map +1 -1
  74. package/dist/backend/backend/src/routes/api.routes.js +3 -1
  75. package/dist/backend/backend/src/routes/api.routes.js.map +1 -1
  76. package/dist/backend/backend/src/services/agent/agent-registration.service.d.ts +68 -0
  77. package/dist/backend/backend/src/services/agent/agent-registration.service.d.ts.map +1 -1
  78. package/dist/backend/backend/src/services/agent/agent-registration.service.js +280 -10
  79. package/dist/backend/backend/src/services/agent/agent-registration.service.js.map +1 -1
  80. package/dist/backend/backend/src/services/agent/claude-runtime.service.d.ts +7 -0
  81. package/dist/backend/backend/src/services/agent/claude-runtime.service.d.ts.map +1 -1
  82. package/dist/backend/backend/src/services/agent/claude-runtime.service.js +10 -1
  83. package/dist/backend/backend/src/services/agent/claude-runtime.service.js.map +1 -1
  84. package/dist/backend/backend/src/services/agent/codex-runtime.service.d.ts +8 -0
  85. package/dist/backend/backend/src/services/agent/codex-runtime.service.d.ts.map +1 -1
  86. package/dist/backend/backend/src/services/agent/codex-runtime.service.js +11 -1
  87. package/dist/backend/backend/src/services/agent/codex-runtime.service.js.map +1 -1
  88. package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-external-runtime.service.d.ts +36 -1
  89. package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-external-runtime.service.d.ts.map +1 -1
  90. package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-external-runtime.service.js +66 -9
  91. package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-external-runtime.service.js.map +1 -1
  92. package/dist/backend/backend/src/services/agent/gemini-runtime.service.d.ts +7 -0
  93. package/dist/backend/backend/src/services/agent/gemini-runtime.service.d.ts.map +1 -1
  94. package/dist/backend/backend/src/services/agent/gemini-runtime.service.js +10 -1
  95. package/dist/backend/backend/src/services/agent/gemini-runtime.service.js.map +1 -1
  96. package/dist/backend/backend/src/services/agent/oauth-relogin-monitor.service.d.ts +197 -0
  97. package/dist/backend/backend/src/services/agent/oauth-relogin-monitor.service.d.ts.map +1 -1
  98. package/dist/backend/backend/src/services/agent/oauth-relogin-monitor.service.js +422 -3
  99. package/dist/backend/backend/src/services/agent/oauth-relogin-monitor.service.js.map +1 -1
  100. package/dist/backend/backend/src/services/agent/runtime-agent.service.abstract.d.ts +27 -0
  101. package/dist/backend/backend/src/services/agent/runtime-agent.service.abstract.d.ts.map +1 -1
  102. package/dist/backend/backend/src/services/agent/runtime-agent.service.abstract.js +50 -1
  103. package/dist/backend/backend/src/services/agent/runtime-agent.service.abstract.js.map +1 -1
  104. package/dist/backend/backend/src/services/ai/prompt-modules/index.d.ts +1 -1
  105. package/dist/backend/backend/src/services/ai/prompt-modules/index.d.ts.map +1 -1
  106. package/dist/backend/backend/src/services/ai/prompt-modules/index.js +1 -1
  107. package/dist/backend/backend/src/services/ai/prompt-modules/index.js.map +1 -1
  108. package/dist/backend/backend/src/services/ai/prompt-modules/prompt-assembly.service.d.ts +35 -0
  109. package/dist/backend/backend/src/services/ai/prompt-modules/prompt-assembly.service.d.ts.map +1 -1
  110. package/dist/backend/backend/src/services/ai/prompt-modules/prompt-assembly.service.js +73 -2
  111. package/dist/backend/backend/src/services/ai/prompt-modules/prompt-assembly.service.js.map +1 -1
  112. package/dist/backend/backend/src/services/ai/prompt-modules/prompt-module.interface.d.ts +42 -0
  113. package/dist/backend/backend/src/services/ai/prompt-modules/prompt-module.interface.d.ts.map +1 -1
  114. package/dist/backend/backend/src/services/ai/prompt-modules/prompt-module.interface.js +33 -0
  115. package/dist/backend/backend/src/services/ai/prompt-modules/prompt-module.interface.js.map +1 -1
  116. package/dist/backend/backend/src/services/ai/prompt-modules/recovery.module.d.ts.map +1 -1
  117. package/dist/backend/backend/src/services/ai/prompt-modules/recovery.module.js +13 -1
  118. package/dist/backend/backend/src/services/ai/prompt-modules/recovery.module.js.map +1 -1
  119. package/dist/backend/backend/src/services/backup/backup-archive.service.d.ts +26 -2
  120. package/dist/backend/backend/src/services/backup/backup-archive.service.d.ts.map +1 -1
  121. package/dist/backend/backend/src/services/backup/backup-archive.service.js +91 -10
  122. package/dist/backend/backend/src/services/backup/backup-archive.service.js.map +1 -1
  123. package/dist/backend/backend/src/services/backup/backup-restore.service.d.ts +15 -2
  124. package/dist/backend/backend/src/services/backup/backup-restore.service.d.ts.map +1 -1
  125. package/dist/backend/backend/src/services/backup/backup-restore.service.js +100 -21
  126. package/dist/backend/backend/src/services/backup/backup-restore.service.js.map +1 -1
  127. package/dist/backend/backend/src/services/backup/backup.types.d.ts +85 -2
  128. package/dist/backend/backend/src/services/backup/backup.types.d.ts.map +1 -1
  129. package/dist/backend/backend/src/services/backup/backup.types.js +21 -0
  130. package/dist/backend/backend/src/services/backup/backup.types.js.map +1 -1
  131. package/dist/backend/backend/src/services/backup/project-file-filter.d.ts +35 -0
  132. package/dist/backend/backend/src/services/backup/project-file-filter.d.ts.map +1 -0
  133. package/dist/backend/backend/src/services/backup/project-file-filter.js +90 -0
  134. package/dist/backend/backend/src/services/backup/project-file-filter.js.map +1 -0
  135. package/dist/backend/backend/src/services/budget/team-budget-gate.service.d.ts +165 -0
  136. package/dist/backend/backend/src/services/budget/team-budget-gate.service.d.ts.map +1 -0
  137. package/dist/backend/backend/src/services/budget/team-budget-gate.service.js +364 -0
  138. package/dist/backend/backend/src/services/budget/team-budget-gate.service.js.map +1 -0
  139. package/dist/backend/backend/src/services/chat-v2/chat-v2.service.d.ts +23 -3
  140. package/dist/backend/backend/src/services/chat-v2/chat-v2.service.d.ts.map +1 -1
  141. package/dist/backend/backend/src/services/chat-v2/chat-v2.service.js +34 -3
  142. package/dist/backend/backend/src/services/chat-v2/chat-v2.service.js.map +1 -1
  143. package/dist/backend/backend/src/services/chat-v2/sqlite/message.store.d.ts +5 -3
  144. package/dist/backend/backend/src/services/chat-v2/sqlite/message.store.d.ts.map +1 -1
  145. package/dist/backend/backend/src/services/chat-v2/sqlite/message.store.js +6 -4
  146. package/dist/backend/backend/src/services/chat-v2/sqlite/message.store.js.map +1 -1
  147. package/dist/backend/backend/src/services/core/api-token.service.d.ts +78 -0
  148. package/dist/backend/backend/src/services/core/api-token.service.d.ts.map +1 -0
  149. package/dist/backend/backend/src/services/core/api-token.service.js +149 -0
  150. package/dist/backend/backend/src/services/core/api-token.service.js.map +1 -0
  151. package/dist/backend/backend/src/services/core/logger.service.d.ts +10 -1
  152. package/dist/backend/backend/src/services/core/logger.service.d.ts.map +1 -1
  153. package/dist/backend/backend/src/services/core/logger.service.js +18 -3
  154. package/dist/backend/backend/src/services/core/logger.service.js.map +1 -1
  155. package/dist/backend/backend/src/services/core/storage.service.d.ts +11 -0
  156. package/dist/backend/backend/src/services/core/storage.service.d.ts.map +1 -1
  157. package/dist/backend/backend/src/services/core/storage.service.js +34 -0
  158. package/dist/backend/backend/src/services/core/storage.service.js.map +1 -1
  159. package/dist/backend/backend/src/services/event-bus/event-to-workitem-bridge.service.d.ts +7 -1
  160. package/dist/backend/backend/src/services/event-bus/event-to-workitem-bridge.service.d.ts.map +1 -1
  161. package/dist/backend/backend/src/services/event-bus/event-to-workitem-bridge.service.js +29 -7
  162. package/dist/backend/backend/src/services/event-bus/event-to-workitem-bridge.service.js.map +1 -1
  163. package/dist/backend/backend/src/services/hierarchy/hierarchy-escalation-monitor.service.d.ts +140 -0
  164. package/dist/backend/backend/src/services/hierarchy/hierarchy-escalation-monitor.service.d.ts.map +1 -0
  165. package/dist/backend/backend/src/services/hierarchy/hierarchy-escalation-monitor.service.js +346 -0
  166. package/dist/backend/backend/src/services/hierarchy/hierarchy-escalation-monitor.service.js.map +1 -0
  167. package/dist/backend/backend/src/services/monitoring/token-usage.service.d.ts +27 -3
  168. package/dist/backend/backend/src/services/monitoring/token-usage.service.d.ts.map +1 -1
  169. package/dist/backend/backend/src/services/monitoring/token-usage.service.js +42 -7
  170. package/dist/backend/backend/src/services/monitoring/token-usage.service.js.map +1 -1
  171. package/dist/backend/backend/src/services/orc/orc-delivery-enforcer.service.d.ts +47 -0
  172. package/dist/backend/backend/src/services/orc/orc-delivery-enforcer.service.d.ts.map +1 -1
  173. package/dist/backend/backend/src/services/orc/orc-delivery-enforcer.service.js +67 -1
  174. package/dist/backend/backend/src/services/orc/orc-delivery-enforcer.service.js.map +1 -1
  175. package/dist/backend/backend/src/services/reconciler/reconcile-rules.d.ts +22 -15
  176. package/dist/backend/backend/src/services/reconciler/reconcile-rules.d.ts.map +1 -1
  177. package/dist/backend/backend/src/services/reconciler/reconcile-rules.js +24 -15
  178. package/dist/backend/backend/src/services/reconciler/reconcile-rules.js.map +1 -1
  179. package/dist/backend/backend/src/services/session/pty/pty-session.d.ts +7 -1
  180. package/dist/backend/backend/src/services/session/pty/pty-session.d.ts.map +1 -1
  181. package/dist/backend/backend/src/services/session/pty/pty-session.js +9 -3
  182. package/dist/backend/backend/src/services/session/pty/pty-session.js.map +1 -1
  183. package/dist/backend/backend/src/services/session/session-handoff.service.d.ts +27 -0
  184. package/dist/backend/backend/src/services/session/session-handoff.service.d.ts.map +1 -1
  185. package/dist/backend/backend/src/services/session/session-handoff.service.js +110 -22
  186. package/dist/backend/backend/src/services/session/session-handoff.service.js.map +1 -1
  187. package/dist/backend/backend/src/services/skill/skill-catalog.service.d.ts.map +1 -1
  188. package/dist/backend/backend/src/services/skill/skill-catalog.service.js +7 -1
  189. package/dist/backend/backend/src/services/skill/skill-catalog.service.js.map +1 -1
  190. package/dist/backend/backend/src/services/task-pool/task-pool.service.d.ts +52 -0
  191. package/dist/backend/backend/src/services/task-pool/task-pool.service.d.ts.map +1 -1
  192. package/dist/backend/backend/src/services/task-pool/task-pool.service.js +132 -6
  193. package/dist/backend/backend/src/services/task-pool/task-pool.service.js.map +1 -1
  194. package/dist/backend/backend/src/services/v3/escalation-boot.d.ts +87 -0
  195. package/dist/backend/backend/src/services/v3/escalation-boot.d.ts.map +1 -0
  196. package/dist/backend/backend/src/services/v3/escalation-boot.js +128 -0
  197. package/dist/backend/backend/src/services/v3/escalation-boot.js.map +1 -0
  198. package/dist/backend/backend/src/services/v3/escalation.service.d.ts +1 -1
  199. package/dist/backend/backend/src/services/v3/escalation.service.d.ts.map +1 -1
  200. package/dist/backend/backend/src/services/v3/escalation.service.js +4 -4
  201. package/dist/backend/backend/src/services/v3/escalation.service.js.map +1 -1
  202. package/dist/backend/backend/src/services/v3/kr-completion.subscriber.d.ts +118 -0
  203. package/dist/backend/backend/src/services/v3/kr-completion.subscriber.d.ts.map +1 -0
  204. package/dist/backend/backend/src/services/v3/kr-completion.subscriber.js +277 -0
  205. package/dist/backend/backend/src/services/v3/kr-completion.subscriber.js.map +1 -0
  206. package/dist/backend/backend/src/services/v3/kr-tracking.service.d.ts.map +1 -1
  207. package/dist/backend/backend/src/services/v3/kr-tracking.service.js +3 -6
  208. package/dist/backend/backend/src/services/v3/kr-tracking.service.js.map +1 -1
  209. package/dist/backend/backend/src/services/v3/mission-executor.service.d.ts +5 -0
  210. package/dist/backend/backend/src/services/v3/mission-executor.service.d.ts.map +1 -1
  211. package/dist/backend/backend/src/services/v3/mission-executor.service.js +36 -0
  212. package/dist/backend/backend/src/services/v3/mission-executor.service.js.map +1 -1
  213. package/dist/backend/backend/src/services/v3/mission-paths.d.ts +69 -0
  214. package/dist/backend/backend/src/services/v3/mission-paths.d.ts.map +1 -0
  215. package/dist/backend/backend/src/services/v3/mission-paths.js +92 -0
  216. package/dist/backend/backend/src/services/v3/mission-paths.js.map +1 -0
  217. package/dist/backend/backend/src/services/v3/mission-period.service.d.ts.map +1 -1
  218. package/dist/backend/backend/src/services/v3/mission-period.service.js +1 -12
  219. package/dist/backend/backend/src/services/v3/mission-period.service.js.map +1 -1
  220. package/dist/backend/backend/src/services/v3/mission-reminder.service.d.ts +74 -2
  221. package/dist/backend/backend/src/services/v3/mission-reminder.service.d.ts.map +1 -1
  222. package/dist/backend/backend/src/services/v3/mission-reminder.service.js +251 -9
  223. package/dist/backend/backend/src/services/v3/mission-reminder.service.js.map +1 -1
  224. package/dist/backend/backend/src/services/v3/okr-cascade.service.d.ts +6 -4
  225. package/dist/backend/backend/src/services/v3/okr-cascade.service.d.ts.map +1 -1
  226. package/dist/backend/backend/src/services/v3/okr-cascade.service.js +11 -10
  227. package/dist/backend/backend/src/services/v3/okr-cascade.service.js.map +1 -1
  228. package/dist/backend/backend/src/services/v3/okr-review.service.d.ts +24 -0
  229. package/dist/backend/backend/src/services/v3/okr-review.service.d.ts.map +1 -1
  230. package/dist/backend/backend/src/services/v3/okr-review.service.js +63 -3
  231. package/dist/backend/backend/src/services/v3/okr-review.service.js.map +1 -1
  232. package/dist/backend/backend/src/services/v3/tl-auto-verify.service.d.ts +17 -0
  233. package/dist/backend/backend/src/services/v3/tl-auto-verify.service.d.ts.map +1 -1
  234. package/dist/backend/backend/src/services/v3/tl-auto-verify.service.js +62 -13
  235. package/dist/backend/backend/src/services/v3/tl-auto-verify.service.js.map +1 -1
  236. package/dist/backend/backend/src/services/v3/v3-data.service.d.ts +6 -2
  237. package/dist/backend/backend/src/services/v3/v3-data.service.d.ts.map +1 -1
  238. package/dist/backend/backend/src/services/v3/v3-data.service.js +14 -9
  239. package/dist/backend/backend/src/services/v3/v3-data.service.js.map +1 -1
  240. package/dist/backend/backend/src/services/v3/workitem-dispatch.subscriber.d.ts +14 -0
  241. package/dist/backend/backend/src/services/v3/workitem-dispatch.subscriber.d.ts.map +1 -1
  242. package/dist/backend/backend/src/services/v3/workitem-dispatch.subscriber.js +31 -0
  243. package/dist/backend/backend/src/services/v3/workitem-dispatch.subscriber.js.map +1 -1
  244. package/dist/backend/backend/src/types/event-bus.types.d.ts +4 -2
  245. package/dist/backend/backend/src/types/event-bus.types.d.ts.map +1 -1
  246. package/dist/backend/backend/src/types/event-bus.types.js +15 -0
  247. package/dist/backend/backend/src/types/event-bus.types.js.map +1 -1
  248. package/dist/backend/backend/src/types/index.d.ts +16 -0
  249. package/dist/backend/backend/src/types/index.d.ts.map +1 -1
  250. package/dist/backend/backend/src/types/index.js.map +1 -1
  251. package/dist/backend/backend/src/types/v2/index.d.ts +1 -1
  252. package/dist/backend/backend/src/types/v2/index.d.ts.map +1 -1
  253. package/dist/backend/backend/src/types/v2/index.js +1 -1
  254. package/dist/backend/backend/src/types/v2/index.js.map +1 -1
  255. package/dist/backend/backend/src/types/v2/mission.types.d.ts +41 -0
  256. package/dist/backend/backend/src/types/v2/mission.types.d.ts.map +1 -1
  257. package/dist/backend/backend/src/types/v2/mission.types.js +29 -0
  258. package/dist/backend/backend/src/types/v2/mission.types.js.map +1 -1
  259. package/dist/backend/backend/src/utils/network-exposure.utils.d.ts +67 -0
  260. package/dist/backend/backend/src/utils/network-exposure.utils.d.ts.map +1 -0
  261. package/dist/backend/backend/src/utils/network-exposure.utils.js +92 -0
  262. package/dist/backend/backend/src/utils/network-exposure.utils.js.map +1 -0
  263. package/dist/backend/build-info.json +2 -2
  264. package/dist/backend/config/constants.d.ts +53 -0
  265. package/dist/backend/config/constants.d.ts.map +1 -1
  266. package/dist/backend/config/constants.js +54 -0
  267. package/dist/backend/config/constants.js.map +1 -1
  268. package/dist/backend/config/index.d.ts +2 -2
  269. package/dist/backend/config/index.d.ts.map +1 -1
  270. package/dist/backend/config/index.js +6 -6
  271. package/dist/backend/config/index.js.map +1 -1
  272. package/dist/cli/backend/src/constants.d.ts +100 -0
  273. package/dist/cli/backend/src/constants.d.ts.map +1 -1
  274. package/dist/cli/backend/src/constants.js +88 -1
  275. package/dist/cli/backend/src/constants.js.map +1 -1
  276. package/dist/cli/backend/src/services/agent/agent-registration.service.d.ts +68 -0
  277. package/dist/cli/backend/src/services/agent/agent-registration.service.d.ts.map +1 -1
  278. package/dist/cli/backend/src/services/agent/agent-registration.service.js +280 -10
  279. package/dist/cli/backend/src/services/agent/agent-registration.service.js.map +1 -1
  280. package/dist/cli/backend/src/services/agent/claude-runtime.service.d.ts +7 -0
  281. package/dist/cli/backend/src/services/agent/claude-runtime.service.d.ts.map +1 -1
  282. package/dist/cli/backend/src/services/agent/claude-runtime.service.js +10 -1
  283. package/dist/cli/backend/src/services/agent/claude-runtime.service.js.map +1 -1
  284. package/dist/cli/backend/src/services/agent/codex-runtime.service.d.ts +8 -0
  285. package/dist/cli/backend/src/services/agent/codex-runtime.service.d.ts.map +1 -1
  286. package/dist/cli/backend/src/services/agent/codex-runtime.service.js +11 -1
  287. package/dist/cli/backend/src/services/agent/codex-runtime.service.js.map +1 -1
  288. package/dist/cli/backend/src/services/agent/crewly-agent/crewly-agent-external-runtime.service.d.ts +36 -1
  289. package/dist/cli/backend/src/services/agent/crewly-agent/crewly-agent-external-runtime.service.d.ts.map +1 -1
  290. package/dist/cli/backend/src/services/agent/crewly-agent/crewly-agent-external-runtime.service.js +66 -9
  291. package/dist/cli/backend/src/services/agent/crewly-agent/crewly-agent-external-runtime.service.js.map +1 -1
  292. package/dist/cli/backend/src/services/agent/gemini-runtime.service.d.ts +7 -0
  293. package/dist/cli/backend/src/services/agent/gemini-runtime.service.d.ts.map +1 -1
  294. package/dist/cli/backend/src/services/agent/gemini-runtime.service.js +10 -1
  295. package/dist/cli/backend/src/services/agent/gemini-runtime.service.js.map +1 -1
  296. package/dist/cli/backend/src/services/agent/oauth-relogin-monitor.service.d.ts +197 -0
  297. package/dist/cli/backend/src/services/agent/oauth-relogin-monitor.service.d.ts.map +1 -1
  298. package/dist/cli/backend/src/services/agent/oauth-relogin-monitor.service.js +422 -3
  299. package/dist/cli/backend/src/services/agent/oauth-relogin-monitor.service.js.map +1 -1
  300. package/dist/cli/backend/src/services/agent/runtime-agent.service.abstract.d.ts +27 -0
  301. package/dist/cli/backend/src/services/agent/runtime-agent.service.abstract.d.ts.map +1 -1
  302. package/dist/cli/backend/src/services/agent/runtime-agent.service.abstract.js +50 -1
  303. package/dist/cli/backend/src/services/agent/runtime-agent.service.abstract.js.map +1 -1
  304. package/dist/cli/backend/src/services/ai/prompt-modules/prompt-assembly.service.d.ts +35 -0
  305. package/dist/cli/backend/src/services/ai/prompt-modules/prompt-assembly.service.d.ts.map +1 -1
  306. package/dist/cli/backend/src/services/ai/prompt-modules/prompt-assembly.service.js +73 -2
  307. package/dist/cli/backend/src/services/ai/prompt-modules/prompt-assembly.service.js.map +1 -1
  308. package/dist/cli/backend/src/services/ai/prompt-modules/prompt-module.interface.d.ts +42 -0
  309. package/dist/cli/backend/src/services/ai/prompt-modules/prompt-module.interface.d.ts.map +1 -1
  310. package/dist/cli/backend/src/services/ai/prompt-modules/prompt-module.interface.js +33 -0
  311. package/dist/cli/backend/src/services/ai/prompt-modules/prompt-module.interface.js.map +1 -1
  312. package/dist/cli/backend/src/services/ai/prompt-modules/recovery.module.d.ts.map +1 -1
  313. package/dist/cli/backend/src/services/ai/prompt-modules/recovery.module.js +13 -1
  314. package/dist/cli/backend/src/services/ai/prompt-modules/recovery.module.js.map +1 -1
  315. package/dist/cli/backend/src/services/backup/backup-archive.service.d.ts +26 -2
  316. package/dist/cli/backend/src/services/backup/backup-archive.service.d.ts.map +1 -1
  317. package/dist/cli/backend/src/services/backup/backup-archive.service.js +91 -10
  318. package/dist/cli/backend/src/services/backup/backup-archive.service.js.map +1 -1
  319. package/dist/cli/backend/src/services/backup/backup-restore.service.d.ts +15 -2
  320. package/dist/cli/backend/src/services/backup/backup-restore.service.d.ts.map +1 -1
  321. package/dist/cli/backend/src/services/backup/backup-restore.service.js +100 -21
  322. package/dist/cli/backend/src/services/backup/backup-restore.service.js.map +1 -1
  323. package/dist/cli/backend/src/services/backup/backup.types.d.ts +85 -2
  324. package/dist/cli/backend/src/services/backup/backup.types.d.ts.map +1 -1
  325. package/dist/cli/backend/src/services/backup/backup.types.js +21 -0
  326. package/dist/cli/backend/src/services/backup/backup.types.js.map +1 -1
  327. package/dist/cli/backend/src/services/backup/project-file-filter.d.ts +35 -0
  328. package/dist/cli/backend/src/services/backup/project-file-filter.d.ts.map +1 -0
  329. package/dist/cli/backend/src/services/backup/project-file-filter.js +90 -0
  330. package/dist/cli/backend/src/services/backup/project-file-filter.js.map +1 -0
  331. package/dist/cli/backend/src/services/budget/team-budget-gate.service.d.ts +165 -0
  332. package/dist/cli/backend/src/services/budget/team-budget-gate.service.d.ts.map +1 -0
  333. package/dist/cli/backend/src/services/budget/team-budget-gate.service.js +364 -0
  334. package/dist/cli/backend/src/services/budget/team-budget-gate.service.js.map +1 -0
  335. package/dist/cli/backend/src/services/chat-v2/chat-v2.service.d.ts +23 -3
  336. package/dist/cli/backend/src/services/chat-v2/chat-v2.service.d.ts.map +1 -1
  337. package/dist/cli/backend/src/services/chat-v2/chat-v2.service.js +34 -3
  338. package/dist/cli/backend/src/services/chat-v2/chat-v2.service.js.map +1 -1
  339. package/dist/cli/backend/src/services/chat-v2/sqlite/message.store.d.ts +5 -3
  340. package/dist/cli/backend/src/services/chat-v2/sqlite/message.store.d.ts.map +1 -1
  341. package/dist/cli/backend/src/services/chat-v2/sqlite/message.store.js +6 -4
  342. package/dist/cli/backend/src/services/chat-v2/sqlite/message.store.js.map +1 -1
  343. package/dist/cli/backend/src/services/core/api-token.service.d.ts +78 -0
  344. package/dist/cli/backend/src/services/core/api-token.service.d.ts.map +1 -0
  345. package/dist/cli/backend/src/services/core/api-token.service.js +149 -0
  346. package/dist/cli/backend/src/services/core/api-token.service.js.map +1 -0
  347. package/dist/cli/backend/src/services/core/logger.service.d.ts +10 -1
  348. package/dist/cli/backend/src/services/core/logger.service.d.ts.map +1 -1
  349. package/dist/cli/backend/src/services/core/logger.service.js +18 -3
  350. package/dist/cli/backend/src/services/core/logger.service.js.map +1 -1
  351. package/dist/cli/backend/src/services/core/storage.service.d.ts +11 -0
  352. package/dist/cli/backend/src/services/core/storage.service.d.ts.map +1 -1
  353. package/dist/cli/backend/src/services/core/storage.service.js +34 -0
  354. package/dist/cli/backend/src/services/core/storage.service.js.map +1 -1
  355. package/dist/cli/backend/src/services/monitoring/token-usage.service.d.ts +27 -3
  356. package/dist/cli/backend/src/services/monitoring/token-usage.service.d.ts.map +1 -1
  357. package/dist/cli/backend/src/services/monitoring/token-usage.service.js +42 -7
  358. package/dist/cli/backend/src/services/monitoring/token-usage.service.js.map +1 -1
  359. package/dist/cli/backend/src/services/orc/orc-delivery-enforcer.service.d.ts +47 -0
  360. package/dist/cli/backend/src/services/orc/orc-delivery-enforcer.service.d.ts.map +1 -1
  361. package/dist/cli/backend/src/services/orc/orc-delivery-enforcer.service.js +67 -1
  362. package/dist/cli/backend/src/services/orc/orc-delivery-enforcer.service.js.map +1 -1
  363. package/dist/cli/backend/src/services/session/pty/pty-session.d.ts +7 -1
  364. package/dist/cli/backend/src/services/session/pty/pty-session.d.ts.map +1 -1
  365. package/dist/cli/backend/src/services/session/pty/pty-session.js +9 -3
  366. package/dist/cli/backend/src/services/session/pty/pty-session.js.map +1 -1
  367. package/dist/cli/backend/src/services/session/session-handoff.service.d.ts +27 -0
  368. package/dist/cli/backend/src/services/session/session-handoff.service.d.ts.map +1 -1
  369. package/dist/cli/backend/src/services/session/session-handoff.service.js +110 -22
  370. package/dist/cli/backend/src/services/session/session-handoff.service.js.map +1 -1
  371. package/dist/cli/backend/src/services/task-pool/task-pool.service.d.ts +52 -0
  372. package/dist/cli/backend/src/services/task-pool/task-pool.service.d.ts.map +1 -1
  373. package/dist/cli/backend/src/services/task-pool/task-pool.service.js +132 -6
  374. package/dist/cli/backend/src/services/task-pool/task-pool.service.js.map +1 -1
  375. package/dist/cli/backend/src/services/v3/kr-tracking.service.d.ts.map +1 -1
  376. package/dist/cli/backend/src/services/v3/kr-tracking.service.js +3 -6
  377. package/dist/cli/backend/src/services/v3/kr-tracking.service.js.map +1 -1
  378. package/dist/cli/backend/src/services/v3/mission-executor.service.d.ts +5 -0
  379. package/dist/cli/backend/src/services/v3/mission-executor.service.d.ts.map +1 -1
  380. package/dist/cli/backend/src/services/v3/mission-executor.service.js +36 -0
  381. package/dist/cli/backend/src/services/v3/mission-executor.service.js.map +1 -1
  382. package/dist/cli/backend/src/services/v3/mission-paths.d.ts +69 -0
  383. package/dist/cli/backend/src/services/v3/mission-paths.d.ts.map +1 -0
  384. package/dist/cli/backend/src/services/v3/mission-paths.js +92 -0
  385. package/dist/cli/backend/src/services/v3/mission-paths.js.map +1 -0
  386. package/dist/cli/backend/src/services/v3/v3-data.service.d.ts +6 -2
  387. package/dist/cli/backend/src/services/v3/v3-data.service.d.ts.map +1 -1
  388. package/dist/cli/backend/src/services/v3/v3-data.service.js +14 -9
  389. package/dist/cli/backend/src/services/v3/v3-data.service.js.map +1 -1
  390. package/dist/cli/backend/src/types/event-bus.types.d.ts +4 -2
  391. package/dist/cli/backend/src/types/event-bus.types.d.ts.map +1 -1
  392. package/dist/cli/backend/src/types/event-bus.types.js +15 -0
  393. package/dist/cli/backend/src/types/event-bus.types.js.map +1 -1
  394. package/dist/cli/backend/src/types/index.d.ts +16 -0
  395. package/dist/cli/backend/src/types/index.d.ts.map +1 -1
  396. package/dist/cli/backend/src/types/index.js.map +1 -1
  397. package/dist/cli/backend/src/types/v2/index.d.ts +1 -1
  398. package/dist/cli/backend/src/types/v2/index.d.ts.map +1 -1
  399. package/dist/cli/backend/src/types/v2/index.js +1 -1
  400. package/dist/cli/backend/src/types/v2/index.js.map +1 -1
  401. package/dist/cli/backend/src/types/v2/mission.types.d.ts +41 -0
  402. package/dist/cli/backend/src/types/v2/mission.types.d.ts.map +1 -1
  403. package/dist/cli/backend/src/types/v2/mission.types.js +29 -0
  404. package/dist/cli/backend/src/types/v2/mission.types.js.map +1 -1
  405. package/dist/cli/cli/src/commands/backup.d.ts +25 -0
  406. package/dist/cli/cli/src/commands/backup.d.ts.map +1 -1
  407. package/dist/cli/cli/src/commands/backup.js +120 -6
  408. package/dist/cli/cli/src/commands/backup.js.map +1 -1
  409. package/dist/cli/cli/src/commands/doctor.d.ts +58 -0
  410. package/dist/cli/cli/src/commands/doctor.d.ts.map +1 -0
  411. package/dist/cli/cli/src/commands/doctor.js +163 -0
  412. package/dist/cli/cli/src/commands/doctor.js.map +1 -0
  413. package/dist/cli/cli/src/commands/service.d.ts +68 -11
  414. package/dist/cli/cli/src/commands/service.d.ts.map +1 -1
  415. package/dist/cli/cli/src/commands/service.js +183 -51
  416. package/dist/cli/cli/src/commands/service.js.map +1 -1
  417. package/dist/cli/cli/src/commands/token.d.ts +53 -0
  418. package/dist/cli/cli/src/commands/token.d.ts.map +1 -0
  419. package/dist/cli/cli/src/commands/token.js +70 -0
  420. package/dist/cli/cli/src/commands/token.js.map +1 -0
  421. package/dist/cli/cli/src/index.js +40 -5
  422. package/dist/cli/cli/src/index.js.map +1 -1
  423. package/dist/cli/cli/src/scripts/check-native-toolchain.d.ts +21 -0
  424. package/dist/cli/cli/src/scripts/check-native-toolchain.d.ts.map +1 -0
  425. package/dist/cli/cli/src/scripts/check-native-toolchain.js +40 -0
  426. package/dist/cli/cli/src/scripts/check-native-toolchain.js.map +1 -0
  427. package/dist/cli/cli/src/utils/native-toolchain.d.ts +111 -0
  428. package/dist/cli/cli/src/utils/native-toolchain.d.ts.map +1 -0
  429. package/dist/cli/cli/src/utils/native-toolchain.js +146 -0
  430. package/dist/cli/cli/src/utils/native-toolchain.js.map +1 -0
  431. package/dist/cli/cli/src/utils/package-root.d.ts +55 -0
  432. package/dist/cli/cli/src/utils/package-root.d.ts.map +1 -0
  433. package/dist/cli/cli/src/utils/package-root.js +107 -0
  434. package/dist/cli/cli/src/utils/package-root.js.map +1 -0
  435. package/dist/cli/cli/src/utils/version-check.d.ts +18 -2
  436. package/dist/cli/cli/src/utils/version-check.d.ts.map +1 -1
  437. package/dist/cli/cli/src/utils/version-check.js +51 -4
  438. package/dist/cli/cli/src/utils/version-check.js.map +1 -1
  439. package/dist/cli/config/constants.d.ts +53 -0
  440. package/dist/cli/config/constants.d.ts.map +1 -1
  441. package/dist/cli/config/constants.js +54 -0
  442. package/dist/cli/config/constants.js.map +1 -1
  443. package/dist/cli/config/index.d.ts +2 -2
  444. package/dist/cli/config/index.d.ts.map +1 -1
  445. package/dist/cli/config/index.js +6 -6
  446. package/dist/cli/config/index.js.map +1 -1
  447. package/frontend/dist/assets/index-203224f9.js +4961 -0
  448. package/frontend/dist/assets/index-dcaf6c88.css +42 -0
  449. package/frontend/dist/index.html +2 -2
  450. package/package.json +3 -2
  451. package/frontend/dist/assets/index-190a957f.js +0 -4961
  452. package/frontend/dist/assets/index-88feb412.css +0 -42
@@ -17,6 +17,7 @@
17
17
  */
18
18
  import type { RuntimeType } from '../../constants.js';
19
19
  import type { EventBusService } from '../event-bus/event-bus.service.js';
20
+ import type { EnqueueMessageInput } from '../../types/messaging.types.js';
20
21
  /**
21
22
  * URL capture mode — active after /login is sent, waiting for OAuth URL.
22
23
  */
@@ -61,6 +62,65 @@ export interface OAuthUrlEventPayload {
61
62
  /** OAuth URL that the user needs to visit */
62
63
  url: string;
63
64
  }
65
+ /**
66
+ * What the monitor extracted from a sign-in screen.
67
+ */
68
+ export interface LoginRequiredDetection {
69
+ /** Login URL, or null when the screen names no URL (e.g. a bare "Sign in with ChatGPT") */
70
+ url: string | null;
71
+ /** Device / authorization code (e.g. `FBVZ-MJHKK`), or null for browser-callback flows */
72
+ code: string | null;
73
+ }
74
+ /**
75
+ * A session currently waiting on a human sign-in. Held in memory only —
76
+ * it describes the live screen, and a stale flag after restart would mislead.
77
+ */
78
+ export interface LoginRequiredInfo extends LoginRequiredDetection {
79
+ /** PTY session name */
80
+ sessionName: string;
81
+ /** Runtime type when known (unmonitored sessions found by the sweep have none) */
82
+ runtimeType: RuntimeType | null;
83
+ /** ISO timestamp of first detection for this url/code */
84
+ detectedAt: string;
85
+ /** ISO timestamp the owner was last notified for this url/code */
86
+ notifiedAt: string | null;
87
+ }
88
+ /**
89
+ * Minimal orchestrator message-queue surface the monitor needs to push an
90
+ * owner-facing `[NOTIFY]` notice. Structural so tests can pass a stub.
91
+ */
92
+ export interface LoginNoticeQueueLike {
93
+ enqueue(input: EnqueueMessageInput): unknown;
94
+ }
95
+ /**
96
+ * Minimal Slack surface the monitor needs. Structural so the Slack service
97
+ * (a heavy module with its own dependency graph) can be lazily provided.
98
+ */
99
+ export interface LoginNoticeSlackLike {
100
+ isConnected(): boolean;
101
+ sendNotification(notification: {
102
+ type: 'agent_error';
103
+ title: string;
104
+ message: string;
105
+ urgency: 'high';
106
+ timestamp: string;
107
+ metadata?: {
108
+ agentId?: string;
109
+ };
110
+ }): Promise<void>;
111
+ }
112
+ /**
113
+ * Minimal chat surface (terminal gateway + chat-v2) for surfacing the notice
114
+ * in the orchestrator conversation the owner is looking at.
115
+ */
116
+ export interface LoginNoticeChatLike {
117
+ /** Conversation the owner currently has open, if any */
118
+ getActiveConversationId(): string | null;
119
+ /** Record a system turn in that conversation */
120
+ recordSystemTurn(conversationId: string, content: string): void;
121
+ /** Broadcast a WebSocket system notification for a toast/banner */
122
+ broadcastSystemNotification(message: string, type: 'warning'): void;
123
+ }
64
124
  /**
65
125
  * Monitors PTY sessions for OAuth token expiry errors and orchestrates the
66
126
  * full OAuth re-authentication flow including URL capture and event notification.
@@ -84,7 +144,133 @@ export declare class OAuthReloginMonitorService {
84
144
  private eventBusService;
85
145
  /** Callback invoked when an OAuth URL is captured (for orchestrator/Slack integration) */
86
146
  private onOAuthUrlCallback;
147
+ /** Sessions currently waiting on a human sign-in, keyed by session name */
148
+ private loginRequired;
149
+ /** Orchestrator message queue for the `[NOTIFY]` notice (optional) */
150
+ private noticeQueue;
151
+ /** Slack provider (lazy so the Slack module graph is not loaded at import time) */
152
+ private slackProvider;
153
+ /** Chat provider for the active orchestrator conversation (optional) */
154
+ private chatProvider;
155
+ /** Periodic screen sweep timer (started by `start()`) */
156
+ private sweepTimer;
87
157
  private constructor();
158
+ /**
159
+ * Provide the orchestrator message queue used to push the owner-facing
160
+ * `[NOTIFY]` login notice. Skipped for the orchestrator's own session
161
+ * (it cannot process its queue while stuck on a sign-in screen).
162
+ *
163
+ * @param queue - Message queue (structural — the real MessageQueueService fits)
164
+ */
165
+ setNoticeQueue(queue: LoginNoticeQueueLike | null): void;
166
+ /**
167
+ * Provide a lazy Slack accessor. Resolved on each notification so a Slack
168
+ * connection established after boot is still used.
169
+ *
170
+ * @param provider - Returns the Slack service, or null when unavailable
171
+ */
172
+ setSlackProvider(provider: (() => Promise<LoginNoticeSlackLike | null>) | null): void;
173
+ /**
174
+ * Provide a chat accessor for surfacing the notice in the owner's open
175
+ * orchestrator conversation and as a WebSocket banner.
176
+ *
177
+ * @param provider - Returns the chat surface, or null when unavailable
178
+ */
179
+ setChatProvider(provider: (() => LoginNoticeChatLike | null) | null): void;
180
+ /**
181
+ * Start the boot-level periodic sweep. Every `SWEEP_INTERVAL_MS` the
182
+ * captured screen of every live PTY session is checked for a sign-in
183
+ * screen — including sessions that never reached `startMonitoring`
184
+ * because runtime-ready detection timed out on the login screen — and
185
+ * flags are cleared once the screen moves past login.
186
+ *
187
+ * @param intervalMs - Sweep cadence (defaults to LOGIN_REQUIRED_CONSTANTS.SWEEP_INTERVAL_MS)
188
+ */
189
+ start(intervalMs?: number): void;
190
+ /**
191
+ * Stop the periodic sweep (monitoring subscriptions are left alone).
192
+ */
193
+ stop(): void;
194
+ /**
195
+ * Sessions currently flagged as waiting on a human sign-in.
196
+ *
197
+ * @returns Snapshot of all pending login records
198
+ */
199
+ getAllLoginRequired(): LoginRequiredInfo[];
200
+ /**
201
+ * The pending login record for one session, if any.
202
+ *
203
+ * @param sessionName - PTY session name
204
+ * @returns The record, or undefined when the session is not waiting on login
205
+ */
206
+ getLoginRequired(sessionName: string): LoginRequiredInfo | undefined;
207
+ /**
208
+ * Clear a session's login-required flag (login completed, session gone,
209
+ * or code submitted).
210
+ *
211
+ * @param sessionName - PTY session name
212
+ * @returns true when a flag was cleared
213
+ */
214
+ clearLoginRequired(sessionName: string): boolean;
215
+ /**
216
+ * Inspect screen text for a sign-in screen and extract the login URL and
217
+ * device code. Runtime-agnostic: the pattern sets in
218
+ * `LOGIN_REQUIRED_PATTERN_SETS` cover Codex (device-code and browser
219
+ * flows), Claude Code and Gemini CLI. Plain substring matching — no regex
220
+ * on untrusted length.
221
+ *
222
+ * @param screen - Captured terminal text (ANSI is stripped defensively)
223
+ * @returns The extracted url/code, or null when no sign-in screen is showing
224
+ *
225
+ * @example
226
+ * ```typescript
227
+ * monitor.detectLoginRequired(
228
+ * 'Go to https://auth.openai.com/codex/device and enter code FBVZ-MJHKK'
229
+ * );
230
+ * // → { url: 'https://auth.openai.com/codex/device', code: 'FBVZ-MJHKK' }
231
+ * ```
232
+ */
233
+ detectLoginRequired(screen: string): LoginRequiredDetection | null;
234
+ /**
235
+ * Check one session's current screen for a sign-in state, flag/notify on
236
+ * a new detection, and clear the flag once login is done.
237
+ *
238
+ * @param sessionName - PTY session name
239
+ * @param screen - Captured screen text
240
+ * @param runtimeType - Runtime type when known
241
+ */
242
+ inspectScreen(sessionName: string, screen: string, runtimeType?: RuntimeType | null): void;
243
+ /**
244
+ * Sweep every live PTY session's screen for a sign-in state.
245
+ * Safe to call at any time; errors are swallowed per session.
246
+ */
247
+ sweepAllSessions(): void;
248
+ /**
249
+ * Push the owner-facing notice everywhere a human might see it: main log,
250
+ * event bus, the orchestrator queue (`[NOTIFY]`, skipped when the
251
+ * orchestrator itself is the one stuck), the open chat conversation +
252
+ * WebSocket banner, and Slack when connected.
253
+ *
254
+ * @param info - The pending login record
255
+ */
256
+ private notifyLoginRequired;
257
+ /**
258
+ * Human-readable notice: "Agent X needs you to sign in: <url> code <XXXX-XXXXX>".
259
+ *
260
+ * @param info - The pending login record
261
+ * @returns The notice text
262
+ */
263
+ private formatLoginNotice;
264
+ /**
265
+ * Find a device/authorization code such as `FBVZ-MJHKK`: an upper-case
266
+ * alphanumeric head of `DEVICE_CODE_HEAD_LEN` chars, a dash, and a tail of
267
+ * `DEVICE_CODE_TAIL_MIN_LEN`..`DEVICE_CODE_TAIL_MAX_LEN` chars, delimited by
268
+ * non-alphanumerics. Linear scan, no regex.
269
+ *
270
+ * @param text - Screen text
271
+ * @returns The first code found, or null
272
+ */
273
+ private extractDeviceCode;
88
274
  /**
89
275
  * Get the singleton instance.
90
276
  *
@@ -184,6 +370,17 @@ export declare class OAuthReloginMonitorService {
184
370
  * @returns The OAuth URL or null if not found
185
371
  */
186
372
  private extractOAuthUrl;
373
+ /**
374
+ * Extract the first `https://` URL from terminal output.
375
+ *
376
+ * @param buffer - Terminal output buffer
377
+ * @param requireOAuthPath - When true, the URL must contain a known
378
+ * OAuth path segment (`/oauth`, `/authorize`, `/login`, `/auth`,
379
+ * `/consent`, `/device`); when false any https URL qualifies (sign-in
380
+ * screens name plain landing pages too)
381
+ * @returns The URL or null if not found
382
+ */
383
+ private extractHttpsUrl;
187
384
  /**
188
385
  * Emit an `agent:oauth_url` event via the EventBus and invoke the callback.
189
386
  *
@@ -1 +1 @@
1
- {"version":3,"file":"oauth-relogin-monitor.service.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/agent/oauth-relogin-monitor.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"oauth-relogin-monitor.service.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/agent/oauth-relogin-monitor.service.ts"],"names":[],"mappings":"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"}