@project-ava-supernova/core 0.2.71 → 0.2.72

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 (166) hide show
  1. package/dist/agent/agent.d.ts.map +1 -1
  2. package/dist/agent/agent.js +138 -38
  3. package/dist/agent/agent.js.map +1 -1
  4. package/dist/agent/mode-tags.d.ts +72 -0
  5. package/dist/agent/mode-tags.d.ts.map +1 -0
  6. package/dist/agent/mode-tags.js +84 -0
  7. package/dist/agent/mode-tags.js.map +1 -0
  8. package/dist/agent/system-prompt.d.ts +16 -2
  9. package/dist/agent/system-prompt.d.ts.map +1 -1
  10. package/dist/agent/system-prompt.js +133 -24
  11. package/dist/agent/system-prompt.js.map +1 -1
  12. package/dist/brainstorm/brainstorm-store.d.ts +42 -0
  13. package/dist/brainstorm/brainstorm-store.d.ts.map +1 -0
  14. package/dist/brainstorm/brainstorm-store.js +164 -0
  15. package/dist/brainstorm/brainstorm-store.js.map +1 -0
  16. package/dist/brainstorm/types.d.ts +64 -0
  17. package/dist/brainstorm/types.d.ts.map +1 -0
  18. package/dist/brainstorm/types.js +20 -0
  19. package/dist/brainstorm/types.js.map +1 -0
  20. package/dist/config/project.d.ts.map +1 -1
  21. package/dist/config/project.js +3 -1
  22. package/dist/config/project.js.map +1 -1
  23. package/dist/config/schema.d.ts +13 -0
  24. package/dist/config/schema.d.ts.map +1 -1
  25. package/dist/config/schema.js.map +1 -1
  26. package/dist/dataset/capture.d.ts.map +1 -1
  27. package/dist/dataset/capture.js +6 -14
  28. package/dist/dataset/capture.js.map +1 -1
  29. package/dist/history/conversation-title.d.ts +5 -4
  30. package/dist/history/conversation-title.d.ts.map +1 -1
  31. package/dist/history/conversation-title.js +6 -19
  32. package/dist/history/conversation-title.js.map +1 -1
  33. package/dist/i18n/locales/ar.d.ts.map +1 -1
  34. package/dist/i18n/locales/ar.js +41 -13
  35. package/dist/i18n/locales/ar.js.map +1 -1
  36. package/dist/i18n/locales/de.d.ts.map +1 -1
  37. package/dist/i18n/locales/de.js +41 -13
  38. package/dist/i18n/locales/de.js.map +1 -1
  39. package/dist/i18n/locales/en.d.ts +38 -10
  40. package/dist/i18n/locales/en.d.ts.map +1 -1
  41. package/dist/i18n/locales/en.js +41 -13
  42. package/dist/i18n/locales/en.js.map +1 -1
  43. package/dist/i18n/locales/es.d.ts.map +1 -1
  44. package/dist/i18n/locales/es.js +41 -13
  45. package/dist/i18n/locales/es.js.map +1 -1
  46. package/dist/i18n/locales/fr.d.ts.map +1 -1
  47. package/dist/i18n/locales/fr.js +41 -13
  48. package/dist/i18n/locales/fr.js.map +1 -1
  49. package/dist/i18n/locales/hi.d.ts.map +1 -1
  50. package/dist/i18n/locales/hi.js +41 -13
  51. package/dist/i18n/locales/hi.js.map +1 -1
  52. package/dist/i18n/locales/id.d.ts.map +1 -1
  53. package/dist/i18n/locales/id.js +41 -13
  54. package/dist/i18n/locales/id.js.map +1 -1
  55. package/dist/i18n/locales/it.d.ts.map +1 -1
  56. package/dist/i18n/locales/it.js +41 -13
  57. package/dist/i18n/locales/it.js.map +1 -1
  58. package/dist/i18n/locales/ja.d.ts.map +1 -1
  59. package/dist/i18n/locales/ja.js +41 -13
  60. package/dist/i18n/locales/ja.js.map +1 -1
  61. package/dist/i18n/locales/ko.d.ts.map +1 -1
  62. package/dist/i18n/locales/ko.js +41 -13
  63. package/dist/i18n/locales/ko.js.map +1 -1
  64. package/dist/i18n/locales/nl.d.ts.map +1 -1
  65. package/dist/i18n/locales/nl.js +41 -13
  66. package/dist/i18n/locales/nl.js.map +1 -1
  67. package/dist/i18n/locales/pl.d.ts.map +1 -1
  68. package/dist/i18n/locales/pl.js +41 -13
  69. package/dist/i18n/locales/pl.js.map +1 -1
  70. package/dist/i18n/locales/pt.d.ts.map +1 -1
  71. package/dist/i18n/locales/pt.js +41 -13
  72. package/dist/i18n/locales/pt.js.map +1 -1
  73. package/dist/i18n/locales/ru.d.ts.map +1 -1
  74. package/dist/i18n/locales/ru.js +41 -13
  75. package/dist/i18n/locales/ru.js.map +1 -1
  76. package/dist/i18n/locales/th.d.ts.map +1 -1
  77. package/dist/i18n/locales/th.js +41 -13
  78. package/dist/i18n/locales/th.js.map +1 -1
  79. package/dist/i18n/locales/tr.d.ts.map +1 -1
  80. package/dist/i18n/locales/tr.js +41 -13
  81. package/dist/i18n/locales/tr.js.map +1 -1
  82. package/dist/i18n/locales/uk.d.ts.map +1 -1
  83. package/dist/i18n/locales/uk.js +41 -13
  84. package/dist/i18n/locales/uk.js.map +1 -1
  85. package/dist/i18n/locales/vi.d.ts.map +1 -1
  86. package/dist/i18n/locales/vi.js +41 -13
  87. package/dist/i18n/locales/vi.js.map +1 -1
  88. package/dist/i18n/locales/zh-CN.d.ts.map +1 -1
  89. package/dist/i18n/locales/zh-CN.js +41 -13
  90. package/dist/i18n/locales/zh-CN.js.map +1 -1
  91. package/dist/i18n/locales/zh-TW.d.ts.map +1 -1
  92. package/dist/i18n/locales/zh-TW.js +41 -13
  93. package/dist/i18n/locales/zh-TW.js.map +1 -1
  94. package/dist/index.d.ts +5 -1
  95. package/dist/index.d.ts.map +1 -1
  96. package/dist/index.js +7 -1
  97. package/dist/index.js.map +1 -1
  98. package/dist/journal/journal-manager.d.ts +22 -1
  99. package/dist/journal/journal-manager.d.ts.map +1 -1
  100. package/dist/journal/journal-manager.js +47 -2
  101. package/dist/journal/journal-manager.js.map +1 -1
  102. package/dist/personas/conductor.d.ts +11 -0
  103. package/dist/personas/conductor.d.ts.map +1 -1
  104. package/dist/personas/conductor.js +56 -12
  105. package/dist/personas/conductor.js.map +1 -1
  106. package/dist/personas/definitions.d.ts +15 -4
  107. package/dist/personas/definitions.d.ts.map +1 -1
  108. package/dist/personas/definitions.js +184 -19
  109. package/dist/personas/definitions.js.map +1 -1
  110. package/dist/personas/types.d.ts +1 -1
  111. package/dist/personas/types.d.ts.map +1 -1
  112. package/dist/projects/project-data.d.ts +73 -0
  113. package/dist/projects/project-data.d.ts.map +1 -0
  114. package/dist/projects/project-data.js +126 -0
  115. package/dist/projects/project-data.js.map +1 -0
  116. package/dist/projects/projects-home.d.ts +33 -0
  117. package/dist/projects/projects-home.d.ts.map +1 -0
  118. package/dist/projects/projects-home.js +43 -0
  119. package/dist/projects/projects-home.js.map +1 -0
  120. package/dist/projects/storage-categories.d.ts +45 -0
  121. package/dist/projects/storage-categories.d.ts.map +1 -0
  122. package/dist/projects/storage-categories.js +86 -0
  123. package/dist/projects/storage-categories.js.map +1 -0
  124. package/dist/tools/authoring/export-document.d.ts +45 -0
  125. package/dist/tools/authoring/export-document.d.ts.map +1 -0
  126. package/dist/tools/authoring/export-document.js +132 -0
  127. package/dist/tools/authoring/export-document.js.map +1 -0
  128. package/dist/tools/authoring/export-formats.d.ts +37 -0
  129. package/dist/tools/authoring/export-formats.d.ts.map +1 -0
  130. package/dist/tools/authoring/export-formats.js +50 -0
  131. package/dist/tools/authoring/export-formats.js.map +1 -0
  132. package/dist/tools/authoring/index.d.ts +6 -1
  133. package/dist/tools/authoring/index.d.ts.map +1 -1
  134. package/dist/tools/authoring/index.js +9 -0
  135. package/dist/tools/authoring/index.js.map +1 -1
  136. package/dist/tools/authoring/render-odf.d.ts +22 -0
  137. package/dist/tools/authoring/render-odf.d.ts.map +1 -0
  138. package/dist/tools/authoring/render-odf.js +604 -0
  139. package/dist/tools/authoring/render-odf.js.map +1 -0
  140. package/dist/tools/authoring/zip.d.ts +33 -0
  141. package/dist/tools/authoring/zip.d.ts.map +1 -0
  142. package/dist/tools/authoring/zip.js +125 -0
  143. package/dist/tools/authoring/zip.js.map +1 -0
  144. package/dist/tools/brainstorm-session.d.ts +29 -0
  145. package/dist/tools/brainstorm-session.d.ts.map +1 -0
  146. package/dist/tools/brainstorm-session.js +184 -0
  147. package/dist/tools/brainstorm-session.js.map +1 -0
  148. package/dist/tools/document-author.d.ts +1 -1
  149. package/dist/tools/document-author.d.ts.map +1 -1
  150. package/dist/tools/document-author.js +22 -5
  151. package/dist/tools/document-author.js.map +1 -1
  152. package/dist/tools/security.d.ts +25 -0
  153. package/dist/tools/security.d.ts.map +1 -1
  154. package/dist/tools/security.js +35 -0
  155. package/dist/tools/security.js.map +1 -1
  156. package/dist/tools/tool-registry.d.ts.map +1 -1
  157. package/dist/tools/tool-registry.js +4 -0
  158. package/dist/tools/tool-registry.js.map +1 -1
  159. package/dist/tools/verification-trust.d.ts +2 -2
  160. package/dist/tools/verification-trust.d.ts.map +1 -1
  161. package/dist/tools/verification-trust.js +11 -13
  162. package/dist/tools/verification-trust.js.map +1 -1
  163. package/dist/tools/write-video-post.d.ts.map +1 -1
  164. package/dist/tools/write-video-post.js +89 -13
  165. package/dist/tools/write-video-post.js.map +1 -1
  166. package/package.json +26 -1
@@ -1 +1 @@
1
- {"version":3,"file":"document-author.js","sourceRoot":"","sources":["../../src/tools/document-author.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"document-author.js","sourceRoot":"","sources":["../../src/tools/document-author.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,28 @@
1
+ /**
2
+ * Is this an absolute path belonging to a platform we are NOT running on?
3
+ *
4
+ * node:path only understands absolutes for the platform it is running on. On
5
+ * POSIX, isAbsolute('C:\\Windows\\System32\\config\\SAM') is FALSE — backslash
6
+ * is an ordinary filename character there, so resolve() quietly places it
7
+ * INSIDE the project as a single file literally named
8
+ * "C:\Windows\System32\config\SAM".
9
+ *
10
+ * That is contained, and it is not a traversal: nothing escapes the working
11
+ * directory, on either platform. But it is still the wrong answer. A Windows
12
+ * path arriving on a Linux host means something upstream is confused — a model
13
+ * guessing, or a path copied off another machine — and inventing an
14
+ * absurdly-named file is a way of hiding that instead of reporting it. It also
15
+ * makes the same input behave two different ways depending on the host, which
16
+ * for a tool that runs identically on Windows, macOS and Linux is a bug in its
17
+ * own right.
18
+ *
19
+ * So a foreign absolute is refused everywhere, exactly as the native one is.
20
+ * Covers drive letters (C:\... and C:/...) and UNC shares (\\server\share).
21
+ *
22
+ * Found by CI on ubuntu, where tests/tool-adversarial.test.ts had been asserting
23
+ * this all along and had never once run — the workflow was failing at checkout.
24
+ */
25
+ export declare function isForeignAbsolute(rawPath: string): boolean;
1
26
  /**
2
27
  * Validate that a resolved path stays within the allowed working directory.
3
28
  * Prevents path traversal attacks (e.g. ../../etc/passwd) and sibling directory access.
@@ -1 +1 @@
1
- {"version":3,"file":"security.d.ts","sourceRoot":"","sources":["../../src/tools/security.ts"],"names":[],"mappings":"AAkBA;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAsBjE;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAGnF;AAED;;;GAGG;AACH,eAAO,MAAM,eAAe,UAc3B,CAAC;AAEF;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEzD"}
1
+ {"version":3,"file":"security.d.ts","sourceRoot":"","sources":["../../src/tools/security.ts"],"names":[],"mappings":"AAkBA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAE1D;AAED;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAiCjE;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAGnF;AAED;;;GAGG;AACH,eAAO,MAAM,eAAe,UAc3B,CAAC;AAEF;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEzD"}
@@ -13,6 +13,33 @@ function isWithinDirectory(candidate, boundary) {
13
13
  const boundaryWithSep = normBoundary.endsWith(sep) ? normBoundary : normBoundary + sep;
14
14
  return normCandidate.startsWith(boundaryWithSep);
15
15
  }
16
+ /**
17
+ * Is this an absolute path belonging to a platform we are NOT running on?
18
+ *
19
+ * node:path only understands absolutes for the platform it is running on. On
20
+ * POSIX, isAbsolute('C:\\Windows\\System32\\config\\SAM') is FALSE — backslash
21
+ * is an ordinary filename character there, so resolve() quietly places it
22
+ * INSIDE the project as a single file literally named
23
+ * "C:\Windows\System32\config\SAM".
24
+ *
25
+ * That is contained, and it is not a traversal: nothing escapes the working
26
+ * directory, on either platform. But it is still the wrong answer. A Windows
27
+ * path arriving on a Linux host means something upstream is confused — a model
28
+ * guessing, or a path copied off another machine — and inventing an
29
+ * absurdly-named file is a way of hiding that instead of reporting it. It also
30
+ * makes the same input behave two different ways depending on the host, which
31
+ * for a tool that runs identically on Windows, macOS and Linux is a bug in its
32
+ * own right.
33
+ *
34
+ * So a foreign absolute is refused everywhere, exactly as the native one is.
35
+ * Covers drive letters (C:\... and C:/...) and UNC shares (\\server\share).
36
+ *
37
+ * Found by CI on ubuntu, where tests/tool-adversarial.test.ts had been asserting
38
+ * this all along and had never once run — the workflow was failing at checkout.
39
+ */
40
+ export function isForeignAbsolute(rawPath) {
41
+ return /^[A-Za-z]:[\\/]/.test(rawPath) || rawPath.startsWith('\\\\');
42
+ }
16
43
  /**
17
44
  * Validate that a resolved path stays within the allowed working directory.
18
45
  * Prevents path traversal attacks (e.g. ../../etc/passwd) and sibling directory access.
@@ -25,6 +52,14 @@ function isWithinDirectory(candidate, boundary) {
25
52
  export function validatePath(rawPath, cwd) {
26
53
  const absolutePath = isAbsolute(rawPath) ? normalize(rawPath) : normalize(resolve(cwd, rawPath));
27
54
  const normalizedCwd = normalize(cwd);
55
+ // Checked BEFORE the containment test, because on POSIX this kind of path
56
+ // resolves to somewhere that genuinely IS inside the project and would
57
+ // otherwise be waved through. isAbsolute() is false for it here, which is
58
+ // precisely the trap.
59
+ if (!isAbsolute(rawPath) && isForeignAbsolute(rawPath)) {
60
+ throw new Error(`Path "${rawPath}" resolves outside the project directory. ` +
61
+ `Access is restricted to "${normalizedCwd}" and ~/.ava/.`);
62
+ }
28
63
  // Allow paths strictly within the project directory
29
64
  if (isWithinDirectory(absolutePath, normalizedCwd)) {
30
65
  return absolutePath;
@@ -1 +1 @@
1
- {"version":3,"file":"security.js","sourceRoot":"","sources":["../../src/tools/security.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAEhE;;;GAGG;AACH,SAAS,iBAAiB,CAAC,SAAiB,EAAE,QAAgB;IAC5D,MAAM,aAAa,GAAG,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IACzF,MAAM,YAAY,GAAG,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;IAEtF,qCAAqC;IACrC,IAAI,aAAa,KAAK,YAAY;QAAE,OAAO,IAAI,CAAC;IAEhD,6EAA6E;IAC7E,MAAM,eAAe,GAAG,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,YAAY,GAAG,GAAG,CAAC;IACvF,OAAO,aAAa,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;AACnD,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,YAAY,CAAC,OAAe,EAAE,GAAW;IACvD,MAAM,YAAY,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC;IACjG,MAAM,aAAa,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;IAErC,oDAAoD;IACpD,IAAI,iBAAiB,CAAC,YAAY,EAAE,aAAa,CAAC,EAAE,CAAC;QACnD,OAAO,YAAY,CAAC;IACtB,CAAC;IAED,iGAAiG;IACjG,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,EAAE,CAAC;IAC/D,IAAI,IAAI,EAAE,CAAC;QACT,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;QAChD,IAAI,iBAAiB,CAAC,YAAY,EAAE,MAAM,CAAC,EAAE,CAAC;YAC5C,OAAO,YAAY,CAAC;QACtB,CAAC;IACH,CAAC;IAED,MAAM,IAAI,KAAK,CACb,SAAS,OAAO,4CAA4C;QAC5D,4BAA4B,aAAa,gBAAgB,CAC1D,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAA2B,EAAE,GAAW;IACzE,IAAI,CAAC,OAAO;QAAE,OAAO,GAAG,CAAC;IACzB,OAAO,YAAY,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;AACpC,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,0CAA0C,EAAW,uCAAuC;IAC5F,4CAA4C,EAAQ,gBAAgB;IACpE,6BAA6B,EAAyB,cAAc;IACpE,gCAAgC,EAAqB,eAAe;IACpE,+CAA+C,EAAM,aAAa;IAClE,yCAAyC,EAAa,kBAAkB;IACxE,2BAA2B,EAA4B,kBAAkB;IACzE,+CAA+C,EAAQ,qBAAqB;IAC5E,8DAA8D,EAAG,8BAA8B;IAC/F,iCAAiC,EAAqB,0BAA0B;IAChF,4CAA4C,EAAW,8BAA8B;IACrF,iDAAiD,EAAK,+CAA+C;IACrG,iCAAiC,EAAqB,gBAAgB;CACvE,CAAC;AAEF;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAY;IAC9C,OAAO,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;AAC7D,CAAC"}
1
+ {"version":3,"file":"security.js","sourceRoot":"","sources":["../../src/tools/security.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"tool-registry.d.ts","sourceRoot":"","sources":["../../src/tools/tool-registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tool-registry.d.ts","sourceRoot":"","sources":["../../src/tools/tool-registry.ts"],"names":[],"mappings":"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"}
@@ -35,6 +35,7 @@ import { DetectLanguageTool } from './detect-language.js';
35
35
  import { TaskManageTool } from './task-manage.js';
36
36
  import { TaskSuggestTool } from './task-suggest.js';
37
37
  import { JournalWriteTool } from './journal.js';
38
+ import { BrainstormSessionTool } from './brainstorm-session.js';
38
39
  import { HealthPlanCreateTool } from './health-plan-create.js';
39
40
  import { HealthPlanUpdateTool } from './health-plan-update.js';
40
41
  import { HealthPlanListTool } from './health-plan-list.js';
@@ -187,6 +188,8 @@ export const TOOL_CATEGORY_MAP = {
187
188
  report_generate: 'documents', email_draft: 'documents',
188
189
  doc_generate: 'documents', todo_write: 'documents',
189
190
  task_manage: 'documents', task_suggest: 'documents', journal_write: 'documents',
191
+ // Local-only session store — same category as the journal it sits beside.
192
+ brainstorm_session: 'documents',
190
193
  present_plan: 'documents', apply_plan: 'documents', switch_mode: 'documents', browse_library: 'file_ops',
191
194
  // Memory — persistent knowledge
192
195
  memory_save: 'memory', memory_recall: 'memory',
@@ -402,6 +405,7 @@ export class ToolRegistry {
402
405
  new TaskManageTool(),
403
406
  new TaskSuggestTool(),
404
407
  new JournalWriteTool(),
408
+ new BrainstormSessionTool(),
405
409
  new HealthCatalogueSearchTool(),
406
410
  new HealthProfileAskTool(),
407
411
  new OpenHealthRoomTool(),
@@ -1 +1 @@
1
- {"version":3,"file":"tool-registry.js","sourceRoot":"","sources":["../../src/tools/tool-registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tool-registry.js","sourceRoot":"","sources":["../../src/tools/tool-registry.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { projectHash } from '../projects/project-data.js';
1
2
  import type { CheckId } from '../personas/verification-matrix.js';
2
3
  interface CheckTrust {
3
4
  consecutiveCleanRuns: number;
@@ -10,7 +11,6 @@ export interface ProjectTrustState {
10
11
  version: 1;
11
12
  checks: Partial<Record<CheckId, CheckTrust>>;
12
13
  }
13
- declare function cwdHash(cwd: string): string;
14
14
  declare function trustFilePath(cwd: string): string;
15
15
  export declare function loadTrustState(cwd: string): Promise<ProjectTrustState>;
16
16
  /**
@@ -32,7 +32,7 @@ export declare function recordCheckResults(cwd: string, results: Array<{
32
32
  export declare const _internals: {
33
33
  GRADUATION_THRESHOLD: number;
34
34
  NEVER_GRADUATES: ReadonlySet<CheckId>;
35
- cwdHash: typeof cwdHash;
35
+ projectHash: typeof projectHash;
36
36
  trustFilePath: typeof trustFilePath;
37
37
  };
38
38
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"verification-trust.d.ts","sourceRoot":"","sources":["../../src/tools/verification-trust.ts"],"names":[],"mappings":"AAuBA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oCAAoC,CAAC;AAelE,UAAU,UAAU;IAClB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAED,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,CAAC,CAAC;IACX,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC;CAC9C;AAED,iBAAS,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAKpC;AAED,iBAAS,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAE1C;AAMD,wBAAsB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAc5E;AAaD;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,iBAAiB,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAK7E;AAED;;;;;GAKG;AACH,wBAAsB,kBAAkB,CACtC,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,KAAK,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,IAAI,CAAA;CAAE,CAAC,GAC5E,OAAO,CAAC,IAAI,CAAC,CAyCf;AAED,eAAO,MAAM,UAAU;;;;;CAAoE,CAAC"}
1
+ {"version":3,"file":"verification-trust.d.ts","sourceRoot":"","sources":["../../src/tools/verification-trust.ts"],"names":[],"mappings":"AAqBA,OAAO,EAAqC,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC7F,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oCAAoC,CAAC;AAelE,UAAU,UAAU;IAClB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAED,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,CAAC,CAAC;IACX,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC;CAC9C;AAID,iBAAS,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAE1C;AAMD,wBAAsB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAc5E;AAgBD;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,iBAAiB,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAK7E;AAED;;;;;GAKG;AACH,wBAAsB,kBAAkB,CACtC,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,KAAK,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,IAAI,CAAA;CAAE,CAAC,GAC5E,OAAO,CAAC,IAAI,CAAC,CAyCf;AAED,eAAO,MAAM,UAAU;;;;;CAAwE,CAAC"}
@@ -15,11 +15,10 @@
15
15
  // evidence that a specific project's code has been behaving in a specific
16
16
  // working tree. Switching machines resets it (cheap rebuild) and switching
17
17
  // projects doesn't cross-contaminate.
18
- import { createHash } from 'node:crypto';
19
18
  import { existsSync } from 'node:fs';
20
- import { readFile, writeFile, mkdir } from 'node:fs/promises';
21
- import { homedir } from 'node:os';
22
- import { dirname, join, resolve } from 'node:path';
19
+ import { readFile, writeFile } from 'node:fs/promises';
20
+ import { join } from 'node:path';
21
+ import { projectDataDir, ensureProjectData, projectHash } from '../projects/project-data.js';
23
22
  const GRADUATION_THRESHOLD = 10;
24
23
  /**
25
24
  * Check IDs that are permanently pinned to the full check — they read
@@ -31,14 +30,10 @@ const NEVER_GRADUATES = new Set([
31
30
  'auth_full_suite',
32
31
  'migration_dry_run',
33
32
  ]);
34
- function cwdHash(cwd) {
35
- // Canonicalise so trailing slashes / drive-letter casing on Windows don't
36
- // create separate trust buckets for the same project.
37
- const canonical = resolve(cwd).replace(/[\\/]+$/, '').toLowerCase();
38
- return createHash('sha256').update(canonical).digest('hex').slice(0, 16);
39
- }
33
+ // The hash and the directory layout are owned by project-data.ts — this file
34
+ // used to carry its own copy of both.
40
35
  function trustFilePath(cwd) {
41
- return join(homedir(), '.ava', 'projects', cwdHash(cwd), 'trust.json');
36
+ return join(projectDataDir(cwd), 'trust.json');
42
37
  }
43
38
  function emptyState() {
44
39
  return { version: 1, checks: {} };
@@ -63,7 +58,10 @@ export async function loadTrustState(cwd) {
63
58
  async function saveTrustState(cwd, state) {
64
59
  const file = trustFilePath(cwd);
65
60
  try {
66
- await mkdir(dirname(file), { recursive: true });
61
+ // Creates the directory AND records which project it belongs to — the
62
+ // hash is one-way, so without that record nothing can ever list this
63
+ // project again.
64
+ await ensureProjectData(cwd);
67
65
  await writeFile(file, JSON.stringify(state, null, 2), 'utf8');
68
66
  }
69
67
  catch {
@@ -131,5 +129,5 @@ export async function recordCheckResults(cwd, results) {
131
129
  }
132
130
  await saveTrustState(cwd, state);
133
131
  }
134
- export const _internals = { GRADUATION_THRESHOLD, NEVER_GRADUATES, cwdHash, trustFilePath };
132
+ export const _internals = { GRADUATION_THRESHOLD, NEVER_GRADUATES, projectHash, trustFilePath };
135
133
  //# sourceMappingURL=verification-trust.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"verification-trust.js","sourceRoot":"","sources":["../../src/tools/verification-trust.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"verification-trust.js","sourceRoot":"","sources":["../../src/tools/verification-trust.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"write-video-post.d.ts","sourceRoot":"","sources":["../../src/tools/write-video-post.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AACxF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAO5D;;;;;;;;;;;;;GAaG;AACH,qBAAa,kBAAmB,YAAW,IAAI;IAC7C,QAAQ,CAAC,IAAI,sBAAsB;IACnC,QAAQ,CAAC,WAAW,0HACgG;IACpH,QAAQ,CAAC,SAAS,EAAE,aAAa,CAAW;IAC5C,QAAQ,CAAC,oBAAoB,SAAS;IAEtC,QAAQ,CAAC,MAAM,EAAE,cAAc,CA8C7B;IAEI,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,UAAU,CAAC;CAmLjG"}
1
+ {"version":3,"file":"write-video-post.d.ts","sourceRoot":"","sources":["../../src/tools/write-video-post.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AACxF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAO5D;;;;;;;;;;;;;GAaG;AACH,qBAAa,kBAAmB,YAAW,IAAI;IAC7C,QAAQ,CAAC,IAAI,sBAAsB;IACnC,QAAQ,CAAC,WAAW,0HACgG;IACpH,QAAQ,CAAC,SAAS,EAAE,aAAa,CAAW;IAC5C,QAAQ,CAAC,oBAAoB,SAAS;IAEtC,QAAQ,CAAC,MAAM,EAAE,cAAc,CA8C7B;IAEI,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,UAAU,CAAC;CAsQjG"}
@@ -38,7 +38,7 @@ export class WriteVideoPostTool {
38
38
  },
39
39
  script: {
40
40
  type: 'string',
41
- description: 'What YOU SAY over the clip, spoken in your own voice. Written to be heard, not read — short sentences, no hashtags, no emoji, no "link in bio". A voiced clip is ALWAYS 10 seconds and the line must land between 17 and 22 words AIM AT 20-22, because that is what fills the clip. Timed against the real voice: 22 words runs ~9.1s, 17 words ~7.0s, and 12 words is under 5s, which leaves half the video playing in silence. The ceiling keeps the voice inside the picture a voice still talking after the clip stops is the most obviously broken thing a short can do. The floor keeps the picture from running on alone (and under 3 seconds Wan refuses the audio outright, so the clip fails to render at all). Both bounds are enforced. Omit entirely for a silent clip carried by on-screen text.',
41
+ description: 'What YOU SAY over the clip, spoken in your own voice. Written to be heard, not read — short sentences, no hashtags, no emoji, no "link in bio". WRITE THE LINE YOU MEAN and leave `duration` out — the clip is then sized to hold it. Both bounds are enforced: roughly 15-20 words at 10s, 25-32 at 15s, 52-68 at 30s, and any length in between. AIM AT THE TOP of whichever range applies. There is air at each end so your voice does not start on the first frame or stop on the last. Timed against the real voice at about 2.4 words a second. The ceiling keeps the voice inside the picture: a voice still talking after the clip stops is the most obviously broken thing a short can do. The floor keeps the picture from running on alone, and under 3 seconds Wan refuses the audio outright so nothing renders. A voiced clip is never 5 seconds — ask for 10 or more. Thirty seconds is a different KIND of writing, not a longer version of the same one: it is a walkthrough or a demonstration, and padding a hook to fill it is worse than keeping it short. Omit the script entirely for a silent clip — the model scores its own audio, and a picture carried by that soundtrack is a real choice rather than a fallback.',
42
42
  },
43
43
  caption: {
44
44
  type: 'string',
@@ -46,7 +46,7 @@ export class WriteVideoPostTool {
46
46
  },
47
47
  duration: {
48
48
  type: 'number',
49
- description: 'Clip length in seconds. Keep it to what the script actually needs — a padded clip loses the viewer.',
49
+ description: 'Clip length in seconds, 2-30. USUALLY LEAVE THIS OUT when there is a script — it is derived from the words so the two cannot disagree. Set it only when the LENGTH is the point rather than the line: a demonstration with few words and a lot to show. Keep it to what the material actually needs — a padded clip loses the viewer, and that gets easier to do with more room. 10 is the default shape for a hook. 15 suits a full coaching line. 30 is for something that genuinely needs showing: a walkthrough, a before-and-after, a process. Naming a `recipe` caps this at 15, because a food video animates our own photograph and that model stops there.',
50
50
  },
51
51
  title: { type: 'string', description: 'Optional short title for the library.' },
52
52
  hashtags: {
@@ -159,16 +159,89 @@ export class WriteVideoPostTool {
159
159
  // changes, re-measure; do not carry these numbers over.
160
160
  const MIN_SPEECH_SECONDS = 3.0;
161
161
  const SLOWEST_WORDS_PER_SECOND = 2.41;
162
- /** Speech has to end before the picture does; 0.5s of air is enough. */
163
- const TRAILING_AIR_SECONDS = 0.5;
164
- const MIN_WORDS = 17;
162
+ /**
163
+ * Air at BOTH ends, so the voice does not start on frame one and does not
164
+ * stop on the last frame.
165
+ *
166
+ * The comment above always said "a second of air at each end" — the code
167
+ * only ever subtracted 0.5 once, and nothing at the start, so the voice
168
+ * began the instant the picture did. Operator, 2026-08-26: *"i feel thats
169
+ * what would feel unnatraul"*. It is: a clip filled hard from first frame
170
+ * to last reads as rushed, and it gets worse the longer the clip runs.
171
+ *
172
+ * 0.75 each end rather than a full second, which would take a 10s clip down
173
+ * to 14-19 words — tight for a hook. This costs a couple of words and buys
174
+ * a beat of picture before she speaks and a beat after she stops.
175
+ */
176
+ const LEAD_IN_SECONDS = 0.75;
177
+ const TRAILING_AIR_SECONDS = 0.75;
178
+ /**
179
+ * How much of the clip the script should FILL, as a fraction of the
180
+ * ceiling.
181
+ *
182
+ * 0.77 is not arbitrary: at 10 seconds it reproduces the floor of 17 that
183
+ * was arrived at the hard way, so the rule that was measured is preserved
184
+ * rather than replaced. It now scales instead of being a single number
185
+ * that only made sense for one length.
186
+ */
187
+ const FILL_RATIO = 0.77;
165
188
  const wantsVoice = !!script;
166
- const plannedDuration = wantsVoice || (typeof args.duration === 'number' && args.duration > 7.5) ? 10 : 5;
189
+ /**
190
+ * How long the clip may run.
191
+ *
192
+ * A food video names a dish we photographed, so it animates OUR image —
193
+ * image-to-video, which tops out at 15s on wan2.7-i2v. Everything else is
194
+ * text-to-video on wan3.0-video, which reaches 30s. Those ceilings are the
195
+ * models' own, quoted from their validators, and the platform route clamps
196
+ * to them independently; matching them here means the SCRIPT is written for
197
+ * the length that will actually render. Get this wrong and a script sized
198
+ * for 30 seconds gets a 15-second clip, and the voice runs past the end —
199
+ * the exact failure everything below exists to prevent.
200
+ */
201
+ const maxDuration = args.recipe ? 15 : 30;
202
+ /** How many words a clip of this length can carry, with air at both ends. */
203
+ const wordBudget = (seconds) => Math.floor(Math.max(1, seconds - LEAD_IN_SECONDS - TRAILING_AIR_SECONDS) * SLOWEST_WORDS_PER_SECOND);
204
+ /**
205
+ * A voiced clip is never shorter than 10 seconds. The window below that is
206
+ * empty: every script short enough to fit is too short for Wan to accept as
207
+ * audio at all (see the 3.0s minimum above). Learned when a six-word line
208
+ * killed every food video with a generic "generation failed".
209
+ */
210
+ const MIN_VOICED_SECONDS = 10;
211
+ const scriptWords = script ? script.split(/\s+/).filter(Boolean).length : 0;
212
+ /**
213
+ * Duration follows the SCRIPT when she has not named one.
214
+ *
215
+ * She used to have to guess a length first and then cram words into it,
216
+ * finding out only after the attempt whether they fit. That was tolerable
217
+ * when 10 seconds was effectively the only option; with 10, 15 and 30 it is
218
+ * three times as many ways to guess wrong, and each wrong guess costs a
219
+ * turn. So: say the line you mean, and the clip is sized to hold it.
220
+ *
221
+ * An explicit duration still wins, because length is not only about the
222
+ * script — a demonstration may have few words and a great deal to SHOW.
223
+ */
224
+ const requested = typeof args.duration === 'number' ? args.duration : undefined;
225
+ // The EXACT length that holds this script, not the nearest round number.
226
+ // Snapping to 10/15/30 leaves dead zones — 40 words is too long for 15s and
227
+ // too short to fill 30s, so it would be refused with nowhere to go. Both
228
+ // models take any whole number of seconds in range, so there is no reason
229
+ // to invent tiers they do not have.
230
+ const derived = script
231
+ ? Math.min(maxDuration, Math.max(MIN_VOICED_SECONDS, Math.ceil(scriptWords / SLOWEST_WORDS_PER_SECOND + LEAD_IN_SECONDS + TRAILING_AIR_SECONDS)))
232
+ : 5;
233
+ const plannedDuration = requested === undefined
234
+ ? derived
235
+ : (wantsVoice
236
+ ? Math.max(10, Math.min(maxDuration, Math.round(requested)))
237
+ : Math.max(2, Math.min(maxDuration, Math.round(requested))));
167
238
  if (script) {
168
- const words = script.split(/\s+/).filter(Boolean).length;
169
- const speakable = Math.max(1, plannedDuration - TRAILING_AIR_SECONDS);
170
- const budget = Math.floor(speakable * SLOWEST_WORDS_PER_SECOND);
171
- const floor = MIN_WORDS;
239
+ const words = scriptWords;
240
+ const budget = wordBudget(plannedDuration);
241
+ // Never below what Wan will accept as audio at all, however short the
242
+ // clip: MIN_SPEECH_SECONDS at the FASTEST observed rate.
243
+ const audioFloor = Math.ceil(MIN_SPEECH_SECONDS * 2.78);
244
+ const floor = Math.max(audioFloor, Math.round(budget * FILL_RATIO));
172
245
  if (words > budget) {
173
246
  return {
174
247
  success: false,
@@ -182,9 +255,10 @@ export class WriteVideoPostTool {
182
255
  success: false,
183
256
  output: `That script is only ${words} words — roughly ${(words / SLOWEST_WORDS_PER_SECOND).toFixed(1)}s of speech ` +
184
257
  `in a ${plannedDuration}s clip, so the rest of the video would play in silence. Write ${floor}-${budget} words ` +
185
- `and aim at the top of that range: ${budget} words fills the clip, ${floor} barely covers two thirds ` +
258
+ `and aim at the top of that range: ${budget} words fills the clip, ${floor} barely covers three quarters ` +
186
259
  `of it. (Under ${MIN_SPEECH_SECONDS}s Wan refuses the audio outright and nothing renders at all.) ` +
187
- `Or drop the script entirely for a silent clip carried by on-screen text.`,
260
+ `Or drop the script entirely the model scores its own audio now, and a silent clip carried by the ` +
261
+ `picture and that soundtrack is a real choice rather than a fallback.`,
188
262
  };
189
263
  }
190
264
  }
@@ -193,7 +267,9 @@ export class WriteVideoPostTool {
193
267
  visual,
194
268
  script: script || undefined,
195
269
  caption: withLink,
196
- duration: typeof args.duration === 'number' ? args.duration : undefined,
270
+ // The length the SCRIPT was written for, not the raw request. If these
271
+ // diverge the voice overruns the picture.
272
+ duration: plannedDuration,
197
273
  title: (args.title?.trim()) || undefined,
198
274
  hashtags: Array.isArray(args.hashtags)
199
275
  ? args.hashtags.map(h => String(h).trim().replace(/^#/, '')).filter(Boolean)