@futdevpro/ccap 1.1.3223 → 1.1.3441

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 (437) hide show
  1. package/cli/build/_collections/update/update-verify-install.interface.d.ts +23 -0
  2. package/cli/build/_collections/update/update-verify-install.interface.d.ts.map +1 -0
  3. package/cli/build/_collections/update/update-verify-install.interface.js +3 -0
  4. package/cli/build/_collections/update/update-verify-install.interface.js.map +1 -0
  5. package/cli/build/_collections/update/update-verify-install.util.d.ts +50 -0
  6. package/cli/build/_collections/update/update-verify-install.util.d.ts.map +1 -0
  7. package/cli/build/_collections/update/update-verify-install.util.js +179 -0
  8. package/cli/build/_collections/update/update-verify-install.util.js.map +1 -0
  9. package/cli/build/_collections/update/update-verify-install.util.spec.d.ts +6 -0
  10. package/cli/build/_collections/update/update-verify-install.util.spec.d.ts.map +1 -0
  11. package/cli/build/_collections/update/update-verify-install.util.spec.js +117 -0
  12. package/cli/build/_collections/update/update-verify-install.util.spec.js.map +1 -0
  13. package/cli/build/_commands/cc-inspect-options.interface.d.ts +11 -0
  14. package/cli/build/_commands/cc-inspect-options.interface.d.ts.map +1 -0
  15. package/cli/build/_commands/cc-inspect-options.interface.js +3 -0
  16. package/cli/build/_commands/cc-inspect-options.interface.js.map +1 -0
  17. package/cli/build/_commands/cc-inspect.d.ts +33 -0
  18. package/cli/build/_commands/cc-inspect.d.ts.map +1 -0
  19. package/cli/build/_commands/cc-inspect.js +228 -0
  20. package/cli/build/_commands/cc-inspect.js.map +1 -0
  21. package/cli/build/_commands/input.d.ts +55 -0
  22. package/cli/build/_commands/input.d.ts.map +1 -0
  23. package/cli/build/_commands/input.interface.d.ts +21 -0
  24. package/cli/build/_commands/input.interface.d.ts.map +1 -0
  25. package/cli/build/_commands/input.interface.js +3 -0
  26. package/cli/build/_commands/input.interface.js.map +1 -0
  27. package/cli/build/_commands/input.js +183 -0
  28. package/cli/build/_commands/input.js.map +1 -0
  29. package/cli/build/_commands/input.spec.d.ts +8 -0
  30. package/cli/build/_commands/input.spec.d.ts.map +1 -0
  31. package/cli/build/_commands/input.spec.js +63 -0
  32. package/cli/build/_commands/input.spec.js.map +1 -0
  33. package/cli/build/_commands/skill-doc.d.ts +63 -0
  34. package/cli/build/_commands/skill-doc.d.ts.map +1 -0
  35. package/cli/build/_commands/skill-doc.interface.d.ts +19 -0
  36. package/cli/build/_commands/skill-doc.interface.d.ts.map +1 -0
  37. package/cli/build/_commands/skill-doc.interface.js +3 -0
  38. package/cli/build/_commands/skill-doc.interface.js.map +1 -0
  39. package/cli/build/_commands/skill-doc.js +421 -0
  40. package/cli/build/_commands/skill-doc.js.map +1 -0
  41. package/cli/build/_commands/skill-doc.spec.d.ts +10 -0
  42. package/cli/build/_commands/skill-doc.spec.d.ts.map +1 -0
  43. package/cli/build/_commands/skill-doc.spec.js +112 -0
  44. package/cli/build/_commands/skill-doc.spec.js.map +1 -0
  45. package/cli/build/_commands/update.d.ts.map +1 -1
  46. package/cli/build/_commands/update.js +59 -0
  47. package/cli/build/_commands/update.js.map +1 -1
  48. package/cli/build/_commands/update.spec.js +12 -0
  49. package/cli/build/_commands/update.spec.js.map +1 -1
  50. package/cli/build/program.js +51 -0
  51. package/cli/build/program.js.map +1 -1
  52. package/client-dist/{agent-instances.module-V7DKSWVC.js → agent-instances.module-4ADMPXCV.js} +2 -2
  53. package/client-dist/ca.module-RVGC3WQC.js +5 -0
  54. package/client-dist/{ca.module-MVE3OLDD.js.map → ca.module-RVGC3WQC.js.map} +3 -3
  55. package/client-dist/cc-usage-dashboard.component-OQS2BC4L.js +2 -0
  56. package/client-dist/cc-usage-dashboard.component-OQS2BC4L.js.map +7 -0
  57. package/client-dist/cc.module-SPB35JNX.js +4 -0
  58. package/client-dist/cc.module-SPB35JNX.js.map +7 -0
  59. package/client-dist/{chunk-7HSUCNW5.js → chunk-2ATSF4KC.js} +7 -3
  60. package/client-dist/{chunk-7HSUCNW5.js.map → chunk-2ATSF4KC.js.map} +2 -2
  61. package/client-dist/{chunk-CRYF37M7.js → chunk-3HJWN4W6.js} +2 -2
  62. package/client-dist/{chunk-D2UUXA6L.js → chunk-4EV32FFZ.js} +2 -2
  63. package/client-dist/{chunk-AX7QIINI.js → chunk-4H3E32UH.js} +2 -2
  64. package/client-dist/{chunk-KYVIZZWW.js → chunk-4LCJ4GNK.js} +19 -19
  65. package/client-dist/chunk-4LCJ4GNK.js.map +7 -0
  66. package/client-dist/{chunk-OUBNMT7L.js → chunk-5NW5UGVZ.js} +2 -2
  67. package/client-dist/{chunk-HLNT234H.js → chunk-AM5URSKV.js} +2 -2
  68. package/client-dist/{chunk-SYCUR4MY.js → chunk-AMROWQBM.js} +2 -2
  69. package/client-dist/{chunk-PTCJL62W.js → chunk-AR6EOT63.js} +2 -2
  70. package/client-dist/{chunk-OLK5MJ4J.js → chunk-B25EGDHU.js} +2 -2
  71. package/client-dist/{chunk-4SFV57IQ.js → chunk-BQTJHETS.js} +2 -2
  72. package/client-dist/{chunk-XTUQJ3W6.js → chunk-COOWEMEW.js} +2 -2
  73. package/client-dist/{chunk-TOFOK5W7.js → chunk-E3JXFFHE.js} +2 -2
  74. package/client-dist/{chunk-OQW6FXRJ.js → chunk-ESIGVRCK.js} +2 -2
  75. package/client-dist/{chunk-JMZKJLUE.js → chunk-EVMDNGBK.js} +2 -2
  76. package/client-dist/{chunk-6GSTJE3R.js → chunk-F6VMAVI5.js} +2 -2
  77. package/client-dist/chunk-FRVRMJQF.js +2 -0
  78. package/client-dist/chunk-FRVRMJQF.js.map +7 -0
  79. package/client-dist/chunk-G5SK3OBM.js +2 -0
  80. package/client-dist/chunk-G5SK3OBM.js.map +7 -0
  81. package/client-dist/{chunk-VO5ZLOZM.js → chunk-GBOES7QW.js} +2 -2
  82. package/client-dist/{chunk-2OAF6FCL.js → chunk-GTERKRTR.js} +2 -2
  83. package/client-dist/{chunk-7X22BWF7.js → chunk-HD4CODAD.js} +2 -2
  84. package/client-dist/{chunk-2EMFCVYO.js → chunk-I3FSMGMK.js} +2 -2
  85. package/client-dist/{chunk-VGTXKD6D.js → chunk-IFYHOOVA.js} +2 -2
  86. package/client-dist/{chunk-IINV7GMO.js → chunk-IUAZJ3PT.js} +2 -2
  87. package/client-dist/chunk-IUAZJ3PT.js.map +7 -0
  88. package/client-dist/{chunk-PFBJ7ZHP.js → chunk-IVLMVAVJ.js} +2 -2
  89. package/client-dist/chunk-KBMXCICX.js +2 -0
  90. package/client-dist/chunk-KBMXCICX.js.map +7 -0
  91. package/client-dist/{chunk-3D32XY5M.js → chunk-KIKSSJKL.js} +2 -2
  92. package/client-dist/{chunk-U2EBQMSE.js → chunk-LPNQ5PRN.js} +2 -2
  93. package/client-dist/{chunk-4JKJRGJX.js → chunk-MO37SUK2.js} +2 -2
  94. package/client-dist/{chunk-BC7H7K5F.js → chunk-MYVEHPA7.js} +2 -2
  95. package/client-dist/{chunk-JEHOIN7Y.js → chunk-N55GOFVU.js} +2 -2
  96. package/client-dist/{chunk-R5WCLLO5.js → chunk-NNUHTCXG.js} +2 -2
  97. package/client-dist/{chunk-TP2634XD.js → chunk-OKTAADTQ.js} +2 -2
  98. package/client-dist/{chunk-DURLBTAJ.js → chunk-ONS7XQYD.js} +2 -2
  99. package/client-dist/chunk-OYB7GU43.js +2 -0
  100. package/client-dist/chunk-OYB7GU43.js.map +7 -0
  101. package/client-dist/{chunk-7SAFEFWU.js → chunk-PVSQ5ZEZ.js} +14 -14
  102. package/client-dist/{chunk-7SAFEFWU.js.map → chunk-PVSQ5ZEZ.js.map} +3 -3
  103. package/client-dist/{chunk-PG7CJVEP.js → chunk-PZN2OI7U.js} +2 -2
  104. package/client-dist/{chunk-C4JDDOQR.js → chunk-QUD3BEHN.js} +2 -2
  105. package/client-dist/{chunk-DJVWZQNB.js → chunk-QUEYZI42.js} +2 -2
  106. package/client-dist/chunk-R2IBKJ4K.js +2 -0
  107. package/client-dist/chunk-R2IBKJ4K.js.map +7 -0
  108. package/client-dist/{chunk-3TMVRWAB.js → chunk-RAHCHCWR.js} +2 -2
  109. package/client-dist/{chunk-SQWHJTFE.js → chunk-RCCUSGIN.js} +2 -2
  110. package/client-dist/{chunk-GADEZIXI.js → chunk-RL5LPTPO.js} +2 -2
  111. package/client-dist/{chunk-5C3KCWYF.js → chunk-SDVXPGB7.js} +2 -2
  112. package/client-dist/{chunk-CLQC45GB.js → chunk-TNLHQRL7.js} +2 -2
  113. package/client-dist/{chunk-JZHYGU3K.js → chunk-TWK7BOB7.js} +2 -2
  114. package/client-dist/{chunk-ILG5WENK.js → chunk-U62YECNK.js} +2 -2
  115. package/client-dist/{chunk-RSPVPEQ4.js → chunk-UOC6UYZT.js} +2 -2
  116. package/client-dist/{chunk-AI7WKHRQ.js → chunk-VDQROW6J.js} +2 -2
  117. package/client-dist/{chunk-3PA6BJES.js → chunk-VMXIXZV2.js} +2 -2
  118. package/client-dist/chunk-VQ4GBHH7.js +2 -0
  119. package/client-dist/chunk-VQ4GBHH7.js.map +7 -0
  120. package/client-dist/{chunk-CFHQS3UB.js → chunk-WRI37SX4.js} +2 -2
  121. package/client-dist/{chunk-MS5OG7JD.js → chunk-XLSL262Q.js} +2 -2
  122. package/client-dist/{chunk-SLSTIBOT.js → chunk-Y6V4NGLU.js} +2 -2
  123. package/client-dist/{chunk-SLSTIBOT.js.map → chunk-Y6V4NGLU.js.map} +1 -1
  124. package/client-dist/{chunk-3PLWSRB4.js → chunk-YN4H6MW2.js} +2 -2
  125. package/client-dist/{chunk-OEEQNIJG.js → chunk-Z5FUR5ZW.js} +2 -2
  126. package/client-dist/{chunk-MY75XBDH.js → chunk-ZCHMBEHT.js} +2 -2
  127. package/client-dist/{chunk-LIQPVSH3.js → chunk-ZPJ6KYMA.js} +2 -2
  128. package/client-dist/consultant.module-UWXLFLDS.js +3 -0
  129. package/client-dist/{consultant.module-WUUVSVHL.js.map → consultant.module-UWXLFLDS.js.map} +3 -3
  130. package/client-dist/{crd.module-IRGVOYD5.js → crd.module-2I2BDC3A.js} +2 -2
  131. package/client-dist/{dashboard.module-NPPSZHO6.js → dashboard.module-X2A6LOTA.js} +2 -2
  132. package/client-dist/{do.module-GKQTJOXR.js → do.module-CJWEKZ4L.js} +2 -2
  133. package/client-dist/{document-library.module-JK3K7QNJ.js → document-library.module-WJSFZPA7.js} +2 -2
  134. package/client-dist/{embedding-eval.module-LVESAMPN.js → embedding-eval.module-FOALIAQW.js} +2 -2
  135. package/client-dist/{embedding-registry.module-3ECACZZ3.js → embedding-registry.module-SS646R4H.js} +2 -2
  136. package/client-dist/err.module-SR4ZAOQH.js +6 -0
  137. package/client-dist/err.module-SR4ZAOQH.js.map +7 -0
  138. package/client-dist/{feedback.module-AHG7462C.js → feedback.module-T3MZQKXV.js} +2 -2
  139. package/client-dist/{host-runtime-mcp.module-XFUI7B65.js → host-runtime-mcp.module-FBZZGQGD.js} +2 -2
  140. package/client-dist/index.html +2 -2
  141. package/client-dist/{live-dev-pipeline.module-OMK67DGM.js → live-dev-pipeline.module-OKQYFSJL.js} +2 -2
  142. package/client-dist/{logs.module-FWACECVV.js → logs.module-SHHOD5XW.js} +2 -2
  143. package/client-dist/{main-H4AYPQ2E.js → main-L3WW2VTB.js} +4 -4
  144. package/client-dist/{main-H4AYPQ2E.js.map → main-L3WW2VTB.js.map} +3 -3
  145. package/client-dist/{master-control-remote-poc.module-GQ6RMPRB.js → master-control-remote-poc.module-ITXHYU5K.js} +2 -2
  146. package/client-dist/{mobile-app.module-YSARX6QC.js → mobile-app.module-Q3W3PU4O.js} +2 -2
  147. package/client-dist/{model-registry.module-SJOUSDXZ.js → model-registry.module-DGN55LTQ.js} +2 -2
  148. package/client-dist/oc.module-DYSATWML.js +3 -0
  149. package/client-dist/{oc.module-CDGBJ6I4.js.map → oc.module-DYSATWML.js.map} +3 -3
  150. package/client-dist/orc.module-NQO6OLPK.js +2 -0
  151. package/client-dist/orc.module-NQO6OLPK.js.map +7 -0
  152. package/client-dist/{project-management.module-LWZLB6VU.js → project-management.module-T7NBKKSR.js} +2 -2
  153. package/client-dist/project-source-routed.module-YO54LEGN.js +2 -0
  154. package/client-dist/{scheduler.module-VH647PWD.js → scheduler.module-4CMBOTGZ.js} +2 -2
  155. package/client-dist/session.module-V4SRPQRZ.js +12 -0
  156. package/client-dist/session.module-V4SRPQRZ.js.map +7 -0
  157. package/client-dist/{set.module-XHJR4XUD.js → set.module-32SVEWTG.js} +5 -5
  158. package/client-dist/{set.module-XHJR4XUD.js.map → set.module-32SVEWTG.js.map} +3 -3
  159. package/client-dist/{setup.module-RRQZ62B2.js → setup.module-5T6MCMR4.js} +2 -2
  160. package/client-dist/styles-CTUT42AQ.css +2 -0
  161. package/client-dist/styles-CTUT42AQ.css.map +7 -0
  162. package/client-dist/{terminals.module-QKIQS6FH.js → terminals.module-AQO2TVO2.js} +2 -2
  163. package/client-dist/{voice-notes-poc.module-K3FB6OIB.js → voice-notes-poc.module-EI2HY7YJ.js} +2 -2
  164. package/client-dist/{wfs.module-JVR53PGJ.js → wfs.module-AHRZE5WB.js} +2 -2
  165. package/package.json +1 -1
  166. package/server/build/src/_collections/core/ccap-post-services-bootstrap.util.d.ts.map +1 -1
  167. package/server/build/src/_collections/core/ccap-post-services-bootstrap.util.js +5 -0
  168. package/server/build/src/_collections/core/ccap-post-services-bootstrap.util.js.map +1 -1
  169. package/server/build/src/_modules/ccap-agent/_modules/agent-core/_modules/run/_services/control-services/run-flow.control-service.d.ts.map +1 -1
  170. package/server/build/src/_modules/ccap-agent/_modules/agent-core/_modules/run/_services/control-services/run-flow.control-service.js +8 -1
  171. package/server/build/src/_modules/ccap-agent/_modules/agent-core/_modules/run/_services/control-services/run-flow.control-service.js.map +1 -1
  172. package/server/build/src/_modules/ccap-agent/_modules/error-handling/_collections/error-handling-stats-range.const.d.ts +11 -0
  173. package/server/build/src/_modules/ccap-agent/_modules/error-handling/_collections/error-handling-stats-range.const.d.ts.map +1 -0
  174. package/server/build/src/_modules/ccap-agent/_modules/error-handling/_collections/error-handling-stats-range.const.js +20 -0
  175. package/server/build/src/_modules/ccap-agent/_modules/error-handling/_collections/error-handling-stats-range.const.js.map +1 -0
  176. package/server/build/src/_modules/ccap-agent/_modules/error-handling/_collections/utils/error-handling-stats.util.d.ts +65 -0
  177. package/server/build/src/_modules/ccap-agent/_modules/error-handling/_collections/utils/error-handling-stats.util.d.ts.map +1 -0
  178. package/server/build/src/_modules/ccap-agent/_modules/error-handling/_collections/utils/error-handling-stats.util.js +222 -0
  179. package/server/build/src/_modules/ccap-agent/_modules/error-handling/_collections/utils/error-handling-stats.util.js.map +1 -0
  180. package/server/build/src/_modules/ccap-agent/_modules/error-handling/_collections/utils/error-handling-stats.util.spec.d.ts +7 -0
  181. package/server/build/src/_modules/ccap-agent/_modules/error-handling/_collections/utils/error-handling-stats.util.spec.d.ts.map +1 -0
  182. package/server/build/src/_modules/ccap-agent/_modules/error-handling/_collections/utils/error-handling-stats.util.spec.js +213 -0
  183. package/server/build/src/_modules/ccap-agent/_modules/error-handling/_collections/utils/error-handling-stats.util.spec.js.map +1 -0
  184. package/server/build/src/_modules/ccap-agent/_modules/error-handling/_models/interfaces/error-handling-stats.interface.d.ts +58 -0
  185. package/server/build/src/_modules/ccap-agent/_modules/error-handling/_models/interfaces/error-handling-stats.interface.d.ts.map +1 -0
  186. package/server/build/src/_modules/ccap-agent/_modules/error-handling/_models/interfaces/error-handling-stats.interface.js +3 -0
  187. package/server/build/src/_modules/ccap-agent/_modules/error-handling/_models/interfaces/error-handling-stats.interface.js.map +1 -0
  188. package/server/build/src/_modules/ccap-agent/_modules/error-handling/_routes/error-handling.controller.d.ts.map +1 -1
  189. package/server/build/src/_modules/ccap-agent/_modules/error-handling/_routes/error-handling.controller.js +14 -0
  190. package/server/build/src/_modules/ccap-agent/_modules/error-handling/_routes/error-handling.controller.js.map +1 -1
  191. package/server/build/src/_modules/ccap-agent/_modules/error-handling/_services/errorhandling-stats.control-service.d.ts +35 -0
  192. package/server/build/src/_modules/ccap-agent/_modules/error-handling/_services/errorhandling-stats.control-service.d.ts.map +1 -0
  193. package/server/build/src/_modules/ccap-agent/_modules/error-handling/_services/errorhandling-stats.control-service.js +80 -0
  194. package/server/build/src/_modules/ccap-agent/_modules/error-handling/_services/errorhandling-stats.control-service.js.map +1 -0
  195. package/server/build/src/_modules/ccap-agent/_modules/integrations/_modules/voice/_collections/utils/voc-mp3-id3-strip.util.d.ts +47 -0
  196. package/server/build/src/_modules/ccap-agent/_modules/integrations/_modules/voice/_collections/utils/voc-mp3-id3-strip.util.d.ts.map +1 -0
  197. package/server/build/src/_modules/ccap-agent/_modules/integrations/_modules/voice/_collections/utils/voc-mp3-id3-strip.util.js +100 -0
  198. package/server/build/src/_modules/ccap-agent/_modules/integrations/_modules/voice/_collections/utils/voc-mp3-id3-strip.util.js.map +1 -0
  199. package/server/build/src/_modules/ccap-agent/_modules/integrations/_modules/voice/_collections/utils/voc-mp3-id3-strip.util.spec.d.ts +2 -0
  200. package/server/build/src/_modules/ccap-agent/_modules/integrations/_modules/voice/_collections/utils/voc-mp3-id3-strip.util.spec.d.ts.map +1 -0
  201. package/server/build/src/_modules/ccap-agent/_modules/integrations/_modules/voice/_collections/utils/voc-mp3-id3-strip.util.spec.js +162 -0
  202. package/server/build/src/_modules/ccap-agent/_modules/integrations/_modules/voice/_collections/utils/voc-mp3-id3-strip.util.spec.js.map +1 -0
  203. package/server/build/src/_modules/ccap-agent/_modules/integrations/_modules/voice/_services/control-services/stt/voc-transcribe.control-service.d.ts +2 -0
  204. package/server/build/src/_modules/ccap-agent/_modules/integrations/_modules/voice/_services/control-services/stt/voc-transcribe.control-service.d.ts.map +1 -1
  205. package/server/build/src/_modules/ccap-agent/_modules/integrations/_modules/voice/_services/control-services/stt/voc-transcribe.control-service.js +16 -0
  206. package/server/build/src/_modules/ccap-agent/_modules/integrations/_modules/voice/_services/control-services/stt/voc-transcribe.control-service.js.map +1 -1
  207. package/server/build/src/_modules/ccap-agent/_modules/integrations/_modules/voice/_services/control-services/tts/voc-tts.control-service.d.ts.map +1 -1
  208. package/server/build/src/_modules/ccap-agent/_modules/integrations/_modules/voice/_services/control-services/tts/voc-tts.control-service.js +22 -4
  209. package/server/build/src/_modules/ccap-agent/_modules/integrations/_modules/voice/_services/control-services/tts/voc-tts.control-service.js.map +1 -1
  210. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/consts/cc-kill-reasons.const.d.ts +58 -0
  211. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/consts/cc-kill-reasons.const.d.ts.map +1 -1
  212. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/consts/cc-kill-reasons.const.js +64 -0
  213. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/consts/cc-kill-reasons.const.js.map +1 -1
  214. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/cc-list-item-serialize.util.d.ts.map +1 -1
  215. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/cc-list-item-serialize.util.js +3 -0
  216. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/cc-list-item-serialize.util.js.map +1 -1
  217. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/cc-stream-parser.util.d.ts +17 -0
  218. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/cc-stream-parser.util.d.ts.map +1 -1
  219. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/cc-stream-parser.util.js +65 -5
  220. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/cc-stream-parser.util.js.map +1 -1
  221. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/cc-stream-parser.util.spec.d.ts +9 -0
  222. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/cc-stream-parser.util.spec.d.ts.map +1 -0
  223. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/cc-stream-parser.util.spec.js +213 -0
  224. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/cc-stream-parser.util.spec.js.map +1 -0
  225. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/lifecycle/cc-exit-diagnostics.util.d.ts +47 -0
  226. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/lifecycle/cc-exit-diagnostics.util.d.ts.map +1 -0
  227. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/lifecycle/cc-exit-diagnostics.util.js +71 -0
  228. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/lifecycle/cc-exit-diagnostics.util.js.map +1 -0
  229. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/lifecycle/cc-process-exit.util.d.ts +36 -0
  230. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/lifecycle/cc-process-exit.util.d.ts.map +1 -1
  231. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/lifecycle/cc-process-exit.util.js +93 -6
  232. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/lifecycle/cc-process-exit.util.js.map +1 -1
  233. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/lifecycle/cc-process-exit.util.spec.js +85 -21
  234. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/lifecycle/cc-process-exit.util.spec.js.map +1 -1
  235. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/lifecycle/cc-recovery.util.d.ts.map +1 -1
  236. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/lifecycle/cc-recovery.util.js +81 -1
  237. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/lifecycle/cc-recovery.util.js.map +1 -1
  238. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/terminal/cc-terminal-session-closed-guard.util.d.ts.map +1 -1
  239. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/terminal/cc-terminal-session-closed-guard.util.js +14 -2
  240. package/server/build/src/_modules/external-sessions/_modules/claude-code/_collections/utils/terminal/cc-terminal-session-closed-guard.util.js.map +1 -1
  241. package/server/build/src/_modules/external-sessions/_modules/claude-code/_routes/claude-code.controller.d.ts.map +1 -1
  242. package/server/build/src/_modules/external-sessions/_modules/claude-code/_routes/claude-code.controller.js +19 -0
  243. package/server/build/src/_modules/external-sessions/_modules/claude-code/_routes/claude-code.controller.js.map +1 -1
  244. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/blocked-resume/cc-blocked-resume.control-service.d.ts +4 -0
  245. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/blocked-resume/cc-blocked-resume.control-service.d.ts.map +1 -1
  246. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/blocked-resume/cc-blocked-resume.control-service.js +6 -0
  247. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/blocked-resume/cc-blocked-resume.control-service.js.map +1 -1
  248. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-adapter.control-service.d.ts +13 -0
  249. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-adapter.control-service.d.ts.map +1 -1
  250. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-adapter.control-service.js +21 -0
  251. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-adapter.control-service.js.map +1 -1
  252. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-adapter.interface.d.ts +33 -0
  253. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-adapter.interface.d.ts.map +1 -1
  254. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-event.data-service.d.ts.map +1 -1
  255. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-event.data-service.js +10 -3
  256. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-event.data-service.js.map +1 -1
  257. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-manager.control-service.d.ts +54 -0
  258. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-manager.control-service.d.ts.map +1 -1
  259. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-manager.control-service.js +163 -75
  260. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-manager.control-service.js.map +1 -1
  261. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-monitoring.control-service.d.ts +6 -1
  262. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-monitoring.control-service.d.ts.map +1 -1
  263. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-monitoring.control-service.js +32 -9
  264. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-monitoring.control-service.js.map +1 -1
  265. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-monitoring.control-service.spec.js +20 -2
  266. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-monitoring.control-service.spec.js.map +1 -1
  267. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-route.control-service.d.ts +25 -0
  268. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-route.control-service.d.ts.map +1 -1
  269. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-route.control-service.js +301 -1
  270. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/cc-route.control-service.js.map +1 -1
  271. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/status/cc-status-transition.control-service.d.ts +20 -3
  272. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/status/cc-status-transition.control-service.d.ts.map +1 -1
  273. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/status/cc-status-transition.control-service.js +62 -7
  274. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/status/cc-status-transition.control-service.js.map +1 -1
  275. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/status/cc-status-transition.control-service.spec.js +10 -0
  276. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/status/cc-status-transition.control-service.spec.js.map +1 -1
  277. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/terminal/cc-adapter-terminal.control-service.d.ts +11 -18
  278. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/terminal/cc-adapter-terminal.control-service.d.ts.map +1 -1
  279. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/terminal/cc-adapter-terminal.control-service.js +40 -48
  280. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/terminal/cc-adapter-terminal.control-service.js.map +1 -1
  281. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/terminal/cc-terminal-lifecycle.control-service.d.ts +8 -0
  282. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/terminal/cc-terminal-lifecycle.control-service.d.ts.map +1 -1
  283. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/terminal/cc-terminal-lifecycle.control-service.js +13 -2
  284. package/server/build/src/_modules/external-sessions/_modules/claude-code/_services/core/terminal/cc-terminal-lifecycle.control-service.js.map +1 -1
  285. package/server/build/src/_modules/external-sessions/_modules/openclaw/_services/core/oc-event.data-service.d.ts.map +1 -1
  286. package/server/build/src/_modules/external-sessions/_modules/openclaw/_services/core/oc-event.data-service.js +8 -3
  287. package/server/build/src/_modules/external-sessions/_modules/openclaw/_services/core/oc-event.data-service.js.map +1 -1
  288. package/server/build/src/_modules/messaging/_services/control-services/providers/msg-client-socket-server.service.d.ts.map +1 -1
  289. package/server/build/src/_modules/messaging/_services/control-services/providers/msg-client-socket-server.service.js +12 -0
  290. package/server/build/src/_modules/messaging/_services/control-services/providers/msg-client-socket-server.service.js.map +1 -1
  291. package/server/build/src/_modules/notification/_collections/utils/ntf-system-event.util.d.ts +10 -0
  292. package/server/build/src/_modules/notification/_collections/utils/ntf-system-event.util.d.ts.map +1 -1
  293. package/server/build/src/_modules/notification/_collections/utils/ntf-system-event.util.js +18 -0
  294. package/server/build/src/_modules/notification/_collections/utils/ntf-system-event.util.js.map +1 -1
  295. package/server/build/src/_modules/notification/_collections/utils/ntf-system-event.util.spec.js +32 -3
  296. package/server/build/src/_modules/notification/_collections/utils/ntf-system-event.util.spec.js.map +1 -1
  297. package/server/build/src/_modules/peer-instance/_collections/utils/pei-error-recording.util.d.ts +42 -0
  298. package/server/build/src/_modules/peer-instance/_collections/utils/pei-error-recording.util.d.ts.map +1 -0
  299. package/server/build/src/_modules/peer-instance/_collections/utils/pei-error-recording.util.js +73 -0
  300. package/server/build/src/_modules/peer-instance/_collections/utils/pei-error-recording.util.js.map +1 -0
  301. package/server/build/src/_modules/peer-instance/_collections/utils/pei-error-recording.util.spec.d.ts +10 -0
  302. package/server/build/src/_modules/peer-instance/_collections/utils/pei-error-recording.util.spec.d.ts.map +1 -0
  303. package/server/build/src/_modules/peer-instance/_collections/utils/pei-error-recording.util.spec.js +89 -0
  304. package/server/build/src/_modules/peer-instance/_collections/utils/pei-error-recording.util.spec.js.map +1 -0
  305. package/server/build/src/_modules/peer-instance/_models/interfaces/pei-bootstrap-attempt.interface.d.ts +8 -1
  306. package/server/build/src/_modules/peer-instance/_models/interfaces/pei-bootstrap-attempt.interface.d.ts.map +1 -1
  307. package/server/build/src/_modules/peer-instance/_services/pei-bootstrap-watchdog.spec.d.ts +10 -0
  308. package/server/build/src/_modules/peer-instance/_services/pei-bootstrap-watchdog.spec.d.ts.map +1 -0
  309. package/server/build/src/_modules/peer-instance/_services/pei-bootstrap-watchdog.spec.js +74 -0
  310. package/server/build/src/_modules/peer-instance/_services/pei-bootstrap-watchdog.spec.js.map +1 -0
  311. package/server/build/src/_modules/peer-instance/_services/pei-bootstrap.control-service.d.ts +37 -0
  312. package/server/build/src/_modules/peer-instance/_services/pei-bootstrap.control-service.d.ts.map +1 -1
  313. package/server/build/src/_modules/peer-instance/_services/pei-bootstrap.control-service.js +117 -0
  314. package/server/build/src/_modules/peer-instance/_services/pei-bootstrap.control-service.js.map +1 -1
  315. package/server/build/src/_modules/peer-instance/_services/pei-dispatch.control-service.d.ts +11 -0
  316. package/server/build/src/_modules/peer-instance/_services/pei-dispatch.control-service.d.ts.map +1 -1
  317. package/server/build/src/_modules/peer-instance/_services/pei-dispatch.control-service.js +11 -1
  318. package/server/build/src/_modules/peer-instance/_services/pei-dispatch.control-service.js.map +1 -1
  319. package/server/build/src/_modules/peer-instance/_services/pei-dispatch.control-service.spec.js +65 -0
  320. package/server/build/src/_modules/peer-instance/_services/pei-dispatch.control-service.spec.js.map +1 -1
  321. package/server/build/src/_modules/peer-instance/_services/pei-event-relay.control-service.spec.d.ts +15 -0
  322. package/server/build/src/_modules/peer-instance/_services/pei-event-relay.control-service.spec.d.ts.map +1 -0
  323. package/server/build/src/_modules/peer-instance/_services/pei-event-relay.control-service.spec.js +122 -0
  324. package/server/build/src/_modules/peer-instance/_services/pei-event-relay.control-service.spec.js.map +1 -0
  325. package/server/build/src/_modules/peer-instance/_services/pei-heartbeat.control-service.d.ts.map +1 -1
  326. package/server/build/src/_modules/peer-instance/_services/pei-heartbeat.control-service.js +24 -0
  327. package/server/build/src/_modules/peer-instance/_services/pei-heartbeat.control-service.js.map +1 -1
  328. package/server/build/src/_modules/peer-instance/_services/pei-ws-client.control-service.d.ts +30 -0
  329. package/server/build/src/_modules/peer-instance/_services/pei-ws-client.control-service.d.ts.map +1 -1
  330. package/server/build/src/_modules/peer-instance/_services/pei-ws-client.control-service.js +91 -2
  331. package/server/build/src/_modules/peer-instance/_services/pei-ws-client.control-service.js.map +1 -1
  332. package/server/build/src/_modules/peer-instance/_services/pei-ws-server.control-service.d.ts.map +1 -1
  333. package/server/build/src/_modules/peer-instance/_services/pei-ws-server.control-service.js +10 -0
  334. package/server/build/src/_modules/peer-instance/_services/pei-ws-server.control-service.js.map +1 -1
  335. package/server/build/src/_modules/scheduler/_collections/utils/sch-jitter.util.spec.js +4 -2
  336. package/server/build/src/_modules/scheduler/_collections/utils/sch-jitter.util.spec.js.map +1 -1
  337. package/server/build/src/_modules/setup-config/_models/interfaces/cluster/sc-cluster-diagnostics-result.interface.d.ts +9 -0
  338. package/server/build/src/_modules/setup-config/_models/interfaces/cluster/sc-cluster-diagnostics-result.interface.d.ts.map +1 -1
  339. package/server/build/src/_modules/setup-config/_services/control-services/sc-cluster.control-service.d.ts.map +1 -1
  340. package/server/build/src/_modules/setup-config/_services/control-services/sc-cluster.control-service.js +1 -0
  341. package/server/build/src/_modules/setup-config/_services/control-services/sc-cluster.control-service.js.map +1 -1
  342. package/client-dist/ca.module-MVE3OLDD.js +0 -5
  343. package/client-dist/cc-usage-dashboard.component-F7S4MG67.js +0 -2
  344. package/client-dist/cc-usage-dashboard.component-F7S4MG67.js.map +0 -7
  345. package/client-dist/cc.module-GOXYWYW2.js +0 -4
  346. package/client-dist/cc.module-GOXYWYW2.js.map +0 -7
  347. package/client-dist/chunk-4GPIIB3D.js +0 -2
  348. package/client-dist/chunk-4GPIIB3D.js.map +0 -7
  349. package/client-dist/chunk-EGRHWZRV.js +0 -1
  350. package/client-dist/chunk-EGRHWZRV.js.map +0 -7
  351. package/client-dist/chunk-GZDOO5NB.js +0 -2
  352. package/client-dist/chunk-GZDOO5NB.js.map +0 -7
  353. package/client-dist/chunk-IINV7GMO.js.map +0 -7
  354. package/client-dist/chunk-KYVIZZWW.js.map +0 -7
  355. package/client-dist/chunk-MZLFEWAN.js +0 -2
  356. package/client-dist/chunk-MZLFEWAN.js.map +0 -7
  357. package/client-dist/chunk-QPEW5PI4.js +0 -2
  358. package/client-dist/chunk-QPEW5PI4.js.map +0 -7
  359. package/client-dist/consultant.module-WUUVSVHL.js +0 -3
  360. package/client-dist/err.module-B666YXQT.js +0 -6
  361. package/client-dist/err.module-B666YXQT.js.map +0 -7
  362. package/client-dist/oc.module-CDGBJ6I4.js +0 -3
  363. package/client-dist/orc.module-5S7GBE4E.js +0 -2
  364. package/client-dist/orc.module-5S7GBE4E.js.map +0 -7
  365. package/client-dist/project-source-routed.module-FDCQCUUB.js +0 -2
  366. package/client-dist/session.module-AKETH5O2.js +0 -12
  367. package/client-dist/session.module-AKETH5O2.js.map +0 -7
  368. package/client-dist/styles-KHQAHCL5.css +0 -2
  369. package/client-dist/styles-KHQAHCL5.css.map +0 -7
  370. /package/client-dist/{agent-instances.module-V7DKSWVC.js.map → agent-instances.module-4ADMPXCV.js.map} +0 -0
  371. /package/client-dist/{chunk-CRYF37M7.js.map → chunk-3HJWN4W6.js.map} +0 -0
  372. /package/client-dist/{chunk-D2UUXA6L.js.map → chunk-4EV32FFZ.js.map} +0 -0
  373. /package/client-dist/{chunk-AX7QIINI.js.map → chunk-4H3E32UH.js.map} +0 -0
  374. /package/client-dist/{chunk-OUBNMT7L.js.map → chunk-5NW5UGVZ.js.map} +0 -0
  375. /package/client-dist/{chunk-HLNT234H.js.map → chunk-AM5URSKV.js.map} +0 -0
  376. /package/client-dist/{chunk-SYCUR4MY.js.map → chunk-AMROWQBM.js.map} +0 -0
  377. /package/client-dist/{chunk-PTCJL62W.js.map → chunk-AR6EOT63.js.map} +0 -0
  378. /package/client-dist/{chunk-OLK5MJ4J.js.map → chunk-B25EGDHU.js.map} +0 -0
  379. /package/client-dist/{chunk-4SFV57IQ.js.map → chunk-BQTJHETS.js.map} +0 -0
  380. /package/client-dist/{chunk-XTUQJ3W6.js.map → chunk-COOWEMEW.js.map} +0 -0
  381. /package/client-dist/{chunk-TOFOK5W7.js.map → chunk-E3JXFFHE.js.map} +0 -0
  382. /package/client-dist/{chunk-OQW6FXRJ.js.map → chunk-ESIGVRCK.js.map} +0 -0
  383. /package/client-dist/{chunk-JMZKJLUE.js.map → chunk-EVMDNGBK.js.map} +0 -0
  384. /package/client-dist/{chunk-6GSTJE3R.js.map → chunk-F6VMAVI5.js.map} +0 -0
  385. /package/client-dist/{chunk-VO5ZLOZM.js.map → chunk-GBOES7QW.js.map} +0 -0
  386. /package/client-dist/{chunk-2OAF6FCL.js.map → chunk-GTERKRTR.js.map} +0 -0
  387. /package/client-dist/{chunk-7X22BWF7.js.map → chunk-HD4CODAD.js.map} +0 -0
  388. /package/client-dist/{chunk-2EMFCVYO.js.map → chunk-I3FSMGMK.js.map} +0 -0
  389. /package/client-dist/{chunk-VGTXKD6D.js.map → chunk-IFYHOOVA.js.map} +0 -0
  390. /package/client-dist/{chunk-PFBJ7ZHP.js.map → chunk-IVLMVAVJ.js.map} +0 -0
  391. /package/client-dist/{chunk-3D32XY5M.js.map → chunk-KIKSSJKL.js.map} +0 -0
  392. /package/client-dist/{chunk-U2EBQMSE.js.map → chunk-LPNQ5PRN.js.map} +0 -0
  393. /package/client-dist/{chunk-4JKJRGJX.js.map → chunk-MO37SUK2.js.map} +0 -0
  394. /package/client-dist/{chunk-BC7H7K5F.js.map → chunk-MYVEHPA7.js.map} +0 -0
  395. /package/client-dist/{chunk-JEHOIN7Y.js.map → chunk-N55GOFVU.js.map} +0 -0
  396. /package/client-dist/{chunk-R5WCLLO5.js.map → chunk-NNUHTCXG.js.map} +0 -0
  397. /package/client-dist/{chunk-TP2634XD.js.map → chunk-OKTAADTQ.js.map} +0 -0
  398. /package/client-dist/{chunk-DURLBTAJ.js.map → chunk-ONS7XQYD.js.map} +0 -0
  399. /package/client-dist/{chunk-PG7CJVEP.js.map → chunk-PZN2OI7U.js.map} +0 -0
  400. /package/client-dist/{chunk-C4JDDOQR.js.map → chunk-QUD3BEHN.js.map} +0 -0
  401. /package/client-dist/{chunk-DJVWZQNB.js.map → chunk-QUEYZI42.js.map} +0 -0
  402. /package/client-dist/{chunk-3TMVRWAB.js.map → chunk-RAHCHCWR.js.map} +0 -0
  403. /package/client-dist/{chunk-SQWHJTFE.js.map → chunk-RCCUSGIN.js.map} +0 -0
  404. /package/client-dist/{chunk-GADEZIXI.js.map → chunk-RL5LPTPO.js.map} +0 -0
  405. /package/client-dist/{chunk-5C3KCWYF.js.map → chunk-SDVXPGB7.js.map} +0 -0
  406. /package/client-dist/{chunk-CLQC45GB.js.map → chunk-TNLHQRL7.js.map} +0 -0
  407. /package/client-dist/{chunk-JZHYGU3K.js.map → chunk-TWK7BOB7.js.map} +0 -0
  408. /package/client-dist/{chunk-ILG5WENK.js.map → chunk-U62YECNK.js.map} +0 -0
  409. /package/client-dist/{chunk-RSPVPEQ4.js.map → chunk-UOC6UYZT.js.map} +0 -0
  410. /package/client-dist/{chunk-AI7WKHRQ.js.map → chunk-VDQROW6J.js.map} +0 -0
  411. /package/client-dist/{chunk-3PA6BJES.js.map → chunk-VMXIXZV2.js.map} +0 -0
  412. /package/client-dist/{chunk-CFHQS3UB.js.map → chunk-WRI37SX4.js.map} +0 -0
  413. /package/client-dist/{chunk-MS5OG7JD.js.map → chunk-XLSL262Q.js.map} +0 -0
  414. /package/client-dist/{chunk-3PLWSRB4.js.map → chunk-YN4H6MW2.js.map} +0 -0
  415. /package/client-dist/{chunk-OEEQNIJG.js.map → chunk-Z5FUR5ZW.js.map} +0 -0
  416. /package/client-dist/{chunk-MY75XBDH.js.map → chunk-ZCHMBEHT.js.map} +0 -0
  417. /package/client-dist/{chunk-LIQPVSH3.js.map → chunk-ZPJ6KYMA.js.map} +0 -0
  418. /package/client-dist/{crd.module-IRGVOYD5.js.map → crd.module-2I2BDC3A.js.map} +0 -0
  419. /package/client-dist/{dashboard.module-NPPSZHO6.js.map → dashboard.module-X2A6LOTA.js.map} +0 -0
  420. /package/client-dist/{do.module-GKQTJOXR.js.map → do.module-CJWEKZ4L.js.map} +0 -0
  421. /package/client-dist/{document-library.module-JK3K7QNJ.js.map → document-library.module-WJSFZPA7.js.map} +0 -0
  422. /package/client-dist/{embedding-eval.module-LVESAMPN.js.map → embedding-eval.module-FOALIAQW.js.map} +0 -0
  423. /package/client-dist/{embedding-registry.module-3ECACZZ3.js.map → embedding-registry.module-SS646R4H.js.map} +0 -0
  424. /package/client-dist/{feedback.module-AHG7462C.js.map → feedback.module-T3MZQKXV.js.map} +0 -0
  425. /package/client-dist/{host-runtime-mcp.module-XFUI7B65.js.map → host-runtime-mcp.module-FBZZGQGD.js.map} +0 -0
  426. /package/client-dist/{live-dev-pipeline.module-OMK67DGM.js.map → live-dev-pipeline.module-OKQYFSJL.js.map} +0 -0
  427. /package/client-dist/{logs.module-FWACECVV.js.map → logs.module-SHHOD5XW.js.map} +0 -0
  428. /package/client-dist/{master-control-remote-poc.module-GQ6RMPRB.js.map → master-control-remote-poc.module-ITXHYU5K.js.map} +0 -0
  429. /package/client-dist/{mobile-app.module-YSARX6QC.js.map → mobile-app.module-Q3W3PU4O.js.map} +0 -0
  430. /package/client-dist/{model-registry.module-SJOUSDXZ.js.map → model-registry.module-DGN55LTQ.js.map} +0 -0
  431. /package/client-dist/{project-management.module-LWZLB6VU.js.map → project-management.module-T7NBKKSR.js.map} +0 -0
  432. /package/client-dist/{project-source-routed.module-FDCQCUUB.js.map → project-source-routed.module-YO54LEGN.js.map} +0 -0
  433. /package/client-dist/{scheduler.module-VH647PWD.js.map → scheduler.module-4CMBOTGZ.js.map} +0 -0
  434. /package/client-dist/{setup.module-RRQZ62B2.js.map → setup.module-5T6MCMR4.js.map} +0 -0
  435. /package/client-dist/{terminals.module-QKIQS6FH.js.map → terminals.module-AQO2TVO2.js.map} +0 -0
  436. /package/client-dist/{voice-notes-poc.module-K3FB6OIB.js.map → voice-notes-poc.module-EI2HY7YJ.js.map} +0 -0
  437. /package/client-dist/{wfs.module-JVR53PGJ.js.map → wfs.module-AHRZE5WB.js.map} +0 -0
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["src/app/_modules/orchestrator/_components/orc-detail/orc-detail.component.ts", "src/app/_modules/orchestrator/_components/orc-detail/orc-detail.component.html", "src/app/_modules/orchestrator/_services/orchestrator.data-service.ts", "src/app/_modules/orchestrator/_services/orc.api-service.ts", "src/app/_modules/orchestrator/_services/orc-realtime.control-service.ts", "src/app/_modules/orchestrator/_collections/utils/orc-graph-layout.util.ts", "src/app/_modules/orchestrator/_services/orc-graph.data-service.ts", "src/app/_modules/orchestrator/_components/orc-chat-panel/orc-chat-panel.component.ts", "src/app/_modules/orchestrator/_components/orc-chat-panel/orc-chat-panel.component.html", "src/app/_modules/orchestrator/_collections/utils/orc-message-bubble-mapper.util.ts", "src/app/_modules/orchestrator/_components/orc-graph-modal/orc-graph-modal.component.ts", "src/app/_modules/orchestrator/_components/orc-graph-modal/orc-graph-modal.component.html", "src/app/_modules/orchestrator/_components/orc-mode-switcher/orc-mode-switcher.component.ts", "src/app/_modules/orchestrator/_components/orc-mode-switcher/orc-mode-switcher.component.html", "src/app/_modules/orchestrator/_components/orc-task-queue-panel/orc-task-queue-panel.component.ts", "src/app/_modules/orchestrator/_components/orc-task-queue-panel/orc-task-queue-panel.component.html", "src/app/_modules/orchestrator/_components/orc-workflow-library-panel/orc-workflow-library-panel.component.ts", "src/app/_modules/orchestrator/_components/orc-workflow-library-panel/orc-workflow-library-panel.component.html", "src/app/_modules/orchestrator/_components/orc-list/orc-list.component.ts", "src/app/_modules/orchestrator/_components/orc-list/orc-list.component.html", "src/app/_modules/orchestrator/orc.module.ts"],
4
+ "sourcesContent": ["import { CommonModule } from '@angular/common';\nimport { Component, OnDestroy, OnInit, Signal, inject } from '@angular/core';\nimport { ActivatedRoute, ParamMap, RouterModule } from '@angular/router';\n\nimport { DyFM_Log } from '@futdevpro/fsm-dynamo';\nimport { DyNX_SubscriptionControl } from '@futdevpro/ngx-dynamo';\n\nimport { ExS_InstanceContext_DataService } from '../../../external-sessions/_services/exs-instance-context.data-service';\nimport { S_SessionDetailThreeColumnLayout_Component } from '../../../shared/_components/session-ui/s-session-detail-three-column-layout/s-session-detail-three-column-layout.component';\nimport { ORC_Session_Response, ORC_Task_Response } from '../../_services/orc-api-response.interface';\nimport { ORC_Realtime_ControlService } from '../../_services/orc-realtime.control-service';\nimport { Orchestrator_DataService } from '../../_services/orchestrator.data-service';\nimport { ORC_Graph_DataService } from '../../_services/orc-graph.data-service';\nimport { ORC_ChatPanel_Component } from '../orc-chat-panel/orc-chat-panel.component';\nimport { ORC_GraphModal_Component } from '../orc-graph-modal/orc-graph-modal.component';\nimport { ORC_ModeSwitcher_Component } from '../orc-mode-switcher/orc-mode-switcher.component';\nimport { ORC_TaskQueuePanel_Component } from '../orc-task-queue-panel/orc-task-queue-panel.component';\nimport { ORC_WorkflowLibraryPanel_Component } from '../orc-workflow-library-panel/orc-workflow-library-panel.component';\n\n/**\n * Orchestrator detail komponens — `/orchestrator/:id` route landing page.\n *\n * Session-like layout: chat a közepén (primary), task queue / workflow / info\n * a jobb oldali collapsible sidebar-ban. Mode toggle (Active Loop | Chat Mode)\n * a header-ben.\n *\n * Spec: REQ-ORC-017-B.\n */\n@Component({\n selector: 'app-orc-detail',\n standalone: true,\n imports: [\n CommonModule,\n RouterModule,\n S_SessionDetailThreeColumnLayout_Component,\n ORC_ChatPanel_Component,\n ORC_GraphModal_Component,\n ORC_ModeSwitcher_Component,\n ORC_TaskQueuePanel_Component,\n ORC_WorkflowLibraryPanel_Component,\n ],\n templateUrl: './orc-detail.component.html',\n host: { class: 'flex flex-1 min-h-0 overflow-hidden' },\n})\n/** Orchestrator detail oldal — session-like layout. */\nexport class ORC_Detail_Component extends DyNX_SubscriptionControl implements OnInit, OnDestroy {\n\n private readonly route: ActivatedRoute = inject(ActivatedRoute);\n private readonly orchestrator_DS: Orchestrator_DataService = inject(Orchestrator_DataService);\n private readonly realtime_CS: ORC_Realtime_ControlService = inject(ORC_Realtime_ControlService);\n private readonly graph_DS: ORC_Graph_DataService = inject(ORC_Graph_DataService);\n /** Cycle 970 (REQ-INST-SES-URL-001 Slice E): instance kontextus URL paramból. */\n private readonly peiContext_DS: ExS_InstanceContext_DataService = inject(ExS_InstanceContext_DataService);\n\n readonly current_$: Signal<ORC_Session_Response | null> = this.orchestrator_DS.currentOrchestrator_$;\n readonly tasks_$: Signal<ORC_Task_Response[]> = this.orchestrator_DS.currentTasks_$;\n\n orchestratorId: string | null = null;\n\n /** Sidebar állapot. */\n isSidebarOpen: boolean = true;\n sidebarWidthPx: number = 320;\n isResizing: boolean = false;\n sidebarTab: 'tasks' | 'workflows' | 'info' = 'tasks';\n\n /** Resize tracking. */\n private resizeStartX: number = 0;\n private resizeStartWidth: number = 0;\n private readonly onResizeMove = (ev: PointerEvent): void => this.handleSidebarResizeMove(ev);\n private readonly onResizeEnd = (): void => this.handleSidebarResizeEnd();\n\n ngOnInit(): void {\n // Cycle 970 (REQ-INST-SES-URL-001 Slice E): paramMap subscribe (nem snapshot),\n // mert a dual-param `:ccapId/:id` route refresh-kor a ccapId-t is be kell\n // állítania az aktív instance-ként MIELŐTT az orchestrator-load fut.\n // OC/CC/CA cycle 785b–c azonos minta — `DyNX_SubscriptionControl.addSubscription`.\n this.addSubscription(this.route.paramMap.subscribe((params: ParamMap): void => {\n const id: string = params.get('id') ?? '';\n const ccapIdFromUrl: string = params.get('ccapId') ?? '';\n if (ccapIdFromUrl && this.peiContext_DS.activeCcapId_$() !== ccapIdFromUrl) {\n this.peiContext_DS.selectInstance(ccapIdFromUrl);\n }\n if (id && id !== this.orchestratorId) {\n this.orchestratorId = id;\n void this.orchestrator_DS.refreshCurrent(id);\n void this.orchestrator_DS.refreshCurrentTasks(id);\n void this.orchestrator_DS.refreshCurrentMessages(id);\n this.realtime_CS.subscribeDetail(id);\n }\n }));\n }\n\n override ngOnDestroy(): void {\n super.ngOnDestroy();\n this.realtime_CS.unsubscribeDetail();\n this.orchestrator_DS.clearCurrent();\n document.removeEventListener('pointermove', this.onResizeMove);\n document.removeEventListener('pointerup', this.onResizeEnd);\n }\n\n // -- Lifecycle handlers --\n\n async handleStart(): Promise<void> {\n if (!this.orchestratorId) return;\n try {\n await this.orchestrator_DS.startOrchestrator(this.orchestratorId);\n } catch (error: unknown) {\n DyFM_Log.error('ORC_Detail | start failed', error);\n }\n }\n\n async handlePause(): Promise<void> {\n if (!this.orchestratorId) return;\n try {\n await this.orchestrator_DS.pauseOrchestrator(this.orchestratorId);\n } catch (error: unknown) {\n DyFM_Log.error('ORC_Detail | pause failed', error);\n }\n }\n\n async handleResume(): Promise<void> {\n if (!this.orchestratorId) return;\n try {\n await this.orchestrator_DS.resumeOrchestrator(this.orchestratorId);\n } catch (error: unknown) {\n DyFM_Log.error('ORC_Detail | resume failed', error);\n }\n }\n\n async handleStop(): Promise<void> {\n if (!this.orchestratorId) return;\n try {\n await this.orchestrator_DS.stopOrchestrator(this.orchestratorId);\n } catch (error: unknown) {\n DyFM_Log.error('ORC_Detail | stop failed', error);\n }\n }\n\n async handleConfirmBootstrap(): Promise<void> {\n if (!this.orchestratorId) return;\n try {\n await this.orchestrator_DS.confirmBootstrap(this.orchestratorId);\n } catch (error: unknown) {\n DyFM_Log.error('ORC_Detail | confirmBootstrap failed', error);\n }\n }\n\n /** Mode switch (Active Loop ↔ Chat Mode). */\n async handleModeSwitch(mode: string): Promise<void> {\n if (!this.orchestratorId) return;\n try {\n await this.orchestrator_DS.switchMode(this.orchestratorId, mode);\n } catch (error: unknown) {\n DyFM_Log.error('ORC_Detail | switchMode failed', error);\n }\n }\n\n /** Graph modal megnyitása. */\n handleOpenGraph(): void {\n if (!this.orchestratorId) return;\n this.graph_DS.openGraph(this.orchestratorId);\n }\n\n /** Sidebar toggle. */\n handleToggleSidebar(): void {\n this.isSidebarOpen = !this.isSidebarOpen;\n }\n\n // -- Sidebar resize --\n\n handleSidebarResizeStart(event: PointerEvent): void {\n this.isResizing = true;\n this.resizeStartX = event.clientX;\n this.resizeStartWidth = this.sidebarWidthPx;\n document.addEventListener('pointermove', this.onResizeMove);\n document.addEventListener('pointerup', this.onResizeEnd);\n }\n\n private handleSidebarResizeMove(event: PointerEvent): void {\n const delta: number = this.resizeStartX - event.clientX;\n this.sidebarWidthPx = Math.max(200, Math.min(600, this.resizeStartWidth + delta));\n }\n\n private handleSidebarResizeEnd(): void {\n this.isResizing = false;\n document.removeEventListener('pointermove', this.onResizeMove);\n document.removeEventListener('pointerup', this.onResizeEnd);\n }\n}\n", "@if (current_$(); as orc) {\n <app-s-session-detail-three-column-layout\n [isStartOpen]=\"false\"\n [isEndOpen]=\"isSidebarOpen\"\n [endWidthPx]=\"sidebarWidthPx\"\n [isResizing]=\"isResizing\"\n (endResizeStart)=\"handleSidebarResizeStart($event)\">\n\n <div sDetailColumnMain class=\"flex flex-col flex-1 min-h-0 overflow-hidden\">\n\n <div class=\"flex items-center gap-3 px-4 py-3 border-b border-slate-800 bg-slate-900 shrink-0\">\n <a routerLink=\"/orchestrator\" class=\"text-cyan-400 hover:text-cyan-300 text-sm\">←</a>\n <div class=\"min-w-0\">\n <h1 class=\"text-lg font-bold text-cyan-300 truncate\">{{ orc.name }}</h1>\n <p class=\"text-xs text-slate-500 font-mono truncate\">{{ orc._id }}</p>\n </div>\n\n <span\n class=\"px-2 py-0.5 rounded text-xs font-bold shrink-0\"\n [class.bg-green-900]=\"orc.status === 'active'\"\n [class.text-green-300]=\"orc.status === 'active'\"\n [class.bg-yellow-900]=\"orc.status === 'paused'\"\n [class.text-yellow-300]=\"orc.status === 'paused'\"\n [class.bg-cyan-900]=\"orc.status === 'waiting-for-user' || orc.status === 'bootstrap'\"\n [class.text-cyan-300]=\"orc.status === 'waiting-for-user' || orc.status === 'bootstrap'\"\n [class.bg-red-900]=\"orc.status === 'failed'\"\n [class.text-red-300]=\"orc.status === 'failed'\"\n [class.bg-slate-700]=\"orc.status === 'stopped' || orc.status === 'initializing'\"\n [class.text-slate-300]=\"orc.status === 'stopped' || orc.status === 'initializing'\">\n {{ orc.status }}\n </span>\n\n <app-orc-mode-switcher\n [mode_$]=\"orc.operationMode\"\n (modeChanged)=\"handleModeSwitch($event)\" />\n\n <span class=\"flex-1\"></span>\n\n <div class=\"flex gap-1 shrink-0\">\n @if (orc.status === 'initializing' || orc.status === 'paused' || orc.status === 'stopped') {\n <button class=\"px-3 py-1 bg-green-700 hover:bg-green-600 text-white rounded text-xs\" (click)=\"handleStart()\">Start</button>\n }\n @if (orc.status === 'active') {\n <button class=\"px-3 py-1 bg-yellow-700 hover:bg-yellow-600 text-white rounded text-xs\" (click)=\"handlePause()\">Pause</button>\n }\n @if (orc.status === 'paused') {\n <button class=\"px-3 py-1 bg-green-700 hover:bg-green-600 text-white rounded text-xs\" (click)=\"handleResume()\">Resume</button>\n }\n @if (orc.status !== 'stopped') {\n <button class=\"px-3 py-1 bg-red-800 hover:bg-red-700 text-white rounded text-xs\" (click)=\"handleStop()\">Stop</button>\n }\n </div>\n\n <button\n class=\"px-2 py-1 border border-cyan-700 text-cyan-400 hover:bg-cyan-900/30 rounded text-xs transition-colors shrink-0\"\n (click)=\"handleOpenGraph()\" title=\"Flow Graph\">\n Graph\n </button>\n <button\n class=\"px-2 py-1 border border-slate-600 text-slate-400 hover:bg-slate-700/50 rounded text-xs transition-colors shrink-0\"\n (click)=\"handleToggleSidebar()\" title=\"Task queue sidebar\">\n {{ isSidebarOpen ? '▶' : '◀' }}\n </button>\n </div>\n\n @if (orc.status === 'waiting-for-user') {\n <div class=\"bg-cyan-950 border-b border-cyan-500 px-4 py-3 flex items-center justify-between animate-pulse shrink-0\">\n <div>\n <h3 class=\"text-cyan-300 font-semibold text-sm\">Bootstrap — user jóváhagy��s szükséges</h3>\n <p class=\"text-xs text-cyan-200 mt-1\">Nézd át a task-listát, és kattints az Elfogadom gombra.</p>\n </div>\n <button\n class=\"px-4 py-2 bg-cyan-600 hover:bg-cyan-500 text-white font-bold rounded transition whitespace-nowrap text-sm\"\n (click)=\"handleConfirmBootstrap()\">\n Elfogadom\n </button>\n </div>\n }\n\n <app-orc-chat-panel class=\"flex-1 min-h-0\" [orchestratorId]=\"orchestratorId ?? ''\" />\n </div>\n\n <div sDetailColumnEnd class=\"flex flex-col min-h-0 overflow-hidden\">\n <div class=\"flex border-b border-slate-800 shrink-0\">\n <button\n class=\"flex-1 px-3 py-2 text-xs font-semibold transition-colors\"\n [class.text-cyan-300]=\"sidebarTab === 'tasks'\"\n [class.border-b-2]=\"sidebarTab === 'tasks'\"\n [class.border-cyan-400]=\"sidebarTab === 'tasks'\"\n [class.text-slate-500]=\"sidebarTab !== 'tasks'\"\n (click)=\"sidebarTab = 'tasks'\">\n Tasks ({{ tasks_$().length }})\n </button>\n <button\n class=\"flex-1 px-3 py-2 text-xs font-semibold transition-colors\"\n [class.text-cyan-300]=\"sidebarTab === 'workflows'\"\n [class.border-b-2]=\"sidebarTab === 'workflows'\"\n [class.border-cyan-400]=\"sidebarTab === 'workflows'\"\n [class.text-slate-500]=\"sidebarTab !== 'workflows'\"\n (click)=\"sidebarTab = 'workflows'\">\n Workflows\n </button>\n <button\n class=\"flex-1 px-3 py-2 text-xs font-semibold transition-colors\"\n [class.text-cyan-300]=\"sidebarTab === 'info'\"\n [class.border-b-2]=\"sidebarTab === 'info'\"\n [class.border-cyan-400]=\"sidebarTab === 'info'\"\n [class.text-slate-500]=\"sidebarTab !== 'info'\"\n (click)=\"sidebarTab = 'info'\">\n Info\n </button>\n </div>\n\n <div class=\"flex-1 overflow-y-auto min-h-0\">\n @if (sidebarTab === 'tasks') {\n <app-orc-task-queue-panel [tasks_$]=\"tasks_$\" />\n }\n @if (sidebarTab === 'workflows') {\n <app-orc-workflow-library-panel [orchestratorId]=\"orchestratorId ?? ''\" />\n }\n @if (sidebarTab === 'info') {\n <div class=\"p-3 space-y-2 text-sm\">\n <div>\n <span class=\"text-xs text-slate-500 block\">Scope</span>\n <span class=\"text-slate-200\">{{ orc.scope }}</span>\n </div>\n <div>\n <span class=\"text-xs text-slate-500 block\">Projekt</span>\n <span class=\"text-slate-200 font-mono text-xs\">{{ orc.projectId || '—' }}</span>\n </div>\n <div>\n <span class=\"text-xs text-slate-500 block\">LLM</span>\n <span class=\"text-slate-200\">{{ orc.providerName }} / {{ orc.model }}</span>\n </div>\n <div>\n <span class=\"text-xs text-slate-500 block\">Iteráció</span>\n <span class=\"text-slate-200 font-mono\">{{ orc.iterationCount }}</span>\n </div>\n <div>\n <span class=\"text-xs text-slate-500 block\">Max parallel</span>\n <span class=\"text-slate-200 font-mono\">{{ orc.maxParallelism }}</span>\n </div>\n <div>\n <span class=\"text-xs text-slate-500 block\">Poll (s)</span>\n <span class=\"text-slate-200 font-mono\">{{ orc.pollIntervalSeconds }}</span>\n </div>\n <div>\n <span class=\"text-xs text-slate-500 block\">Mode</span>\n <span class=\"text-slate-200\">{{ orc.operationMode }}</span>\n </div>\n </div>\n }\n </div>\n </div>\n\n </app-s-session-detail-three-column-layout>\n} @else {\n <div class=\"flex items-center justify-center h-full text-slate-500\">\n Töltődik az orchestrator…\n </div>\n}\n\n<app-orc-graph-modal></app-orc-graph-modal>\n", "import { Injectable, computed, inject, signal, Signal, WritableSignal } from '@angular/core';\n\nimport { DyFM_Log } from '@futdevpro/fsm-dynamo';\n\nimport { ORC_ApiService } from './orc.api-service';\nimport {\n ORC_ConversationMessage_Response,\n ORC_Session_Response,\n ORC_Task_Response,\n ORC_UserQuestion_Response,\n} from './orc-api-response.interface';\n\n/**\n * Orchestrator data-service (kliens SSOT) — signals-alapú state-kezelés.\n * Spec: REQ-ORC-013.\n *\n * A komponensek ezen a service-en keresztül érik el a listát / detail-t / task-okat,\n * socket event érkezésekor a realtime-service hívja a `refresh*` metódusokat.\n */\n@Injectable({ providedIn: 'root' })\nexport class Orchestrator_DataService {\n\n private readonly orc_AS: ORC_ApiService = inject(ORC_ApiService);\n\n private readonly orchestratorListRaw_$: WritableSignal<ORC_Session_Response[]> = signal([]);\n private readonly currentOrchestratorRaw_$: WritableSignal<ORC_Session_Response | null> = signal(null);\n private readonly currentTasksRaw_$: WritableSignal<ORC_Task_Response[]> = signal([]);\n private readonly currentMessagesRaw_$: WritableSignal<ORC_ConversationMessage_Response[]> = signal([]);\n private readonly isResponseGeneratingRaw_$: WritableSignal<boolean> = signal(false);\n\n /** Olvasható signal — Orchestrator lista. */\n readonly orchestratorList_$: Signal<ORC_Session_Response[]> = this.orchestratorListRaw_$.asReadonly();\n\n /** Olvasható signal — épp megnyitott orchestrator. */\n readonly currentOrchestrator_$: Signal<ORC_Session_Response | null> = this.currentOrchestratorRaw_$.asReadonly();\n\n /** Olvasható signal — épp megnyitott orchestrator task-jai. */\n readonly currentTasks_$: Signal<ORC_Task_Response[]> = this.currentTasksRaw_$.asReadonly();\n\n /** Olvasható signal — épp megnyitott orchestrator chat üzenetei. */\n readonly currentMessages_$: Signal<ORC_ConversationMessage_Response[]> = this.currentMessagesRaw_$.asReadonly();\n\n /** Olvasható signal — passive mód typing indicator (orchestrator válaszol). */\n readonly isResponseGenerating_$: Signal<boolean> = this.isResponseGeneratingRaw_$.asReadonly();\n\n /** Computed — aktív orchestrator-ok száma. */\n readonly activeCount_$: Signal<number> = computed((): number =>\n this.orchestratorList_$().filter(\n (o: ORC_Session_Response): boolean =>\n o.status === 'active' || o.status === 'bootstrap' || o.status === 'waiting-for-user',\n ).length,\n );\n\n /** Lista lekérdezés + state frissítés. */\n async refreshList(): Promise<void> {\n try {\n const response: { orchestrators: ORC_Session_Response[] } =\n await this.orc_AS.listOrchestrators();\n this.orchestratorListRaw_$.set(response.orchestrators);\n } catch (error: unknown) {\n DyFM_Log.error('Orchestrator_DataService | refreshList failed', error);\n }\n }\n\n /** Egy orchestrator lekérdezés + state frissítés (detail page). */\n async refreshCurrent(id: string): Promise<void> {\n try {\n const response: { orchestrator: ORC_Session_Response | null } =\n await this.orc_AS.getOrchestrator(id);\n this.currentOrchestratorRaw_$.set(response.orchestrator);\n } catch (error: unknown) {\n DyFM_Log.error('Orchestrator_DataService | refreshCurrent failed', error);\n }\n }\n\n /** Current orchestrator task-ok frissítése. */\n async refreshCurrentTasks(id: string): Promise<void> {\n try {\n const response: { tasks: ORC_Task_Response[] } = await this.orc_AS.listTasks(id);\n this.currentTasksRaw_$.set(response.tasks);\n } catch (error: unknown) {\n DyFM_Log.error('Orchestrator_DataService | refreshCurrentTasks failed', error);\n }\n }\n\n /** Új orchestrator létrehozás + list refresh. */\n async createOrchestrator(params: {\n name: string;\n scope: string;\n projectId?: string;\n projectIds?: string[];\n specialization?: string;\n providerName?: string;\n model?: string;\n }): Promise<ORC_Session_Response> {\n const response: { orchestrator: ORC_Session_Response } =\n await this.orc_AS.createOrchestrator(params);\n await this.refreshList();\n return response.orchestrator;\n }\n\n /** Lifecycle wrapperek — mindegyik után lista-frissítés. */\n async startOrchestrator(id: string): Promise<void> {\n await this.orc_AS.startOrchestrator(id);\n await Promise.all([this.refreshList(), this.refreshCurrent(id)]);\n }\n\n async pauseOrchestrator(id: string): Promise<void> {\n await this.orc_AS.pauseOrchestrator(id);\n await Promise.all([this.refreshList(), this.refreshCurrent(id)]);\n }\n\n async resumeOrchestrator(id: string): Promise<void> {\n await this.orc_AS.resumeOrchestrator(id);\n await Promise.all([this.refreshList(), this.refreshCurrent(id)]);\n }\n\n async stopOrchestrator(id: string): Promise<void> {\n await this.orc_AS.stopOrchestrator(id);\n await Promise.all([this.refreshList(), this.refreshCurrent(id)]);\n }\n\n async confirmBootstrap(id: string): Promise<void> {\n await this.orc_AS.confirmBootstrap(id);\n await Promise.all([this.refreshList(), this.refreshCurrent(id)]);\n }\n\n /** Operation mode váltás. */\n async switchMode(id: string, mode: string): Promise<void> {\n await this.orc_AS.switchMode(id, mode);\n await this.refreshCurrent(id);\n }\n\n /** Current orchestrator chat üzenetek frissítése. */\n async refreshCurrentMessages(id: string): Promise<void> {\n try {\n const response: { messages: ORC_ConversationMessage_Response[] } =\n await this.orc_AS.listMessages(id, 100);\n this.currentMessagesRaw_$.set(response.messages);\n } catch (error: unknown) {\n DyFM_Log.error('Orchestrator_DataService | refreshCurrentMessages failed', error);\n }\n }\n\n /** Typing indicator vezérlés (realtime service-ből hívva). */\n setResponseGenerating(value: boolean): void {\n this.isResponseGeneratingRaw_$.set(value);\n }\n\n /** Clear current detail (pl. oldal-elhagyásnál). */\n clearCurrent(): void {\n this.currentOrchestratorRaw_$.set(null);\n this.currentTasksRaw_$.set([]);\n this.currentMessagesRaw_$.set([]);\n this.isResponseGeneratingRaw_$.set(false);\n }\n\n /** Workflow-lista delegálás (panel-komponens az API-t nem éri el közvetlenül). */\n async listWorkflows(id: string): Promise<Array<{ id: string; name: string; summary: string }>> {\n try {\n const response = await this.orc_AS.listWorkflows(id);\n return response.workflows;\n } catch (error: unknown) {\n DyFM_Log.error('Orchestrator_DataService | listWorkflows failed', error);\n return [];\n }\n }\n\n /** Workflow teljes szöveg delegálás. */\n async getWorkflowById(id: string, wfId: string): Promise<{ id: string; filename: string; rawText: string; summary: string } | null> {\n try {\n const response = await this.orc_AS.getWorkflowById(id, wfId);\n return response.workflow;\n } catch (error: unknown) {\n DyFM_Log.error('Orchestrator_DataService | getWorkflowById failed', error);\n return null;\n }\n }\n\n /** Chat: üzenet-lista. */\n async listMessages(id: string, limit?: number): Promise<ORC_ConversationMessage_Response[]> {\n try {\n const response = await this.orc_AS.listMessages(id, limit);\n return response.messages;\n } catch (error: unknown) {\n DyFM_Log.error('Orchestrator_DataService | listMessages failed', error);\n return [];\n }\n }\n\n /** Chat: user üzenet küldés. */\n async postUserMessage(id: string, rawContent: string): Promise<ORC_ConversationMessage_Response | null> {\n try {\n const response = await this.orc_AS.postUserMessage(id, rawContent);\n return response.message;\n } catch (error: unknown) {\n DyFM_Log.error('Orchestrator_DataService | postUserMessage failed', error);\n return null;\n }\n }\n\n /** Kérdés-lista (open-only). */\n async listQuestions(id: string, openOnly: boolean): Promise<ORC_UserQuestion_Response[]> {\n try {\n const response = await this.orc_AS.listQuestions(id, openOnly);\n return response.questions;\n } catch (error: unknown) {\n DyFM_Log.error('Orchestrator_DataService | listQuestions failed', error);\n return [];\n }\n }\n\n /** Válasz kérdésre. */\n async submitQuestionAnswer(id: string, questionId: string, answer: string): Promise<ORC_UserQuestion_Response | null> {\n try {\n const response = await this.orc_AS.submitQuestionAnswer(id, questionId, answer);\n return response.question;\n } catch (error: unknown) {\n DyFM_Log.error('Orchestrator_DataService | submitQuestionAnswer failed', error);\n return null;\n }\n }\n\n /** Globális summary (dashboard widget — direkt API-hívás helyett data-service-en át). */\n async getGlobalSummary(): Promise<{ totalCount: number; byStatus: Record<string, number>; byScope: Record<string, number>; lastActivityAt: string | null } | null> {\n try {\n const response = await this.orc_AS.getGlobalSummary();\n return response.summary;\n } catch (error: unknown) {\n DyFM_Log.error('Orchestrator_DataService | getGlobalSummary failed', error);\n return null;\n }\n }\n}\n", "import { HttpClient } from '@angular/common/http';\nimport { Injectable, inject } from '@angular/core';\n\nimport { firstValueFrom } from 'rxjs';\n\nimport { environment } from '../../../../environments/environment';\nimport {\n ORC_ConversationMessage_Response,\n ORC_Session_Response,\n ORC_Task_Response,\n ORC_UserQuestion_Response,\n} from './orc-api-response.interface';\n\n/**\n * Orchestrator API service — szerver REST végpontok HTTP kliense.\n * Spec: REQ-ORC-016-A.\n */\n@Injectable({ providedIn: 'root' })\nexport class ORC_ApiService {\n\n private readonly http: HttpClient = inject(HttpClient);\n private readonly baseUrl: string = `${environment.api.baseUrl}/orchestrator`;\n\n /** Új orchestrator létrehozás. */\n createOrchestrator(params: {\n name: string;\n scope: string;\n projectId?: string;\n projectIds?: string[];\n specialization?: string;\n providerName?: string;\n model?: string;\n maxParallelism?: number;\n pollIntervalSeconds?: number;\n }): Promise<{ orchestrator: ORC_Session_Response }> {\n return firstValueFrom(\n this.http.post<{ orchestrator: ORC_Session_Response }>(this.baseUrl, params),\n );\n }\n\n /** Orchestrator lista (filter: projectId, scope, status). */\n listOrchestrators(params: {\n projectId?: string;\n scope?: string;\n status?: string;\n } = {}): Promise<{ orchestrators: ORC_Session_Response[] }> {\n const queryParts: string[] = [];\n if (params.projectId) queryParts.push(`projectId=${encodeURIComponent(params.projectId)}`);\n if (params.scope) queryParts.push(`scope=${encodeURIComponent(params.scope)}`);\n if (params.status) queryParts.push(`status=${encodeURIComponent(params.status)}`);\n const query: string = queryParts.length ? `?${queryParts.join('&')}` : '';\n return firstValueFrom(\n this.http.get<{ orchestrators: ORC_Session_Response[] }>(`${this.baseUrl}${query}`),\n );\n }\n\n /** Egy orchestrator részletei. */\n getOrchestrator(id: string): Promise<{ orchestrator: ORC_Session_Response | null }> {\n return firstValueFrom(\n this.http.get<{ orchestrator: ORC_Session_Response | null }>(`${this.baseUrl}/${id}`),\n );\n }\n\n /** Indítás. */\n startOrchestrator(id: string): Promise<{ orchestrator: ORC_Session_Response }> {\n return firstValueFrom(\n this.http.post<{ orchestrator: ORC_Session_Response }>(`${this.baseUrl}/${id}/start`, {}),\n );\n }\n\n /** Szünet. */\n pauseOrchestrator(id: string): Promise<{ success: boolean }> {\n return firstValueFrom(\n this.http.post<{ success: boolean }>(`${this.baseUrl}/${id}/pause`, {}),\n );\n }\n\n /** Folytatás. */\n resumeOrchestrator(id: string): Promise<{ success: boolean }> {\n return firstValueFrom(\n this.http.post<{ success: boolean }>(`${this.baseUrl}/${id}/resume`, {}),\n );\n }\n\n /** Leállítás. */\n stopOrchestrator(id: string): Promise<{ success: boolean }> {\n return firstValueFrom(\n this.http.post<{ success: boolean }>(`${this.baseUrl}/${id}/stop`, {}),\n );\n }\n\n /** Task lista. */\n listTasks(id: string, status?: string): Promise<{ tasks: ORC_Task_Response[] }> {\n const query: string = status ? `?status=${encodeURIComponent(status)}` : '';\n return firstValueFrom(\n this.http.get<{ tasks: ORC_Task_Response[] }>(`${this.baseUrl}/${id}/tasks${query}`),\n );\n }\n\n /** Chat üzenet lista. */\n listMessages(id: string, limit?: number): Promise<{ messages: ORC_ConversationMessage_Response[] }> {\n const query: string = limit ? `?limit=${limit}` : '';\n return firstValueFrom(\n this.http.get<{ messages: ORC_ConversationMessage_Response[] }>(`${this.baseUrl}/${id}/messages${query}`),\n );\n }\n\n /** User üzenet küldés. */\n postUserMessage(id: string, rawContent: string): Promise<{ message: ORC_ConversationMessage_Response }> {\n return firstValueFrom(\n this.http.post<{ message: ORC_ConversationMessage_Response }>(\n `${this.baseUrl}/${id}/messages`,\n { rawContent: rawContent },\n ),\n );\n }\n\n /** Open questions. */\n listQuestions(id: string, openOnly: boolean = false): Promise<{ questions: ORC_UserQuestion_Response[] }> {\n const query: string = openOnly ? '?openOnly=true' : '';\n return firstValueFrom(\n this.http.get<{ questions: ORC_UserQuestion_Response[] }>(`${this.baseUrl}/${id}/questions${query}`),\n );\n }\n\n /** Bootstrap-eredmény user elfogadás. */\n confirmBootstrap(id: string): Promise<{ success: boolean }> {\n return firstValueFrom(\n this.http.post<{ success: boolean }>(`${this.baseUrl}/${id}/bootstrap/confirm`, {}),\n );\n }\n\n /** Válasz kérdésre. */\n submitQuestionAnswer(id: string, questionId: string, answer: string): Promise<{ question: ORC_UserQuestion_Response | null }> {\n return firstValueFrom(\n this.http.post<{ question: ORC_UserQuestion_Response | null }>(\n `${this.baseUrl}/${id}/questions/${questionId}/answer`,\n { answer: answer },\n ),\n );\n }\n\n /** Operation mode váltás (active ↔ passive). */\n switchMode(id: string, mode: string): Promise<{ success: boolean }> {\n return firstValueFrom(\n this.http.post<{ success: boolean }>(`${this.baseUrl}/${id}/mode`, { mode: mode }),\n );\n }\n\n /** Globális dashboard summary. */\n getGlobalSummary(): Promise<{ summary: { totalCount: number; byStatus: Record<string, number>; byScope: Record<string, number>; lastActivityAt: string | null } }> {\n return firstValueFrom(\n this.http.get<{ summary: { totalCount: number; byStatus: Record<string, number>; byScope: Record<string, number>; lastActivityAt: string | null } }>(\n `${this.baseUrl}/summary`,\n ),\n );\n }\n\n /** Workflow lista. */\n listWorkflows(id: string): Promise<{ workflows: Array<{ id: string; name: string; summary: string }> }> {\n return firstValueFrom(\n this.http.get<{ workflows: Array<{ id: string; name: string; summary: string }> }>(\n `${this.baseUrl}/${id}/workflows`,\n ),\n );\n }\n\n /** Workflow teljes szöveg. */\n getWorkflowById(id: string, wfId: string): Promise<{ workflow: { id: string; filename: string; rawText: string; summary: string } | null }> {\n return firstValueFrom(\n this.http.get<{ workflow: { id: string; filename: string; rawText: string; summary: string } | null }>(\n `${this.baseUrl}/${id}/workflows/${wfId}`,\n ),\n );\n }\n\n /** Batch lista. */\n listBatches(id: string): Promise<{ batches: unknown[] }> {\n return firstValueFrom(\n this.http.get<{ batches: unknown[] }>(`${this.baseUrl}/${id}/batches`),\n );\n }\n\n /** Decision audit log. */\n listDecisions(id: string, limit?: number): Promise<{ decisions: unknown[] }> {\n const query: string = limit ? `?limit=${limit}` : '';\n return firstValueFrom(\n this.http.get<{ decisions: unknown[] }>(`${this.baseUrl}/${id}/decisions${query}`),\n );\n }\n}\n", "import { Injectable, OnDestroy, inject } from '@angular/core';\n\nimport { Subscription } from 'rxjs';\nimport { filter } from 'rxjs/operators';\n\nimport { CCAP_SocketEventEnvelope_Interface } from '../../../_services/control-services/socket.control-service.interface';\nimport { CCAP_Socket_ControlService } from '../../../_services/control-services/ccap-socket.control-service';\nimport { Orchestrator_DataService } from './orchestrator.data-service';\n\nconst GLOBAL_EVENTS: Set<string> = new Set([\n 'orc:created',\n 'orc:statusChanged',\n 'orc:started',\n 'orc:paused',\n 'orc:resumed',\n 'orc:stopped',\n 'orc:waitingForUser',\n]);\n\nconst DETAIL_EVENTS: Set<string> = new Set([\n 'orc:statusChanged',\n 'orc:modeChanged',\n 'orc:iterationStarted',\n 'orc:iterationCompleted',\n 'orc:decisionAdded',\n 'orc:taskCreated',\n 'orc:taskStatusChanged',\n 'orc:taskCompleted',\n 'orc:batchStarted',\n 'orc:batchCompleted',\n 'orc:agentLaunched',\n 'orc:agentCompleted',\n 'orc:userQuestionAsked',\n 'orc:userQuestionAnswered',\n 'orc:messageAdded',\n 'orc:bootstrapCompleted',\n 'orc:responseStarted',\n 'orc:responseCompleted',\n 'orc:responseToolCall',\n 'orc:responseToolResult',\n]);\n\n/** Passive response event-ek — typing indicator és message refresh. */\nconst RESPONSE_MESSAGE_EVENTS: Set<string> = new Set([\n 'orc:messageAdded',\n 'orc:responseToolCall',\n 'orc:responseToolResult',\n]);\n\n/**\n * Orchestrator realtime control-service — socket event feliratkozás az összes\n * `orc:*` eseményre és a data-service state-ének szinkronban tartása.\n *\n * Spec: REQ-ORC-016-B, REQ-ORC-013-F.\n */\n@Injectable({ providedIn: 'root' })\nexport class ORC_Realtime_ControlService implements OnDestroy {\n\n private readonly ccapSocket_CS: CCAP_Socket_ControlService = inject(CCAP_Socket_ControlService);\n private readonly orchestrator_DS: Orchestrator_DataService = inject(Orchestrator_DataService);\n\n private globalSub: Subscription | null = null;\n private detailSub: Subscription | null = null;\n private responseSub: Subscription | null = null;\n private currentOrchestratorId: string | null = null;\n\n /** Globális event-feliratkozás (lista-oldalhoz). Idempotens. */\n subscribeGlobal(): void {\n if (this.globalSub) return;\n this.globalSub = this.ccapSocket_CS.event$\n .pipe(filter(\n (envelope: CCAP_SocketEventEnvelope_Interface): boolean => GLOBAL_EVENTS.has(envelope.event),\n ))\n .subscribe(async (): Promise<void> => {\n await this.orchestrator_DS.refreshList();\n });\n }\n\n /**\n * Detail-oldal feliratkozás egy konkrét orchestrator-ra.\n * Client-side filter a payload.orchestratorId alapján.\n */\n subscribeDetail(orchestratorId: string): void {\n this.unsubscribeDetail();\n this.currentOrchestratorId = orchestratorId;\n this.detailSub = this.ccapSocket_CS.event$\n .pipe(filter(\n (envelope: CCAP_SocketEventEnvelope_Interface): boolean =>\n DETAIL_EVENTS.has(envelope.event)\n && this.isForCurrent(envelope.payload),\n ))\n .subscribe(async (envelope: CCAP_SocketEventEnvelope_Interface): Promise<void> => {\n const id: string | null = this.currentOrchestratorId;\n if (!id) return;\n\n // Typing indicator kezelés\n if (envelope.event === 'orc:responseStarted') {\n this.orchestrator_DS.setResponseGenerating(true);\n }\n if (envelope.event === 'orc:responseCompleted') {\n this.orchestrator_DS.setResponseGenerating(false);\n }\n\n await Promise.all([\n this.orchestrator_DS.refreshCurrent(id),\n this.orchestrator_DS.refreshCurrentTasks(id),\n ]);\n });\n\n // Message-specifikus events — chat üzenetek frissítése\n this.responseSub = this.ccapSocket_CS.event$\n .pipe(filter(\n (envelope: CCAP_SocketEventEnvelope_Interface): boolean =>\n RESPONSE_MESSAGE_EVENTS.has(envelope.event)\n && this.isForCurrent(envelope.payload),\n ))\n .subscribe(async (): Promise<void> => {\n const id: string | null = this.currentOrchestratorId;\n if (!id) return;\n await this.orchestrator_DS.refreshCurrentMessages(id);\n });\n }\n\n /** Detail-feliratkozás megszüntetése (komponens unmount). */\n unsubscribeDetail(): void {\n this.detailSub?.unsubscribe();\n this.responseSub?.unsubscribe();\n this.detailSub = null;\n this.responseSub = null;\n this.currentOrchestratorId = null;\n }\n\n /** Payload-ellenőrzés: a current orchestrator event-je-e. */\n private isForCurrent(payload: Record<string, unknown>): boolean {\n if (!this.currentOrchestratorId) return false;\n return payload?.['orchestratorId'] === this.currentOrchestratorId;\n }\n\n ngOnDestroy(): void {\n this.globalSub?.unsubscribe();\n this.detailSub?.unsubscribe();\n this.responseSub?.unsubscribe();\n this.globalSub = null;\n this.detailSub = null;\n this.responseSub = null;\n }\n}\n", "import { Ses_GraphEdgeCategory_Type } from '../../../session/_collections/graph/ses-graph-edge-category.type-enum';\nimport { Ses_GraphNodeCategory_Type } from '../../../session/_collections/graph/ses-graph-node-category.type-enum';\nimport {\n Ses_GraphEdge_Interface,\n Ses_GraphLayout_Interface,\n Ses_GraphNode_Interface,\n Ses_GraphViewBox_Interface,\n} from '../../../session/_collections/graph/ses-graph-node.interface';\nimport {\n SES_GRAPH_MILESTONE_NODE_HEIGHT,\n SES_GRAPH_MILESTONE_NODE_WIDTH,\n SES_GRAPH_PADDING,\n SES_GRAPH_PHASE_NODE_HEIGHT,\n SES_GRAPH_PHASE_NODE_WIDTH,\n SES_GRAPH_VERTICAL_GAP,\n} from '../../../session/_collections/consts/graph/ses-graph-layout.const';\nimport { Ses_GraphLayout_Util } from '../../../session/_collections/utils/graph/ses-graph-layout.util';\n\n/** Orchestrator fázis definíciók a skeleton layout-hoz. */\ninterface OrcPhaseDefinition_Interface {\n /** Node ID. */\n id: string;\n /** Megjelenítendő felirat. */\n label: string;\n /** Fázis azonosító (ORC_RunPhase_Type érték). */\n phase: string;\n /** Vizuális kategória. */\n category: Ses_GraphNodeCategory_Type;\n}\n\n/** Orchestrator fázis adatok a skeleton-hez. */\nconst ORC_PHASES: OrcPhaseDefinition_Interface[] = [\n { id: 'orc-wake', label: 'Wake', phase: 'wake', category: Ses_GraphNodeCategory_Type.milestone },\n { id: 'orc-collect', label: 'Collect', phase: 'collect', category: Ses_GraphNodeCategory_Type.phase },\n { id: 'orc-analyze', label: 'Analyze', phase: 'analyze', category: Ses_GraphNodeCategory_Type.llmCall },\n { id: 'orc-sync-tasks', label: 'Sync Tasks', phase: 'sync-tasks', category: Ses_GraphNodeCategory_Type.phase },\n { id: 'orc-decide-next', label: 'Decide Next', phase: 'decide-next', category: Ses_GraphNodeCategory_Type.llmCall },\n { id: 'orc-execute', label: 'Execute', phase: 'execute', category: Ses_GraphNodeCategory_Type.phase },\n { id: 'orc-report', label: 'Report', phase: 'report', category: Ses_GraphNodeCategory_Type.phase },\n { id: 'orc-sleep', label: 'Sleep', phase: 'sleep', category: Ses_GraphNodeCategory_Type.milestone },\n];\n\n/**\n * Orchestrator graph layout statikus utility.\n * Az orchestrator run flow fázisainak skeleton layout-ját építi fel.\n * A shared `Ses_GraphLayout_Util` createNode/createEdge/computeEdgePath metódusait használja.\n */\nexport class ORC_GraphLayout_Util {\n\n /**\n * Orchestrator skeleton graph layout felépítése: 8 fázis lineárisan (top-to-bottom).\n * wake → collect → analyze → syncTasks → decideNext → execute → report → sleep\n * Minden node `pending` állapotban.\n */\n static buildSkeletonLayout(): Ses_GraphLayout_Interface {\n const centerX: number = SES_GRAPH_PADDING + SES_GRAPH_PHASE_NODE_WIDTH / 2;\n let currentY: number = SES_GRAPH_PADDING;\n\n const nodes: Ses_GraphNode_Interface[] = [];\n const edges: Ses_GraphEdge_Interface[] = [];\n\n for (let i: number = 0; i < ORC_PHASES.length; i++) {\n const phaseData: OrcPhaseDefinition_Interface = ORC_PHASES[i];\n\n const isMilestone: boolean = phaseData.category === Ses_GraphNodeCategory_Type.milestone;\n const nodeWidth: number = isMilestone ? SES_GRAPH_MILESTONE_NODE_WIDTH : SES_GRAPH_PHASE_NODE_WIDTH;\n const nodeHeight: number = isMilestone ? SES_GRAPH_MILESTONE_NODE_HEIGHT : SES_GRAPH_PHASE_NODE_HEIGHT;\n\n const node: Ses_GraphNode_Interface = Ses_GraphLayout_Util.createNode({\n id: phaseData.id,\n category: phaseData.category,\n label: phaseData.label,\n phase: phaseData.phase,\n x: centerX - nodeWidth / 2,\n y: currentY,\n width: nodeWidth,\n height: nodeHeight,\n });\n nodes.push(node);\n\n if (i > 0) {\n edges.push(Ses_GraphLayout_Util.createEdge(\n ORC_PHASES[i - 1].id,\n phaseData.id,\n Ses_GraphEdgeCategory_Type.sequential,\n ));\n }\n\n currentY += nodeHeight + SES_GRAPH_VERTICAL_GAP;\n }\n\n // Edge path-ek kiszámítása\n const edgesWithPaths: Ses_GraphEdge_Interface[] = edges.map(\n (e: Ses_GraphEdge_Interface): Ses_GraphEdge_Interface => {\n const source: Ses_GraphNode_Interface | undefined = nodes.find(\n (n: Ses_GraphNode_Interface): boolean => n.id === e.sourceNodeId,\n );\n const target: Ses_GraphNode_Interface | undefined = nodes.find(\n (n: Ses_GraphNode_Interface): boolean => n.id === e.targetNodeId,\n );\n if (!source || !target) {\n return e;\n }\n return {\n ...e,\n pathD: Ses_GraphLayout_Util.computeEdgePath(source, target, e.category),\n };\n },\n );\n\n const viewBox: Ses_GraphViewBox_Interface = Ses_GraphLayout_Util.recalculateViewBox(\n nodes, SES_GRAPH_PADDING,\n );\n\n return {\n nodes: nodes,\n edges: edgesWithPaths,\n viewBox: viewBox,\n loopContainerBounds: null,\n };\n }\n}\n", "import { Injectable, signal, WritableSignal, inject, DestroyRef } from '@angular/core';\n\nimport { Subscription } from 'rxjs';\nimport { filter } from 'rxjs/operators';\n\nimport {\n CCAP_SocketEventEnvelope_Interface,\n} from '../../../_services/control-services/socket.control-service.interface';\nimport { CCAP_Socket_ControlService } from '../../../_services/control-services/ccap-socket.control-service';\nimport { ORC_GraphLayout_Util } from '../_collections/utils/orc-graph-layout.util';\nimport {\n Ses_GraphLayout_Interface,\n Ses_GraphNode_Interface,\n} from '../../session/_collections/graph/ses-graph-node.interface';\nimport { Ses_GraphNodeState_Type } from '../../session/_collections/graph/ses-graph-node-state.type-enum';\n\n/** Orchestrator fázis → graph node ID mapping. */\nconst ORC_PHASE_TO_NODE_ID: Record<string, string> = {\n wake: 'orc-wake',\n collect: 'orc-collect',\n analyze: 'orc-analyze',\n 'sync-tasks': 'orc-sync-tasks',\n 'decide-next': 'orc-decide-next',\n execute: 'orc-execute',\n report: 'orc-report',\n sleep: 'orc-sleep',\n};\n\n/** A fázisok sorrendje (state transition-ökhöz). */\nconst ORC_PHASE_ORDER: string[] = [\n 'orc-wake', 'orc-collect', 'orc-analyze', 'orc-sync-tasks',\n 'orc-decide-next', 'orc-execute', 'orc-report', 'orc-sleep',\n];\n\n/** Graph-releváns orc socket event-ek. */\nconst ORC_GRAPH_EVENTS: Set<string> = new Set([\n 'orc:iterationStarted',\n 'orc:iterationCompleted',\n 'orc:statusChanged',\n 'orc:started',\n 'orc:paused',\n 'orc:stopped',\n]);\n\n/**\n * Orchestrator graph state SSOT data service.\n * Az orchestrator run flow fázisainak (wake→collect→analyze→syncTasks→decideNext→execute→report→sleep)\n * graph-ként való megjelenítéséhez szükséges állapotkezelés.\n */\n@Injectable({ providedIn: 'root' })\n/** ORC_Graph_DataService class. */\nexport class ORC_Graph_DataService {\n\n private readonly ccapSocket_CS: CCAP_Socket_ControlService = inject(CCAP_Socket_ControlService);\n private readonly destroyRef: DestroyRef = inject(DestroyRef);\n\n // ── Public signals ──\n\n /** A graph teljes layout-ja. */\n readonly graphLayout_$: WritableSignal<Ses_GraphLayout_Interface | null> =\n signal<Ses_GraphLayout_Interface | null>(null);\n\n /** Aktuálisan futó node ID. */\n readonly activeNodeId_$: WritableSignal<string> = signal<string>('');\n\n /** User által kiválasztott node ID. */\n readonly selectedNodeId_$: WritableSignal<string> = signal<string>('');\n\n /** Modal nyitva-e. */\n readonly isGraphOpen_$: WritableSignal<boolean> = signal<boolean>(false);\n\n /** Melyik orchestrator ID-hoz tartozik. */\n readonly graphOrchestratorId_$: WritableSignal<string> = signal<string>('');\n\n /** Loading állapot (orchestratornál nincs historical load, mindig false). */\n readonly isLoading_$: WritableSignal<boolean> = signal<boolean>(false);\n\n // ── Private ──\n\n private eventSubscription: Subscription | null = null;\n\n constructor() {\n this.destroyRef.onDestroy((): void => {\n this.disposeSubscription();\n });\n }\n\n // ── Public methods ──\n\n /**\n * Graph modal megnyitása egy adott orchestrator-hoz.\n * Skeleton layout felépítés + socket event subscription.\n */\n openGraph(orchestratorId: string): void {\n this.disposeSubscription();\n this.resetState();\n\n this.graphOrchestratorId_$.set(orchestratorId);\n this.isGraphOpen_$.set(true);\n\n // Skeleton layout felépítése\n const skeleton: Ses_GraphLayout_Interface = ORC_GraphLayout_Util.buildSkeletonLayout();\n this.graphLayout_$.set(skeleton);\n\n // Socket event subscription\n this.eventSubscription = this.ccapSocket_CS.event$\n .pipe(filter(\n (envelope: CCAP_SocketEventEnvelope_Interface): boolean =>\n ORC_GRAPH_EVENTS.has(envelope.event)\n && envelope.payload?.orchestratorId === orchestratorId,\n ))\n .subscribe((envelope: CCAP_SocketEventEnvelope_Interface): void => {\n this.applyOrcEvent(envelope.event, envelope.payload);\n });\n }\n\n /**\n * Graph modal bezárása.\n */\n closeGraph(): void {\n this.disposeSubscription();\n this.isGraphOpen_$.set(false);\n this.selectedNodeId_$.set('');\n }\n\n /**\n * Node kiválasztás toggle.\n */\n selectNode(nodeId: string): void {\n const current: string = this.selectedNodeId_$();\n this.selectedNodeId_$.set(current === nodeId ? '' : nodeId);\n }\n\n /**\n * Kiválasztás törlése.\n */\n clearSelection(): void {\n this.selectedNodeId_$.set('');\n }\n\n // ── Event kezelés ──\n\n /**\n * Orchestrator socket event alkalmazása a graph-ra.\n */\n private applyOrcEvent(eventName: string, payload: Record<string, unknown>): void {\n if (eventName === 'orc:iterationStarted') {\n // Iteráció indulás: wake fázis aktív, többi pending\n this.applyPhaseActive('wake');\n return;\n }\n\n if (eventName === 'orc:iterationCompleted') {\n // Iteráció befejezés: minden node completed\n this.markAllCompleted();\n return;\n }\n\n if (eventName === 'orc:statusChanged') {\n const status: unknown = payload.status;\n if (status === 'active') {\n this.applyPhaseActive('wake');\n }\n if (status === 'paused' || status === 'stopped' || status === 'failed') {\n this.markAllCompleted();\n }\n return;\n }\n\n // started/paused/stopped — skeleton reset\n if (eventName === 'orc:started') {\n const skeleton: Ses_GraphLayout_Interface = ORC_GraphLayout_Util.buildSkeletonLayout();\n this.graphLayout_$.set(skeleton);\n }\n }\n\n /**\n * Fázis aktiválása: az adott fázis előtti node-ok completed, az aktuális active.\n */\n private applyPhaseActive(phase: string): void {\n const nodeId: string | undefined = ORC_PHASE_TO_NODE_ID[phase];\n if (!nodeId) {\n return;\n }\n\n let layout: Ses_GraphLayout_Interface | null = this.graphLayout_$();\n if (!layout) {\n return;\n }\n\n let foundActive: boolean = false;\n\n for (const orderedId of ORC_PHASE_ORDER) {\n if (orderedId === nodeId) {\n layout = this.setNodeState(layout, orderedId, Ses_GraphNodeState_Type.active);\n foundActive = true;\n } else if (!foundActive) {\n layout = this.setNodeState(layout, orderedId, Ses_GraphNodeState_Type.completed);\n }\n }\n\n this.activeNodeId_$.set(nodeId);\n this.graphLayout_$.set(layout);\n }\n\n /**\n * Minden node completed-re.\n */\n private markAllCompleted(): void {\n let layout: Ses_GraphLayout_Interface | null = this.graphLayout_$();\n if (!layout) {\n return;\n }\n\n for (const node of layout.nodes) {\n if (node.state !== Ses_GraphNodeState_Type.error) {\n layout = this.setNodeState(layout, node.id, Ses_GraphNodeState_Type.completed);\n }\n }\n\n this.activeNodeId_$.set('');\n this.graphLayout_$.set(layout);\n }\n\n /**\n * Node állapot beállítása immutable módon.\n */\n private setNodeState(\n layout: Ses_GraphLayout_Interface,\n nodeId: string,\n state: Ses_GraphNodeState_Type,\n ): Ses_GraphLayout_Interface {\n const index: number = layout.nodes.findIndex(\n (n: Ses_GraphNode_Interface): boolean => n.id === nodeId,\n );\n if (index < 0) {\n return layout;\n }\n\n const updatedNodes: Ses_GraphNode_Interface[] = [...layout.nodes];\n updatedNodes[index] = { ...updatedNodes[index], state: state };\n\n return { ...layout, nodes: updatedNodes };\n }\n\n /**\n * Belső állapot reset.\n */\n private resetState(): void {\n this.graphLayout_$.set(null);\n this.activeNodeId_$.set('');\n this.selectedNodeId_$.set('');\n this.isLoading_$.set(false);\n }\n\n /**\n * Socket subscription cleanup.\n */\n private disposeSubscription(): void {\n if (this.eventSubscription) {\n this.eventSubscription.unsubscribe();\n this.eventSubscription = null;\n }\n }\n}\n", "import { CommonModule } from '@angular/common';\nimport { Component, computed, ElementRef, Input, OnDestroy, OnInit, Signal, inject, signal, ViewChild } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\nimport { filter } from 'rxjs/operators';\n\nimport { DyFM_Log } from '@futdevpro/fsm-dynamo';\nimport { DyNX_SubscriptionControl } from '@futdevpro/ngx-dynamo';\n\nimport { CCAP_AgentConsoleBubbleView_Interface } from '../../../../_models/interfaces/shared/ccap-agent-console-bubble-view.interface';\nimport { CCAP_SocketEventEnvelope_Interface } from '../../../../_services/control-services/socket.control-service.interface';\nimport { CCAP_Socket_ControlService } from '../../../../_services/control-services/ccap-socket.control-service';\nimport { S_AgentConsoleMessageBubble_Component } from '../../../shared/_components/session-ui/s-agent-console-message-bubble/s-agent-console-message-bubble.component';\nimport { S_SessionChatColumnLayout_Component } from '../../../shared/_components/session-ui/s-session-chat-column-layout/s-session-chat-column-layout.component';\nimport { ORC_MessageBubbleMapper_Util } from '../../_collections/utils/orc-message-bubble-mapper.util';\nimport { Orchestrator_DataService } from '../../_services/orchestrator.data-service';\nimport {\n ORC_ConversationMessage_Response,\n ORC_UserQuestion_Response,\n} from '../../_services/orc-api-response.interface';\n\nconst REFRESH_EVENTS: Set<string> = new Set([\n 'orc:messageAdded',\n 'orc:userQuestionAsked',\n 'orc:userQuestionAnswered',\n]);\n\n/**\n * Chat panel komponens — session-like megjelenítés shared bubble-ökkel.\n *\n * A korábbi sima lista+textarea helyett a `S_SessionChatColumnLayout_Component`-et\n * és a `S_AgentConsoleMessageBubble_Component`-et használja az egységes UI-hoz.\n *\n * Spec: REQ-ORC-013-C, REQ-ORC-012, REQ-ORC-017-B.\n */\n@Component({\n selector: 'app-orc-chat-panel',\n standalone: true,\n imports: [\n CommonModule,\n FormsModule,\n S_SessionChatColumnLayout_Component,\n S_AgentConsoleMessageBubble_Component,\n ],\n templateUrl: './orc-chat-panel.component.html',\n host: { class: 'flex flex-col flex-1 min-h-0 overflow-hidden' },\n})\n/** ORC_ChatPanel_Component — session-like orchestrator chat. */\nexport class ORC_ChatPanel_Component extends DyNX_SubscriptionControl implements OnInit, OnDestroy {\n\n private readonly orchestrator_DS: Orchestrator_DataService = inject(Orchestrator_DataService);\n private readonly ccapSocket_CS: CCAP_Socket_ControlService = inject(CCAP_Socket_ControlService);\n\n @Input({ required: true }) orchestratorId!: string;\n\n @ViewChild('scrollAnchor') scrollAnchor!: ElementRef<HTMLDivElement>;\n\n private readonly questionsRaw_$ = signal<ORC_UserQuestion_Response[]>([]);\n\n /** Bubble view-ok — computed a data service messages signal-jából. */\n readonly bubbleViews_$: Signal<CCAP_AgentConsoleBubbleView_Interface[]> = computed(\n (): CCAP_AgentConsoleBubbleView_Interface[] =>\n ORC_MessageBubbleMapper_Util.mapAll(this.orchestrator_DS.currentMessages_$()),\n );\n\n /** Pending kérdések. */\n readonly openQuestions_$: Signal<ORC_UserQuestion_Response[]> = this.questionsRaw_$.asReadonly();\n\n /** Typing indicator — orchestrator válaszol passive módban. */\n readonly isResponseGenerating_$: Signal<boolean> = this.orchestrator_DS.isResponseGenerating_$;\n\n /** Input state — raw user content. */\n userInput: string = '';\n\n /** Question-válasz state (questionId → user's draft answer). */\n readonly answerDrafts: Record<string, string> = {};\n readonly selectedChoice: Record<string, string> = {};\n\n constructor() {\n super();\n }\n\n ngOnInit(): void {\n void this.refresh();\n this.addSubscription(\n this.ccapSocket_CS.event$\n .pipe(filter(\n (envelope: CCAP_SocketEventEnvelope_Interface): boolean =>\n REFRESH_EVENTS.has(envelope.event)\n && envelope.payload?.['orchestratorId'] === this.orchestratorId,\n ))\n .subscribe(async (): Promise<void> => {\n await this.refresh();\n this.scrollToBottom();\n }),\n );\n }\n\n /** User üzenet küldés — raw content immutable (trim nélkül). */\n async handleSendMessage(): Promise<void> {\n if (!this.userInput) return;\n const rawContent: string = this.userInput;\n this.userInput = '';\n try {\n await this.orchestrator_DS.postUserMessage(this.orchestratorId, rawContent);\n await this.orchestrator_DS.refreshCurrentMessages(this.orchestratorId);\n this.scrollToBottom();\n } catch (error: unknown) {\n DyFM_Log.error('ORC_Chat | sendMessage failed', error);\n this.userInput = rawContent;\n }\n }\n\n /** Válasz beküldés egy pending kérdésre. */\n async handleSubmitAnswer(questionId: string, questionType: string): Promise<void> {\n const rawAnswer: string = questionType === 'multiple-choice' || questionType === 'yes-no'\n ? (this.selectedChoice[questionId] ?? '')\n : (this.answerDrafts[questionId] ?? '');\n if (!rawAnswer) return;\n try {\n await this.orchestrator_DS.submitQuestionAnswer(this.orchestratorId, questionId, rawAnswer);\n delete this.answerDrafts[questionId];\n delete this.selectedChoice[questionId];\n await this.refresh();\n } catch (error: unknown) {\n DyFM_Log.error('ORC_Chat | submitAnswer failed', error);\n }\n }\n\n /** Gyorsgombok yes-no kérdéseknél. */\n handleYesNoChoice(questionId: string, value: 'yes' | 'no'): void {\n this.selectedChoice[questionId] = value;\n }\n\n /** Multiple-choice kiválasztás. */\n handleMultipleChoice(questionId: string, value: string): void {\n this.selectedChoice[questionId] = value;\n }\n\n private async refresh(): Promise<void> {\n try {\n const questions: ORC_UserQuestion_Response[] =\n await this.orchestrator_DS.listQuestions(this.orchestratorId, true);\n this.questionsRaw_$.set(questions);\n } catch (error: unknown) {\n DyFM_Log.error('ORC_Chat | refresh failed', error);\n }\n }\n\n /** Auto-scroll a legújabb üzenethez. */\n private scrollToBottom(): void {\n setTimeout((): void => {\n this.scrollAnchor?.nativeElement?.scrollIntoView({ behavior: 'smooth' });\n }, 50);\n }\n}\n", "<app-s-session-chat-column-layout>\n\n <div sChatColumnHeader>\n @if (openQuestions_$().length > 0) {\n <div class=\"bg-cyan-950 border-b border-cyan-500 p-3 space-y-3\">\n <h3 class=\"text-cyan-300 font-semibold text-sm\">Válaszra váró kérdések ({{ openQuestions_$().length }})</h3>\n @for (q of openQuestions_$(); track q._id) {\n <div class=\"bg-cyan-900/50 border border-cyan-700 rounded p-3 space-y-2\">\n <p class=\"text-cyan-100 font-medium text-sm\">{{ q.questionText }}</p>\n @if (q.context) {\n <p class=\"text-xs text-cyan-300 italic\">Kontext: {{ q.context }}</p>\n }\n\n @if (q.questionType === 'yes-no') {\n <div class=\"flex gap-2\">\n <button\n class=\"px-3 py-1 rounded text-sm font-bold\"\n [class.bg-green-700]=\"selectedChoice[q._id] === 'yes'\"\n [class.bg-slate-700]=\"selectedChoice[q._id] !== 'yes'\"\n (click)=\"handleYesNoChoice(q._id, 'yes')\">\n Igen\n </button>\n <button\n class=\"px-3 py-1 rounded text-sm font-bold\"\n [class.bg-red-700]=\"selectedChoice[q._id] === 'no'\"\n [class.bg-slate-700]=\"selectedChoice[q._id] !== 'no'\"\n (click)=\"handleYesNoChoice(q._id, 'no')\">\n Nem\n </button>\n <button\n class=\"ml-auto px-4 py-1 bg-cyan-600 hover:bg-cyan-500 text-white rounded text-sm\"\n (click)=\"handleSubmitAnswer(q._id, q.questionType)\"\n [disabled]=\"!selectedChoice[q._id]\">\n Küldés\n </button>\n </div>\n }\n\n @if (q.questionType === 'multiple-choice' && q.possibleAnswers) {\n <div class=\"space-y-1\">\n @for (choice of q.possibleAnswers; track choice) {\n <label class=\"flex items-center gap-2 text-sm text-slate-200 cursor-pointer\">\n <input type=\"radio\" [name]=\"q._id\" [value]=\"choice\" [checked]=\"selectedChoice[q._id] === choice\"\n (change)=\"handleMultipleChoice(q._id, choice)\" />\n {{ choice }}\n </label>\n }\n <button class=\"mt-2 px-4 py-1 bg-cyan-600 hover:bg-cyan-500 text-white rounded text-sm\"\n (click)=\"handleSubmitAnswer(q._id, q.questionType)\" [disabled]=\"!selectedChoice[q._id]\">\n Küldés\n </button>\n </div>\n }\n\n @if (q.questionType === 'open' || q.questionType === 'task-priority') {\n <div class=\"space-y-2\">\n <textarea\n class=\"w-full bg-slate-800 border border-slate-700 rounded px-2 py-1 text-white text-sm\" rows=\"2\"\n [(ngModel)]=\"answerDrafts[q._id]\" [name]=\"q._id\" placeholder=\"Válasz...\"></textarea>\n <button class=\"px-4 py-1 bg-cyan-600 hover:bg-cyan-500 text-white rounded text-sm\"\n (click)=\"handleSubmitAnswer(q._id, q.questionType)\" [disabled]=\"!answerDrafts[q._id]\">\n Küldés\n </button>\n </div>\n }\n </div>\n }\n </div>\n }\n </div>\n\n <div sChatColumnScroll class=\"p-3 space-y-2\">\n @for (bubble of bubbleViews_$(); track bubble.listKey) {\n <app-s-agent-console-message-bubble [view]=\"bubble\" />\n } @empty {\n <p class=\"text-sm text-slate-500 italic text-center py-8\">Még nincs üzenet.</p>\n }\n\n @if (isResponseGenerating_$()) {\n <div class=\"flex gap-2 py-2\">\n <div class=\"max-w-[80%] rounded px-3 py-2 bg-slate-800 text-slate-400 text-sm animate-pulse\">\n <span class=\"font-mono text-xs\">ORCHESTRATOR</span>\n <span class=\"ml-2\">gondolkodik...</span>\n </div>\n </div>\n }\n\n <div #scrollAnchor></div>\n </div>\n\n <div sChatColumnComposer class=\"border-t border-slate-800 p-3\">\n <form (ngSubmit)=\"handleSendMessage()\" class=\"flex gap-2\">\n <textarea\n class=\"flex-1 bg-slate-800 border border-slate-700 rounded px-3 py-2 text-white text-sm resize-none\"\n rows=\"2\" [(ngModel)]=\"userInput\" name=\"userInput\"\n placeholder=\"Üzenet az Orchestrator-nak...\"></textarea>\n <button type=\"submit\"\n class=\"px-4 py-2 bg-cyan-600 hover:bg-cyan-500 text-white rounded text-sm self-end whitespace-nowrap\"\n [disabled]=\"!userInput\">\n Küldés\n </button>\n </form>\n </div>\n\n</app-s-session-chat-column-layout>\n", "import { CCAP_AgentConsoleBubbleKind_Type } from '../../../../_enums/shared/ccap-agent-console-bubble-kind.enum';\nimport { CCAP_AgentConsoleBubbleView_Interface } from '../../../../_models/interfaces/shared/ccap-agent-console-bubble-view.interface';\nimport { ORC_ConversationMessage_Response } from '../../_services/orc-api-response.interface';\n\n/**\n * ORC_ConversationMessage → CCAP_AgentConsoleBubbleView mapper.\n *\n * A shared `S_AgentConsoleMessageBubble_Component` újrafelhasználásához\n * az orchestrator üzeneteket normalizálja bubble view-model-ekre.\n *\n * Minta: `SHR_ExtSessionMsgToBubbleView_Util` (CC/OC/CA közös mapper).\n */\nexport class ORC_MessageBubbleMapper_Util {\n\n /**\n * Teljes üzenet lista → bubble view lista mapping.\n */\n static mapAll(messages: ORC_ConversationMessage_Response[]): CCAP_AgentConsoleBubbleView_Interface[] {\n return messages.map(\n (m: ORC_ConversationMessage_Response): CCAP_AgentConsoleBubbleView_Interface =>\n ORC_MessageBubbleMapper_Util.mapSingle(m),\n );\n }\n\n /**\n * Egy üzenet → bubble view mapping.\n */\n static mapSingle(msg: ORC_ConversationMessage_Response): CCAP_AgentConsoleBubbleView_Interface {\n const kind: CCAP_AgentConsoleBubbleKind_Type = ORC_MessageBubbleMapper_Util.resolveKind(msg);\n const isUserAligned: boolean = msg.from === 'user';\n\n return {\n listKey: msg._id,\n kind: kind,\n bodyText: msg.rawContent,\n timestampIso: msg.__created,\n toolName: msg.toolName ?? undefined,\n isUserAligned: isUserAligned,\n headerStatusDot: kind === CCAP_AgentConsoleBubbleKind_Type.error ? 'error' : undefined,\n flags: {\n showCopy: true,\n showRawInfo: false,\n useEditDiffForExpandable: false,\n },\n toolCallId: msg.toolCallId ?? undefined,\n };\n }\n\n /**\n * Message type → bubble kind resolution.\n */\n private static resolveKind(msg: ORC_ConversationMessage_Response): CCAP_AgentConsoleBubbleKind_Type {\n switch (msg.messageType) {\n case 'user-message':\n return CCAP_AgentConsoleBubbleKind_Type.userPrompt;\n case 'orchestrator-response':\n return CCAP_AgentConsoleBubbleKind_Type.assistant;\n case 'orchestrator-thinking':\n return CCAP_AgentConsoleBubbleKind_Type.thinking;\n case 'tool-call':\n return CCAP_AgentConsoleBubbleKind_Type.tool;\n case 'tool-result':\n return CCAP_AgentConsoleBubbleKind_Type.toolResult;\n case 'iteration-summary':\n return CCAP_AgentConsoleBubbleKind_Type.statusUpdate;\n case 'status-message':\n return CCAP_AgentConsoleBubbleKind_Type.info;\n default:\n // Backward compat: messageType nélküli régi üzenetek — from alapján\n return msg.from === 'user'\n ? CCAP_AgentConsoleBubbleKind_Type.userPrompt\n : CCAP_AgentConsoleBubbleKind_Type.assistant;\n }\n }\n}\n", "import { Component, inject, Signal } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { S_Modal_Component } from '../../../shared/_components/s-modal/s-modal.component';\nimport {\n Ses_GraphLayout_Interface,\n} from '../../../session/_collections/graph/ses-graph-node.interface';\nimport {\n Ses_GraphView_Component,\n} from '../../../session/_components/ccap-graph/ccap-graph-view/ses-graph-view.component';\nimport { ORC_Graph_DataService } from '../../_services/orc-graph.data-service';\n\n/**\n * Orchestrator graph modal wrapper.\n * Közel-teljesképernyős modálban jeleníti meg az orchestrator run flow graph-ot.\n * Az ORC_Graph_DataService signal-jaiból olvassa az állapotot és input-ként továbbítja a shared graph view-nak.\n */\n@Component({\n selector: 'app-orc-graph-modal',\n standalone: true,\n imports: [CommonModule, S_Modal_Component, Ses_GraphView_Component],\n templateUrl: './orc-graph-modal.component.html',\n})\n/** ORC_GraphModal_Component class. */\nexport class ORC_GraphModal_Component {\n\n private readonly graph_DS: ORC_Graph_DataService = inject(ORC_Graph_DataService);\n\n /** Modal nyitva-e. */\n readonly isOpen_$: Signal<boolean> = this.graph_DS.isGraphOpen_$;\n\n /** Graph layout. */\n readonly layout_$: Signal<Ses_GraphLayout_Interface | null> = this.graph_DS.graphLayout_$;\n\n /** Aktív node ID. */\n readonly activeNodeId_$: Signal<string> = this.graph_DS.activeNodeId_$;\n\n /** Kiválasztott node ID. */\n readonly selectedNodeId_$: Signal<string> = this.graph_DS.selectedNodeId_$;\n\n /** Loading állapot. */\n readonly isLoading_$: Signal<boolean> = this.graph_DS.isLoading_$;\n\n /**\n * Modal bezárás handler.\n */\n handleClose(): void {\n this.graph_DS.closeGraph();\n }\n\n /**\n * Node kiválasztás handler.\n */\n handleNodeClick(nodeId: string): void {\n this.graph_DS.selectNode(nodeId);\n }\n\n /**\n * Detail bezárás handler.\n */\n handleDetailClose(): void {\n this.graph_DS.clearSelection();\n }\n}\n", "<app-s-modal\n [isOpen]=\"isOpen_$()\"\n title=\"Orchestrator Flow Graph\"\n maxWidth=\"7xl\"\n [bodyFlexColumn]=\"true\"\n headerBorderClass=\"border-cyan-600/30\"\n (closed)=\"handleClose()\">\n\n <app-ses-graph-view\n class=\"flex-1 min-h-0\"\n [layout]=\"layout_$()\"\n [activeNodeId]=\"activeNodeId_$()\"\n [selectedNodeId]=\"selectedNodeId_$()\"\n [isLoading]=\"isLoading_$()\"\n (nodeClicked)=\"handleNodeClick($event)\"\n (detailClosed)=\"handleDetailClose()\" />\n\n</app-s-modal>\n", "import { Component, input, output, Signal } from '@angular/core';\n\n/**\n * Operation mode toggle pill — Active Loop | Chat Mode.\n * Spec: REQ-ORC-017-B.\n */\n@Component({\n selector: 'app-orc-mode-switcher',\n standalone: true,\n templateUrl: './orc-mode-switcher.component.html',\n})\n/** ORC_ModeSwitcher_Component class. */\nexport class ORC_ModeSwitcher_Component {\n\n /** Aktuális mód (signal input). */\n readonly mode_$ = input.required<string>({ alias: 'mode_$' });\n\n /** Mode változás event. */\n readonly modeChanged = output<string>();\n\n /** Váltás az ellenkező módra. */\n handleToggle(): void {\n const current: string = this.mode_$();\n const next: string = current === 'active' ? 'passive' : 'active';\n this.modeChanged.emit(next);\n }\n}\n", "<div class=\"inline-flex rounded-full border border-slate-600 overflow-hidden text-xs font-semibold\">\n <button\n class=\"px-3 py-1 transition-colors\"\n [class.bg-green-800]=\"mode_$() === 'active'\"\n [class.text-green-200]=\"mode_$() === 'active'\"\n [class.bg-transparent]=\"mode_$() !== 'active'\"\n [class.text-slate-400]=\"mode_$() !== 'active'\"\n (click)=\"handleToggle()\"\n [disabled]=\"mode_$() === 'active'\"\n title=\"Autonóm loop mód — az orchestrator önállóan futtatja az iterációkat\">\n Active Loop\n </button>\n <button\n class=\"px-3 py-1 transition-colors\"\n [class.bg-cyan-800]=\"mode_$() === 'passive'\"\n [class.text-cyan-200]=\"mode_$() === 'passive'\"\n [class.bg-transparent]=\"mode_$() !== 'passive'\"\n [class.text-slate-400]=\"mode_$() !== 'passive'\"\n (click)=\"handleToggle()\"\n [disabled]=\"mode_$() === 'passive'\"\n title=\"Chat mód — az orchestrator a user üzenetekre válaszol\">\n Chat Mode\n </button>\n</div>\n", "import { CommonModule } from '@angular/common';\nimport { Component, Input, Signal, computed, inject, signal } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\nimport { CCAP_TextSearch_Util } from '../../../../_collections/utils/ccap-text-search.util';\nimport { ORC_Task_Response } from '../../_services/orc-api-response.interface';\nimport { Orchestrator_DataService } from '../../_services/orchestrator.data-service';\n\n/**\n * Task-queue panel komponens — az orchestrator detail oldal központi panelje.\n * Spec: REQ-ORC-013-C, REQ-ORC-005.\n *\n * Csoportosítás status szerint, filter (status/type/priority/source) + search.\n */\n@Component({\n selector: 'app-orc-task-queue-panel',\n standalone: true,\n imports: [CommonModule, FormsModule],\n templateUrl: './orc-task-queue-panel.component.html',\n})\n/** Orchestrator task queue panel. */\nexport class ORC_TaskQueuePanel_Component {\n\n private readonly orchestrator_DS: Orchestrator_DataService = inject(Orchestrator_DataService);\n\n @Input({ required: true }) tasks_$!: Signal<ORC_Task_Response[]>;\n\n /** Filter + search state. */\n readonly filterStatus_$ = signal<string>('all');\n readonly filterType_$ = signal<string>('all');\n readonly filterPriority_$ = signal<string>('all');\n readonly searchText_$ = signal<string>('');\n\n /** Filterelt task-lista. */\n readonly filteredTasks_$: Signal<ORC_Task_Response[]> = computed((): ORC_Task_Response[] => {\n const list: ORC_Task_Response[] = this.tasks_$();\n const status: string = this.filterStatus_$();\n const type: string = this.filterType_$();\n const priority: string = this.filterPriority_$();\n const search: string = this.searchText_$();\n\n return list.filter((t: ORC_Task_Response): boolean => {\n if (status !== 'all' && t.status !== status) return false;\n if (type !== 'all' && t.type !== type) return false;\n if (priority !== 'all' && t.priority !== priority) return false;\n // REQ-SE-001: ékezet- és kisbetű/nagybetű-érzéketlen match (title + description).\n if (search.trim()\n && !CCAP_TextSearch_Util.includesText(t.title, search)\n && !CCAP_TextSearch_Util.includesText(t.description, search)) {\n return false;\n }\n return true;\n });\n });\n\n /** Státusz-csoportosítás (computed). */\n readonly groupedByStatus_$: Signal<Record<string, ORC_Task_Response[]>> = computed((): Record<string, ORC_Task_Response[]> => {\n const groups: Record<string, ORC_Task_Response[]> = {};\n for (const task of this.filteredTasks_$()) {\n const key: string = task.status;\n if (!groups[key]) groups[key] = [];\n groups[key].push(task);\n }\n return groups;\n });\n\n /** Státusz-csoport sorrend. */\n readonly statusOrder: string[] = [\n 'in-progress',\n 'waiting-on-agent',\n 'waiting-on-user',\n 'scheduled',\n 'pending',\n 'completed',\n 'failed',\n 'cancelled',\n ];\n\n /** Group keys rendezve a fenti order szerint. */\n readonly orderedGroupKeys_$: Signal<string[]> = computed((): string[] => {\n const groups: Record<string, ORC_Task_Response[]> = this.groupedByStatus_$();\n return this.statusOrder.filter((key: string): boolean => (groups[key]?.length ?? 0) > 0);\n });\n\n handleFilterStatus(value: string): void {\n this.filterStatus_$.set(value);\n }\n\n handleFilterType(value: string): void {\n this.filterType_$.set(value);\n }\n\n handleFilterPriority(value: string): void {\n this.filterPriority_$.set(value);\n }\n\n handleSearchText(value: string): void {\n this.searchText_$.set(value);\n }\n}\n", "<div class=\"bg-slate-900 border border-slate-800 rounded p-4 space-y-3\">\n <div class=\"flex items-center justify-between\">\n <h2 class=\"text-lg font-semibold text-cyan-300\">Task Queue</h2>\n <span class=\"text-xs text-slate-500 font-mono\">\n {{ filteredTasks_$().length }} / {{ tasks_$().length }} task\n </span>\n </div>\n\n <div class=\"grid grid-cols-2 md:grid-cols-4 gap-2\">\n <select\n class=\"bg-slate-800 border border-slate-700 rounded px-2 py-1 text-white text-xs\"\n [ngModel]=\"filterStatus_$()\"\n (ngModelChange)=\"handleFilterStatus($event)\"\n name=\"filterStatus\"\n >\n <option value=\"all\">Összes státusz</option>\n <option value=\"pending\">pending</option>\n <option value=\"scheduled\">scheduled</option>\n <option value=\"in-progress\">in-progress</option>\n <option value=\"waiting-on-user\">waiting-on-user</option>\n <option value=\"waiting-on-agent\">waiting-on-agent</option>\n <option value=\"completed\">completed</option>\n <option value=\"failed\">failed</option>\n <option value=\"cancelled\">cancelled</option>\n </select>\n\n <select\n class=\"bg-slate-800 border border-slate-700 rounded px-2 py-1 text-white text-xs\"\n [ngModel]=\"filterType_$()\"\n (ngModelChange)=\"handleFilterType($event)\"\n name=\"filterType\"\n >\n <option value=\"all\">Összes típus</option>\n <option value=\"implementation\">implementation</option>\n <option value=\"bug-fix\">bug-fix</option>\n <option value=\"review\">review</option>\n <option value=\"documentation\">documentation</option>\n <option value=\"refactor\">refactor</option>\n <option value=\"research\">research</option>\n <option value=\"spec-extension\">spec-extension</option>\n <option value=\"maintenance\">maintenance</option>\n <option value=\"bootstrap-project-cleanup\">bootstrap</option>\n </select>\n\n <select\n class=\"bg-slate-800 border border-slate-700 rounded px-2 py-1 text-white text-xs\"\n [ngModel]=\"filterPriority_$()\"\n (ngModelChange)=\"handleFilterPriority($event)\"\n name=\"filterPriority\"\n >\n <option value=\"all\">Összes prioritás</option>\n <option value=\"critical\">critical</option>\n <option value=\"high\">high</option>\n <option value=\"normal\">normal</option>\n <option value=\"low\">low</option>\n </select>\n\n <input\n class=\"bg-slate-800 border border-slate-700 rounded px-2 py-1 text-white text-xs\"\n [ngModel]=\"searchText_$()\"\n (ngModelChange)=\"handleSearchText($event)\"\n name=\"searchText\"\n placeholder=\"Keresés cím / leírás...\"\n />\n </div>\n\n @if (orderedGroupKeys_$().length === 0) {\n <p class=\"text-sm text-slate-500 italic text-center py-8\">\n Nincs a szűrőknek megfelelő task.\n </p>\n }\n\n @for (groupKey of orderedGroupKeys_$(); track groupKey) {\n <div class=\"bg-slate-950 border border-slate-800 rounded overflow-hidden\">\n <div class=\"bg-slate-800 px-3 py-1 text-xs font-bold text-slate-300 uppercase tracking-wider\">\n {{ groupKey }}\n <span class=\"text-slate-500 ml-2\">({{ groupedByStatus_$()[groupKey].length }})</span>\n </div>\n <table class=\"w-full text-xs\">\n <thead class=\"bg-slate-900\">\n <tr>\n <th class=\"text-left px-2 py-1 text-slate-400 font-normal\">Code</th>\n <th class=\"text-left px-2 py-1 text-slate-400 font-normal\">Title</th>\n <th class=\"text-left px-2 py-1 text-slate-400 font-normal\">Type</th>\n <th class=\"text-left px-2 py-1 text-slate-400 font-normal\">Priority</th>\n <th class=\"text-left px-2 py-1 text-slate-400 font-normal\">Source</th>\n <th class=\"text-left px-2 py-1 text-slate-400 font-normal\">Agent</th>\n </tr>\n </thead>\n <tbody>\n @for (t of groupedByStatus_$()[groupKey]; track t._id) {\n <tr class=\"border-t border-slate-800 hover:bg-slate-800/30\">\n <td class=\"px-2 py-1 font-mono text-cyan-400\">{{ t.code }}</td>\n <td class=\"px-2 py-1 text-slate-200\">{{ t.title }}</td>\n <td class=\"px-2 py-1 text-slate-400\">{{ t.type }}</td>\n <td class=\"px-2 py-1\">\n <span\n [class.text-red-400]=\"t.priority === 'critical'\"\n [class.text-orange-400]=\"t.priority === 'high'\"\n [class.text-slate-400]=\"t.priority === 'normal'\"\n [class.text-slate-600]=\"t.priority === 'low'\"\n >\n {{ t.priority }}\n </span>\n </td>\n <td class=\"px-2 py-1 text-slate-500\">{{ t.source }}</td>\n <td class=\"px-2 py-1 text-slate-400 text-xs\">\n {{ t.assignedAgentType || '—' }}\n </td>\n </tr>\n }\n </tbody>\n </table>\n </div>\n }\n</div>\n", "import { CommonModule } from '@angular/common';\nimport { Component, Input, OnInit, Signal, inject, signal } from '@angular/core';\n\nimport { DyFM_Log } from '@futdevpro/fsm-dynamo';\n\nimport { Orchestrator_DataService } from '../../_services/orchestrator.data-service';\n\ninterface WorkflowSummary {\n id: string;\n name: string;\n summary: string;\n}\n\ninterface WorkflowFull {\n id: string;\n filename: string;\n rawText: string;\n summary: string;\n}\n\n/**\n * Workflow library panel — listázza az elérhető workflow-kat és lehetővé\n * teszi a teljes szöveg megtekintését.\n * Spec: REQ-ORC-013-C, REQ-ORC-011.\n */\n@Component({\n selector: 'app-orc-workflow-library-panel',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './orc-workflow-library-panel.component.html',\n})\n/** Orchestrator workflow library panel. */\nexport class ORC_WorkflowLibraryPanel_Component implements OnInit {\n\n private readonly orchestrator_DS: Orchestrator_DataService = inject(Orchestrator_DataService);\n\n @Input({ required: true }) orchestratorId!: string;\n\n private readonly workflowsRaw_$ = signal<WorkflowSummary[]>([]);\n private readonly selectedRaw_$ = signal<WorkflowFull | null>(null);\n private readonly loadingRaw_$ = signal<boolean>(false);\n\n readonly workflows_$: Signal<WorkflowSummary[]> = this.workflowsRaw_$.asReadonly();\n readonly selected_$: Signal<WorkflowFull | null> = this.selectedRaw_$.asReadonly();\n readonly loading_$: Signal<boolean> = this.loadingRaw_$.asReadonly();\n\n ngOnInit(): void {\n void this.loadList();\n }\n\n async handleOpenDetails(wfId: string): Promise<void> {\n try {\n this.loadingRaw_$.set(true);\n const workflow = await this.orchestrator_DS.getWorkflowById(this.orchestratorId, wfId);\n this.selectedRaw_$.set(workflow);\n } catch (error: unknown) {\n DyFM_Log.error('WorkflowLibrary | getWorkflow failed', error);\n } finally {\n this.loadingRaw_$.set(false);\n }\n }\n\n handleCloseDetails(): void {\n this.selectedRaw_$.set(null);\n }\n\n private async loadList(): Promise<void> {\n try {\n const workflows = await this.orchestrator_DS.listWorkflows(this.orchestratorId);\n this.workflowsRaw_$.set(workflows);\n } catch (error: unknown) {\n DyFM_Log.error('WorkflowLibrary | listWorkflows failed', error);\n }\n }\n}\n", "<div class=\"bg-slate-900 border border-slate-800 rounded p-4 space-y-3\">\n <div class=\"flex items-center justify-between\">\n <h2 class=\"text-lg font-semibold text-cyan-300\">Workflow Library</h2>\n <span class=\"text-xs text-slate-500 font-mono\">{{ workflows_$().length }} workflow</span>\n </div>\n\n @if (workflows_$().length === 0) {\n <p class=\"text-sm text-slate-500 italic\">Nincs betöltött workflow.</p>\n }\n\n <div class=\"grid grid-cols-1 md:grid-cols-2 gap-2\">\n @for (wf of workflows_$(); track wf.id) {\n <div\n class=\"bg-slate-950 border border-slate-800 rounded p-3 hover:border-cyan-700 cursor-pointer transition\"\n (click)=\"handleOpenDetails(wf.id)\"\n >\n <h3 class=\"text-cyan-400 font-mono text-sm\">{{ wf.name }}</h3>\n <p class=\"text-xs text-slate-400 mt-1 line-clamp-3\">{{ wf.summary }}</p>\n </div>\n }\n </div>\n\n @if (selected_$(); as sel) {\n <div class=\"fixed inset-0 bg-black/70 flex items-center justify-center p-4 z-50\" (click)=\"handleCloseDetails()\">\n <!-- BUG-VC-002 pattern: max-h-[80vh] Tailwind fallback + inline max-height: 80dvh a modern mobil iOS Safari dynamic toolbar-aware viewport-jára. -->\n <div class=\"bg-slate-900 border border-cyan-700 rounded p-4 max-w-3xl max-h-[80vh] overflow-auto w-full\"\n style=\"max-height: 80dvh;\"\n (click)=\"$event.stopPropagation()\">\n <div class=\"flex items-center justify-between mb-3\">\n <h3 class=\"text-cyan-300 font-bold\">{{ sel.filename }}</h3>\n <button class=\"text-slate-400 hover:text-white\" (click)=\"handleCloseDetails()\">✕</button>\n </div>\n <pre class=\"text-xs text-slate-200 whitespace-pre-wrap font-mono\">{{ sel.rawText }}</pre>\n </div>\n </div>\n }\n</div>\n", "import { CommonModule } from '@angular/common';\nimport { Component, OnInit, Signal, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { RouterModule } from '@angular/router';\n\nimport { DyFM_Log } from '@futdevpro/fsm-dynamo';\n\nimport { ExS_InstanceContext_DataService } from '../../../external-sessions/_services/exs-instance-context.data-service';\nimport { ORC_Session_Response } from '../../_services/orc-api-response.interface';\nimport { ORC_Realtime_ControlService } from '../../_services/orc-realtime.control-service';\nimport { Orchestrator_DataService } from '../../_services/orchestrator.data-service';\n\n/**\n * Orchestrator lista komponens — `/orchestrator` route landing page.\n * Táblázat + létrehozási űrlap + gyors lifecycle műveletek.\n */\n@Component({\n selector: 'app-orc-list',\n standalone: true,\n imports: [CommonModule, FormsModule, RouterModule],\n templateUrl: './orc-list.component.html',\n})\n/** Orchestrator lista oldal. */\nexport class ORC_List_Component implements OnInit {\n\n private readonly orchestrator_DS: Orchestrator_DataService = inject(Orchestrator_DataService);\n private readonly realtime_CS: ORC_Realtime_ControlService = inject(ORC_Realtime_ControlService);\n /** Cycle 970 (REQ-INST-SES-URL-001 Slice E): aktív instance a routerLink-be. */\n private readonly peiContext_DS: ExS_InstanceContext_DataService = inject(ExS_InstanceContext_DataService);\n\n /** Signals a template számára. */\n readonly orchestratorList_$: Signal<ORC_Session_Response[]> = this.orchestrator_DS.orchestratorList_$;\n readonly activeCount_$: Signal<number> = this.orchestrator_DS.activeCount_$;\n /** Cycle 970 — aktív instance ccapId (üres = legacy single-param routerLink). */\n readonly activeCcapId_$: Signal<string> = this.peiContext_DS.activeCcapId_$;\n\n /** Új Orchestrator űrlap state. */\n formName: string = '';\n formScope: string = 'single-project';\n formProjectId: string = '';\n formProviderName: string = '';\n formModel: string = '';\n formIsOpen: boolean = false;\n formError: string | null = null;\n\n ngOnInit(): void {\n this.realtime_CS.subscribeGlobal();\n void this.orchestrator_DS.refreshList();\n }\n\n /** Űrlap megnyitás. */\n openForm(): void {\n this.formIsOpen = true;\n this.formError = null;\n }\n\n /** Űrlap bezárás és reset. */\n closeForm(): void {\n this.formIsOpen = false;\n this.formName = '';\n this.formProjectId = '';\n this.formProviderName = '';\n this.formModel = '';\n this.formError = null;\n }\n\n /** Új orchestrator létrehozás. */\n async handleSubmitForm(): Promise<void> {\n try {\n if (!this.formName.trim()) {\n this.formError = 'Név megadása kötelező.';\n return;\n }\n await this.orchestrator_DS.createOrchestrator({\n name: this.formName.trim(),\n scope: this.formScope,\n projectId: this.formProjectId.trim() || undefined,\n providerName: this.formProviderName.trim() || undefined,\n model: this.formModel.trim() || undefined,\n });\n this.closeForm();\n } catch (error: unknown) {\n this.formError = this.extractErrorMessage(error);\n }\n }\n\n /** Start akció. */\n async handleStart(id: string): Promise<void> {\n try {\n await this.orchestrator_DS.startOrchestrator(id);\n } catch (error: unknown) {\n DyFM_Log.error('ORC_List | start failed', error);\n }\n }\n\n /** Pause akció. */\n async handlePause(id: string): Promise<void> {\n try {\n await this.orchestrator_DS.pauseOrchestrator(id);\n } catch (error: unknown) {\n DyFM_Log.error('ORC_List | pause failed', error);\n }\n }\n\n /** Resume akció. */\n async handleResume(id: string): Promise<void> {\n try {\n await this.orchestrator_DS.resumeOrchestrator(id);\n } catch (error: unknown) {\n DyFM_Log.error('ORC_List | resume failed', error);\n }\n }\n\n /** Stop akció. */\n async handleStop(id: string): Promise<void> {\n try {\n await this.orchestrator_DS.stopOrchestrator(id);\n } catch (error: unknown) {\n DyFM_Log.error('ORC_List | stop failed', error);\n }\n }\n\n /** Hibaüzenet kinyerés általános error objektumból. */\n private extractErrorMessage(error: unknown): string {\n if (typeof error === 'object' && error !== null && 'message' in error) {\n return String((error as { message: unknown }).message);\n }\n return String(error);\n }\n}\n", "<div class=\"p-6 space-y-4\">\n <div class=\"flex items-center justify-between\">\n <div>\n <h1 class=\"text-2xl font-bold text-cyan-300\">Orchestrator Agents</h1>\n <p class=\"text-sm text-slate-400\">\n Aktív: <span class=\"text-green-400 font-mono\">{{ activeCount_$() }}</span>\n </p>\n </div>\n @if (!formIsOpen) {\n <button\n class=\"px-4 py-2 bg-cyan-600 hover:bg-cyan-500 text-white font-bold rounded transition\"\n (click)=\"openForm()\"\n >\n + Új Orchestrator\n </button>\n }\n </div>\n\n @if (formIsOpen) {\n <form\n class=\"bg-slate-900 border border-cyan-800 rounded p-4 space-y-3\"\n (ngSubmit)=\"handleSubmitForm()\"\n >\n <h2 class=\"text-lg font-semibold text-cyan-300\">Új Orchestrator</h2>\n <div class=\"grid grid-cols-1 md:grid-cols-2 gap-3\">\n <label class=\"flex flex-col gap-1\">\n <span class=\"text-xs text-slate-400\">Név *</span>\n <input\n class=\"bg-slate-800 border border-slate-700 rounded px-2 py-1 text-white\"\n [(ngModel)]=\"formName\"\n name=\"name\"\n required\n />\n </label>\n <label class=\"flex flex-col gap-1\">\n <span class=\"text-xs text-slate-400\">Scope</span>\n <select\n class=\"bg-slate-800 border border-slate-700 rounded px-2 py-1 text-white\"\n [(ngModel)]=\"formScope\"\n name=\"scope\"\n >\n <option value=\"single-project\">single-project</option>\n <option value=\"cross-project\">cross-project</option>\n <option value=\"specialized\">specialized</option>\n </select>\n </label>\n <label class=\"flex flex-col gap-1\">\n <span class=\"text-xs text-slate-400\">Projekt ID</span>\n <input\n class=\"bg-slate-800 border border-slate-700 rounded px-2 py-1 text-white\"\n [(ngModel)]=\"formProjectId\"\n name=\"projectId\"\n />\n </label>\n <label class=\"flex flex-col gap-1\">\n <span class=\"text-xs text-slate-400\">LLM Provider</span>\n <input\n class=\"bg-slate-800 border border-slate-700 rounded px-2 py-1 text-white\"\n [(ngModel)]=\"formProviderName\"\n name=\"providerName\"\n placeholder=\"openai / anthropic / ...\"\n />\n </label>\n <label class=\"flex flex-col gap-1 md:col-span-2\">\n <span class=\"text-xs text-slate-400\">Modell</span>\n <input\n class=\"bg-slate-800 border border-slate-700 rounded px-2 py-1 text-white\"\n [(ngModel)]=\"formModel\"\n name=\"model\"\n />\n </label>\n </div>\n @if (formError) {\n <div class=\"bg-red-900 border border-red-700 rounded px-3 py-2 text-red-200 text-sm\">\n {{ formError }}\n </div>\n }\n <div class=\"flex gap-2 justify-end\">\n <button type=\"button\" class=\"px-3 py-1 text-slate-400 hover:text-white\" (click)=\"closeForm()\">\n Mégse\n </button>\n <button type=\"submit\" class=\"px-4 py-1 bg-cyan-600 hover:bg-cyan-500 text-white rounded\">\n Létrehozás\n </button>\n </div>\n </form>\n }\n\n <div class=\"overflow-x-auto bg-slate-900 border border-slate-800 rounded\">\n <table class=\"w-full text-sm\">\n <thead class=\"bg-slate-800 text-slate-300\">\n <tr>\n <th class=\"text-left px-3 py-2\">Név</th>\n <th class=\"text-left px-3 py-2\">Scope</th>\n <th class=\"text-left px-3 py-2\">Projekt</th>\n <th class=\"text-left px-3 py-2\">Státusz</th>\n <th class=\"text-left px-3 py-2\">Iter#</th>\n <th class=\"text-left px-3 py-2\">Műveletek</th>\n </tr>\n </thead>\n <tbody>\n @for (o of orchestratorList_$(); track o._id) {\n <tr class=\"border-t border-slate-800 hover:bg-slate-800/50\">\n <td class=\"px-3 py-2\">\n <a\n [routerLink]=\"activeCcapId_$() ? ['/orchestrator', activeCcapId_$(), o._id] : ['/orchestrator', o._id]\"\n class=\"text-cyan-400 hover:text-cyan-300 font-mono\"\n >\n {{ o.name }}\n </a>\n </td>\n <td class=\"px-3 py-2 text-slate-400\">{{ o.scope }}</td>\n <td class=\"px-3 py-2 text-slate-400 font-mono text-xs\">\n {{ o.projectId || o.projectIds.join(',') || '—' }}\n </td>\n <td class=\"px-3 py-2\">\n <span\n class=\"px-2 py-0.5 rounded text-xs font-bold\"\n [class.bg-green-900]=\"o.status === 'active'\"\n [class.text-green-300]=\"o.status === 'active'\"\n [class.bg-yellow-900]=\"o.status === 'paused'\"\n [class.text-yellow-300]=\"o.status === 'paused'\"\n [class.bg-cyan-900]=\"o.status === 'waiting-for-user' || o.status === 'bootstrap'\"\n [class.text-cyan-300]=\"o.status === 'waiting-for-user' || o.status === 'bootstrap'\"\n [class.bg-red-900]=\"o.status === 'failed'\"\n [class.text-red-300]=\"o.status === 'failed'\"\n [class.bg-slate-700]=\"o.status === 'stopped' || o.status === 'initializing'\"\n [class.text-slate-300]=\"o.status === 'stopped' || o.status === 'initializing'\"\n >\n {{ o.status }}\n </span>\n </td>\n <td class=\"px-3 py-2 text-slate-500 font-mono\">{{ o.iterationCount }}</td>\n <td class=\"px-3 py-2 space-x-1\">\n @if (o.status === 'initializing' || o.status === 'paused' || o.status === 'stopped') {\n <button class=\"px-2 py-0.5 bg-green-700 hover:bg-green-600 text-white rounded text-xs\" (click)=\"handleStart(o._id)\">\n start\n </button>\n }\n @if (o.status === 'active') {\n <button class=\"px-2 py-0.5 bg-yellow-700 hover:bg-yellow-600 text-white rounded text-xs\" (click)=\"handlePause(o._id)\">\n pause\n </button>\n }\n @if (o.status === 'paused') {\n <button class=\"px-2 py-0.5 bg-green-700 hover:bg-green-600 text-white rounded text-xs\" (click)=\"handleResume(o._id)\">\n resume\n </button>\n }\n @if (o.status !== 'stopped') {\n <button class=\"px-2 py-0.5 bg-red-800 hover:bg-red-700 text-white rounded text-xs\" (click)=\"handleStop(o._id)\">\n stop\n </button>\n }\n </td>\n </tr>\n } @empty {\n <tr>\n <td colspan=\"6\" class=\"px-3 py-6 text-center text-slate-500\">\n Nincs Orchestrator. Kattints a „+ Új Orchestrator\" gombra.\n </td>\n </tr>\n }\n </tbody>\n </table>\n </div>\n</div>\n", "import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { RouterModule, Routes } from '@angular/router';\n\nimport { ORC_Detail_Component } from './_components/orc-detail/orc-detail.component';\nimport { ORC_List_Component } from './_components/orc-list/orc-list.component';\n\n/** Orchestrator modul route-ok. */\nconst orchestratorRoutes: Routes = [\n {\n path: '',\n pathMatch: 'full',\n component: ORC_List_Component,\n },\n // Cycle 970 (REQ-INST-SES-URL-001 Slice E): új `:ccapId/:id` route a legacy\n // `:id` ELŐTT — more-specific-first match. Refresh-kor a Detail-component\n // a URL-ből select-eli az instance-ot, mielőtt az orchestrator-load fut\n // (OC/CC/CA cycle 785b–c minta).\n {\n path: ':ccapId/:id',\n component: ORC_Detail_Component,\n },\n {\n path: ':id',\n component: ORC_Detail_Component,\n },\n];\n\n/**\n * Orchestrator modul — Phase 1 MVP-váz.\n * Spec: REQ-ORC-013, REQ-ORC-017-B.\n */\n@NgModule({\n imports: [\n CommonModule,\n RouterModule.forChild(orchestratorRoutes),\n ORC_List_Component,\n ORC_Detail_Component,\n ],\n})\n/** Orchestrator modul. */\nexport class Orchestrator_Module {}\n"],
5
+ "mappings": "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",
6
+ "names": ["import_fsm_dynamo", "import_fsm_dynamo", "ORC_ApiService", "http", "inject", "HttpClient", "baseUrl", "environment", "api", "createOrchestrator", "params", "firstValueFrom", "post", "listOrchestrators", "queryParts", "projectId", "push", "encodeURIComponent", "scope", "status", "query", "length", "join", "get", "getOrchestrator", "id", "startOrchestrator", "pauseOrchestrator", "resumeOrchestrator", "stopOrchestrator", "listTasks", "listMessages", "limit", "postUserMessage", "rawContent", "listQuestions", "openOnly", "confirmBootstrap", "submitQuestionAnswer", "questionId", "answer", "switchMode", "mode", "getGlobalSummary", "listWorkflows", "getWorkflowById", "wfId", "listBatches", "listDecisions", "factory", "\u0275fac", "providedIn", "Orchestrator_DataService", "orc_AS", "inject", "ORC_ApiService", "orchestratorListRaw_$", "signal", "currentOrchestratorRaw_$", "currentTasksRaw_$", "currentMessagesRaw_$", "isResponseGeneratingRaw_$", "orchestratorList_$", "asReadonly", "currentOrchestrator_$", "currentTasks_$", "currentMessages_$", "isResponseGenerating_$", "activeCount_$", "computed", "filter", "o", "status", "length", "refreshList", "__async", "response", "listOrchestrators", "set", "orchestrators", "error", "DyFM_Log", "refreshCurrent", "id", "getOrchestrator", "orchestrator", "refreshCurrentTasks", "listTasks", "tasks", "createOrchestrator", "params", "startOrchestrator", "Promise", "all", "pauseOrchestrator", "resumeOrchestrator", "stopOrchestrator", "confirmBootstrap", "switchMode", "mode", "refreshCurrentMessages", "listMessages", "messages", "setResponseGenerating", "value", "clearCurrent", "listWorkflows", "workflows", "getWorkflowById", "wfId", "workflow", "limit", "postUserMessage", "rawContent", "message", "listQuestions", "openOnly", "questions", "submitQuestionAnswer", "questionId", "answer", "question", "getGlobalSummary", "summary", "factory", "\u0275fac", "providedIn", "GLOBAL_EVENTS", "Set", "DETAIL_EVENTS", "RESPONSE_MESSAGE_EVENTS", "ORC_Realtime_ControlService", "ccapSocket_CS", "inject", "CCAP_Socket_ControlService", "orchestrator_DS", "Orchestrator_DataService", "globalSub", "detailSub", "responseSub", "currentOrchestratorId", "subscribeGlobal", "event$", "pipe", "filter", "envelope", "has", "event", "subscribe", "__async", "refreshList", "subscribeDetail", "orchestratorId", "unsubscribeDetail", "isForCurrent", "payload", "id", "setResponseGenerating", "Promise", "all", "refreshCurrent", "refreshCurrentTasks", "refreshCurrentMessages", "unsubscribe", "ngOnDestroy", "factory", "\u0275fac", "providedIn", "ORC_PHASES", "id", "label", "phase", "category", "Ses_GraphNodeCategory_Type", "milestone", "llmCall", "ORC_GraphLayout_Util", "buildSkeletonLayout", "centerX", "SES_GRAPH_PADDING", "SES_GRAPH_PHASE_NODE_WIDTH", "currentY", "nodes", "edges", "i", "length", "phaseData", "isMilestone", "nodeWidth", "SES_GRAPH_MILESTONE_NODE_WIDTH", "nodeHeight", "SES_GRAPH_MILESTONE_NODE_HEIGHT", "SES_GRAPH_PHASE_NODE_HEIGHT", "node", "Ses_GraphLayout_Util", "createNode", "x", "y", "width", "height", "push", "createEdge", "Ses_GraphEdgeCategory_Type", "sequential", "SES_GRAPH_VERTICAL_GAP", "edgesWithPaths", "map", "e", "source", "find", "n", "sourceNodeId", "target", "targetNodeId", "__spreadProps", "__spreadValues", "pathD", "computeEdgePath", "viewBox", "recalculateViewBox", "loopContainerBounds", "ORC_PHASE_TO_NODE_ID", "wake", "collect", "analyze", "execute", "report", "sleep", "ORC_PHASE_ORDER", "ORC_GRAPH_EVENTS", "Set", "ORC_Graph_DataService", "ccapSocket_CS", "inject", "CCAP_Socket_ControlService", "destroyRef", "DestroyRef", "graphLayout_$", "signal", "activeNodeId_$", "selectedNodeId_$", "isGraphOpen_$", "graphOrchestratorId_$", "isLoading_$", "eventSubscription", "constructor", "onDestroy", "disposeSubscription", "openGraph", "orchestratorId", "resetState", "set", "skeleton", "ORC_GraphLayout_Util", "buildSkeletonLayout", "event$", "pipe", "filter", "envelope", "has", "event", "payload", "subscribe", "applyOrcEvent", "closeGraph", "selectNode", "nodeId", "current", "clearSelection", "eventName", "applyPhaseActive", "markAllCompleted", "status", "phase", "layout", "foundActive", "orderedId", "setNodeState", "Ses_GraphNodeState_Type", "active", "completed", "node", "nodes", "state", "error", "id", "index", "findIndex", "n", "updatedNodes", "__spreadProps", "__spreadValues", "unsubscribe", "factory", "\u0275fac", "providedIn", "import_fsm_dynamo", "ORC_MessageBubbleMapper_Util", "mapAll", "messages", "map", "m", "mapSingle", "msg", "kind", "resolveKind", "isUserAligned", "from", "listKey", "_id", "bodyText", "rawContent", "timestampIso", "__created", "toolName", "undefined", "headerStatusDot", "CCAP_AgentConsoleBubbleKind_Type", "error", "flags", "showCopy", "showRawInfo", "useEditDiffForExpandable", "toolCallId", "messageType", "userPrompt", "assistant", "thinking", "tool", "toolResult", "statusUpdate", "info", "\u0275\u0275elementStart", "\u0275\u0275text", "\u0275\u0275elementEnd", "\u0275\u0275advance", "\u0275\u0275textInterpolate1", "q_r2", "context", "\u0275\u0275listener", "\u0275\u0275restoreView", "_r3", "\u0275\u0275nextContext", "$implicit", "ctx_r3", "\u0275\u0275resetView", "handleYesNoChoice", "_id", "handleSubmitAnswer", "questionType", "\u0275\u0275classProp", "selectedChoice", "\u0275\u0275property", "choice_r7", "_r6", "handleMultipleChoice", "\u0275\u0275repeaterCreate", "ORC_ChatPanel_Component_Conditional_2_For_4_Conditional_5_For_2_Template", "\u0275\u0275repeaterTrackByIdentity", "_r5", "\u0275\u0275repeater", "possibleAnswers", "\u0275\u0275twoWayListener", "$event", "_r8", "i0", "\u0275\u0275twoWayBindingSet", "answerDrafts", "\u0275\u0275twoWayProperty", "\u0275\u0275template", "ORC_ChatPanel_Component_Conditional_2_For_4_Conditional_3_Template", "ORC_ChatPanel_Component_Conditional_2_For_4_Conditional_4_Template", "ORC_ChatPanel_Component_Conditional_2_For_4_Conditional_5_Template", "ORC_ChatPanel_Component_Conditional_2_For_4_Conditional_6_Template", "\u0275\u0275textInterpolate", "questionText", "\u0275\u0275conditional", "ORC_ChatPanel_Component_Conditional_2_For_4_Template", "_forTrack1", "openQuestions_$", "length", "\u0275\u0275element", "bubble_r9", "REFRESH_EVENTS", "Set", "ORC_ChatPanel_Component", "DyNX_SubscriptionControl", "orchestrator_DS", "inject", "Orchestrator_DataService", "ccapSocket_CS", "CCAP_Socket_ControlService", "orchestratorId", "scrollAnchor", "questionsRaw_$", "signal", "bubbleViews_$", "computed", "ORC_MessageBubbleMapper_Util", "mapAll", "currentMessages_$", "asReadonly", "isResponseGenerating_$", "userInput", "constructor", "ngOnInit", "refresh", "addSubscription", "event$", "pipe", "filter", "envelope", "has", "event", "payload", "subscribe", "__async", "scrollToBottom", "handleSendMessage", "rawContent", "postUserMessage", "refreshCurrentMessages", "error", "DyFM_Log", "questionId", "rawAnswer", "submitQuestionAnswer", "value", "questions", "listQuestions", "set", "setTimeout", "nativeElement", "scrollIntoView", "behavior", "selectors", "viewQuery", "rf", "ctx", "ORC_ChatPanel_Component_Conditional_2_Template", "ORC_ChatPanel_Component_For_5_Template", "_forTrack0", "ORC_ChatPanel_Component_ForEmpty_6_Template", "ORC_ChatPanel_Component_Conditional_7_Template", "_r1", "CommonModule", "FormsModule", "\u0275NgNoValidate", "DefaultValueAccessor", "NgControlStatus", "NgControlStatusGroup", "NgModel", "NgForm", "S_SessionChatColumnLayout_Component", "S_AgentConsoleMessageBubble_Component", "encapsulation", "ORC_GraphModal_Component", "graph_DS", "inject", "ORC_Graph_DataService", "isOpen_$", "isGraphOpen_$", "layout_$", "graphLayout_$", "activeNodeId_$", "selectedNodeId_$", "isLoading_$", "handleClose", "closeGraph", "handleNodeClick", "nodeId", "selectNode", "handleDetailClose", "clearSelection", "selectors", "standalone", "features", "\u0275\u0275StandaloneFeature", "decls", "vars", "consts", "template", "rf", "ctx", "\u0275\u0275elementStart", "\u0275\u0275listener", "$event", "\u0275\u0275elementEnd", "\u0275\u0275property", "\u0275\u0275advance", "CommonModule", "S_Modal_Component", "Ses_GraphView_Component", "encapsulation", "ORC_ModeSwitcher_Component", "mode_$", "input", "required", "alias", "modeChanged", "output", "handleToggle", "next", "emit", "selectors", "inputs", "outputs", "standalone", "features", "\u0275\u0275StandaloneFeature", "decls", "vars", "consts", "template", "rf", "ctx", "\u0275\u0275elementStart", "\u0275\u0275listener", "\u0275\u0275text", "\u0275\u0275elementEnd", "\u0275\u0275advance", "\u0275\u0275classProp", "\u0275\u0275property", "\u0275\u0275elementStart", "\u0275\u0275text", "\u0275\u0275elementEnd", "\u0275\u0275advance", "\u0275\u0275textInterpolate", "t_r1", "code", "title", "type", "\u0275\u0275classProp", "priority", "\u0275\u0275textInterpolate1", "source", "assignedAgentType", "\u0275\u0275repeaterCreate", "ORC_TaskQueuePanel_Component_For_61_For_22_Template", "_forTrack0", "groupKey_r2", "ctx_r2", "groupedByStatus_$", "length", "\u0275\u0275repeater", "ORC_TaskQueuePanel_Component", "orchestrator_DS", "inject", "Orchestrator_DataService", "tasks_$", "filterStatus_$", "signal", "filterType_$", "filterPriority_$", "searchText_$", "filteredTasks_$", "computed", "list", "status", "search", "filter", "t", "trim", "CCAP_TextSearch_Util", "includesText", "description", "groups", "task", "key", "push", "statusOrder", "orderedGroupKeys_$", "handleFilterStatus", "value", "set", "handleFilterType", "handleFilterPriority", "handleSearchText", "selectors", "inputs", "standalone", "features", "\u0275\u0275StandaloneFeature", "decls", "vars", "consts", "template", "rf", "ctx", "\u0275\u0275listener", "$event", "\u0275\u0275template", "ORC_TaskQueuePanel_Component_Conditional_59_Template", "ORC_TaskQueuePanel_Component_For_61_Template", "\u0275\u0275repeaterTrackByIdentity", "\u0275\u0275textInterpolate2", "\u0275\u0275property", "\u0275\u0275conditional", "CommonModule", "FormsModule", "NgSelectOption", "\u0275NgSelectMultipleOption", "DefaultValueAccessor", "SelectControlValueAccessor", "NgControlStatus", "NgModel", "encapsulation", "import_fsm_dynamo", "\u0275\u0275elementStart", "\u0275\u0275text", "\u0275\u0275elementEnd", "\u0275\u0275listener", "wf_r2", "\u0275\u0275restoreView", "_r1", "$implicit", "ctx_r2", "\u0275\u0275nextContext", "\u0275\u0275resetView", "handleOpenDetails", "id", "\u0275\u0275advance", "\u0275\u0275textInterpolate", "name", "summary", "_r4", "handleCloseDetails", "$event", "i0", "stopPropagation", "sel_r5", "filename", "rawText", "ORC_WorkflowLibraryPanel_Component", "orchestrator_DS", "inject", "Orchestrator_DataService", "orchestratorId", "workflowsRaw_$", "signal", "selectedRaw_$", "loadingRaw_$", "workflows_$", "asReadonly", "selected_$", "loading_$", "ngOnInit", "loadList", "wfId", "__async", "set", "workflow", "getWorkflowById", "error", "DyFM_Log", "workflows", "listWorkflows", "selectors", "inputs", "standalone", "features", "\u0275\u0275StandaloneFeature", "decls", "vars", "consts", "template", "rf", "ctx", "\u0275\u0275template", "ORC_WorkflowLibraryPanel_Component_Conditional_6_Template", "\u0275\u0275repeaterCreate", "ORC_WorkflowLibraryPanel_Component_For_9_Template", "_forTrack0", "ORC_WorkflowLibraryPanel_Component_Conditional_10_Template", "\u0275\u0275textInterpolate1", "length", "\u0275\u0275conditional", "\u0275\u0275repeater", "tmp_3_0", "CommonModule", "encapsulation", "\u0275\u0275elementStart", "\u0275\u0275listener", "\u0275\u0275restoreView", "_r3", "ctx_r1", "\u0275\u0275nextContext", "\u0275\u0275resetView", "handleStart", "\u0275\u0275text", "\u0275\u0275elementEnd", "_r4", "handlePause", "_r5", "handleResume", "_r6", "handleStop", "_r7", "handleConfirmBootstrap", "\u0275\u0275element", "\u0275\u0275property", "tasks_$", "tmp_3_0", "orchestratorId", "undefined", "\u0275\u0275advance", "\u0275\u0275textInterpolate", "orc_r8", "scope", "projectId", "\u0275\u0275textInterpolate2", "providerName", "model", "iterationCount", "maxParallelism", "pollIntervalSeconds", "operationMode", "$event", "_r1", "handleSidebarResizeStart", "handleModeSwitch", "\u0275\u0275template", "ORC_Detail_Component_Conditional_0_Conditional_15_Template", "ORC_Detail_Component_Conditional_0_Conditional_16_Template", "ORC_Detail_Component_Conditional_0_Conditional_17_Template", "ORC_Detail_Component_Conditional_0_Conditional_18_Template", "handleOpenGraph", "handleToggleSidebar", "ORC_Detail_Component_Conditional_0_Conditional_23_Template", "sidebarTab", "ORC_Detail_Component_Conditional_0_Conditional_34_Template", "ORC_Detail_Component_Conditional_0_Conditional_35_Template", "ORC_Detail_Component_Conditional_0_Conditional_36_Template", "isSidebarOpen", "sidebarWidthPx", "isResizing", "name", "_id", "\u0275\u0275classProp", "status", "\u0275\u0275textInterpolate1", "\u0275\u0275conditional", "tmp_26_0", "length", "ORC_Detail_Component", "DyNX_SubscriptionControl", "route", "inject", "ActivatedRoute", "orchestrator_DS", "Orchestrator_DataService", "realtime_CS", "ORC_Realtime_ControlService", "graph_DS", "ORC_Graph_DataService", "peiContext_DS", "ExS_InstanceContext_DataService", "current_$", "currentOrchestrator_$", "currentTasks_$", "resizeStartX", "resizeStartWidth", "onResizeMove", "ev", "handleSidebarResizeMove", "onResizeEnd", "handleSidebarResizeEnd", "ngOnInit", "addSubscription", "paramMap", "subscribe", "params", "id", "get", "ccapIdFromUrl", "activeCcapId_$", "selectInstance", "refreshCurrent", "refreshCurrentTasks", "refreshCurrentMessages", "subscribeDetail", "ngOnDestroy", "unsubscribeDetail", "clearCurrent", "document", "removeEventListener", "__async", "startOrchestrator", "error", "DyFM_Log", "pauseOrchestrator", "resumeOrchestrator", "stopOrchestrator", "confirmBootstrap", "mode", "switchMode", "openGraph", "event", "clientX", "addEventListener", "delta", "Math", "max", "min", "__ngFactoryType__", "selectors", "hostAttrs", "standalone", "features", "\u0275\u0275InheritDefinitionFeature", "\u0275\u0275StandaloneFeature", "decls", "vars", "consts", "template", "rf", "ctx", "ORC_Detail_Component_Conditional_0_Template", "ORC_Detail_Component_Conditional_1_Template", "tmp_0_0", "CommonModule", "RouterModule", "RouterLink", "S_SessionDetailThreeColumnLayout_Component", "ORC_ChatPanel_Component", "ORC_GraphModal_Component", "ORC_ModeSwitcher_Component", "ORC_TaskQueuePanel_Component", "ORC_WorkflowLibraryPanel_Component", "encapsulation", "import_fsm_dynamo", "\u0275\u0275elementStart", "\u0275\u0275listener", "\u0275\u0275restoreView", "_r1", "ctx_r1", "\u0275\u0275nextContext", "\u0275\u0275resetView", "openForm", "\u0275\u0275text", "\u0275\u0275elementEnd", "\u0275\u0275advance", "\u0275\u0275textInterpolate1", "formError", "_r3", "handleSubmitForm", "\u0275\u0275twoWayListener", "$event", "i0", "\u0275\u0275twoWayBindingSet", "formName", "formScope", "formProjectId", "formProviderName", "formModel", "\u0275\u0275template", "ORC_List_Component_Conditional_10_Conditional_30_Template", "closeForm", "\u0275\u0275twoWayProperty", "\u0275\u0275conditional", "_r4", "o_r5", "$implicit", "handleStart", "_id", "_r6", "handlePause", "_r7", "handleResume", "_r8", "handleStop", "ORC_List_Component_For_29_Conditional_14_Template", "ORC_List_Component_For_29_Conditional_15_Template", "ORC_List_Component_For_29_Conditional_16_Template", "ORC_List_Component_For_29_Conditional_17_Template", "\u0275\u0275property", "activeCcapId_$", "\u0275\u0275pureFunction2", "_c0", "\u0275\u0275pureFunction1", "_c1", "name", "\u0275\u0275textInterpolate", "scope", "projectId", "projectIds", "join", "\u0275\u0275classProp", "status", "iterationCount", "ORC_List_Component", "orchestrator_DS", "inject", "Orchestrator_DataService", "realtime_CS", "ORC_Realtime_ControlService", "peiContext_DS", "ExS_InstanceContext_DataService", "orchestratorList_$", "activeCount_$", "formIsOpen", "ngOnInit", "subscribeGlobal", "refreshList", "__async", "trim", "createOrchestrator", "undefined", "providerName", "model", "error", "extractErrorMessage", "id", "startOrchestrator", "DyFM_Log", "pauseOrchestrator", "resumeOrchestrator", "stopOrchestrator", "String", "message", "selectors", "standalone", "features", "\u0275\u0275StandaloneFeature", "decls", "vars", "consts", "template", "rf", "ctx", "ORC_List_Component_Conditional_9_Template", "ORC_List_Component_Conditional_10_Template", "\u0275\u0275repeaterCreate", "ORC_List_Component_For_29_Template", "_forTrack0", "ORC_List_Component_ForEmpty_30_Template", "\u0275\u0275repeater", "CommonModule", "FormsModule", "\u0275NgNoValidate", "NgSelectOption", "\u0275NgSelectMultipleOption", "DefaultValueAccessor", "SelectControlValueAccessor", "NgControlStatus", "NgControlStatusGroup", "RequiredValidator", "NgModel", "NgForm", "RouterModule", "RouterLink", "encapsulation", "orchestratorRoutes", "path", "pathMatch", "component", "ORC_List_Component", "ORC_Detail_Component", "Orchestrator_Module", "CommonModule", "RouterModule", "forChild"]
7
+ }