@exellix/ai-tasks 9.0.6 → 9.1.1

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 (177) hide show
  1. package/CHANGELOG.md +22 -4
  2. package/README.md +5 -5
  3. package/RUNTASK_REQUEST.md +17 -15
  4. package/dist/compile/compileTaskConfiguration.d.ts.map +1 -1
  5. package/dist/compile/compileTaskConfiguration.js +3 -0
  6. package/dist/compile/compileTaskConfiguration.js.map +1 -1
  7. package/dist/core/task-sdk.d.ts.map +1 -1
  8. package/dist/core/task-sdk.js +112 -166
  9. package/dist/core/task-sdk.js.map +1 -1
  10. package/dist/invocation/types.d.ts +1 -1
  11. package/dist/narrix/narrixUnitExecution.js +2 -2
  12. package/dist/narrix/narrixUnitExecution.js.map +1 -1
  13. package/dist/node-execution/buildRequestFromNodePlan.d.ts +4 -0
  14. package/dist/node-execution/buildRequestFromNodePlan.d.ts.map +1 -1
  15. package/dist/node-execution/buildRequestFromNodePlan.js +4 -13
  16. package/dist/node-execution/buildRequestFromNodePlan.js.map +1 -1
  17. package/dist/node-execution/compileProfessionalAnswerRequest.d.ts +2 -0
  18. package/dist/node-execution/compileProfessionalAnswerRequest.d.ts.map +1 -0
  19. package/dist/node-execution/compileProfessionalAnswerRequest.js +4 -0
  20. package/dist/node-execution/compileProfessionalAnswerRequest.js.map +1 -0
  21. package/dist/node-execution/rejectForbiddenWireFields.d.ts +2 -0
  22. package/dist/node-execution/rejectForbiddenWireFields.d.ts.map +1 -1
  23. package/dist/node-execution/rejectForbiddenWireFields.js +42 -7
  24. package/dist/node-execution/rejectForbiddenWireFields.js.map +1 -1
  25. package/dist/node-execution/resolveUnitModelSelection.d.ts.map +1 -1
  26. package/dist/node-execution/resolveUnitModelSelection.js +10 -1
  27. package/dist/node-execution/resolveUnitModelSelection.js.map +1 -1
  28. package/dist/observability/graphExecutionRunLogContract.d.ts +1 -1
  29. package/dist/observability/graphExecutionRunLogContract.js +1 -1
  30. package/dist/post-steps/audit/auditChecklistFuncxEnvelope.d.ts +19 -3
  31. package/dist/post-steps/audit/auditChecklistFuncxEnvelope.d.ts.map +1 -1
  32. package/dist/post-steps/audit/auditChecklistFuncxEnvelope.js +7 -1
  33. package/dist/post-steps/audit/auditChecklistFuncxEnvelope.js.map +1 -1
  34. package/dist/post-steps/audit/loadAuditTemplates.d.ts +2 -55
  35. package/dist/post-steps/audit/loadAuditTemplates.d.ts.map +1 -1
  36. package/dist/post-steps/audit/loadAuditTemplates.js +3 -38
  37. package/dist/post-steps/audit/loadAuditTemplates.js.map +1 -1
  38. package/dist/post-steps/audit/parseAuditFuncxOutput.d.ts +8 -0
  39. package/dist/post-steps/audit/parseAuditFuncxOutput.d.ts.map +1 -0
  40. package/dist/post-steps/audit/parseAuditFuncxOutput.js +62 -0
  41. package/dist/post-steps/audit/parseAuditFuncxOutput.js.map +1 -0
  42. package/dist/post-steps/audit/parseAuditOutput.d.ts +2 -0
  43. package/dist/post-steps/audit/parseAuditOutput.d.ts.map +1 -1
  44. package/dist/post-steps/audit/parseAuditOutput.js +56 -0
  45. package/dist/post-steps/audit/parseAuditOutput.js.map +1 -1
  46. package/dist/post-steps/audit/runAudit.d.ts.map +1 -1
  47. package/dist/post-steps/audit/runAudit.js +53 -113
  48. package/dist/post-steps/audit/runAudit.js.map +1 -1
  49. package/dist/post-steps/audit/runAuditFuncxCall.d.ts +18 -0
  50. package/dist/post-steps/audit/runAuditFuncxCall.d.ts.map +1 -0
  51. package/dist/post-steps/audit/runAuditFuncxCall.js +59 -0
  52. package/dist/post-steps/audit/runAuditFuncxCall.js.map +1 -0
  53. package/dist/synthesis/resolveSourceMaterial.d.ts.map +1 -1
  54. package/dist/synthesis/resolveSourceMaterial.js +14 -0
  55. package/dist/synthesis/resolveSourceMaterial.js.map +1 -1
  56. package/dist/types/task-types.d.ts +4 -3
  57. package/dist/types/task-types.d.ts.map +1 -1
  58. package/dist/utils/bridgeRunSkillGatewayMemory.d.ts.map +1 -1
  59. package/dist/utils/bridgeRunSkillGatewayMemory.js +1 -0
  60. package/dist/utils/bridgeRunSkillGatewayMemory.js.map +1 -1
  61. package/dist/utils/executionMemoryInputRecord.d.ts +12 -0
  62. package/dist/utils/executionMemoryInputRecord.d.ts.map +1 -0
  63. package/dist/utils/executionMemoryInputRecord.js +28 -0
  64. package/dist/utils/executionMemoryInputRecord.js.map +1 -0
  65. package/dist/utils/resolveAiProfileModel.d.ts +1 -1
  66. package/dist/utils/resolveAiProfileModel.d.ts.map +1 -1
  67. package/dist/utils/skillTemplateVariables.d.ts +3 -2
  68. package/dist/utils/skillTemplateVariables.d.ts.map +1 -1
  69. package/dist/utils/skillTemplateVariables.js +3 -2
  70. package/dist/utils/skillTemplateVariables.js.map +1 -1
  71. package/dist/validation/validateProfessionalAnswerContract.d.ts +8 -0
  72. package/dist/validation/validateProfessionalAnswerContract.d.ts.map +1 -0
  73. package/dist/validation/validateProfessionalAnswerContract.js +45 -0
  74. package/dist/validation/validateProfessionalAnswerContract.js.map +1 -0
  75. package/dist/validation/validateRunTaskConfig.d.ts.map +1 -1
  76. package/dist/validation/validateRunTaskConfig.js +2 -0
  77. package/dist/validation/validateRunTaskConfig.js.map +1 -1
  78. package/documenations/record-and-template-variables.md +21 -13
  79. package/documenations/run-task-execution-flow.md +1 -1
  80. package/documenations/schemas/v1/run-task-request.json +1 -1
  81. package/documenations/upstream-feature-requests/README.md +9 -5
  82. package/documenations/upstream-feature-requests/ai-skills-orchestrator-invoke-contract-5.9.md +1 -1
  83. package/documenations/upstream-feature-requests/funcx-4.9.13-open-items.md +62 -0
  84. package/documenations/upstream-feature-requests/funcx-gap-analysis-cr-fr.md +401 -0
  85. package/documenations/upstream-feature-requests/funcx-pre-post-sidekick-actions.md +1 -0
  86. package/documenations/upstream-feature-requests/graph-engine-runtask-contract-alignment-investigation.md +370 -0
  87. package/documenations/upstream-feature-requests/xynthesis-ai-profiles-2.1-import-break.md +2 -2
  88. package/documenations/upstream-feature-requests/xynthesis-openrouter-wire-model-double-prefix-bug.md +1 -1
  89. package/documenations/upstream-feature-requests/xynthesis-orchestrator-invoke-contract-4.2.md +1 -1
  90. package/package.json +14 -17
  91. package/.docs/DOWNSTREAM_ENV.md +0 -42
  92. package/.docs/FEEDBACK_TO_CLIENT_DOWNSTREAM_FIXES.md +0 -64
  93. package/.docs/INTERMEDIATE_STEPS.md +0 -82
  94. package/.docs/activity-structure.md +0 -31
  95. package/.docs/ai-task-ai-scoping-spec.md +0 -338
  96. package/.docs/ai-tasks-model-profile-aliases-7x.md +0 -96
  97. package/.docs/blockers-and-issues.md +0 -346
  98. package/.docs/building-runTask-sdk.md +0 -659
  99. package/.docs/building-skill-execution-orchestrator.md +0 -968
  100. package/.docs/code-used-before/run-task.txt +0 -39
  101. package/.docs/code-used-before/task-executor.ts.old +0 -57
  102. package/.docs/code-used-before/test-run-task.ts.old +0 -42
  103. package/.docs/code-used-before/types.txt +0 -23
  104. package/.docs/env-ready-policy.md +0 -40
  105. package/.docs/flow-io/flow-README.md +0 -76
  106. package/.docs/flow-io/narrix.md +0 -124
  107. package/.docs/flow-io/web-scoping.md +0 -135
  108. package/.docs/flow-io/xynthesis-post.md +0 -154
  109. package/.docs/flow-io/xynthesis-pre.md +0 -181
  110. package/.docs/gap-analysis.md +0 -201
  111. package/.docs/integration-facts-ai-tasks.md +0 -109
  112. package/.docs/investigation/ai-skills.md +0 -170
  113. package/.docs/investigation/external-packages-assignments.md +0 -66
  114. package/.docs/investigation/integration-summary.md +0 -20
  115. package/.docs/investigation/narrix-catalox.md +0 -29
  116. package/.docs/investigation/workplan-close-graph-engine-gaps.md +0 -101
  117. package/.docs/logging-stack.md +0 -30
  118. package/.docs/memory-narrix-adapter-developer-guide.md +0 -402
  119. package/.docs/memory-narrix-adapter-requirements.md +0 -112
  120. package/.docs/narrix-context-consumption-gap.md +0 -184
  121. package/.docs/narrix-context-downstream-report.md +0 -30
  122. package/.docs/narrix-ingest-and-packs-library-spec.md +0 -240
  123. package/.docs/narrix-record-input-current-design.md +0 -48
  124. package/.docs/pacakge.md +0 -48
  125. package/.docs/possible-components/README.md +0 -11
  126. package/.docs/possible-components/integration/README.md +0 -10
  127. package/.docs/possible-components/integration/gaps-when-merging.md +0 -16
  128. package/.docs/possible-components/integration/platform.md +0 -54
  129. package/.docs/possible-components/integration/reintegrate-into-ai-tasks.md +0 -26
  130. package/.docs/possible-components/integration/roadmap-and-checklists.md +0 -54
  131. package/.docs/possible-components/post-component/README.md +0 -18
  132. package/.docs/possible-components/post-component/builder-guide.md +0 -175
  133. package/.docs/possible-components/post-component/gaps-and-artifacts.md +0 -52
  134. package/.docs/possible-components/post-component/handler-audit.md +0 -47
  135. package/.docs/possible-components/post-component/handler-polish.md +0 -41
  136. package/.docs/possible-components/post-component/unified-protocol.md +0 -59
  137. package/.docs/possible-components/pre-component/README.md +0 -22
  138. package/.docs/possible-components/pre-component/builder-guide.md +0 -127
  139. package/.docs/possible-components/pre-component/gaps-and-artifacts.md +0 -35
  140. package/.docs/possible-components/pre-component/handler-ai-scoping.md +0 -45
  141. package/.docs/possible-components/pre-component/handler-narrix-preprocessor.md +0 -49
  142. package/.docs/possible-components/pre-component/handler-narrix-system2.md +0 -35
  143. package/.docs/possible-components/pre-component/handler-synthesized-context.md +0 -65
  144. package/.docs/possible-components/pre-component/handler-web-scope.md +0 -29
  145. package/.docs/possible-components/pre-component/unified-protocol.md +0 -89
  146. package/.docs/prefer-openrouter-routing-policy.md +0 -114
  147. package/.docs/questions-for-ai-skills.md +0 -123
  148. package/.docs/realtime-narrixing-gap-analysis.md +0 -40
  149. package/.docs/realtime-narrixing.md +0 -433
  150. package/.docs/run-context-object.md +0 -32
  151. package/.docs/session-id-usage.md +0 -26
  152. package/.docs/skill-library-spec.md +0 -249
  153. package/.docs/synthesized-context-strategy-spec.md +0 -906
  154. package/.docs/upstream-issue/2026-03-21_woroces-ai-tasks_ISSUE-006_web-scope-question-from-cni-entity.md +0 -46
  155. package/.docs/web-scopper-embed.md +0 -93
  156. package/.docs/xynthesis-wiring-and-io.md +0 -12
  157. package/documenations/activix-feature-request-identity.md +0 -123
  158. package/documenations/bug-report-xynthesis-and-synthesis-call.md +0 -217
  159. package/documenations/feature-request-ai-skills-raw-template-access.md +0 -82
  160. package/documenations/feature-request-athenix-core-directive.md +0 -145
  161. package/documenations/feature-request-athenix-token-extraction.md +0 -124
  162. package/documenations/funcx-upstream-github-issues-draft.md +0 -153
  163. package/documenations/identity-metadata-contract.md +0 -165
  164. package/documenations/run-task-single-run-checklist.md +0 -109
  165. package/documenations/sessions/2026-06-08-subnets-model-resolution/CR-1-no-concrete-wire-in-graph-plans.md +0 -93
  166. package/documenations/sessions/2026-06-08-subnets-model-resolution/CR-2-skillModel-profile-only-at-storage.md +0 -88
  167. package/documenations/sessions/2026-06-08-subnets-model-resolution/CR-3-reject-concrete-models-in-catalog-rows.md +0 -76
  168. package/documenations/sessions/2026-06-08-subnets-model-resolution/FR-1-suggested-profile-in-catalogs.md +0 -96
  169. package/documenations/sessions/2026-06-08-subnets-model-resolution/FR-2-graph-engine-failure-phase-attribution.md +0 -92
  170. package/documenations/sessions/2026-06-08-subnets-model-resolution/INVESTIGATION-original-bug.md +0 -182
  171. package/documenations/sessions/2026-06-08-subnets-model-resolution/PROBLEM.md +0 -236
  172. package/documenations/sessions/2026-06-08-subnets-model-resolution/README.md +0 -11
  173. package/documenations/sessions/2026-06-08-subnets-model-resolution/funcx-test-resolveModel.cheapDefaultWireSlug.test.ts +0 -117
  174. package/documenations/upstream-feature-requests/ai-tasks-wrap-up-after-upstream.md +0 -129
  175. package/documenations/upstream-feedback-request-shape-clarification.md +0 -101
  176. package/documenations/web-context-precedence.md +0 -33
  177. package/documenations/xynthesis-activix-telemetry.md +0 -28
@@ -1,249 +0,0 @@
1
- # Skillix — Skill Library Spec
2
-
3
- **Package:** `@skillices/skillix`
4
- **Git org:** `Skillices`
5
- **Consumer:** `@woroces/ai-tasks`
6
-
7
- ---
8
-
9
- ## 1. What Is Skillix
10
-
11
- Skillix is the **registry of skill definitions** — every skill that ai-tasks can execute lives here as a **Skillix entry**. Each entry carries the skill's **prompt**, **instructions path**, metadata, and execution defaults.
12
-
13
- ai-tasks ships a **built-in default registry**. Upstream packages ("skills packages") published under `@skillices/` can be installed and **merged** into that default, extending the library without forking ai-tasks.
14
-
15
- ---
16
-
17
- ## 2. Architecture: Default + Upstream Merge
18
-
19
- ```
20
- ┌──────────────────────────────────┐
21
- │ @skillices/skillix │ ← the core library (types, merge, lookup)
22
- │ exports: types, mergeRegistries │
23
- │ exports: findSkillix, listKeys │
24
- └──────────────────────────────────┘
25
-
26
- ┌──────────────────────────────────┐
27
- │ @skillices/skillix-security │ ← upstream skills package (example)
28
- │ exports: REGISTRY (partial) │
29
- └──────────────────────────────────┘
30
-
31
- ┌──────────────────────────────────┐
32
- │ @woroces/ai-tasks │
33
- │ • has DEFAULT_REGISTRY (built-in)│
34
- │ • imports @skillices/skillix │
35
- │ • optionally imports upstream │
36
- │ skills packages and merges │
37
- │ • uses merged registry at runtime│
38
- └──────────────────────────────────┘
39
- ```
40
-
41
- **Flow:**
42
-
43
- 1. ai-tasks defines `DEFAULT_REGISTRY` — its own built-in skills.
44
- 2. At init, ai-tasks calls `mergeRegistries(DEFAULT_REGISTRY, ...upstreamRegistries)` to produce the **active registry**.
45
- 3. Upstream skills packages are regular npm deps (`@skillices/skillix-security`, `@skillices/skillix-ops`, etc.) that each export a partial registry.
46
- 4. Merge rule: **upstream wins** on key collision (upstream is more specific / fresher). ai-tasks can invert this if needed.
47
-
48
- ---
49
-
50
- ## 3. Skillix Entry Shape
51
-
52
- Every skill in the registry is a `SkillixEntry`:
53
-
54
- ```ts
55
- interface SkillixEntry {
56
- /** Stable unique id (slug or UUID). */
57
- id: string;
58
-
59
- /** Skill key as used in RunTaskRequest.skillKey (e.g. "tasks/security-risk-summary"). */
60
- key: string;
61
-
62
- /** Human-readable name. */
63
- name: string;
64
-
65
- /** Short description — what this skill does. */
66
- description: string;
67
-
68
- /** The prompt template. The actual instructions sent to the LLM. */
69
- prompt: string;
70
-
71
- /**
72
- * Path to an external instructions file (relative to package root or absolute).
73
- * When set, the file content is the prompt; `prompt` field may be empty or a fallback.
74
- * Consumer loads the file at runtime or build time.
75
- */
76
- instructionsPath?: string;
77
-
78
- /** Optional tags for filtering and discovery. */
79
- tags?: string[];
80
-
81
- /** Default execution type when request doesn't specify one. */
82
- defaultExecutionType?: string;
83
-
84
- /** Optional JSON Schema for task input validation. */
85
- inputSchema?: object;
86
-
87
- /** Optional hints for execution bindings (model, db, etc.). */
88
- bindingHints?: Record<string, unknown>;
89
- }
90
- ```
91
-
92
- ### What matters most
93
-
94
- Every skillix entry **must** have either `prompt` (inline) or `instructionsPath` (file reference) — that is the skill's core content. Everything else is metadata and defaults.
95
-
96
- ---
97
-
98
- ## 4. Package API (`@skillices/skillix`)
99
-
100
- ### 4.1 Types
101
-
102
- ```ts
103
- export type { SkillixEntry };
104
- export type SkillixRegistry = Record<string, SkillixEntry>; // keyed by SkillixEntry.key
105
- ```
106
-
107
- ### 4.2 Registry Operations
108
-
109
- ```ts
110
- /** Merge multiple registries. Later registries win on key collision. */
111
- export function mergeRegistries(...registries: SkillixRegistry[]): SkillixRegistry;
112
-
113
- /** Find a skillix entry by key or taskId (normalized lookup). */
114
- export function findSkillix(key: string, registry: SkillixRegistry): SkillixEntry | undefined;
115
-
116
- /** List all keys in a registry. */
117
- export function listKeys(registry: SkillixRegistry): string[];
118
- ```
119
-
120
- ### 4.3 Key Normalization
121
-
122
- Consumers may pass `"security-risk-summary"` or `"tasks/security-risk-summary"`. `findSkillix` tries:
123
- 1. Exact match on `key`.
124
- 2. Prefixed with `tasks/`.
125
- 3. Prefixed with `skills/`.
126
-
127
- First match wins.
128
-
129
- ---
130
-
131
- ## 5. Upstream Skills Packages
132
-
133
- A skills package is any npm package under `@skillices/` that exports a `SkillixRegistry`:
134
-
135
- ```ts
136
- // @skillices/skillix-security/index.ts
137
- import type { SkillixRegistry } from "@skillices/skillix";
138
-
139
- export const REGISTRY: SkillixRegistry = {
140
- "tasks/security-risk-summary": {
141
- id: "security-risk-summary-v1",
142
- key: "tasks/security-risk-summary",
143
- name: "Security risk summary",
144
- description: "Summarize security risks from context.",
145
- prompt: "You are a security analyst. Given the following context:\n\n{{context}}\n\nProduce a risk summary...",
146
- instructionsPath: "instructions/security-risk-summary.md",
147
- tags: ["security", "summary"],
148
- defaultExecutionType: "DIRECT",
149
- },
150
- // ... more entries
151
- };
152
- ```
153
-
154
- That's it — flat registry export, no runtime logic. The package just holds skill definitions.
155
-
156
- ---
157
-
158
- ## 6. How ai-tasks Uses Skillix
159
-
160
- ### 6.1 Setup (once, at init)
161
-
162
- ```ts
163
- import { mergeRegistries, findSkillix } from "@skillices/skillix";
164
- import { REGISTRY as securitySkills } from "@skillices/skillix-security"; // upstream
165
- import { DEFAULT_REGISTRY } from "./skillix/defaults.js"; // built-in
166
-
167
- const ACTIVE_REGISTRY = mergeRegistries(DEFAULT_REGISTRY, securitySkills);
168
- ```
169
-
170
- ### 6.2 At runTask Time
171
-
172
- ```ts
173
- const skillix = findSkillix(request.skillKey, ACTIVE_REGISTRY);
174
-
175
- if (skillix) {
176
- // Apply defaults (request takes precedence)
177
- if (!request.executionType && skillix.defaultExecutionType) {
178
- request.executionType = skillix.defaultExecutionType;
179
- }
180
-
181
- // Resolve prompt: instructionsPath (file) takes priority, fallback to inline prompt
182
- const prompt = skillix.instructionsPath
183
- ? await loadInstructions(skillix.instructionsPath)
184
- : skillix.prompt;
185
-
186
- // Inject prompt into execution context
187
- request.context = prompt + (request.context ? "\n\n" + request.context : "");
188
- }
189
-
190
- // Continue with existing runTask flow...
191
- ```
192
-
193
- ### 6.3 When Skill Not in Registry
194
-
195
- No change to current behavior. ai-tasks continues as today — the request is used as-is. Skillix only adds defaults and prompt when the skill is found.
196
-
197
- ---
198
-
199
- ## 7. Built-In Default Registry in ai-tasks
200
-
201
- ai-tasks maintains its own `DEFAULT_REGISTRY` for skills that ship with it:
202
-
203
- ```
204
- src/skillix/
205
- defaults.ts ← DEFAULT_REGISTRY
206
- instructions/ ← .md files referenced by instructionsPath
207
- my-built-in.md
208
- ```
209
-
210
- This is not the `@skillices/skillix` package. It's ai-tasks' own set of skillix entries that exist without installing any upstream skills package.
211
-
212
- ---
213
-
214
- ## 8. Implementation Checklist
215
-
216
- ### Phase 1: Create `@skillices/skillix`
217
-
218
- - [ ] New repo under `Skillices` org.
219
- - [ ] Export `SkillixEntry`, `SkillixRegistry` types.
220
- - [ ] Implement `mergeRegistries`, `findSkillix`, `listKeys`.
221
- - [ ] Key normalization (exact → `tasks/` → `skills/` prefix fallback).
222
- - [ ] Publish to registry.
223
-
224
- ### Phase 2: Wire into ai-tasks
225
-
226
- - [ ] Add `@skillices/skillix` dependency.
227
- - [ ] Create `src/skillix/defaults.ts` with `DEFAULT_REGISTRY`.
228
- - [ ] Create `src/skillix/instructions/` for built-in prompt files.
229
- - [ ] In `task-sdk.ts`: resolve skillix entry, apply defaults + prompt.
230
- - [ ] Graceful fallback when skill not in registry.
231
-
232
- ### Phase 3: First upstream skills package
233
-
234
- - [ ] Create `@skillices/skillix-<domain>` (e.g. `skillix-security`).
235
- - [ ] Export partial `SkillixRegistry` with entries and instruction files.
236
- - [ ] In ai-tasks: add dep, merge at init.
237
-
238
- ---
239
-
240
- ## 9. Summary
241
-
242
- | Concern | Where |
243
- |---------|-------|
244
- | Types + merge + lookup | `@skillices/skillix` |
245
- | Built-in skills | `ai-tasks/src/skillix/defaults.ts` |
246
- | Upstream skill definitions | `@skillices/skillix-*` packages |
247
- | Prompt / instructions | `SkillixEntry.prompt` (inline) or `SkillixEntry.instructionsPath` (file) |
248
- | Merge strategy | `mergeRegistries()` — later wins, request always overrides |
249
- | Key resolution | `findSkillix()` — exact, then `tasks/`, then `skills/` prefix |