@aelinrezende/pipa-core 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (259) hide show
  1. package/README.md +131 -0
  2. package/extensions/pipa/constants/backlog.d.ts +49 -0
  3. package/extensions/pipa/constants/backlog.d.ts.map +1 -0
  4. package/extensions/pipa/constants/compactor.d.ts +7 -0
  5. package/extensions/pipa/constants/compactor.d.ts.map +1 -0
  6. package/extensions/pipa/constants/docs.d.ts +46 -0
  7. package/extensions/pipa/constants/docs.d.ts.map +1 -0
  8. package/extensions/pipa/constants/file.d.ts +15 -0
  9. package/extensions/pipa/constants/file.d.ts.map +1 -0
  10. package/extensions/pipa/constants/pipa.d.ts +6 -0
  11. package/extensions/pipa/constants/pipa.d.ts.map +1 -0
  12. package/extensions/pipa/constants/store.d.ts +6 -0
  13. package/extensions/pipa/constants/store.d.ts.map +1 -0
  14. package/extensions/pipa/constants/task.d.ts +62 -0
  15. package/extensions/pipa/constants/task.d.ts.map +1 -0
  16. package/extensions/pipa/constants/teammate.d.ts +25 -0
  17. package/extensions/pipa/constants/teammate.d.ts.map +1 -0
  18. package/extensions/pipa/constants/todo.d.ts +21 -0
  19. package/extensions/pipa/constants/todo.d.ts.map +1 -0
  20. package/extensions/pipa/core/apply-features.d.ts +4 -0
  21. package/extensions/pipa/core/apply-features.d.ts.map +1 -0
  22. package/extensions/pipa/core/config.d.ts +3 -0
  23. package/extensions/pipa/core/config.d.ts.map +1 -0
  24. package/extensions/pipa/core/decorators/events.d.ts +15 -0
  25. package/extensions/pipa/core/decorators/events.d.ts.map +1 -0
  26. package/extensions/pipa/core/errors/pipa-exception.d.ts +17 -0
  27. package/extensions/pipa/core/errors/pipa-exception.d.ts.map +1 -0
  28. package/extensions/pipa/core/events.types.d.ts +72 -0
  29. package/extensions/pipa/core/events.types.d.ts.map +1 -0
  30. package/extensions/pipa/core/pipa.d.ts +19 -0
  31. package/extensions/pipa/core/pipa.d.ts.map +1 -0
  32. package/extensions/pipa/core/toast.d.ts +13 -0
  33. package/extensions/pipa/core/toast.d.ts.map +1 -0
  34. package/extensions/pipa/cross-cutting/resource-loader.d.ts +8 -0
  35. package/extensions/pipa/cross-cutting/resource-loader.d.ts.map +1 -0
  36. package/extensions/pipa/cross-cutting/store.d.ts +5 -0
  37. package/extensions/pipa/cross-cutting/store.d.ts.map +1 -0
  38. package/extensions/pipa/features/backlog/backlog.definitions.d.ts +67 -0
  39. package/extensions/pipa/features/backlog/backlog.definitions.d.ts.map +1 -0
  40. package/extensions/pipa/features/backlog/backlog.entity.d.ts +43 -0
  41. package/extensions/pipa/features/backlog/backlog.entity.d.ts.map +1 -0
  42. package/extensions/pipa/features/backlog/backlog.feature.d.ts +14 -0
  43. package/extensions/pipa/features/backlog/backlog.feature.d.ts.map +1 -0
  44. package/extensions/pipa/features/backlog/backlog.hub.d.ts +25 -0
  45. package/extensions/pipa/features/backlog/backlog.hub.d.ts.map +1 -0
  46. package/extensions/pipa/features/backlog/hooks/guard.d.ts +13 -0
  47. package/extensions/pipa/features/backlog/hooks/guard.d.ts.map +1 -0
  48. package/extensions/pipa/features/backlog/hooks/index.d.ts +2 -0
  49. package/extensions/pipa/features/backlog/hooks/index.d.ts.map +1 -0
  50. package/extensions/pipa/features/backlog/hub/core.d.ts +50 -0
  51. package/extensions/pipa/features/backlog/hub/core.d.ts.map +1 -0
  52. package/extensions/pipa/features/backlog/hub/index.d.ts +4 -0
  53. package/extensions/pipa/features/backlog/hub/index.d.ts.map +1 -0
  54. package/extensions/pipa/features/backlog/hub/state.d.ts +48 -0
  55. package/extensions/pipa/features/backlog/hub/state.d.ts.map +1 -0
  56. package/extensions/pipa/features/backlog/hub/validator.d.ts +14 -0
  57. package/extensions/pipa/features/backlog/hub/validator.d.ts.map +1 -0
  58. package/extensions/pipa/features/base-feature.d.ts +13 -0
  59. package/extensions/pipa/features/base-feature.d.ts.map +1 -0
  60. package/extensions/pipa/features/docs/docs.definitions.d.ts +73 -0
  61. package/extensions/pipa/features/docs/docs.definitions.d.ts.map +1 -0
  62. package/extensions/pipa/features/docs/docs.entity.d.ts +27 -0
  63. package/extensions/pipa/features/docs/docs.entity.d.ts.map +1 -0
  64. package/extensions/pipa/features/docs/docs.feature.d.ts +13 -0
  65. package/extensions/pipa/features/docs/docs.feature.d.ts.map +1 -0
  66. package/extensions/pipa/features/docs/docs.hub.d.ts +22 -0
  67. package/extensions/pipa/features/docs/docs.hub.d.ts.map +1 -0
  68. package/extensions/pipa/features/docs/hub/core.d.ts +38 -0
  69. package/extensions/pipa/features/docs/hub/core.d.ts.map +1 -0
  70. package/extensions/pipa/features/docs/hub/index.d.ts +4 -0
  71. package/extensions/pipa/features/docs/hub/index.d.ts.map +1 -0
  72. package/extensions/pipa/features/docs/hub/state.d.ts +34 -0
  73. package/extensions/pipa/features/docs/hub/state.d.ts.map +1 -0
  74. package/extensions/pipa/features/docs/hub/validator.d.ts +19 -0
  75. package/extensions/pipa/features/docs/hub/validator.d.ts.map +1 -0
  76. package/extensions/pipa/features/onboarding/index.d.ts +2 -0
  77. package/extensions/pipa/features/onboarding/index.d.ts.map +1 -0
  78. package/extensions/pipa/features/onboarding/onboarding.feature.d.ts +19 -0
  79. package/extensions/pipa/features/onboarding/onboarding.feature.d.ts.map +1 -0
  80. package/extensions/pipa/features/onboarding/prompts.d.ts +8 -0
  81. package/extensions/pipa/features/onboarding/prompts.d.ts.map +1 -0
  82. package/extensions/pipa/features/permission/hooks/custom-tools.d.ts +12 -0
  83. package/extensions/pipa/features/permission/hooks/custom-tools.d.ts.map +1 -0
  84. package/extensions/pipa/features/permission/hooks/index.d.ts +3 -0
  85. package/extensions/pipa/features/permission/hooks/index.d.ts.map +1 -0
  86. package/extensions/pipa/features/permission/hooks/terminal.d.ts +12 -0
  87. package/extensions/pipa/features/permission/hooks/terminal.d.ts.map +1 -0
  88. package/extensions/pipa/features/permission/permission.definitions.d.ts +16 -0
  89. package/extensions/pipa/features/permission/permission.definitions.d.ts.map +1 -0
  90. package/extensions/pipa/features/permission/permission.feature.d.ts +13 -0
  91. package/extensions/pipa/features/permission/permission.feature.d.ts.map +1 -0
  92. package/extensions/pipa/features/provider/custom.feature.d.ts +8 -0
  93. package/extensions/pipa/features/provider/custom.feature.d.ts.map +1 -0
  94. package/extensions/pipa/features/reminder-cleaner/hooks/cleaner.d.ts +14 -0
  95. package/extensions/pipa/features/reminder-cleaner/hooks/cleaner.d.ts.map +1 -0
  96. package/extensions/pipa/features/reminder-cleaner/reminder-cleaner.feature.d.ts +12 -0
  97. package/extensions/pipa/features/reminder-cleaner/reminder-cleaner.feature.d.ts.map +1 -0
  98. package/extensions/pipa/features/task/hooks/guard.d.ts +14 -0
  99. package/extensions/pipa/features/task/hooks/guard.d.ts.map +1 -0
  100. package/extensions/pipa/features/task/hooks/index.d.ts +4 -0
  101. package/extensions/pipa/features/task/hooks/index.d.ts.map +1 -0
  102. package/extensions/pipa/features/task/hooks/reminders.d.ts +15 -0
  103. package/extensions/pipa/features/task/hooks/reminders.d.ts.map +1 -0
  104. package/extensions/pipa/features/task/hooks/tui-register.d.ts +8 -0
  105. package/extensions/pipa/features/task/hooks/tui-register.d.ts.map +1 -0
  106. package/extensions/pipa/features/task/hub/core.d.ts +60 -0
  107. package/extensions/pipa/features/task/hub/core.d.ts.map +1 -0
  108. package/extensions/pipa/features/task/hub/index.d.ts +5 -0
  109. package/extensions/pipa/features/task/hub/index.d.ts.map +1 -0
  110. package/extensions/pipa/features/task/hub/squad.d.ts +37 -0
  111. package/extensions/pipa/features/task/hub/squad.d.ts.map +1 -0
  112. package/extensions/pipa/features/task/hub/state.d.ts +104 -0
  113. package/extensions/pipa/features/task/hub/state.d.ts.map +1 -0
  114. package/extensions/pipa/features/task/hub/validator.d.ts +50 -0
  115. package/extensions/pipa/features/task/hub/validator.d.ts.map +1 -0
  116. package/extensions/pipa/features/task/task.definitions.d.ts +86 -0
  117. package/extensions/pipa/features/task/task.definitions.d.ts.map +1 -0
  118. package/extensions/pipa/features/task/task.entity.d.ts +61 -0
  119. package/extensions/pipa/features/task/task.entity.d.ts.map +1 -0
  120. package/extensions/pipa/features/task/task.feature.d.ts +10 -0
  121. package/extensions/pipa/features/task/task.feature.d.ts.map +1 -0
  122. package/extensions/pipa/features/task/task.hub.d.ts +24 -0
  123. package/extensions/pipa/features/task/task.hub.d.ts.map +1 -0
  124. package/extensions/pipa/features/task/tui/index.d.ts +2 -0
  125. package/extensions/pipa/features/task/tui/index.d.ts.map +1 -0
  126. package/extensions/pipa/features/task/tui/task-tree.widget.d.ts +19 -0
  127. package/extensions/pipa/features/task/tui/task-tree.widget.d.ts.map +1 -0
  128. package/extensions/pipa/features/teammate/hooks/execution-context.d.ts +12 -0
  129. package/extensions/pipa/features/teammate/hooks/execution-context.d.ts.map +1 -0
  130. package/extensions/pipa/features/teammate/hooks/index.d.ts +8 -0
  131. package/extensions/pipa/features/teammate/hooks/index.d.ts.map +1 -0
  132. package/extensions/pipa/features/teammate/hooks/lifecycle.d.ts +17 -0
  133. package/extensions/pipa/features/teammate/hooks/lifecycle.d.ts.map +1 -0
  134. package/extensions/pipa/features/teammate/hooks/observability.d.ts +17 -0
  135. package/extensions/pipa/features/teammate/hooks/observability.d.ts.map +1 -0
  136. package/extensions/pipa/features/teammate/hooks/reminders.d.ts +19 -0
  137. package/extensions/pipa/features/teammate/hooks/reminders.d.ts.map +1 -0
  138. package/extensions/pipa/features/teammate/hooks/session-interval.d.ts +56 -0
  139. package/extensions/pipa/features/teammate/hooks/session-interval.d.ts.map +1 -0
  140. package/extensions/pipa/features/teammate/hooks/shutdown-context.d.ts +10 -0
  141. package/extensions/pipa/features/teammate/hooks/shutdown-context.d.ts.map +1 -0
  142. package/extensions/pipa/features/teammate/hooks/tui-register.d.ts +8 -0
  143. package/extensions/pipa/features/teammate/hooks/tui-register.d.ts.map +1 -0
  144. package/extensions/pipa/features/teammate/hub/core.d.ts +36 -0
  145. package/extensions/pipa/features/teammate/hub/core.d.ts.map +1 -0
  146. package/extensions/pipa/features/teammate/hub/exchange.d.ts +35 -0
  147. package/extensions/pipa/features/teammate/hub/exchange.d.ts.map +1 -0
  148. package/extensions/pipa/features/teammate/hub/frontmatter.d.ts +19 -0
  149. package/extensions/pipa/features/teammate/hub/frontmatter.d.ts.map +1 -0
  150. package/extensions/pipa/features/teammate/hub/index.d.ts +6 -0
  151. package/extensions/pipa/features/teammate/hub/index.d.ts.map +1 -0
  152. package/extensions/pipa/features/teammate/hub/state.d.ts +39 -0
  153. package/extensions/pipa/features/teammate/hub/state.d.ts.map +1 -0
  154. package/extensions/pipa/features/teammate/hub/validator.d.ts +21 -0
  155. package/extensions/pipa/features/teammate/hub/validator.d.ts.map +1 -0
  156. package/extensions/pipa/features/teammate/prompts.d.ts +13 -0
  157. package/extensions/pipa/features/teammate/prompts.d.ts.map +1 -0
  158. package/extensions/pipa/features/teammate/teammate.definitions.d.ts +42 -0
  159. package/extensions/pipa/features/teammate/teammate.definitions.d.ts.map +1 -0
  160. package/extensions/pipa/features/teammate/teammate.entity.d.ts +68 -0
  161. package/extensions/pipa/features/teammate/teammate.entity.d.ts.map +1 -0
  162. package/extensions/pipa/features/teammate/teammate.feature.d.ts +12 -0
  163. package/extensions/pipa/features/teammate/teammate.feature.d.ts.map +1 -0
  164. package/extensions/pipa/features/teammate/teammate.hub.d.ts +24 -0
  165. package/extensions/pipa/features/teammate/teammate.hub.d.ts.map +1 -0
  166. package/extensions/pipa/features/teammate/tui/index.d.ts +3 -0
  167. package/extensions/pipa/features/teammate/tui/index.d.ts.map +1 -0
  168. package/extensions/pipa/features/teammate/tui/teammate-tree.widget.d.ts +23 -0
  169. package/extensions/pipa/features/teammate/tui/teammate-tree.widget.d.ts.map +1 -0
  170. package/extensions/pipa/features/teammate/tui/tui-animator.mixin.d.ts +16 -0
  171. package/extensions/pipa/features/teammate/tui/tui-animator.mixin.d.ts.map +1 -0
  172. package/extensions/pipa/features/todo/hooks/index.d.ts +2 -0
  173. package/extensions/pipa/features/todo/hooks/index.d.ts.map +1 -0
  174. package/extensions/pipa/features/todo/hooks/reminders.d.ts +16 -0
  175. package/extensions/pipa/features/todo/hooks/reminders.d.ts.map +1 -0
  176. package/extensions/pipa/features/todo/hub/core.d.ts +35 -0
  177. package/extensions/pipa/features/todo/hub/core.d.ts.map +1 -0
  178. package/extensions/pipa/features/todo/hub/index.d.ts +4 -0
  179. package/extensions/pipa/features/todo/hub/index.d.ts.map +1 -0
  180. package/extensions/pipa/features/todo/hub/state.d.ts +40 -0
  181. package/extensions/pipa/features/todo/hub/state.d.ts.map +1 -0
  182. package/extensions/pipa/features/todo/hub/validator.d.ts +24 -0
  183. package/extensions/pipa/features/todo/hub/validator.d.ts.map +1 -0
  184. package/extensions/pipa/features/todo/todo.definitions.d.ts +31 -0
  185. package/extensions/pipa/features/todo/todo.definitions.d.ts.map +1 -0
  186. package/extensions/pipa/features/todo/todo.entity.d.ts +44 -0
  187. package/extensions/pipa/features/todo/todo.entity.d.ts.map +1 -0
  188. package/extensions/pipa/features/todo/todo.feature.d.ts +18 -0
  189. package/extensions/pipa/features/todo/todo.feature.d.ts.map +1 -0
  190. package/extensions/pipa/features/todo/todo.hub.d.ts +24 -0
  191. package/extensions/pipa/features/todo/todo.hub.d.ts.map +1 -0
  192. package/extensions/pipa/features/tool-result-compactor/hooks/compactor.d.ts +22 -0
  193. package/extensions/pipa/features/tool-result-compactor/hooks/compactor.d.ts.map +1 -0
  194. package/extensions/pipa/features/tool-result-compactor/tool-result-compactor.feature.d.ts +12 -0
  195. package/extensions/pipa/features/tool-result-compactor/tool-result-compactor.feature.d.ts.map +1 -0
  196. package/extensions/pipa/index.d.ts +5 -0
  197. package/extensions/pipa/index.d.ts.map +1 -0
  198. package/extensions/pipa/interfaces/common.d.ts +80 -0
  199. package/extensions/pipa/interfaces/common.d.ts.map +1 -0
  200. package/extensions/pipa/interfaces/config.d.ts +37 -0
  201. package/extensions/pipa/interfaces/config.d.ts.map +1 -0
  202. package/extensions/pipa/interfaces/index.d.ts +7 -0
  203. package/extensions/pipa/interfaces/index.d.ts.map +1 -0
  204. package/extensions/pipa/interfaces/intercom.d.ts +10 -0
  205. package/extensions/pipa/interfaces/intercom.d.ts.map +1 -0
  206. package/extensions/pipa/interfaces/permission.d.ts +10 -0
  207. package/extensions/pipa/interfaces/permission.d.ts.map +1 -0
  208. package/extensions/pipa/interfaces/pipa.d.ts +28 -0
  209. package/extensions/pipa/interfaces/pipa.d.ts.map +1 -0
  210. package/extensions/pipa/interfaces/reminder.d.ts +15 -0
  211. package/extensions/pipa/interfaces/reminder.d.ts.map +1 -0
  212. package/extensions/pipa/interfaces/string.d.ts +15 -0
  213. package/extensions/pipa/interfaces/string.d.ts.map +1 -0
  214. package/extensions/pipa/lib/array.d.ts +17 -0
  215. package/extensions/pipa/lib/array.d.ts.map +1 -0
  216. package/extensions/pipa/lib/doc.d.ts +30 -0
  217. package/extensions/pipa/lib/doc.d.ts.map +1 -0
  218. package/extensions/pipa/lib/file.d.ts +7 -0
  219. package/extensions/pipa/lib/file.d.ts.map +1 -0
  220. package/extensions/pipa/lib/format-tokens.d.ts +6 -0
  221. package/extensions/pipa/lib/format-tokens.d.ts.map +1 -0
  222. package/extensions/pipa/lib/graph.d.ts +16 -0
  223. package/extensions/pipa/lib/graph.d.ts.map +1 -0
  224. package/extensions/pipa/lib/index.d.ts +20 -0
  225. package/extensions/pipa/lib/index.d.ts.map +1 -0
  226. package/extensions/pipa/lib/llm.d.ts +33 -0
  227. package/extensions/pipa/lib/llm.d.ts.map +1 -0
  228. package/extensions/pipa/lib/markdown.d.ts +13 -0
  229. package/extensions/pipa/lib/markdown.d.ts.map +1 -0
  230. package/extensions/pipa/lib/onboarding.d.ts +17 -0
  231. package/extensions/pipa/lib/onboarding.d.ts.map +1 -0
  232. package/extensions/pipa/lib/paths.d.ts +22 -0
  233. package/extensions/pipa/lib/paths.d.ts.map +1 -0
  234. package/extensions/pipa/lib/permission.d.ts +22 -0
  235. package/extensions/pipa/lib/permission.d.ts.map +1 -0
  236. package/extensions/pipa/lib/pi.d.ts +38 -0
  237. package/extensions/pipa/lib/pi.d.ts.map +1 -0
  238. package/extensions/pipa/lib/reminder-cleaner.d.ts +7 -0
  239. package/extensions/pipa/lib/reminder-cleaner.d.ts.map +1 -0
  240. package/extensions/pipa/lib/string.d.ts +32 -0
  241. package/extensions/pipa/lib/string.d.ts.map +1 -0
  242. package/extensions/pipa/lib/teammate.d.ts +7 -0
  243. package/extensions/pipa/lib/teammate.d.ts.map +1 -0
  244. package/extensions/pipa/lib/tool-result-compactor.d.ts +12 -0
  245. package/extensions/pipa/lib/tool-result-compactor.d.ts.map +1 -0
  246. package/extensions/pipa/lib/tool.d.ts +9 -0
  247. package/extensions/pipa/lib/tool.d.ts.map +1 -0
  248. package/extensions/pipa/lib/tui-animation.d.ts +35 -0
  249. package/extensions/pipa/lib/tui-animation.d.ts.map +1 -0
  250. package/extensions/pipa/lib/tui.d.ts +73 -0
  251. package/extensions/pipa/lib/tui.d.ts.map +1 -0
  252. package/extensions/pipa/lib/typebox.d.ts +5 -0
  253. package/extensions/pipa/lib/typebox.d.ts.map +1 -0
  254. package/index.d.ts +36 -0
  255. package/index.d.ts.map +1 -0
  256. package/index.js +164 -0
  257. package/package.json +69 -0
  258. package/pipa.config.d.ts +4 -0
  259. package/pipa.config.d.ts.map +1 -0
@@ -0,0 +1,19 @@
1
+ import { DOCS_TOOL_NUDGES } from '../../../constants/docs';
2
+ import type { DocItem } from '../docs.entity';
3
+ /** Valida regras de negócio antes de operações em documentos */
4
+ export declare class DocsValidator {
5
+ /** Verifica se o documento existe e retorna. Throw PipaException se não encontrado. */
6
+ protected canUpdate(code: string, action?: Exclude<keyof typeof DOCS_TOOL_NUDGES, 'publish'>): DocItem;
7
+ /** Verifica se o documento existe para remoção. */
8
+ protected canRemove(code: string): DocItem;
9
+ /** Verifica se o documento existe para operação select. */
10
+ protected canSelect(code: string): DocItem;
11
+ /** Valida dados para criação. */
12
+ protected canCreate({ title, parentCode }: Pick<DocItem, 'title' | 'parentCode'>): void;
13
+ /**
14
+ * Valida reparent: pai deve existir e não pode ser descendente do próprio documento.
15
+ * parentCode vazio/undefined torna o documento raiz (sem pai).
16
+ */
17
+ protected assertParentValid(code: string, parentCode?: string): void;
18
+ }
19
+ //# sourceMappingURL=validator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validator.d.ts","sourceRoot":"","sources":["../../../../../../extensions/pipa/features/docs/hub/validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE3D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAG9C,gEAAgE;AAChE,qBAAa,aAAa;IACxB,uFAAuF;IACvF,SAAS,CAAC,SAAS,CACjB,IAAI,EAAE,MAAM,EACZ,MAAM,GAAE,OAAO,CAAC,MAAM,OAAO,gBAAgB,EAAE,SAAS,CAAwB,GAC/E,OAAO,CAWT;IAED,mDAAmD;IACnD,SAAS,CAAC,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAQzC;IAED,2DAA2D;IAC3D,SAAS,CAAC,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAQzC;IAED,iCAAiC;IACjC,SAAS,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,IAAI,CAAC,OAAO,EAAE,OAAO,GAAG,YAAY,CAAC,GAAG,IAAI,CAWtF;IAED;;;OAGG;IACH,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CA0BnE;CACF"}
@@ -0,0 +1,2 @@
1
+ export * from './onboarding.feature';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../extensions/pipa/features/onboarding/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC"}
@@ -0,0 +1,19 @@
1
+ import type { BeforeAgentStartEvent, BeforeAgentStartEventResult } from '@earendil-works/pi-coding-agent';
2
+ import { PipaBaseFeature } from '../base-feature';
3
+ import { type PipaApi } from '../../interfaces';
4
+ /**
5
+ * Feature responsável por injetar o prompt de onboarding no agente principal (Pipa),
6
+ * caso o ambiente ainda não possua o arquivo global de configurações (`.pi/PROFILE.md`).
7
+ */
8
+ export declare class OnboardingFeature extends PipaBaseFeature {
9
+ /**
10
+ * Hook disparado antes do início da execução de qualquer agente.
11
+ * Intercepta a inicialização do orquestrador principal (main) e, se estiver no modo onboarding,
12
+ * anexa as diretrizes de setup (onboarding.md) ao final do System Prompt.
13
+ *
14
+ * @param event O evento contendo o contexto e System Prompt que será enviado ao LLM.
15
+ * @param pipa A instância de API da Pipa.
16
+ */
17
+ enforceOnboarding(event: BeforeAgentStartEvent, pipa: PipaApi): BeforeAgentStartEventResult;
18
+ }
19
+ //# sourceMappingURL=onboarding.feature.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"onboarding.feature.d.ts","sourceRoot":"","sources":["../../../../../extensions/pipa/features/onboarding/onboarding.feature.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,2BAA2B,EAAE,MAAM,iCAAiC,CAAC;AAC1G,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAIlD,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAGhD;;;GAGG;AACH,qBAAa,iBAAkB,SAAQ,eAAe;IACpD;;;;;;;OAOG;IAEH,iBAAiB,CAAC,KAAK,EAAE,qBAAqB,EAAE,IAAI,EAAE,OAAO,GAAG,2BAA2B,CAiB1F;CACF"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Lê e retorna o conteúdo do arquivo de prompt de onboarding (`onboarding.md`).
3
+ * Este prompt é utilizado para guiar o setup inicial do framework quando o `.pi/PROFILE.md` não existe.
4
+ *
5
+ * @returns O conteúdo do arquivo onboarding.md em formato texto (utf-8).
6
+ */
7
+ export declare function getOnboardingPrompt(): string;
8
+ //# sourceMappingURL=prompts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../../../../../extensions/pipa/features/onboarding/prompts.ts"],"names":[],"mappings":"AAIA;;;;;GAKG;AACH,wBAAgB,mBAAmB,IAAI,MAAM,CAE5C"}
@@ -0,0 +1,12 @@
1
+ import type { ToolCallEvent, ToolCallEventResult } from '@earendil-works/pi-coding-agent';
2
+ import type { PipaApi } from '../../../interfaces';
3
+ /**
4
+ * Hook dedicado a gerenciar permissões de ferramentas específicas (como task, todo, teammates e ask_user_question).
5
+ */
6
+ export declare class CustomToolsGuard {
7
+ /**
8
+ * Valida permissões customizadas definidas em blockedForMain e outras regras de ciclo de vida.
9
+ */
10
+ validateTools({ toolName, input }: ToolCallEvent, pipa: PipaApi): Promise<ToolCallEventResult | void>;
11
+ }
12
+ //# sourceMappingURL=custom-tools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"custom-tools.d.ts","sourceRoot":"","sources":["../../../../../../extensions/pipa/features/permission/hooks/custom-tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAE1F,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAKnD;;GAEG;AACH,qBAAa,gBAAgB;IAC3B;;OAEG;IAEG,aAAa,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC,CAsE1G;CACF"}
@@ -0,0 +1,3 @@
1
+ export * from './terminal';
2
+ export * from './custom-tools';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../extensions/pipa/features/permission/hooks/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC"}
@@ -0,0 +1,12 @@
1
+ import type { ToolCallEvent, ToolCallEventResult } from '@earendil-works/pi-coding-agent';
2
+ import type { PipaApi } from '../../../interfaces';
3
+ /**
4
+ * Hook dedicado para bloquear comandos bash perigosos e avisar o supervisor em operações diretas de edição.
5
+ */
6
+ export declare class TerminalGuard {
7
+ /**
8
+ * Valida permissões para as ferramentas globais do sistema, como bash, edit e write.
9
+ */
10
+ validateTerminal({ toolName, input }: ToolCallEvent, pipa: PipaApi): Promise<ToolCallEventResult | void>;
11
+ }
12
+ //# sourceMappingURL=terminal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"terminal.d.ts","sourceRoot":"","sources":["../../../../../../extensions/pipa/features/permission/hooks/terminal.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAE1F,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAInD;;GAEG;AACH,qBAAa,aAAa;IACxB;;OAEG;IAEG,gBAAgB,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC,CA6C7G;CACF"}
@@ -0,0 +1,16 @@
1
+ import type { CommandPolicy } from '../../interfaces';
2
+ /**
3
+ * Lista global de comandos de terminal considerados perigosos.
4
+ * Bloqueia operações que podem causar perda de dados ou processos longos/interativos.
5
+ */
6
+ export declare const blockedCommands: string[];
7
+ /**
8
+ * Mapeamento de permissões restritas exclusivas para o supervisor (main).
9
+ * O caractere '*' bloqueia o uso completo da ferramenta.
10
+ */
11
+ export declare const blockedForMain: Record<string, string[]>;
12
+ /**
13
+ * Políticas específicas por executável para restringir flags perigosas.
14
+ */
15
+ export declare const commandPolicies: Record<string, CommandPolicy>;
16
+ //# sourceMappingURL=permission.definitions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"permission.definitions.d.ts","sourceRoot":"","sources":["../../../../../extensions/pipa/features/permission/permission.definitions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEtD;;;GAGG;AACH,eAAO,MAAM,eAAe,UAoC3B,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAInD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAIzD,CAAC"}
@@ -0,0 +1,13 @@
1
+ import { PipaBaseFeature } from '../base-feature';
2
+ import { TerminalGuard, CustomToolsGuard } from './hooks';
3
+ declare const PermissionFeature_base: import("ts-mixer/dist/types/types").Class<any[], PipaBaseFeature & TerminalGuard & CustomToolsGuard, typeof PipaBaseFeature & typeof TerminalGuard & typeof CustomToolsGuard>;
4
+ /**
5
+ * Feature para controle de permissões globais e de segurança de ferramentas.
6
+ * Deve conter apenas restrições genéricas e de segurança global do sistema.
7
+ * Regras específicas de permissões associadas a domínios ou ciclo de vida de recursos (como tarefas ou teammates)
8
+ * devem residir em seus respectivos hooks/features.
9
+ */
10
+ export declare class PermissionFeature extends PermissionFeature_base {
11
+ }
12
+ export {};
13
+ //# sourceMappingURL=permission.feature.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"permission.feature.d.ts","sourceRoot":"","sources":["../../../../../extensions/pipa/features/permission/permission.feature.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;;AAE1D;;;;;GAKG;AACH,qBAAa,iBAAkB,SAAQ,sBAAuD;CAAG"}
@@ -0,0 +1,8 @@
1
+ import type { BeforeAgentStartEvent, ExtensionAPI } from '@earendil-works/pi-coding-agent';
2
+ import { PipaBaseFeature } from '../base-feature';
3
+ import type { PipaApi } from '../../interfaces';
4
+ export declare class ProviderFeature extends PipaBaseFeature {
5
+ initialize(pi: ExtensionAPI): Promise<void> | void;
6
+ addToolsDefinition(event: BeforeAgentStartEvent, pipa: PipaApi): BeforeAgentStartEvent | undefined;
7
+ }
8
+ //# sourceMappingURL=custom.feature.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"custom.feature.d.ts","sourceRoot":"","sources":["../../../../../extensions/pipa/features/provider/custom.feature.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC3F,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAOhD,qBAAa,eAAgB,SAAQ,eAAe;IAClD,UAAU,CAAC,EAAE,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAoCjD;IAGD,kBAAkB,CAAC,KAAK,EAAE,qBAAqB,EAAE,IAAI,EAAE,OAAO,qCAwB7D;CACF"}
@@ -0,0 +1,14 @@
1
+ import type { ContextEvent } from '@earendil-works/pi-coding-agent';
2
+ import type { ContextEventResult } from '@earendil-works/pi-coding-agent/extensions';
3
+ import type { PipaApi } from '../../../interfaces';
4
+ /**
5
+ * Colapsa no contexto LLM as notificações (nudges) customizadas duplicadas:
6
+ * identidade = `customType` + hash do conteúdo, último vence, mantendo 1 resumo
7
+ * consolidado (padrão TaskGuard — nunca sumir silencioso).
8
+ *
9
+ * Idempotente e sem estado: afeta apenas o que vai ao LLM; a session permanece append-only.
10
+ */
11
+ export declare class ReminderCleaner {
12
+ clean(event: ContextEvent, _pipa: PipaApi): ContextEventResult | void;
13
+ }
14
+ //# sourceMappingURL=cleaner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cleaner.d.ts","sourceRoot":"","sources":["../../../../../../extensions/pipa/features/reminder-cleaner/hooks/cleaner.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4CAA4C,CAAC;AAErF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAInD;;;;;;GAMG;AACH,qBAAa,eAAe;IAE1B,KAAK,CAAC,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,OAAO,GAAG,kBAAkB,GAAG,IAAI,CA2CpE;CACF"}
@@ -0,0 +1,12 @@
1
+ import { PipaBaseFeature } from '../base-feature';
2
+ import { ReminderCleaner } from './hooks/cleaner';
3
+ declare const ReminderCleanerFeature_base: import("ts-mixer/dist/types/types").Class<any[], PipaBaseFeature & ReminderCleaner, typeof PipaBaseFeature & typeof ReminderCleaner>;
4
+ /**
5
+ * Feature neutra de higiene de contexto: limpa do contexto LLM as notificações
6
+ * (nudges) que já cumpriram seu papel, independentemente da feature de origem
7
+ * (task, teammates, docs, backlog, etc).
8
+ */
9
+ export declare class ReminderCleanerFeature extends ReminderCleanerFeature_base {
10
+ }
11
+ export {};
12
+ //# sourceMappingURL=reminder-cleaner.feature.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reminder-cleaner.feature.d.ts","sourceRoot":"","sources":["../../../../../extensions/pipa/features/reminder-cleaner/reminder-cleaner.feature.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;;AAElD;;;;GAIG;AACH,qBAAa,sBAAuB,SAAQ,2BAAuC;CAAG"}
@@ -0,0 +1,14 @@
1
+ import type { ContextEvent, ToolCallEvent, ToolCallEventResult } from '@earendil-works/pi-coding-agent';
2
+ import type { ContextEventResult } from '@earendil-works/pi-coding-agent/extensions';
3
+ import type { PipaApi } from '../../../interfaces';
4
+ /**
5
+ * Bloqueia qualquer tool call feita sem uma tarefa ativa reivindicada
6
+ * e colapsa o loop de tentativas repetidas no contexto enviado ao LLM,
7
+ * substituindo as mensagens bloqueadas por um único aviso consolidado.
8
+ */
9
+ export declare class TaskGuard {
10
+ private readonly blockedToolCallIds;
11
+ guardUnclaimedToolCall({ toolName, toolCallId }: ToolCallEvent, pipa: PipaApi): ToolCallEventResult | void;
12
+ collapseBlockedLoop(event: ContextEvent, _pipa: PipaApi): ContextEventResult | void;
13
+ }
14
+ //# sourceMappingURL=guard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"guard.d.ts","sourceRoot":"","sources":["../../../../../../extensions/pipa/features/task/hooks/guard.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACxG,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4CAA4C,CAAC;AAErF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAanD;;;;GAIG;AACH,qBAAa,SAAS;IACpB,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAqB;IAGxD,sBAAsB,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,OAAO,GAAG,mBAAmB,GAAG,IAAI,CAsBzG;IAGD,mBAAmB,CAAC,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,OAAO,GAAG,kBAAkB,GAAG,IAAI,CA+ClF;CACF"}
@@ -0,0 +1,4 @@
1
+ export * from './guard';
2
+ export * from './reminders';
3
+ export * from './tui-register';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../extensions/pipa/features/task/hooks/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC"}
@@ -0,0 +1,15 @@
1
+ import { type PipaApi } from '../../../interfaces';
2
+ import { TeammateSessionIntervalsHost } from '../../teammate/hooks';
3
+ /**
4
+ * Hook responsável por notificar criadores de tarefas órfãs e teammates idle
5
+ * sobre tarefas disponíveis que podem executar.
6
+ */
7
+ export declare class TaskReminders extends TeammateSessionIntervalsHost {
8
+ private readonly lastCreatorNudge;
9
+ private readonly lastTeammateNudge;
10
+ nudgeCreatorAboutUnownedTasks(): void;
11
+ nudgeIdleTeammatesAboutAvailableTasks(): void;
12
+ nudgeIdleTeammatesWithActiveTasks(): void;
13
+ shutdown(_: unknown, pipa: PipaApi): void;
14
+ }
15
+ //# sourceMappingURL=reminders.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reminders.d.ts","sourceRoot":"","sources":["../../../../../../extensions/pipa/features/task/hooks/reminders.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,4BAA4B,EAAE,MAAM,sBAAsB,CAAC;AAQpE;;;GAGG;AACH,qBAAa,aAAc,SAAQ,4BAA4B;IAC7D,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAA6B;IAC9D,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAA6B;IAG/D,6BAA6B,SAqC5B;IAGD,qCAAqC,SA0CpC;IAGD,iCAAiC,SAgDhC;IAGD,QAAQ,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,QAEjC;CACF"}
@@ -0,0 +1,8 @@
1
+ import type { PipaApi } from '../../../interfaces';
2
+ /**
3
+ * Hook para registrar o widget TUI de gerenciamento de tarefas.
4
+ */
5
+ export declare class TaskTuiRegister {
6
+ captureMain(_: unknown, api: PipaApi): void;
7
+ }
8
+ //# sourceMappingURL=tui-register.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tui-register.d.ts","sourceRoot":"","sources":["../../../../../../extensions/pipa/features/task/hooks/tui-register.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAMnD;;GAEG;AACH,qBAAa,eAAe;IAE1B,WAAW,CAAC,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,QA+BnC;CACF"}
@@ -0,0 +1,60 @@
1
+ import { PipaApi } from '../../../interfaces';
2
+ import { Task, TaskToolSchema } from '../task.entity';
3
+ import { TaskState } from './state';
4
+ import { TaskValidator } from './validator';
5
+ declare const TaskCore_base: import("ts-mixer/dist/types/types").Class<any[], TaskValidator & TaskState, typeof TaskValidator & typeof TaskState>;
6
+ /**
7
+ * Mixin central de operações e regras de negócio para tarefas no TaskHub.
8
+ */
9
+ export declare class TaskCore extends TaskCore_base {
10
+ readonly pipa: PipaApi;
11
+ constructor(pipa: PipaApi);
12
+ /**
13
+ * Obtém os detalhes de uma tarefa específica pelo seu ID.
14
+ * @param data Payload único da action 'get'.
15
+ * @returns A tarefa encontrada.
16
+ * @throws PipaException quando o ID não existe.
17
+ */
18
+ get({ id }: TaskToolSchema<'get'>): Task;
19
+ /**
20
+ * Lista as tarefas do quadro, com suporte a filtro opcional por status.
21
+ * @param data Payload único da action 'list'.
22
+ * @returns A lista de tarefas.
23
+ */
24
+ list({ status }: TaskToolSchema<'list'>): Task[];
25
+ /**
26
+ * Inicializa uma nova tarefa com metadados básicos e a marca como em andamento.
27
+ * @param data Payload único da action 'setup'.
28
+ * @returns A tarefa configurada.
29
+ */
30
+ setup({ id, updates }: TaskToolSchema<'setup'>): Task;
31
+ /**
32
+ * Atualiza os metadados de uma tarefa existente.
33
+ * @param data Payload único da action 'update'.
34
+ * @returns A tarefa atualizada.
35
+ */
36
+ update({ id, updates }: TaskToolSchema<'update'>): Task;
37
+ /**
38
+ * Remove permanentemente uma tarefa do quadro de pendências.
39
+ * @param data Payload único da action 'remove'.
40
+ */
41
+ remove({ id, force }: TaskToolSchema<'remove'>): void;
42
+ /**
43
+ * Reivindica e associa uma tarefa ao subagente atual, colocando-a em andamento.
44
+ * @param data Payload único da action 'claim'.
45
+ * @returns A tarefa reivindicada.
46
+ */
47
+ claim({ id }: TaskToolSchema<'claim'>): Task;
48
+ /**
49
+ * Conclui uma tarefa, sinalizando seu encerramento e notificando o supervisor.
50
+ * @param data Payload único da action 'complete'.
51
+ * @returns A tarefa concluída.
52
+ */
53
+ complete({ id, artifactFile, force }: TaskToolSchema<'complete'>): Task;
54
+ /**
55
+ * Proativamente avisa subagentes que estão ociosos sobre novas tarefas disponíveis.
56
+ */
57
+ notifyEligibleIdleTeammates(): void;
58
+ }
59
+ export {};
60
+ //# sourceMappingURL=core.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../../../../../extensions/pipa/features/task/hub/core.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAE9C,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;;AAE5C;;GAEG;AACH,qBAAa,QAAS,SAAQ,aAA+B;IAC/C,QAAQ,CAAC,IAAI,EAAE,OAAO;IAAlC,YAAqB,IAAI,EAAE,OAAO,EAEjC;IAED;;;;;OAKG;IACH,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,cAAc,CAAC,KAAK,CAAC,GAAG,IAAI,CAQvC;IAED;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,cAAc,CAAC,MAAM,CAAC,GAAG,IAAI,EAAE,CAS/C;IAED;;;;OAIG;IACH,KAAK,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,cAAc,CAAC,OAAO,CAAC,GAAG,IAAI,CAepD;IAED;;;;OAIG;IACH,MAAM,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,cAAc,CAAC,QAAQ,CAAC,GAAG,IAAI,CAWtD;IAED;;;OAGG;IACH,MAAM,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,cAAc,CAAC,QAAQ,CAAC,GAAG,IAAI,CAYpD;IAED;;;;OAIG;IACH,KAAK,CAAC,EAAE,EAAE,EAAE,EAAE,cAAc,CAAC,OAAO,CAAC,GAAG,IAAI,CAoB3C;IAED;;;;OAIG;IACH,QAAQ,CAAC,EAAE,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,EAAE,cAAc,CAAC,UAAU,CAAC,GAAG,IAAI,CAwCtE;IAED;;OAEG;IACI,2BAA2B,IAAI,IAAI,CA0BzC;CACF"}
@@ -0,0 +1,5 @@
1
+ export * from './state';
2
+ export * from './validator';
3
+ export * from './core';
4
+ export * from './squad';
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../extensions/pipa/features/task/hub/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC;AAC5B,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC"}
@@ -0,0 +1,37 @@
1
+ import { PipaApi } from '../../../interfaces';
2
+ import { Task, TaskToolSchema } from '../task.entity';
3
+ /**
4
+ * Mixin de operações de squad para o TaskManager.
5
+ */
6
+ export declare class TaskSquad {
7
+ readonly pipa: PipaApi;
8
+ constructor(pipa: PipaApi);
9
+ /**
10
+ * Lista as tarefas principais (épicos) de todos os squads em andamento ou registrados.
11
+ */
12
+ static getActiveSquads(): Task[];
13
+ /**
14
+ * Retorna a primeira task raiz (sem parentTaskId) do squad informado, ou undefined.
15
+ */
16
+ getParentSquadTask(squad?: string): Task | undefined;
17
+ /**
18
+ * Lista tarefas de um squad.
19
+ * @param data Payload único da action 'list-by-squad'.
20
+ * @returns A lista de tarefas do squad.
21
+ */
22
+ listBySquad({ squad }: TaskToolSchema<'list-by-squad'>): Task[];
23
+ /**
24
+ * Status de progresso de um squad.
25
+ * @param data Payload único da action 'squad-status'.
26
+ * @returns Objeto com status do squad.
27
+ */
28
+ squadStatus({ squad }: TaskToolSchema<'squad-status'>): {
29
+ squad: string;
30
+ total: number;
31
+ completed: number;
32
+ inProgress: number;
33
+ pending: number;
34
+ progress: string;
35
+ };
36
+ }
37
+ //# sourceMappingURL=squad.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"squad.d.ts","sourceRoot":"","sources":["../../../../../../extensions/pipa/features/task/hub/squad.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAE9C,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEtD;;GAEG;AACH,qBAAa,SAAS;IACR,QAAQ,CAAC,IAAI,EAAE,OAAO;IAAlC,YAAqB,IAAI,EAAE,OAAO,EAAI;IAEtC;;OAEG;IACH,OAAc,eAAe,IAAI,IAAI,EAAE,CAEtC;IAED;;OAEG;IACH,kBAAkB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAMnD;IAED;;;;OAIG;IACH,WAAW,CAAC,EAAE,KAAK,EAAE,EAAE,cAAc,CAAC,eAAe,CAAC,GAAG,IAAI,EAAE,CAE9D;IAED;;;;OAIG;IACH,WAAW,CAAC,EAAE,KAAK,EAAE,EAAE,cAAc,CAAC,cAAc,CAAC;;;;;;;MAepD;CACF"}
@@ -0,0 +1,104 @@
1
+ import { BaseClass, PipaApi } from '../../../interfaces';
2
+ import { FileManager } from '../../../lib';
3
+ import { Teammate } from '../../teammate/teammate.entity';
4
+ import { Task } from '../task.entity';
5
+ export declare class TaskState {
6
+ readonly pipa: PipaApi;
7
+ constructor(pipa: PipaApi);
8
+ static get fileManager(): FileManager<Task[]>;
9
+ /**
10
+ * Recupera a store de tarefas.
11
+ */
12
+ private static get store();
13
+ /**
14
+ * Carrega as tarefas persistidas em disco para a store em memória.
15
+ * O diretório é o da sessão principal (~/.pi/tasks/<sessionId-do-main>/tasks.json).
16
+ */
17
+ static load(): void;
18
+ /**
19
+ * Salva silenciosamente o estado atual para o disco em JSON.
20
+ */
21
+ private static persist;
22
+ /**
23
+ * Adiciona uma nova tarefa à store e retorna a tarefa criada.
24
+ */
25
+ static add(task: BaseClass<Task>): Task;
26
+ /**
27
+ * Atualiza os dados de uma tarefa existente na store e retorna a tarefa atualizada.
28
+ */
29
+ static update(id: string, data: Partial<Task>): Task;
30
+ /**
31
+ * Recupera uma tarefa da store pelo id.
32
+ * Lança um erro se a tarefa não for encontrada.
33
+ */
34
+ static get(id: string): Task;
35
+ /**
36
+ * Recupera uma tarefa da store pelo id.
37
+ */
38
+ static find(id: string): Task | undefined;
39
+ /**
40
+ * Lista todas as tarefas atualmente armazenadas.
41
+ */
42
+ static list(sessionId?: string): Task[];
43
+ /**
44
+ * Busca tarefas que atendam a um predicado.
45
+ */
46
+ static search(filter: (task: Task) => boolean): Task[];
47
+ /**
48
+ * Busca a primeira tarefa que atenda a um predicado.
49
+ */
50
+ static findOne(filter: (task: Task) => boolean): Task | undefined;
51
+ /**
52
+ * Remove uma tarefa da store pelo id.
53
+ */
54
+ static delete(id: string): void;
55
+ /**
56
+ * Limpa o cache de tarefas em memória.
57
+ */
58
+ static clear(): void;
59
+ /**
60
+ * Verifica se uma tarefa não possui nenhum bloqueio pendente.
61
+ * Bloqueios do tipo 'hard' exigem que a tarefa dependente esteja concluída.
62
+ * Bloqueios do tipo 'soft' apenas sinalizam a pendência.
63
+ */
64
+ static isUnblocked(task: Task): boolean;
65
+ /**
66
+ * Verifica se um teammate é elegível para uma tarefa.
67
+ * Criador online → self-only por sessão. Criador offline → fallback via nome do teammate (role).
68
+ */
69
+ static isEligibleForTask(task: Task, teammate: Teammate): boolean;
70
+ /**
71
+ * Lista todas as tarefas livres (pending, sem owner) e não bloqueadas.
72
+ */
73
+ static listAvailable(): Task[];
74
+ /**
75
+ * Lista todas as tarefas atribuídas a um determinado teammate.
76
+ */
77
+ static listByOwner(sessionId: string): Task[];
78
+ /**
79
+ * Lista todas as tarefas que estão ativas (em andamento ou em setup).
80
+ */
81
+ static listActive(): Task[];
82
+ /**
83
+ * Verifica se um determinado teammate possui uma tarefa ativa (em andamento ou em setup).
84
+ */
85
+ static hasActiveTask(sessionId: string): boolean;
86
+ /**
87
+ * Retorna a task de setup ou em andamento de um agente, ou undefined.
88
+ */
89
+ static getActiveTask(sessionId: string): Task | undefined;
90
+ /**
91
+ * Retorna as dependências "hard" não concluídas de uma tarefa.
92
+ */
93
+ static getUncompletedHardDependencies(task: Task): Task[];
94
+ /**
95
+ * Verifica se há alguma dependência "hard" pendente.
96
+ */
97
+ static hasUncompletedHardDependency(task: Task): boolean;
98
+ /**
99
+ * Sincroniza o status de uma tarefa pai com base nas suas filhas.
100
+ * Retorna true se o status foi alterado.
101
+ */
102
+ static syncParentStatus(parentId: string): boolean;
103
+ }
104
+ //# sourceMappingURL=state.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../../../../../extensions/pipa/features/task/hub/state.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,OAAO,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAC1D,OAAO,EAAE,IAAI,EAAc,MAAM,gBAAgB,CAAC;AAElD,qBAAa,SAAS;IACR,QAAQ,CAAC,IAAI,EAAE,OAAO;IAAlC,YAAqB,IAAI,EAAE,OAAO,EAAI;IAEtC,WAAkB,WAAW,wBAE5B;IAED;;OAEG;IACH,OAAO,CAAC,MAAM,KAAK,KAAK,GAQvB;IAED;;;OAGG;IACH,OAAc,IAAI,IAAI,IAAI,CAGzB;IAED;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,OAAO;IAItB;;OAEG;IACH,OAAc,GAAG,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC,GAAG,IAAI,CAK7C;IAED;;OAEG;IACH,OAAc,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAW1D;IAED;;;OAGG;IACH,OAAc,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAQlC;IAED;;OAEG;IACH,OAAc,IAAI,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAE/C;IAED;;OAEG;IACH,OAAc,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,EAAE,CAQ7C;IAED;;OAEG;IACH,OAAc,MAAM,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,GAAG,IAAI,EAAE,CAE5D;IAED;;OAEG;IACH,OAAc,OAAO,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,GAAG,IAAI,GAAG,SAAS,CAEvE;IAED;;OAEG;IACH,OAAc,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAIrC;IAED;;OAEG;IACH,OAAc,KAAK,IAAI,IAAI,CAI1B;IAED;;;;OAIG;IACH,OAAc,WAAW,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAkB7C;IAED;;;OAGG;IACH,OAAc,iBAAiB,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAQvE;IAED;;OAEG;IACH,OAAc,aAAa,IAAI,IAAI,EAAE,CAIpC;IAED;;OAEG;IACH,OAAc,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,EAAE,CAEnD;IAED;;OAEG;IACH,OAAc,UAAU,IAAI,IAAI,EAAE,CAEjC;IAED;;OAEG;IACH,OAAc,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAItD;IAED;;OAEG;IACH,OAAc,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAI/D;IAED;;OAEG;IACH,OAAc,8BAA8B,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,EAAE,CAM/D;IAED;;OAEG;IACH,OAAc,4BAA4B,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAQ9D;IAED;;;OAGG;IACH,OAAc,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAoCxD;CACF"}
@@ -0,0 +1,50 @@
1
+ import { Teammate } from '../../teammate/teammate.entity';
2
+ import { Dependency, Task } from '../task.entity';
3
+ /**
4
+ * Mixin que fornece métodos de validação de negócios para o TaskHub.
5
+ * Isola as lógicas complexas de permissão, estado e checagem de erros.
6
+ */
7
+ export declare class TaskValidator {
8
+ /**
9
+ * Valida unicidade de nome da tarefa.
10
+ */
11
+ private validateUniqueName;
12
+ /**
13
+ * Valida integridade de dependências (anti-órfão).
14
+ */
15
+ private validateAntiOrphan;
16
+ /**
17
+ * Valida se uma nova tarefa pode ser criada.
18
+ * Verifica unicidade do nome para evitar duplicidades de escopo.
19
+ * Verifica integridade de referências (anti-órfãos).
20
+ */
21
+ protected canCreate(taskName: string, blockedBy?: Dependency[]): void;
22
+ /**
23
+ * Valida se uma tarefa pode receber a ação de setup.
24
+ * Aceita setup apenas de tarefas que estão no status 'setup'.
25
+ */
26
+ protected canSetup(id: string, updates: Partial<Task>, teammate: Teammate): Task;
27
+ /**
28
+ * Valida se uma tarefa pode ser atualizada pelo teammate.
29
+ */
30
+ protected canUpdate(id: string, updates: Partial<Task>, teammate: Teammate): Task;
31
+ /**
32
+ * Valida se uma tarefa pode ser removida pelo teammate.
33
+ * Verifica se a tarefa existe e se o usuário tem permissão para forçar a remoção caso esteja em andamento.
34
+ */
35
+ protected canRemove(id: string, teammate: Teammate, force?: boolean): Task;
36
+ /**
37
+ * Valida se uma tarefa pode ser reivindicada pelo teammate.
38
+ * Verifica o estado pendente da tarefa, se o solicitante é elegível (criador online → self-only;
39
+ * criador offline → fallback via role) e se existem dependências hard não concluídas.
40
+ */
41
+ protected canClaim(id: string, teammate: Teammate): Task;
42
+ /**
43
+ * Valida se uma tarefa pode ser concluída.
44
+ * Verifica a existência da tarefa, exigência do artefato, se o usuário
45
+ * é o dono da tarefa (ou supervisor/main no caso de force) e subtarefas.
46
+ * A orientação de force só é exibida para main (não-main não pode usar force).
47
+ */
48
+ protected canComplete(id: string, teammate: Teammate, artifactFile?: string, force?: boolean): Task;
49
+ }
50
+ //# sourceMappingURL=validator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validator.d.ts","sourceRoot":"","sources":["../../../../../../extensions/pipa/features/task/hub/validator.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAMlD;;;GAGG;AACH,qBAAa,aAAa;IACxB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAqB1B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAa1B;;;;OAIG;IACH,SAAS,CAAC,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,GAAE,UAAU,EAAO,GAAG,IAAI,CAGxE;IAED;;;OAGG;IACH,SAAS,CAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAgB/E;IAED;;OAEG;IACH,SAAS,CAAC,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAkChF;IAED;;;OAGG;IACH,SAAS,CAAC,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,CAAC,EAAE,OAAO,GAAG,IAAI,CAsBzE;IAED;;;;OAIG;IACH,SAAS,CAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAkCvD;IAED;;;;;OAKG;IACH,SAAS,CAAC,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,YAAY,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,GAAG,IAAI,CAwDlG;CACF"}