@specforge/canary-cli 0.2.2 → 0.2.4

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 (45) hide show
  1. package/dist/tools/index.d.ts.map +1 -1
  2. package/dist/tools/index.js +2 -130
  3. package/dist/tools/index.js.map +1 -1
  4. package/dist/validation/index.d.ts.map +1 -1
  5. package/dist/validation/index.js +0 -9
  6. package/dist/validation/index.js.map +1 -1
  7. package/node_modules/@specforge/api-types/dist/mcp/lifecycle-envelope.d.ts.map +1 -1
  8. package/node_modules/@specforge/api-types/dist/runtime/epic-record.d.ts +1 -1
  9. package/node_modules/@specforge/api-types/dist/runtime/epic-record.d.ts.map +1 -1
  10. package/node_modules/@specforge/api-types/dist/runtime/project.d.ts +0 -1
  11. package/node_modules/@specforge/api-types/dist/runtime/project.d.ts.map +1 -1
  12. package/node_modules/@specforge/api-types/dist/runtime/ticket-record.d.ts +1 -1
  13. package/node_modules/@specforge/api-types/dist/runtime/ticket-record.d.ts.map +1 -1
  14. package/node_modules/@specforge/api-types/dist/stores/i-project-store.d.ts +0 -2
  15. package/node_modules/@specforge/api-types/dist/stores/i-project-store.d.ts.map +1 -1
  16. package/node_modules/@specforge/api-types/package.json +1 -1
  17. package/node_modules/@specforge/session-types/dist/runtime/enums.d.ts +1 -1
  18. package/node_modules/@specforge/session-types/dist/runtime/enums.d.ts.map +1 -1
  19. package/node_modules/@specforge/session-types/dist/runtime/enums.js +1 -2
  20. package/node_modules/@specforge/session-types/dist/runtime/enums.js.map +1 -1
  21. package/node_modules/@specforge/session-types/dist/runtime/implementation-session-aggregate.d.ts +57 -1
  22. package/node_modules/@specforge/session-types/dist/runtime/implementation-session-aggregate.d.ts.map +1 -1
  23. package/node_modules/@specforge/session-types/dist/runtime/implementation-session-aggregate.js +25 -1
  24. package/node_modules/@specforge/session-types/dist/runtime/implementation-session-aggregate.js.map +1 -1
  25. package/node_modules/@specforge/session-types/dist/schema/work-session-action.d.ts +3 -0
  26. package/node_modules/@specforge/session-types/dist/schema/work-session-action.d.ts.map +1 -1
  27. package/node_modules/@specforge/session-types/dist/schema/work-session-action.js +5 -0
  28. package/node_modules/@specforge/session-types/dist/schema/work-session-action.js.map +1 -1
  29. package/node_modules/@specforge/session-types/dist/schema/work-session.d.ts +18 -0
  30. package/node_modules/@specforge/session-types/dist/schema/work-session.d.ts.map +1 -1
  31. package/node_modules/@specforge/session-types/dist/schema/work-session.js +14 -0
  32. package/node_modules/@specforge/session-types/dist/schema/work-session.js.map +1 -1
  33. package/node_modules/@specforge/session-types/package.json +1 -1
  34. package/node_modules/@specforge/spec-types/dist/schema/planning/planning-type.d.ts +7 -1
  35. package/node_modules/@specforge/spec-types/dist/schema/planning/planning-type.d.ts.map +1 -1
  36. package/node_modules/@specforge/spec-types/dist/schema/planning/planning-type.js +7 -1
  37. package/node_modules/@specforge/spec-types/dist/schema/planning/planning-type.js.map +1 -1
  38. package/node_modules/@specforge/spec-types/dist/schema/specification.d.ts +1 -1
  39. package/node_modules/@specforge/spec-types/dist/schema/specification.d.ts.map +1 -1
  40. package/node_modules/@specforge/spec-types/dist/schema/specification.js +1 -2
  41. package/node_modules/@specforge/spec-types/dist/schema/specification.js.map +1 -1
  42. package/node_modules/@specforge/spec-types/package.json +1 -1
  43. package/package.json +6 -6
  44. package/src/cli/templates/skills/specforge-orchestrator.md +1 -1
  45. package/src/cli/templates/skills/specforge-worker.md +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AACA;;;;;GAKG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAML,gBAAgB,EACjB,MAAM,wBAAwB,CAAC;AAUhC;;GAEG;AACH,MAAM,WAAW,IAAI;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ,CAAC;QACf,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACpC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;KACrB,CAAC;CACH;AAED;;;;GAIG;AACH,wBAAgB,QAAQ,IAAI,IAAI,EAAE,CA6nCjC;AAED;;GAEG;AACH,KAAK,WAAW,GAAG,CACjB,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAC1B,OAAO,CAAC,OAAO,CAAC,CAAC;AA6EtB;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,SAAS,GACnB,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAyU7B;AAiBD;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,IAAI,CAExC;AAED;;;;;;;;GAQG;AACH,wBAAsB,cAAc,CAClC,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,KAAK,GAAE,OAAe,GACrB,OAAO,CAAC,OAAO,CAAC,CA4DlB;AAED;;;GAGG;AACH,wBAAsB,kBAAkB,CACtC,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,KAAK,GAAE,OAAe,GACrB,OAAO,CAAC,OAAO,GAAG,gBAAgB,CAAC,CAOrC;AAGD,OAAO,EACL,eAAe,EACf,QAAQ,EACR,gBAAgB,EAChB,cAAc,EACd,cAAc,EACd,KAAK,gBAAgB,GACtB,MAAM,wBAAwB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AACA;;;;;GAKG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAML,gBAAgB,EACjB,MAAM,wBAAwB,CAAC;AAUhC;;GAEG;AACH,MAAM,WAAW,IAAI;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ,CAAC;QACf,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACpC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;KACrB,CAAC;CACH;AAED;;;;GAIG;AACH,wBAAgB,QAAQ,IAAI,IAAI,EAAE,CAshCjC;AAED;;GAEG;AACH,KAAK,WAAW,GAAG,CACjB,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAC1B,OAAO,CAAC,OAAO,CAAC,CAAC;AA6EtB;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,SAAS,GACnB,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CA8S7B;AAiBD;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,IAAI,CAExC;AAED;;;;;;;;GAQG;AACH,wBAAsB,cAAc,CAClC,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,KAAK,GAAE,OAAe,GACrB,OAAO,CAAC,OAAO,CAAC,CA4DlB;AAED;;;GAGG;AACH,wBAAsB,kBAAkB,CACtC,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,KAAK,GAAE,OAAe,GACrB,OAAO,CAAC,OAAO,GAAG,gBAAgB,CAAC,CAOrC;AAGD,OAAO,EACL,eAAe,EACf,QAAQ,EACR,gBAAgB,EAChB,cAAc,EACd,cAAc,EACd,KAAK,gBAAgB,GACtB,MAAM,wBAAwB,CAAC"}
@@ -398,7 +398,7 @@ Format options:
398
398
  title: { type: "string", description: "Concise imperative title." },
399
399
  description: { type: "string", description: "What this ticket delivers and why." },
400
400
  complexity: { type: "string", enum: ["small", "medium", "large", "xlarge"] },
401
- planningType: { type: "string", enum: ["planning", "on_flight", "review"], description: "Changing this rolls the session back to ticket_decomposition to re-score." },
401
+ planningType: { type: "string", enum: ["planning", "on_flight"], description: "Changing this rolls the session back to ticket_decomposition to re-score." },
402
402
  ticketType: { type: "string", enum: ["implementation", "verification"], description: "Changing this rolls the session back to ticket_decomposition to re-score." },
403
403
  epicId: { type: "string", description: "Re-parent the ticket to another epic." },
404
404
  order: { type: "integer", description: "Rank hint within the epic." },
@@ -861,107 +861,6 @@ Set getTicket: true to fetch full ticket details in the response \u2014 useful f
861
861
  required: ["ticketId", "summary"]
862
862
  }
863
863
  },
864
- {
865
- name: "start_review_session",
866
- description: 'Start the implementation review lifecycle. Runs the implementation gate and either auto-transitions to "reviewed" (on pass) or transitions to "in_review" with an active ReviewSession (on fail). Creates correction tickets via action_review_session, then call complete_review_session.',
867
- inputSchema: {
868
- type: "object",
869
- properties: {
870
- specificationId: {
871
- type: "string",
872
- description: "The ID of the specification to review (must be in ready_for_review status)"
873
- }
874
- },
875
- required: ["specificationId"]
876
- }
877
- },
878
- {
879
- name: "action_review_session",
880
- description: 'Address findings in an active review session. Create correction tickets inline or dismiss findings with justification. Only available when specification is in "in_review" status.',
881
- inputSchema: {
882
- type: "object",
883
- properties: {
884
- specificationId: {
885
- type: "string",
886
- description: "The ID of the specification"
887
- },
888
- reviewSessionId: {
889
- type: "string",
890
- description: "The review session ID (auto-detected if omitted)"
891
- },
892
- findingsAddressed: {
893
- type: "array",
894
- description: "Findings to address in this action",
895
- items: {
896
- type: "object",
897
- properties: {
898
- findingId: {
899
- type: "string",
900
- description: "The finding ID to address"
901
- },
902
- action: {
903
- type: "string",
904
- enum: ["correction_ticket", "dismissed"],
905
- description: "How to address the finding"
906
- },
907
- correctionTicket: {
908
- type: "object",
909
- description: "Inline ticket creation params (required for correction_ticket action)",
910
- properties: {
911
- epicId: { type: "string", description: "Epic to add the correction ticket to" },
912
- title: { type: "string", description: "Ticket title" },
913
- description: { type: "string", description: "Ticket description" },
914
- ticketType: { type: "string", enum: ["implementation", "verification"], description: "Ticket type \u2014 defaults to implementation." },
915
- complexity: { type: "string", enum: ["small", "medium", "large", "xlarge"] },
916
- estimatedMinutes: { type: "integer", minimum: 0 },
917
- acceptanceCriteria: { type: "array", items: { type: "string" } },
918
- implementationSteps: { type: "array", items: { type: "string" }, description: "Implementation steps; persisted as TicketImplementationStep rows" },
919
- tags: { type: "array", items: { type: "string" } }
920
- },
921
- required: ["epicId", "title"]
922
- },
923
- justification: {
924
- type: "string",
925
- description: 'Required justification when action is "dismissed"'
926
- }
927
- },
928
- required: ["findingId", "action"]
929
- }
930
- },
931
- notes: {
932
- type: "string",
933
- description: "Optional notes for this review action"
934
- }
935
- },
936
- required: ["specificationId"]
937
- }
938
- },
939
- {
940
- name: "complete_review_session",
941
- description: 'Complete an active review session. All error-severity findings must be addressed. If correction tickets exist, transitions to "in_progress". If all findings dismissed, triggers user confirmation flow.',
942
- inputSchema: {
943
- type: "object",
944
- properties: {
945
- specificationId: {
946
- type: "string",
947
- description: "The ID of the specification"
948
- },
949
- reviewSessionId: {
950
- type: "string",
951
- description: "The review session ID (auto-detected if omitted)"
952
- },
953
- summary: {
954
- type: "string",
955
- description: "Optional completion summary"
956
- },
957
- confirmAllDismissed: {
958
- type: "boolean",
959
- description: "Set to true when all findings were dismissed to trigger user confirmation flow"
960
- }
961
- },
962
- required: ["specificationId"]
963
- }
964
- },
965
864
  {
966
865
  name: "reopen_specification",
967
866
  description: 'Reopen a specification in "ready" status, regressing to "planning". Use when action_planning_session reports the spec is no longer in planning. After reopening, call start_planning_session to begin a new planning session.',
@@ -1130,10 +1029,7 @@ Set getTicket: true to fetch full ticket details in the response \u2014 useful f
1130
1029
  const IN_DEVELOPMENT_PLANNED_FOR = {
1131
1030
  start_work_session: "0.2.0",
1132
1031
  action_work_session: "0.2.0",
1133
- complete_work_session: "0.2.0",
1134
- start_review_session: "0.3.0",
1135
- action_review_session: "0.3.0",
1136
- complete_review_session: "0.3.0"
1032
+ complete_work_session: "0.2.0"
1137
1033
  };
1138
1034
  for (const t of tools) {
1139
1035
  const plannedFor = IN_DEVELOPMENT_PLANNED_FOR[t.name];
@@ -1383,30 +1279,6 @@ function createToolHandlers(apiClient) {
1383
1279
  ...commitSha !== null && { commitSha }
1384
1280
  });
1385
1281
  },
1386
- start_review_session: async (_client, args) => {
1387
- const argsWithContext = injectContextRequired(args, ["specificationId"]);
1388
- return await callLocal("start_review_session", {
1389
- specificationId: argsWithContext.specificationId
1390
- });
1391
- },
1392
- action_review_session: async (_client, args) => {
1393
- const argsWithContext = injectContextRequired(args, ["specificationId"]);
1394
- return await callLocal("action_review_session", {
1395
- specificationId: argsWithContext.specificationId,
1396
- reviewSessionId: args.reviewSessionId,
1397
- findingsAddressed: args.findingsAddressed,
1398
- notes: args.notes
1399
- });
1400
- },
1401
- complete_review_session: async (_client, args) => {
1402
- const argsWithContext = injectContextRequired(args, ["specificationId"]);
1403
- return await callLocal("complete_review_session", {
1404
- specificationId: argsWithContext.specificationId,
1405
- reviewSessionId: args.reviewSessionId,
1406
- summary: args.summary,
1407
- confirmAllDismissed: args.confirmAllDismissed
1408
- });
1409
- },
1410
1282
  reopen_specification: async (_client, args) => {
1411
1283
  const argsWithContext = injectContextRequired(args, ["specificationId"]);
1412
1284
  return await callLocal("reopen_specification", {