@cleocode/contracts 2026.5.99 → 2026.5.101

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 (78) hide show
  1. package/dist/__tests__/operations-registry.test.d.ts +15 -0
  2. package/dist/__tests__/operations-registry.test.d.ts.map +1 -0
  3. package/dist/__tests__/operations-registry.test.js +48 -0
  4. package/dist/__tests__/operations-registry.test.js.map +1 -0
  5. package/dist/dispatch/operations-registry.d.ts +33 -0
  6. package/dist/dispatch/operations-registry.d.ts.map +1 -0
  7. package/dist/dispatch/operations-registry.js +7709 -0
  8. package/dist/dispatch/operations-registry.js.map +1 -0
  9. package/dist/index.d.ts +12 -0
  10. package/dist/index.d.ts.map +1 -1
  11. package/dist/index.js +2 -0
  12. package/dist/index.js.map +1 -1
  13. package/dist/project-tools.d.ts +105 -0
  14. package/dist/project-tools.d.ts.map +1 -0
  15. package/dist/project-tools.js +14 -0
  16. package/dist/project-tools.js.map +1 -0
  17. package/dist/release/plan.d.ts +3 -3
  18. package/dist/tools/brain-fetch.d.ts +22 -0
  19. package/dist/tools/brain-fetch.d.ts.map +1 -0
  20. package/dist/tools/brain-fetch.js +9 -0
  21. package/dist/tools/brain-fetch.js.map +1 -0
  22. package/dist/tools/brain-observe.d.ts +22 -0
  23. package/dist/tools/brain-observe.d.ts.map +1 -0
  24. package/dist/tools/brain-observe.js +9 -0
  25. package/dist/tools/brain-observe.js.map +1 -0
  26. package/dist/tools/brain-search.d.ts +22 -0
  27. package/dist/tools/brain-search.d.ts.map +1 -0
  28. package/dist/tools/brain-search.js +9 -0
  29. package/dist/tools/brain-search.js.map +1 -0
  30. package/dist/tools/brain-timeline.d.ts +22 -0
  31. package/dist/tools/brain-timeline.d.ts.map +1 -0
  32. package/dist/tools/brain-timeline.js +9 -0
  33. package/dist/tools/brain-timeline.js.map +1 -0
  34. package/dist/tools/build-retrieval-bundle.d.ts +22 -0
  35. package/dist/tools/build-retrieval-bundle.d.ts.map +1 -0
  36. package/dist/tools/build-retrieval-bundle.js +9 -0
  37. package/dist/tools/build-retrieval-bundle.js.map +1 -0
  38. package/dist/tools/build-task-tree.d.ts +44 -0
  39. package/dist/tools/build-task-tree.d.ts.map +1 -0
  40. package/dist/tools/build-task-tree.js +9 -0
  41. package/dist/tools/build-task-tree.js.map +1 -0
  42. package/dist/tools/compute-critical-path.d.ts +33 -0
  43. package/dist/tools/compute-critical-path.d.ts.map +1 -0
  44. package/dist/tools/compute-critical-path.js +9 -0
  45. package/dist/tools/compute-critical-path.js.map +1 -0
  46. package/dist/tools/describe-schema.d.ts +40 -0
  47. package/dist/tools/describe-schema.d.ts.map +1 -0
  48. package/dist/tools/describe-schema.js +9 -0
  49. package/dist/tools/describe-schema.js.map +1 -0
  50. package/dist/tools/index.d.ts +19 -0
  51. package/dist/tools/index.d.ts.map +1 -0
  52. package/dist/tools/index.js +10 -0
  53. package/dist/tools/index.js.map +1 -0
  54. package/dist/tools/render-task-tree.d.ts +18 -0
  55. package/dist/tools/render-task-tree.d.ts.map +1 -0
  56. package/dist/tools/render-task-tree.js +9 -0
  57. package/dist/tools/render-task-tree.js.map +1 -0
  58. package/dist/tools/score-task-priority.d.ts +59 -0
  59. package/dist/tools/score-task-priority.d.ts.map +1 -0
  60. package/dist/tools/score-task-priority.js +9 -0
  61. package/dist/tools/score-task-priority.js.map +1 -0
  62. package/package.json +2 -2
  63. package/src/__tests__/__snapshots__/operations-registry.test.ts.snap +3 -0
  64. package/src/__tests__/operations-registry.test.ts +53 -0
  65. package/src/dispatch/operations-registry.ts +7987 -0
  66. package/src/index.ts +45 -0
  67. package/src/project-tools.ts +117 -0
  68. package/src/tools/brain-fetch.ts +25 -0
  69. package/src/tools/brain-observe.ts +25 -0
  70. package/src/tools/brain-search.ts +25 -0
  71. package/src/tools/brain-timeline.ts +25 -0
  72. package/src/tools/build-retrieval-bundle.ts +25 -0
  73. package/src/tools/build-task-tree.ts +48 -0
  74. package/src/tools/compute-critical-path.ts +35 -0
  75. package/src/tools/describe-schema.ts +43 -0
  76. package/src/tools/index.ts +43 -0
  77. package/src/tools/render-task-tree.ts +19 -0
  78. package/src/tools/score-task-priority.ts +59 -0
@@ -0,0 +1,53 @@
1
+ /**
2
+ * Snapshot test for the OPERATIONS registry data.
3
+ *
4
+ * Pins the exact JSON shape of the full OPERATIONS array so that any
5
+ * accidental addition, removal, or mutation of an entry is caught
6
+ * immediately. This test MUST pass before and after the T10061 data
7
+ * relocation — it is the primary guard against behavior change.
8
+ *
9
+ * To update the snapshot intentionally:
10
+ * pnpm vitest --filter @cleocode/contracts run -u
11
+ *
12
+ * @since T10061 — T9833b / E-CLI-BOUNDARY / SG-ARCH-SOLID T9831
13
+ */
14
+
15
+ import { describe, expect, it } from 'vitest';
16
+ import { defineDomain, defineOp, OPERATIONS } from '../dispatch/operations-registry.js';
17
+
18
+ describe('operations-registry', () => {
19
+ it('OPERATIONS snapshot — zero behavior change across relocation', () => {
20
+ expect(JSON.stringify(OPERATIONS)).toMatchSnapshot();
21
+ });
22
+
23
+ it('OPERATIONS count is consistent', () => {
24
+ expect(OPERATIONS.length).toBeGreaterThan(0);
25
+ const queryCount = OPERATIONS.filter((o) => o.gateway === 'query').length;
26
+ const mutateCount = OPERATIONS.filter((o) => o.gateway === 'mutate').length;
27
+ expect(queryCount + mutateCount).toBe(OPERATIONS.length);
28
+ });
29
+
30
+ it('every operation has required structural fields', () => {
31
+ for (const op of OPERATIONS) {
32
+ expect(typeof op.gateway).toBe('string');
33
+ expect(typeof op.domain).toBe('string');
34
+ expect(typeof op.operation).toBe('string');
35
+ expect(typeof op.description).toBe('string');
36
+ expect(typeof op.tier).toBe('number');
37
+ expect(typeof op.idempotent).toBe('boolean');
38
+ expect(typeof op.sessionRequired).toBe('boolean');
39
+ expect(Array.isArray(op.requiredParams)).toBe(true);
40
+ }
41
+ });
42
+
43
+ it('defineOp is an identity function', () => {
44
+ const def = OPERATIONS[0];
45
+ expect(defineOp(def)).toBe(def);
46
+ });
47
+
48
+ it('defineDomain returns the ops array unchanged', () => {
49
+ const ops = OPERATIONS.filter((o) => o.domain === 'tasks');
50
+ const result = defineDomain('tasks', ops);
51
+ expect(result).toBe(ops);
52
+ });
53
+ });