@harness-engineering/cli 4.1.0 → 4.3.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 (75) hide show
  1. package/dist/agents/skills/claude-code/harness-autopilot/SKILL.md +31 -0
  2. package/dist/agents/skills/claude-code/harness-catalog-retrospective/SKILL.md +124 -0
  3. package/dist/agents/skills/claude-code/harness-catalog-retrospective/skill.yaml +48 -0
  4. package/dist/agents/skills/claude-code/harness-execution/SKILL.md +13 -0
  5. package/dist/agents/skills/claude-code/harness-parallel-agents/SKILL.md +3 -0
  6. package/dist/agents/skills/claude-code/harness-planning/SKILL.md +3 -1
  7. package/dist/agents/skills/codex/harness-autopilot/SKILL.md +31 -0
  8. package/dist/agents/skills/codex/harness-catalog-retrospective/SKILL.md +124 -0
  9. package/dist/agents/skills/codex/harness-catalog-retrospective/skill.yaml +48 -0
  10. package/dist/agents/skills/codex/harness-execution/SKILL.md +13 -0
  11. package/dist/agents/skills/codex/harness-parallel-agents/SKILL.md +3 -0
  12. package/dist/agents/skills/codex/harness-planning/SKILL.md +3 -1
  13. package/dist/agents/skills/cursor/harness-autopilot/SKILL.md +31 -0
  14. package/dist/agents/skills/cursor/harness-catalog-retrospective/SKILL.md +124 -0
  15. package/dist/agents/skills/cursor/harness-catalog-retrospective/skill.yaml +48 -0
  16. package/dist/agents/skills/cursor/harness-execution/SKILL.md +13 -0
  17. package/dist/agents/skills/cursor/harness-parallel-agents/SKILL.md +3 -0
  18. package/dist/agents/skills/cursor/harness-planning/SKILL.md +3 -1
  19. package/dist/agents/skills/gemini-cli/harness-autopilot/SKILL.md +31 -0
  20. package/dist/agents/skills/gemini-cli/harness-catalog-retrospective/SKILL.md +124 -0
  21. package/dist/agents/skills/gemini-cli/harness-catalog-retrospective/skill.yaml +48 -0
  22. package/dist/agents/skills/gemini-cli/harness-execution/SKILL.md +13 -0
  23. package/dist/agents/skills/gemini-cli/harness-parallel-agents/SKILL.md +3 -0
  24. package/dist/agents/skills/gemini-cli/harness-planning/SKILL.md +3 -1
  25. package/dist/{agents-md-7L4PKKOM.js → agents-md-N4ULMUAK.js} +4 -4
  26. package/dist/{analyzer-XRCV63KC-HLTEIKAJ.js → analyzer-XRCV63KC-WGRHW2ZM.js} +2 -2
  27. package/dist/{architecture-RCHFDI7E.js → architecture-OIMIBDJC.js} +5 -5
  28. package/dist/{assess-project-YUDPNRS6.js → assess-project-ITSB6W4L.js} +1 -1
  29. package/dist/bin/harness-mcp.js +15 -15
  30. package/dist/bin/harness.js +26 -26
  31. package/dist/{check-phase-gate-56GS3A72.js → check-phase-gate-GN4X7HT6.js} +5 -5
  32. package/dist/{chunk-N4AI2WFH.js → chunk-574JCBYH.js} +2 -2
  33. package/dist/{chunk-RY2U77OY.js → chunk-5BUHPOCP.js} +7 -7
  34. package/dist/{chunk-IGWJRAJT.js → chunk-6NEJPS7W.js} +2 -2
  35. package/dist/{chunk-NCMJXBEO.js → chunk-73QZ43DF.js} +2 -2
  36. package/dist/{chunk-YJYUJSWK.js → chunk-7RH2NTLA.js} +1 -1
  37. package/dist/{chunk-XZNCONFG.js → chunk-CMU4DNLY.js} +1 -1
  38. package/dist/{chunk-UACYZCW4.js → chunk-CRHQYBDA.js} +396 -13
  39. package/dist/{chunk-4SKWGVYD.js → chunk-D7A5JR7M.js} +2 -2
  40. package/dist/{chunk-P4NA5OQX.js → chunk-GTHL3TRZ.js} +2 -2
  41. package/dist/{chunk-ZU6T7W3U.js → chunk-H5GN7R43.js} +2 -2
  42. package/dist/{chunk-YXOPQEFZ.js → chunk-HJYAXAYQ.js} +2 -2
  43. package/dist/{chunk-Z4XWWNYX.js → chunk-HSYU3RUW.js} +203 -92
  44. package/dist/{chunk-Y33P35U3.js → chunk-JZL2O3RC.js} +5 -5
  45. package/dist/{chunk-XW5XVVMI.js → chunk-LP764MGR.js} +3 -3
  46. package/dist/{chunk-Y5HPJMTM.js → chunk-LTYVAKWK.js} +2 -2
  47. package/dist/{chunk-DGVT4DBI.js → chunk-MEDRUIRO.js} +3 -3
  48. package/dist/{chunk-GSYBGOY3.js → chunk-MIZQY35D.js} +2 -2
  49. package/dist/{chunk-YWRPQZL7.js → chunk-NEMB36N4.js} +2 -2
  50. package/dist/{chunk-GLHLXTKC.js → chunk-PT65VY4S.js} +6 -6
  51. package/dist/{chunk-AU4YPEIE.js → chunk-T46G6YNI.js} +3 -3
  52. package/dist/{chunk-ABRYIEWJ.js → chunk-TDPQZAEE.js} +1069 -853
  53. package/dist/{chunk-VG4G3R2V.js → chunk-TKPAOB2T.js} +2 -2
  54. package/dist/{chunk-RZQZXWEL.js → chunk-U2NOOATF.js} +6 -6
  55. package/dist/{chunk-BDGTZRZ6.js → chunk-VJDSB7CI.js} +159 -85
  56. package/dist/{chunk-OZSKLJQW.js → chunk-XKILFNRK.js} +2 -2
  57. package/dist/{ci-workflow-TFAA5BK7.js → ci-workflow-PA3WL6WK.js} +4 -4
  58. package/dist/{dist-MCTEX5QH.js → dist-BWFFVKEW.js} +34 -4
  59. package/dist/{dist-ICW4QUEW.js → dist-ISDDHDOR.js} +19 -3
  60. package/dist/{docs-BBMAN3CY.js → docs-HOTWQJQF.js} +5 -5
  61. package/dist/{engine-R2YH74AL.js → engine-MVG2SPGD.js} +4 -4
  62. package/dist/{entropy-5UP5N6AF.js → entropy-3B4U2BTF.js} +5 -5
  63. package/dist/{feedback-6MDCCFZL.js → feedback-WIWWDVUC.js} +1 -1
  64. package/dist/{generate-agent-definitions-KKAN5DB5.js → generate-agent-definitions-KPRHY6X3.js} +5 -5
  65. package/dist/index.js +25 -25
  66. package/dist/{loader-2WT2ZE2T.js → loader-SPJ2ZGYW.js} +4 -4
  67. package/dist/{mcp-5V4LPMB3.js → mcp-RIPEYDMU.js} +15 -15
  68. package/dist/{performance-2N3CFXLR.js → performance-JYFS27B3.js} +5 -5
  69. package/dist/{review-pipeline-XZIGBU3Q.js → review-pipeline-BDT6Y6QV.js} +4 -4
  70. package/dist/{runtime-POME3GTR.js → runtime-ZEPHPPQJ.js} +4 -4
  71. package/dist/{security-QLJLMSIW.js → security-FWSDTTEW.js} +1 -1
  72. package/dist/{state-events-YY5KBZTC.js → state-events-PBDNQPXT.js} +4 -4
  73. package/dist/{validate-VZORVK43.js → validate-XIMNCIKR.js} +5 -5
  74. package/dist/{validate-cross-check-OYKEDCST.js → validate-cross-check-H2OUHTID.js} +4 -4
  75. package/package.json +8 -8
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  init_dist
3
- } from "./chunk-UACYZCW4.js";
3
+ } from "./chunk-CRHQYBDA.js";
4
4
  import {
5
5
  Err,
6
6
  Ok
7
- } from "./chunk-BDGTZRZ6.js";
7
+ } from "./chunk-VJDSB7CI.js";
8
8
 
9
9
  // src/persona/generators/agents-md.ts
10
10
  init_dist();
@@ -98,7 +98,7 @@ async function handleAssessProject(input) {
98
98
  let validateResult = null;
99
99
  if (checksToRun.has("validate")) {
100
100
  try {
101
- const { handleValidateProject } = await import("./validate-VZORVK43.js");
101
+ const { handleValidateProject } = await import("./validate-XIMNCIKR.js");
102
102
  const result = await handleValidateProject({ path: projectPath });
103
103
  const out = parseToolResponse(result, "validate");
104
104
  if ("error" in out) {
@@ -127,7 +127,7 @@ async function handleAssessProject(input) {
127
127
  parallelChecks.push(
128
128
  (async () => {
129
129
  try {
130
- const { handleCheckDependencies } = await import("./architecture-RCHFDI7E.js");
130
+ const { handleCheckDependencies } = await import("./architecture-OIMIBDJC.js");
131
131
  const result = await handleCheckDependencies({ path: projectPath });
132
132
  const out = parseToolResponse(result, "deps");
133
133
  if ("error" in out) return out.error;
@@ -155,7 +155,7 @@ async function handleAssessProject(input) {
155
155
  parallelChecks.push(
156
156
  (async () => {
157
157
  try {
158
- const { handleCheckDocs } = await import("./docs-BBMAN3CY.js");
158
+ const { handleCheckDocs } = await import("./docs-HOTWQJQF.js");
159
159
  const result = await handleCheckDocs({ path: projectPath, scope: "coverage" });
160
160
  const out = parseToolResponse(result, "docs");
161
161
  if ("error" in out) return out.error;
@@ -183,7 +183,7 @@ async function handleAssessProject(input) {
183
183
  parallelChecks.push(
184
184
  (async () => {
185
185
  try {
186
- const { handleDetectEntropy } = await import("./entropy-5UP5N6AF.js");
186
+ const { handleDetectEntropy } = await import("./entropy-3B4U2BTF.js");
187
187
  const result = await handleDetectEntropy({ path: projectPath, type: "all" });
188
188
  const out = parseToolResponse(result, "entropy");
189
189
  if ("error" in out) return out.error;
@@ -214,7 +214,7 @@ async function handleAssessProject(input) {
214
214
  parallelChecks.push(
215
215
  (async () => {
216
216
  try {
217
- const { handleRunSecurityScan } = await import("./security-QLJLMSIW.js");
217
+ const { handleRunSecurityScan } = await import("./security-FWSDTTEW.js");
218
218
  const result = await handleRunSecurityScan({ path: projectPath });
219
219
  const out = parseToolResponse(result, "security");
220
220
  if ("error" in out) return out.error;
@@ -247,7 +247,7 @@ async function handleAssessProject(input) {
247
247
  parallelChecks.push(
248
248
  (async () => {
249
249
  try {
250
- const { handleCheckPerformance } = await import("./performance-2N3CFXLR.js");
250
+ const { handleCheckPerformance } = await import("./performance-JYFS27B3.js");
251
251
  const result = await handleCheckPerformance({ path: projectPath });
252
252
  if ("isError" in result && result.isError) {
253
253
  const msg = result.content[0]?.text ?? "Performance check failed";
@@ -9,6 +9,7 @@ import { z as z3 } from "zod";
9
9
  import { z as z4 } from "zod";
10
10
  import { z as z5 } from "zod";
11
11
  import { z as z6 } from "zod";
12
+ import { z as z7 } from "zod";
12
13
  function Ok(value) {
13
14
  return { ok: true, value };
14
15
  }
@@ -21,7 +22,58 @@ function isOk(result) {
21
22
  function isErr(result) {
22
23
  return result.ok === false;
23
24
  }
24
- var STANDARD_COGNITIVE_MODES, DEFAULT_SKILL_CONTEXT_BUDGET, SESSION_SECTION_NAMES, TrajectoryMetadataSchema, PromptCacheStatsSchema, OTLPKeyValueSchema, OTLPSpanSchema, REQUIRED_STRATEGY_SECTIONS, OPTIONAL_STRATEGY_SECTIONS, TokenScopeSchema, BridgeKindSchema, AuthTokenSchema, AuthTokenPublicSchema, AuthAuditEntrySchema, WebhookSubscriptionSchema, WebhookSubscriptionPublicSchema, GatewayEventSchema, WebhookDeliveryStatusSchema, WebhookDeliverySchema, INDEXED_FILE_KINDS, SessionSummarySchema, INSIGHTS_KEYS, SESSIONS_DEFAULTS, NotificationSinkKindSchema, NotificationSeveritySchema, NotificationActionSchema, NotificationEnvelopeSchema, NotificationSinkConfigSchema, NotificationsConfigSchema, NotificationDeliveryResultSchema, SkillProvenanceSchema, ProposalKindSchema, ProposalStatusSchema, ProposalGateFindingSchema, ProposalGateSchema, ProposalDecisionSchema, ProposalContentSchema, ProposalSourceSchema, SkillProposalSchema, EmitSkillProposalInputSchema, EditProposalInputSchema;
25
+ function skillProposalRefine(val, ctx) {
26
+ if (val.skillKind === "new-skill") {
27
+ if (!val.content.skillYaml || !val.content.skillMd)
28
+ ctx.addIssue({
29
+ code: z7.ZodIssueCode.custom,
30
+ path: ["content"],
31
+ message: "new-skill proposals require skillYaml and skillMd"
32
+ });
33
+ if (val.targetSkill)
34
+ ctx.addIssue({
35
+ code: z7.ZodIssueCode.custom,
36
+ path: ["targetSkill"],
37
+ message: "targetSkill is forbidden on new-skill proposals"
38
+ });
39
+ if (val.content.diff)
40
+ ctx.addIssue({
41
+ code: z7.ZodIssueCode.custom,
42
+ path: ["content", "diff"],
43
+ message: "diff is forbidden on new-skill proposals"
44
+ });
45
+ } else {
46
+ if (!val.targetSkill)
47
+ ctx.addIssue({
48
+ code: z7.ZodIssueCode.custom,
49
+ path: ["targetSkill"],
50
+ message: "refinement proposals require targetSkill"
51
+ });
52
+ if (!val.content.diff)
53
+ ctx.addIssue({
54
+ code: z7.ZodIssueCode.custom,
55
+ path: ["content", "diff"],
56
+ message: "refinement proposals require a unified diff"
57
+ });
58
+ if (val.content.skillYaml || val.content.skillMd)
59
+ ctx.addIssue({
60
+ code: z7.ZodIssueCode.custom,
61
+ path: ["content"],
62
+ message: "skillYaml/skillMd are forbidden on refinement proposals (use diff)"
63
+ });
64
+ }
65
+ }
66
+ function migrateProposalRecord(raw) {
67
+ if (raw && typeof raw === "object" && !Array.isArray(raw)) {
68
+ const r = raw;
69
+ if (r["kind"] === "new-skill" || r["kind"] === "refinement") {
70
+ const { kind, ...rest } = r;
71
+ return { ...rest, kind: "skill", skillKind: kind };
72
+ }
73
+ }
74
+ return raw;
75
+ }
76
+ var STANDARD_COGNITIVE_MODES, DEFAULT_SKILL_CONTEXT_BUDGET, SESSION_SECTION_NAMES, TrajectoryMetadataSchema, PromptCacheStatsSchema, OTLPKeyValueSchema, OTLPSpanSchema, REQUIRED_STRATEGY_SECTIONS, OPTIONAL_STRATEGY_SECTIONS, TokenScopeSchema, BridgeKindSchema, AuthTokenSchema, AuthTokenPublicSchema, AuthAuditEntrySchema, WebhookSubscriptionSchema, WebhookSubscriptionPublicSchema, GatewayEventSchema, WebhookDeliveryStatusSchema, WebhookDeliverySchema, INDEXED_FILE_KINDS, SessionSummarySchema, INSIGHTS_KEYS, SESSIONS_DEFAULTS, NotificationSinkKindSchema, NotificationSeveritySchema, NotificationActionSchema, NotificationEnvelopeSchema, NotificationSinkConfigSchema, NotificationsConfigSchema, NotificationDeliveryResultSchema, PlanTaskSchema, SkillProvenanceSchema, SkillKindSchema, ProposalKindSchema, ProposalTypeSchema, ProposalStatusSchema, ProposalGateFindingSchema, ProposalGateSchema, ProposalDecisionSchema, ProposalContentSchema, ProposalSourceSchema, SkillProposalObject, ModelProposalActionSchema, ModelProposalStatusSchema, ModelProposalContentSchema, ModelProposalObject, ProposalObjectUnion, ProposalSchema, SkillProposalSchema, EmitSkillProposalInputSchema, EditProposalInputSchema;
25
77
  var init_dist = __esm({
26
78
  "../types/dist/index.mjs"() {
27
79
  STANDARD_COGNITIVE_MODES = [
@@ -234,110 +286,124 @@ var init_dist = __esm({
234
286
  httpStatus: z5.number().int().optional()
235
287
  })
236
288
  ]);
237
- SkillProvenanceSchema = z6.enum(["community", "agent-proposed", "user-authored"]);
238
- ProposalKindSchema = z6.enum(["new-skill", "refinement"]);
239
- ProposalStatusSchema = z6.enum([
289
+ PlanTaskSchema = z6.object({
290
+ /** Stable, unique task id within a plan. */
291
+ id: z6.string().min(1),
292
+ /** Files the task is expected to touch — the independence-checking input. */
293
+ files: z6.array(z6.string()),
294
+ /** Ids of tasks that must complete before this one (explicit DAG edges). */
295
+ dependsOn: z6.array(z6.string()).optional(),
296
+ /** Path globs the task claims ownership of. Consumed if present; defined by #601. */
297
+ owns: z6.array(z6.string()).optional()
298
+ }).strict();
299
+ SkillProvenanceSchema = z7.enum(["community", "agent-proposed", "user-authored"]);
300
+ SkillKindSchema = z7.enum(["new-skill", "refinement"]);
301
+ ProposalKindSchema = SkillKindSchema;
302
+ ProposalTypeSchema = z7.enum(["skill", "model"]);
303
+ ProposalStatusSchema = z7.enum([
240
304
  "open",
241
305
  "gate-running",
242
306
  "gate-failed",
243
307
  "approved",
244
308
  "rejected"
245
309
  ]);
246
- ProposalGateFindingSchema = z6.object({
247
- severity: z6.enum(["error", "warning"]),
248
- title: z6.string(),
249
- detail: z6.string()
310
+ ProposalGateFindingSchema = z7.object({
311
+ severity: z7.enum(["error", "warning"]),
312
+ title: z7.string(),
313
+ detail: z7.string()
250
314
  });
251
- ProposalGateSchema = z6.object({
252
- lastRunAt: z6.string().datetime().optional(),
253
- findings: z6.array(ProposalGateFindingSchema).optional()
315
+ ProposalGateSchema = z7.object({
316
+ lastRunAt: z7.string().datetime().optional(),
317
+ findings: z7.array(ProposalGateFindingSchema).optional()
254
318
  });
255
- ProposalDecisionSchema = z6.object({
256
- decidedAt: z6.string().datetime(),
257
- decidedBy: z6.string(),
258
- action: z6.enum(["approved", "rejected"]),
259
- reason: z6.string().optional()
319
+ ProposalDecisionSchema = z7.object({
320
+ decidedAt: z7.string().datetime(),
321
+ decidedBy: z7.string(),
322
+ action: z7.enum(["approved", "rejected"]),
323
+ reason: z7.string().optional()
260
324
  });
261
- ProposalContentSchema = z6.object({
262
- name: z6.string().regex(/^[a-z][a-z0-9-]*$/).max(64),
263
- description: z6.string().min(20).max(280),
264
- skillYaml: z6.string().optional(),
265
- skillMd: z6.string().optional(),
266
- diff: z6.string().optional()
325
+ ProposalContentSchema = z7.object({
326
+ name: z7.string().regex(/^[a-z][a-z0-9-]*$/).max(64),
327
+ description: z7.string().min(20).max(280),
328
+ skillYaml: z7.string().optional(),
329
+ skillMd: z7.string().optional(),
330
+ diff: z7.string().optional()
267
331
  }).strict();
268
- ProposalSourceSchema = z6.object({
269
- sessionId: z6.string().optional(),
270
- taskId: z6.string().optional(),
271
- justification: z6.string().min(20).max(2e3)
332
+ ProposalSourceSchema = z7.object({
333
+ sessionId: z7.string().optional(),
334
+ taskId: z7.string().optional(),
335
+ justification: z7.string().min(20).max(2e3)
272
336
  });
273
- SkillProposalSchema = z6.object({
274
- id: z6.string().min(1),
275
- createdAt: z6.string().datetime(),
276
- kind: ProposalKindSchema,
277
- targetSkill: z6.string().optional(),
278
- proposedBy: z6.string().min(1),
337
+ SkillProposalObject = z7.object({
338
+ kind: z7.literal("skill"),
339
+ skillKind: SkillKindSchema,
340
+ id: z7.string().min(1),
341
+ createdAt: z7.string().datetime(),
342
+ targetSkill: z7.string().optional(),
343
+ proposedBy: z7.string().min(1),
279
344
  source: ProposalSourceSchema,
280
345
  content: ProposalContentSchema,
281
346
  status: ProposalStatusSchema,
282
347
  gate: ProposalGateSchema.optional(),
283
348
  decision: ProposalDecisionSchema.optional()
284
- }).superRefine((val, ctx) => {
285
- if (val.kind === "new-skill") {
286
- if (!val.content.skillYaml || !val.content.skillMd) {
287
- ctx.addIssue({
288
- code: z6.ZodIssueCode.custom,
289
- path: ["content"],
290
- message: "new-skill proposals require skillYaml and skillMd"
291
- });
292
- }
293
- if (val.targetSkill) {
294
- ctx.addIssue({
295
- code: z6.ZodIssueCode.custom,
296
- path: ["targetSkill"],
297
- message: "targetSkill is forbidden on new-skill proposals"
298
- });
299
- }
300
- if (val.content.diff) {
301
- ctx.addIssue({
302
- code: z6.ZodIssueCode.custom,
303
- path: ["content", "diff"],
304
- message: "diff is forbidden on new-skill proposals"
305
- });
306
- }
307
- } else if (val.kind === "refinement") {
308
- if (!val.targetSkill) {
309
- ctx.addIssue({
310
- code: z6.ZodIssueCode.custom,
311
- path: ["targetSkill"],
312
- message: "refinement proposals require targetSkill"
313
- });
314
- }
315
- if (!val.content.diff) {
316
- ctx.addIssue({
317
- code: z6.ZodIssueCode.custom,
318
- path: ["content", "diff"],
319
- message: "refinement proposals require a unified diff"
320
- });
321
- }
322
- if (val.content.skillYaml || val.content.skillMd) {
323
- ctx.addIssue({
324
- code: z6.ZodIssueCode.custom,
325
- path: ["content"],
326
- message: "skillYaml/skillMd are forbidden on refinement proposals (use diff)"
327
- });
328
- }
329
- }
330
349
  });
331
- EmitSkillProposalInputSchema = z6.object({
350
+ ModelProposalActionSchema = z7.enum(["add", "swap", "evict"]);
351
+ ModelProposalStatusSchema = z7.enum([
352
+ "open",
353
+ "gate-running",
354
+ "gate-failed",
355
+ "approved",
356
+ "rejected",
357
+ "failed_target_missing"
358
+ ]);
359
+ ModelProposalContentSchema = z7.object({
360
+ action: ModelProposalActionSchema,
361
+ target: z7.object({ hfRepoId: z7.string().min(1), ollamaName: z7.string().min(1) }),
362
+ replaces: z7.object({ ollamaName: z7.string().min(1) }).optional(),
363
+ scoreDelta: z7.number(),
364
+ justification: z7.object({
365
+ summary: z7.string(),
366
+ benchmarkBasis: z7.array(z7.string()),
367
+ hardwareFit: z7.string(),
368
+ evidence: z7.string(),
369
+ freshness: z7.string()
370
+ }),
371
+ diskImpactGb: z7.number()
372
+ }).strict();
373
+ ModelProposalObject = z7.object({
374
+ kind: z7.literal("model"),
375
+ id: z7.string().min(1),
376
+ createdAt: z7.string().datetime(),
377
+ proposedBy: z7.string().min(1),
378
+ source: ProposalSourceSchema,
379
+ model: ModelProposalContentSchema,
380
+ status: ModelProposalStatusSchema,
381
+ decision: ProposalDecisionSchema.optional()
382
+ });
383
+ ProposalObjectUnion = z7.discriminatedUnion("kind", [
384
+ SkillProposalObject,
385
+ ModelProposalObject
386
+ ]);
387
+ ProposalSchema = z7.preprocess(
388
+ migrateProposalRecord,
389
+ ProposalObjectUnion.superRefine((val, ctx) => {
390
+ if (val.kind === "skill") skillProposalRefine(val, ctx);
391
+ })
392
+ );
393
+ SkillProposalSchema = z7.preprocess(
394
+ migrateProposalRecord,
395
+ SkillProposalObject.superRefine(skillProposalRefine)
396
+ );
397
+ EmitSkillProposalInputSchema = z7.object({
332
398
  kind: ProposalKindSchema,
333
- targetSkill: z6.string().optional(),
334
- proposedBy: z6.string().min(1).max(120),
335
- justification: z6.string().min(20).max(2e3),
336
- sessionId: z6.string().optional(),
337
- taskId: z6.string().optional(),
399
+ targetSkill: z7.string().optional(),
400
+ proposedBy: z7.string().min(1).max(120),
401
+ justification: z7.string().min(20).max(2e3),
402
+ sessionId: z7.string().optional(),
403
+ taskId: z7.string().optional(),
338
404
  content: ProposalContentSchema
339
405
  });
340
- EditProposalInputSchema = z6.object({
406
+ EditProposalInputSchema = z7.object({
341
407
  content: ProposalContentSchema.partial()
342
408
  });
343
409
  }
@@ -378,14 +444,22 @@ export {
378
444
  NotificationSinkConfigSchema,
379
445
  NotificationsConfigSchema,
380
446
  NotificationDeliveryResultSchema,
447
+ PlanTaskSchema,
381
448
  SkillProvenanceSchema,
449
+ SkillKindSchema,
382
450
  ProposalKindSchema,
451
+ ProposalTypeSchema,
383
452
  ProposalStatusSchema,
384
453
  ProposalGateFindingSchema,
385
454
  ProposalGateSchema,
386
455
  ProposalDecisionSchema,
387
456
  ProposalContentSchema,
388
457
  ProposalSourceSchema,
458
+ ModelProposalActionSchema,
459
+ ModelProposalStatusSchema,
460
+ ModelProposalContentSchema,
461
+ migrateProposalRecord,
462
+ ProposalSchema,
389
463
  SkillProposalSchema,
390
464
  EmitSkillProposalInputSchema,
391
465
  EditProposalInputSchema,
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  init_dist
3
- } from "./chunk-UACYZCW4.js";
3
+ } from "./chunk-CRHQYBDA.js";
4
4
  import {
5
5
  Err,
6
6
  Ok
7
- } from "./chunk-BDGTZRZ6.js";
7
+ } from "./chunk-VJDSB7CI.js";
8
8
 
9
9
  // src/mcp/utils/config-resolver.ts
10
10
  init_dist();
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  generateCIWorkflow
3
- } from "./chunk-P4NA5OQX.js";
4
- import "./chunk-UACYZCW4.js";
5
- import "./chunk-YJYUJSWK.js";
6
- import "./chunk-BDGTZRZ6.js";
3
+ } from "./chunk-GTHL3TRZ.js";
4
+ import "./chunk-CRHQYBDA.js";
5
+ import "./chunk-7RH2NTLA.js";
6
+ import "./chunk-VJDSB7CI.js";
7
7
  import "./chunk-WZJR6SOI.js";
8
8
  import "./chunk-QCLOIUMX.js";
9
9
  import "./chunk-XARGEOJV.js";
@@ -205,6 +205,7 @@ import {
205
205
  buildExclusionSet,
206
206
  buildExternalId,
207
207
  buildProjectContext,
208
+ buildTaskGraph,
208
209
  calculateCacheSavings,
209
210
  calculateCost,
210
211
  calibrateDepth,
@@ -246,6 +247,7 @@ import {
246
247
  createCommentedCodeFixes,
247
248
  createFixes,
248
249
  createForbiddenImportFixes,
250
+ createModelProposal,
249
251
  createNodeRoadmapIO,
250
252
  createOrphanedDepFixes,
251
253
  createOsvClient,
@@ -304,6 +306,7 @@ import {
304
306
  generateAgentsMap,
305
307
  generateRubric,
306
308
  getActionEmitter,
309
+ getCatalogRetrospectiveReport,
307
310
  getExitCode,
308
311
  getFeedbackConfig,
309
312
  getInjectionPatterns,
@@ -324,6 +327,7 @@ import {
324
327
  injectionRules,
325
328
  insecureDefaultsRules,
326
329
  invalidateCheckState,
330
+ isAbandonedMidWorkflow,
327
331
  isBadPort,
328
332
  isClaimableBy,
329
333
  isDuplicateFinding,
@@ -392,6 +396,7 @@ import {
392
396
  parseShard,
393
397
  parseStrategyDoc,
394
398
  pathTraversalRules,
399
+ planParallelization,
395
400
  presetKind,
396
401
  previewFix,
397
402
  projectValue,
@@ -418,6 +423,7 @@ import {
418
423
  release,
419
424
  removeContributions,
420
425
  removeProvenance,
426
+ renderRetrospectiveMarkdown,
421
427
  requestMultiplePeerReviews,
422
428
  requestPeerReview,
423
429
  resetFeedbackConfig,
@@ -502,6 +508,7 @@ import {
502
508
  validateFindings,
503
509
  validateKnowledgeMap,
504
510
  validatePatternConfig,
511
+ validatePlanTasks,
505
512
  validatePulseConfig,
506
513
  validateRoadmapMode,
507
514
  validateSolutionsDir,
@@ -517,7 +524,7 @@ import {
517
524
  writeStrategyDoc,
518
525
  writeTaint,
519
526
  xssRules
520
- } from "./chunk-UACYZCW4.js";
527
+ } from "./chunk-CRHQYBDA.js";
521
528
  import {
522
529
  EXTENSION_MAP,
523
530
  EntropyAnalyzer,
@@ -543,7 +550,7 @@ import {
543
550
  resetParserCache,
544
551
  resolveFileToLayer,
545
552
  validateDependencies
546
- } from "./chunk-YJYUJSWK.js";
553
+ } from "./chunk-7RH2NTLA.js";
547
554
  import {
548
555
  AuthAuditEntrySchema,
549
556
  AuthTokenPublicSchema,
@@ -556,6 +563,9 @@ import {
556
563
  GatewayEventSchema,
557
564
  INDEXED_FILE_KINDS,
558
565
  INSIGHTS_KEYS,
566
+ ModelProposalActionSchema,
567
+ ModelProposalContentSchema,
568
+ ModelProposalStatusSchema,
559
569
  NotificationActionSchema,
560
570
  NotificationDeliveryResultSchema,
561
571
  NotificationEnvelopeSchema,
@@ -567,19 +577,23 @@ import {
567
577
  OTLPKeyValueSchema,
568
578
  OTLPSpanSchema,
569
579
  Ok,
580
+ PlanTaskSchema,
570
581
  PromptCacheStatsSchema,
571
582
  ProposalContentSchema,
572
583
  ProposalDecisionSchema,
573
584
  ProposalGateFindingSchema,
574
585
  ProposalGateSchema,
575
586
  ProposalKindSchema,
587
+ ProposalSchema,
576
588
  ProposalSourceSchema,
577
589
  ProposalStatusSchema,
590
+ ProposalTypeSchema,
578
591
  REQUIRED_STRATEGY_SECTIONS,
579
592
  SESSIONS_DEFAULTS,
580
593
  SESSION_SECTION_NAMES,
581
594
  STANDARD_COGNITIVE_MODES,
582
595
  SessionSummarySchema,
596
+ SkillKindSchema,
583
597
  SkillProposalSchema,
584
598
  SkillProvenanceSchema,
585
599
  TokenScopeSchema,
@@ -589,8 +603,9 @@ import {
589
603
  WebhookSubscriptionPublicSchema,
590
604
  WebhookSubscriptionSchema,
591
605
  isErr,
592
- isOk
593
- } from "./chunk-BDGTZRZ6.js";
606
+ isOk,
607
+ migrateProposalRecord
608
+ } from "./chunk-VJDSB7CI.js";
594
609
  import "./chunk-WZJR6SOI.js";
595
610
  import {
596
611
  ArchBaselineSchema,
@@ -735,6 +750,9 @@ export {
735
750
  ManifestSchema,
736
751
  MetricResultSchema,
737
752
  ModeSchema,
753
+ ModelProposalActionSchema,
754
+ ModelProposalContentSchema,
755
+ ModelProposalStatusSchema,
738
756
  ModuleSizeCollector,
739
757
  MonolithStore,
740
758
  NoOpExecutor,
@@ -757,6 +775,7 @@ export {
757
775
  PII_LINE_RE,
758
776
  PII_TOKENS,
759
777
  PatternConfigSchema,
778
+ PlanTaskSchema,
760
779
  PredictionEngine,
761
780
  PredictionOptionsSchema,
762
781
  RegressionResultSchema as PredictionRegressionResultSchema,
@@ -772,8 +791,10 @@ export {
772
791
  ProposalGateSchema,
773
792
  ProposalKindSchema,
774
793
  ProposalNotFoundError,
794
+ ProposalSchema,
775
795
  ProposalSourceSchema,
776
796
  ProposalStatusSchema,
797
+ ProposalTypeSchema,
777
798
  PulseAdapterAlreadyRegisteredError,
778
799
  PulseConfigSchema,
779
800
  PulseDbSourceSchema,
@@ -813,6 +834,7 @@ export {
813
834
  SharableLayerSchema,
814
835
  SharableSecurityRulesSchema,
815
836
  ShardStore,
837
+ SkillKindSchema,
816
838
  SkillProposalSchema,
817
839
  SkillProvenanceSchema,
818
840
  SolutionDocFrontmatterSchema,
@@ -896,6 +918,7 @@ export {
896
918
  buildExternalId,
897
919
  buildProjectContext,
898
920
  buildSnapshot,
921
+ buildTaskGraph,
899
922
  calculateCacheSavings,
900
923
  calculateCost,
901
924
  calibrateDepth,
@@ -938,6 +961,7 @@ export {
938
961
  createError,
939
962
  createFixes,
940
963
  createForbiddenImportFixes,
964
+ createModelProposal,
941
965
  createNodeRoadmapIO,
942
966
  createOrphanedDepFixes,
943
967
  createOsvClient,
@@ -1007,6 +1031,7 @@ export {
1007
1031
  generateRubric,
1008
1032
  generateSuggestions,
1009
1033
  getActionEmitter,
1034
+ getCatalogRetrospectiveReport,
1010
1035
  getExitCode,
1011
1036
  getFeedbackConfig,
1012
1037
  getInjectionPatterns,
@@ -1028,6 +1053,7 @@ export {
1028
1053
  injectionRules,
1029
1054
  insecureDefaultsRules,
1030
1055
  invalidateCheckState,
1056
+ isAbandonedMidWorkflow,
1031
1057
  isBadPort,
1032
1058
  isClaimableBy,
1033
1059
  isDuplicateFinding,
@@ -1066,6 +1092,7 @@ export {
1066
1092
  markProtectedFindings,
1067
1093
  mcpRules,
1068
1094
  migrate_exports as migrate,
1095
+ migrateProposalRecord,
1069
1096
  migrateToStreams,
1070
1097
  needsMergeOursDriverWarning,
1071
1098
  networkRules,
@@ -1100,6 +1127,7 @@ export {
1100
1127
  parseSize,
1101
1128
  parseStrategyDoc,
1102
1129
  pathTraversalRules,
1130
+ planParallelization,
1103
1131
  presetKind,
1104
1132
  previewFix,
1105
1133
  projectValue,
@@ -1126,6 +1154,7 @@ export {
1126
1154
  release,
1127
1155
  removeContributions,
1128
1156
  removeProvenance,
1157
+ renderRetrospectiveMarkdown,
1129
1158
  requestMultiplePeerReviews,
1130
1159
  requestPeerReview,
1131
1160
  resetFeedbackConfig,
@@ -1213,6 +1242,7 @@ export {
1213
1242
  validateFindings,
1214
1243
  validateKnowledgeMap,
1215
1244
  validatePatternConfig,
1245
+ validatePlanTasks,
1216
1246
  validatePulseConfig,
1217
1247
  validateRoadmapMode,
1218
1248
  validateSolutionsDir,
@@ -10,6 +10,9 @@ import {
10
10
  GatewayEventSchema,
11
11
  INDEXED_FILE_KINDS,
12
12
  INSIGHTS_KEYS,
13
+ ModelProposalActionSchema,
14
+ ModelProposalContentSchema,
15
+ ModelProposalStatusSchema,
13
16
  NotificationActionSchema,
14
17
  NotificationDeliveryResultSchema,
15
18
  NotificationEnvelopeSchema,
@@ -21,19 +24,23 @@ import {
21
24
  OTLPKeyValueSchema,
22
25
  OTLPSpanSchema,
23
26
  Ok,
27
+ PlanTaskSchema,
24
28
  PromptCacheStatsSchema,
25
29
  ProposalContentSchema,
26
30
  ProposalDecisionSchema,
27
31
  ProposalGateFindingSchema,
28
32
  ProposalGateSchema,
29
33
  ProposalKindSchema,
34
+ ProposalSchema,
30
35
  ProposalSourceSchema,
31
36
  ProposalStatusSchema,
37
+ ProposalTypeSchema,
32
38
  REQUIRED_STRATEGY_SECTIONS,
33
39
  SESSIONS_DEFAULTS,
34
40
  SESSION_SECTION_NAMES,
35
41
  STANDARD_COGNITIVE_MODES,
36
42
  SessionSummarySchema,
43
+ SkillKindSchema,
37
44
  SkillProposalSchema,
38
45
  SkillProvenanceSchema,
39
46
  TokenScopeSchema,
@@ -44,8 +51,9 @@ import {
44
51
  WebhookSubscriptionSchema,
45
52
  init_dist,
46
53
  isErr,
47
- isOk
48
- } from "./chunk-BDGTZRZ6.js";
54
+ isOk,
55
+ migrateProposalRecord
56
+ } from "./chunk-VJDSB7CI.js";
49
57
  import "./chunk-KFQGP6VL.js";
50
58
  init_dist();
51
59
  export {
@@ -60,6 +68,9 @@ export {
60
68
  GatewayEventSchema,
61
69
  INDEXED_FILE_KINDS,
62
70
  INSIGHTS_KEYS,
71
+ ModelProposalActionSchema,
72
+ ModelProposalContentSchema,
73
+ ModelProposalStatusSchema,
63
74
  NotificationActionSchema,
64
75
  NotificationDeliveryResultSchema,
65
76
  NotificationEnvelopeSchema,
@@ -71,19 +82,23 @@ export {
71
82
  OTLPKeyValueSchema,
72
83
  OTLPSpanSchema,
73
84
  Ok,
85
+ PlanTaskSchema,
74
86
  PromptCacheStatsSchema,
75
87
  ProposalContentSchema,
76
88
  ProposalDecisionSchema,
77
89
  ProposalGateFindingSchema,
78
90
  ProposalGateSchema,
79
91
  ProposalKindSchema,
92
+ ProposalSchema,
80
93
  ProposalSourceSchema,
81
94
  ProposalStatusSchema,
95
+ ProposalTypeSchema,
82
96
  REQUIRED_STRATEGY_SECTIONS,
83
97
  SESSIONS_DEFAULTS,
84
98
  SESSION_SECTION_NAMES,
85
99
  STANDARD_COGNITIVE_MODES,
86
100
  SessionSummarySchema,
101
+ SkillKindSchema,
87
102
  SkillProposalSchema,
88
103
  SkillProvenanceSchema,
89
104
  TokenScopeSchema,
@@ -93,5 +108,6 @@ export {
93
108
  WebhookSubscriptionPublicSchema,
94
109
  WebhookSubscriptionSchema,
95
110
  isErr,
96
- isOk
111
+ isOk,
112
+ migrateProposalRecord
97
113
  };