codex-orchestrator 2.0.2 → 2.0.3

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 (211) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/README.md +12 -9
  3. package/dist/src/index.d.ts +10 -0
  4. package/dist/src/index.d.ts.map +1 -1
  5. package/dist/src/index.js +5 -0
  6. package/dist/src/index.js.map +1 -1
  7. package/dist/src/v2/acceptance-proof.d.ts +3 -0
  8. package/dist/src/v2/acceptance-proof.d.ts.map +1 -1
  9. package/dist/src/v2/acceptance-proof.js +2 -8
  10. package/dist/src/v2/acceptance-proof.js.map +1 -1
  11. package/dist/src/v2/adapters/gh-issue-adapter.d.ts +5 -3
  12. package/dist/src/v2/adapters/gh-issue-adapter.d.ts.map +1 -1
  13. package/dist/src/v2/adapters/gh-issue-adapter.js +63 -7
  14. package/dist/src/v2/adapters/gh-issue-adapter.js.map +1 -1
  15. package/dist/src/v2/adapters/issues.d.ts +16 -2
  16. package/dist/src/v2/adapters/issues.d.ts.map +1 -1
  17. package/dist/src/v2/adapters/issues.js +15 -5
  18. package/dist/src/v2/adapters/issues.js.map +1 -1
  19. package/dist/src/v2/adapters/mission-coordinator-lock.d.ts +1 -0
  20. package/dist/src/v2/adapters/mission-coordinator-lock.d.ts.map +1 -1
  21. package/dist/src/v2/adapters/mission-coordinator-lock.js +5 -1
  22. package/dist/src/v2/adapters/mission-coordinator-lock.js.map +1 -1
  23. package/dist/src/v2/candidate-cli.d.ts +4 -0
  24. package/dist/src/v2/candidate-cli.d.ts.map +1 -1
  25. package/dist/src/v2/candidate-cli.js +26 -11
  26. package/dist/src/v2/candidate-cli.js.map +1 -1
  27. package/dist/src/v2/cli-contract.d.ts +1 -1
  28. package/dist/src/v2/cli-contract.d.ts.map +1 -1
  29. package/dist/src/v2/cli-contract.js +10 -0
  30. package/dist/src/v2/cli-contract.js.map +1 -1
  31. package/dist/src/v2/code-review-report.d.ts +66 -0
  32. package/dist/src/v2/code-review-report.d.ts.map +1 -0
  33. package/dist/src/v2/code-review-report.js +259 -0
  34. package/dist/src/v2/code-review-report.js.map +1 -0
  35. package/dist/src/v2/codex-process.d.ts +8 -1
  36. package/dist/src/v2/codex-process.d.ts.map +1 -1
  37. package/dist/src/v2/codex-process.js +11 -0
  38. package/dist/src/v2/codex-process.js.map +1 -1
  39. package/dist/src/v2/config.d.ts +2 -1
  40. package/dist/src/v2/config.d.ts.map +1 -1
  41. package/dist/src/v2/config.js +8 -3
  42. package/dist/src/v2/config.js.map +1 -1
  43. package/dist/src/v2/contained-report-operation.d.ts +100 -0
  44. package/dist/src/v2/contained-report-operation.d.ts.map +1 -0
  45. package/dist/src/v2/contained-report-operation.js +200 -0
  46. package/dist/src/v2/contained-report-operation.js.map +1 -0
  47. package/dist/src/v2/containment.d.ts +6 -0
  48. package/dist/src/v2/containment.d.ts.map +1 -1
  49. package/dist/src/v2/containment.js +40 -1
  50. package/dist/src/v2/containment.js.map +1 -1
  51. package/dist/src/v2/direct-delivery.d.ts +101 -0
  52. package/dist/src/v2/direct-delivery.d.ts.map +1 -0
  53. package/dist/src/v2/direct-delivery.js +547 -0
  54. package/dist/src/v2/direct-delivery.js.map +1 -0
  55. package/dist/src/v2/immutable-workflow-publisher.d.ts +40 -0
  56. package/dist/src/v2/immutable-workflow-publisher.d.ts.map +1 -0
  57. package/dist/src/v2/immutable-workflow-publisher.js +218 -0
  58. package/dist/src/v2/immutable-workflow-publisher.js.map +1 -0
  59. package/dist/src/v2/implementation-reviewer.d.ts +81 -0
  60. package/dist/src/v2/implementation-reviewer.d.ts.map +1 -0
  61. package/dist/src/v2/implementation-reviewer.js +157 -0
  62. package/dist/src/v2/implementation-reviewer.js.map +1 -0
  63. package/dist/src/v2/owner-control-lock.d.ts +41 -0
  64. package/dist/src/v2/owner-control-lock.d.ts.map +1 -0
  65. package/dist/src/v2/owner-control-lock.js +174 -0
  66. package/dist/src/v2/owner-control-lock.js.map +1 -0
  67. package/dist/src/v2/route-continuations.d.ts +32 -0
  68. package/dist/src/v2/route-continuations.d.ts.map +1 -0
  69. package/dist/src/v2/route-continuations.js +2 -0
  70. package/dist/src/v2/route-continuations.js.map +1 -0
  71. package/dist/src/v2/route-coordinator.d.ts +77 -0
  72. package/dist/src/v2/route-coordinator.d.ts.map +1 -0
  73. package/dist/src/v2/route-coordinator.js +370 -0
  74. package/dist/src/v2/route-coordinator.js.map +1 -0
  75. package/dist/src/v2/route-decision.d.ts +129 -0
  76. package/dist/src/v2/route-decision.d.ts.map +1 -0
  77. package/dist/src/v2/route-decision.js +400 -0
  78. package/dist/src/v2/route-decision.js.map +1 -0
  79. package/dist/src/v2/run-issue.d.ts +63 -2
  80. package/dist/src/v2/run-issue.d.ts.map +1 -1
  81. package/dist/src/v2/run-issue.js +906 -91
  82. package/dist/src/v2/run-issue.js.map +1 -1
  83. package/dist/src/v2/run-store.d.ts +25 -1
  84. package/dist/src/v2/run-store.d.ts.map +1 -1
  85. package/dist/src/v2/run-store.js +143 -3
  86. package/dist/src/v2/run-store.js.map +1 -1
  87. package/dist/src/v2/runtime-assets.d.ts +15 -13
  88. package/dist/src/v2/runtime-assets.d.ts.map +1 -1
  89. package/dist/src/v2/runtime-assets.js +263 -416
  90. package/dist/src/v2/runtime-assets.js.map +1 -1
  91. package/dist/src/v2/runtime.d.ts +14 -6
  92. package/dist/src/v2/runtime.d.ts.map +1 -1
  93. package/dist/src/v2/runtime.js +478 -56
  94. package/dist/src/v2/runtime.js.map +1 -1
  95. package/dist/src/v2/setup-cli.d.ts.map +1 -1
  96. package/dist/src/v2/setup-cli.js +1 -0
  97. package/dist/src/v2/setup-cli.js.map +1 -1
  98. package/dist/src/v2/setup-runtime.d.ts.map +1 -1
  99. package/dist/src/v2/setup-runtime.js +20 -72
  100. package/dist/src/v2/setup-runtime.js.map +1 -1
  101. package/dist/src/v2/setup.d.ts +4 -1
  102. package/dist/src/v2/setup.d.ts.map +1 -1
  103. package/dist/src/v2/setup.js +104 -1
  104. package/dist/src/v2/setup.js.map +1 -1
  105. package/dist/src/v2/spec-coordinator.d.ts +85 -0
  106. package/dist/src/v2/spec-coordinator.d.ts.map +1 -0
  107. package/dist/src/v2/spec-coordinator.js +88 -0
  108. package/dist/src/v2/spec-coordinator.js.map +1 -0
  109. package/dist/src/v2/spec-delivery.d.ts +143 -0
  110. package/dist/src/v2/spec-delivery.d.ts.map +1 -0
  111. package/dist/src/v2/spec-delivery.js +401 -0
  112. package/dist/src/v2/spec-delivery.js.map +1 -0
  113. package/dist/src/v2/triage-route.d.ts +68 -0
  114. package/dist/src/v2/triage-route.d.ts.map +1 -0
  115. package/dist/src/v2/triage-route.js +223 -0
  116. package/dist/src/v2/triage-route.js.map +1 -0
  117. package/dist/src/v2/waiting-human-coordinator.d.ts +49 -0
  118. package/dist/src/v2/waiting-human-coordinator.d.ts.map +1 -0
  119. package/dist/src/v2/waiting-human-coordinator.js +509 -0
  120. package/dist/src/v2/waiting-human-coordinator.js.map +1 -0
  121. package/dist/src/v2/waiting-human.d.ts +143 -0
  122. package/dist/src/v2/waiting-human.d.ts.map +1 -0
  123. package/dist/src/v2/waiting-human.js +408 -0
  124. package/dist/src/v2/waiting-human.js.map +1 -0
  125. package/dist/src/v2/workflow-assets.d.ts +90 -0
  126. package/dist/src/v2/workflow-assets.d.ts.map +1 -0
  127. package/dist/src/v2/workflow-assets.js +554 -0
  128. package/dist/src/v2/workflow-assets.js.map +1 -0
  129. package/docs/deep-dive.md +15 -8
  130. package/internal-workflow/docs/agents/artifact-review-loop.md +267 -0
  131. package/internal-workflow/docs/agents/bug-workflow-routing.md +24 -0
  132. package/internal-workflow/docs/agents/coding-skill-routing.md +203 -0
  133. package/internal-workflow/docs/agents/confidence-rubric.md +65 -0
  134. package/internal-workflow/docs/agents/contract-test-ledger.md +60 -0
  135. package/internal-workflow/docs/agents/implementation-review-loop.md +302 -0
  136. package/internal-workflow/docs/agents/review-gates.md +49 -0
  137. package/internal-workflow/docs/agents/review-protocol.md +170 -0
  138. package/internal-workflow/docs/agents/tool-usage.md +88 -0
  139. package/internal-workflow/manifest.json +1 -0
  140. package/internal-workflow/operations/acceptance-proof/SKILL.md +3 -0
  141. package/internal-workflow/operations/ambiguity-review/SKILL.md +3 -0
  142. package/internal-workflow/operations/cleanup-review/SKILL.md +3 -0
  143. package/internal-workflow/operations/code-review/SKILL.md +3 -0
  144. package/internal-workflow/operations/implementation/SKILL.md +3 -0
  145. package/internal-workflow/operations/spec-author/SKILL.md +3 -0
  146. package/internal-workflow/operations/spec-implementation/SKILL.md +3 -0
  147. package/internal-workflow/operations/spec-review/SKILL.md +3 -0
  148. package/internal-workflow/operations/triage/SKILL.md +3 -0
  149. package/internal-workflow/profiles/analyst_deep.toml +9 -0
  150. package/internal-workflow/profiles/implementer_deep.toml +9 -0
  151. package/internal-workflow/profiles/implementer_standard.toml +9 -0
  152. package/internal-workflow/profiles/proof_agent.toml +8 -0
  153. package/internal-workflow/profiles/researcher_standard.toml +9 -0
  154. package/internal-workflow/profiles/reviewer_deep.toml +9 -0
  155. package/internal-workflow/profiles/reviewer_fast.toml +9 -0
  156. package/internal-workflow/profiles/reviewer_standard.toml +9 -0
  157. package/internal-workflow/schemas/ambiguity-review-v1.json +1 -0
  158. package/internal-workflow/schemas/code-review-v1.json +1 -0
  159. package/internal-workflow/schemas/implementation-report-v1.json +1 -0
  160. package/internal-workflow/schemas/proof-report-v1.json +1 -0
  161. package/internal-workflow/schemas/spec-author-v1.json +1 -0
  162. package/internal-workflow/schemas/spec-review-v1.json +30 -0
  163. package/internal-workflow/schemas/triage-route-v1.json +1 -0
  164. package/internal-workflow/skills/acceptance-proof/agents/openai.yaml +6 -0
  165. package/internal-workflow/skills/agent-auto/agents/openai.yaml +6 -0
  166. package/internal-workflow/skills/cleanup-review/SKILL.md +84 -0
  167. package/internal-workflow/skills/cleanup-review/agents/openai.yaml +6 -0
  168. package/internal-workflow/skills/code-review/SKILL.md +257 -0
  169. package/internal-workflow/skills/code-review/agents/openai.yaml +4 -0
  170. package/internal-workflow/skills/code-review/references/bug-classes.md +56 -0
  171. package/internal-workflow/skills/code-review/references/framework-lenses.md +34 -0
  172. package/internal-workflow/skills/code-review/references/targeted-recipes.md +49 -0
  173. package/internal-workflow/skills/codebase-design/DEEPENING.md +35 -0
  174. package/internal-workflow/skills/codebase-design/DESIGN-IT-TWICE.md +50 -0
  175. package/internal-workflow/skills/codebase-design/SKILL.md +82 -0
  176. package/internal-workflow/skills/codebase-design/agents/openai.yaml +6 -0
  177. package/internal-workflow/skills/diagnosing-bugs/SKILL.md +138 -0
  178. package/internal-workflow/skills/diagnosing-bugs/agents/openai.yaml +6 -0
  179. package/internal-workflow/skills/diagnosing-bugs/scripts/hitl-loop.template.sh +41 -0
  180. package/internal-workflow/skills/implementation-spec-maker/SKILL.md +93 -0
  181. package/internal-workflow/skills/implementation-spec-maker/agents/openai.yaml +6 -0
  182. package/internal-workflow/skills/implementation-spec-maker/references/source-modes.md +31 -0
  183. package/internal-workflow/skills/implementation-spec-maker/references/spec-template.md +146 -0
  184. package/internal-workflow/skills/implementation-spec-review/SKILL.md +211 -0
  185. package/internal-workflow/skills/implementation-spec-review/agents/openai.yaml +6 -0
  186. package/internal-workflow/skills/research/SKILL.md +107 -0
  187. package/internal-workflow/skills/research/agents/openai.yaml +6 -0
  188. package/internal-workflow/skills/small-task-implementer/SKILL.md +97 -0
  189. package/internal-workflow/skills/small-task-implementer/agents/openai.yaml +6 -0
  190. package/internal-workflow/skills/spec-implementer/SKILL.md +197 -0
  191. package/internal-workflow/skills/spec-implementer/agents/openai.yaml +6 -0
  192. package/internal-workflow/skills/tdd/SKILL.md +59 -0
  193. package/internal-workflow/skills/tdd/agents/openai.yaml +6 -0
  194. package/internal-workflow/skills/tdd/interface-design.md +31 -0
  195. package/internal-workflow/skills/tdd/mocking.md +59 -0
  196. package/internal-workflow/skills/tdd/refactoring.md +10 -0
  197. package/internal-workflow/skills/tdd/tests.md +77 -0
  198. package/internal-workflow/skills/triage/AGENT-BRIEF.md +192 -0
  199. package/internal-workflow/skills/triage/OUT-OF-SCOPE.md +101 -0
  200. package/internal-workflow/skills/triage/SKILL.md +134 -0
  201. package/internal-workflow/skills/triage/agents/openai.yaml +6 -0
  202. package/internal-workflow/skills/ui-evidence-proof/SKILL.md +123 -0
  203. package/internal-workflow/skills/ui-evidence-proof/agents/openai.yaml +6 -0
  204. package/package.json +6 -3
  205. /package/{internal-skills → internal-workflow/skills}/acceptance-proof/SKILL.md +0 -0
  206. /package/{internal-skills → internal-workflow/skills}/acceptance-proof/references/android.md +0 -0
  207. /package/{internal-skills → internal-workflow/skills}/acceptance-proof/references/browser.md +0 -0
  208. /package/{internal-skills → internal-workflow/skills}/acceptance-proof/references/ios.md +0 -0
  209. /package/{internal-skills → internal-workflow/skills}/acceptance-proof/tools/android-lease.mjs +0 -0
  210. /package/{internal-skills → internal-workflow/skills}/acceptance-proof/tools/ios-lease.mjs +0 -0
  211. /package/{internal-skills → internal-workflow/skills}/agent-auto/SKILL.md +0 -0
@@ -0,0 +1,123 @@
1
+ ---
2
+ name: ui-evidence-proof
3
+ description: Prove UI, layout, copy, responsive, browser, mobile, or frontend changes with fresh visual artifacts. Use when app-facing completion requires workflow/viewport evidence and criterion-to-artifact mapping.
4
+ ---
5
+
6
+ # UI Evidence Proof
7
+
8
+ Use this skill when the task needs visual proof in normal Codex app chat. It is a prompt-level proof workflow, not the package runner's machine-enforced Acceptance Proof. The goal is to stop "some screenshot exists" from becoming "the UI is proven."
9
+
10
+ ## Activation
11
+
12
+ Use this skill for:
13
+
14
+ - explicit requests for visual proof, UI proof, screenshots, videos, browser proof, app proof, or layout checks;
15
+ - frontend, web, mobile, app-facing, responsive, visual, copy, or styling changes before final handoff;
16
+ - checking a screenshot/video/UI dump against an expected user workflow or visual complaint.
17
+
18
+ If a stronger project-specific proof runner exists, use it when appropriate, but still use this skill to inspect and explain the evidence before claiming success.
19
+
20
+ ## Non-Negotiable Standard
21
+
22
+ Visual proof passes only when the current artifact visibly proves the requested user-facing state. A screenshot, video, or UI dump is not proof by itself.
23
+
24
+ Before claiming success, produce or verify a UI Evidence Report with:
25
+
26
+ 1. **Exact workflow** - the entrypoint and user path used to reach the state.
27
+ 2. **Source inputs** - issue/request criteria, screenshot complaint, manual QA notes, implementation evidence, or reproduction signal used to derive checks.
28
+ 3. **Viewport coverage** - the relevant desktop/mobile/tablet sizes and why they are sufficient.
29
+ 4. **Artifact freshness** - the final post-change artifacts inspected after the last run/edit.
30
+ 5. **Layout review** - spacing, padding, clipping, overlap, alignment, responsive placement, and the specific visual complaint.
31
+ 6. **Copy review** - user-facing labels and absence of rejected technical terms when copy is part of the task.
32
+ 7. **Criterion mapping** - which artifact proves which criterion.
33
+
34
+ If any required dimension is missing, do not say proof passed. Continue the proof loop when in scope; otherwise report a blocker or residual risk.
35
+
36
+ ## Workflow
37
+
38
+ ### 1. Extract The Proof Target
39
+
40
+ Identify the task-specific checks before opening tools:
41
+
42
+ - user workflow: login/entrypoint, create/edit/detail/settings/modal state, relevant route or screen;
43
+ - expected state: visible controls, content, copy, data, interaction result;
44
+ - layout expectations: spacing, grouping, alignment, overflow, clipping, responsive behavior;
45
+ - copy expectations: accepted wording and rejected implementation terms;
46
+ - source inputs: issue, user request, PRD/spec, prior screenshot, manual QA plan, reproduction signal.
47
+
48
+ If criteria are underspecified, derive the smallest explicit checklist from the request and state assumptions. Ask only when ambiguity would materially change the proof.
49
+
50
+ ### 2. Drive The Real UI Path
51
+
52
+ - Prefer the same entrypoint a user would use.
53
+ - When credentials are available through the repo's documented environment or smoke setup, use the real login UI.
54
+ - If you seed cookies/session state, record why the normal UI path was unavailable or irrelevant.
55
+ - For web layout proof, include a wide desktop viewport unless the task clearly excludes desktop.
56
+ - Include mobile only when the task mentions mobile/responsive behavior or the change is likely to affect small screens.
57
+
58
+ ### 3. Capture Current Artifacts
59
+
60
+ Capture artifacts after reaching the exact state:
61
+
62
+ - screenshots for visual state;
63
+ - video or step screenshots for interaction flows;
64
+ - UI tree/DOM text dump when it helps verify labels or hidden overflow;
65
+ - console/log output only as supporting evidence, not a visual substitute.
66
+
67
+ Do not reuse old screenshots. Check timestamp/path or recapture after the final change. If a path is overwritten, inspect the current file before using it in the final report.
68
+
69
+ ### 4. Inspect The Artifact
70
+
71
+ Look at the artifact, not only DOM selectors or test assertions.
72
+
73
+ Check:
74
+
75
+ - correct workflow/state, not a nearby equivalent screen;
76
+ - enough surrounding context, not a crop that hides the layout relationship;
77
+ - spacing/padding/breathing room;
78
+ - overlap, clipping, scroll traps, sticky headers/footers, and text truncation;
79
+ - alignment/grouping against neighboring controls;
80
+ - expected copy and absence of rejected technical wording;
81
+ - obvious loading, error, empty, stale-data, or permission states.
82
+
83
+ Use measurements when helpful, but do not let convenient geometry replace the actual visual complaint.
84
+
85
+ ### 5. Decide And Act
86
+
87
+ - If the proof passes, write the UI Evidence Report.
88
+ - If proof reveals an in-scope defect and the user asked for implementation, fix it and rerun proof.
89
+ - If proof reveals an out-of-scope defect, record it as residual risk or follow-up.
90
+ - If required tools, credentials, or services are missing, report a concrete blocker with the proof attempted.
91
+
92
+ ## UI Evidence Report
93
+
94
+ Use this compact format in final answers or proof notes:
95
+
96
+ ```markdown
97
+ ## UI Evidence
98
+
99
+ - **Workflow:** <entrypoint -> path -> exact screen state>
100
+ - **Source inputs:** <request/issue/spec/reproduction/manual QA sources used>
101
+ - **Viewports:** <viewport names and dimensions, with reason>
102
+ - **Fresh artifacts:** <current screenshot/video/UI dump paths captured after final run>
103
+ - **Layout review:** <spacing/padding/overlap/clipping/alignment findings>
104
+ - **Copy review:** <accepted labels and rejected terms checked>
105
+
106
+ | Criterion | Artifact | Evidence | Result |
107
+ | --- | --- | --- | --- |
108
+ | <criterion> | <path/url> | <what is visible and why it proves it> | Pass/Fail/Risk |
109
+ ```
110
+
111
+ Keep it short. Do not include the table when the task is tiny and prose is clearer, but still cover every proof dimension.
112
+
113
+ ## Failure Conditions
114
+
115
+ Treat these as proof failures:
116
+
117
+ - artifact does not show the exact requested workflow or screen state;
118
+ - only mobile/narrow proof exists for a desktop layout claim;
119
+ - artifact was captured before the final change or may be stale;
120
+ - screenshot exists but layout/copy was not inspected;
121
+ - only selector/DOM existence is verified for a visual/layout claim;
122
+ - proof uses technical labels the user rejected;
123
+ - direct session seeding bypasses a relevant login/user path without explanation.
@@ -0,0 +1,6 @@
1
+ interface:
2
+ display_name: "UI Evidence Proof"
3
+ short_description: "Prove UI changes with fresh visual evidence"
4
+ default_prompt: "Use $ui-evidence-proof to verify this UI change with the exact workflow, relevant viewports, current artifacts, layout and copy review, and criterion-to-artifact mapping before claiming it is done."
5
+ policy:
6
+ allow_implicit_invocation: true
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "codex-orchestrator",
3
- "version": "2.0.2",
3
+ "version": "2.0.3",
4
4
  "description": "Reusable GitHub Issues runner for Codex.",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -17,7 +17,7 @@
17
17
  },
18
18
  "files": [
19
19
  "dist/src",
20
- "internal-skills",
20
+ "internal-workflow",
21
21
  "docs/deep-dive.md",
22
22
  "CHANGELOG.md",
23
23
  "README.md",
@@ -40,8 +40,11 @@
40
40
  "test": "npm run build && node --test dist/test/*.test.js",
41
41
  "test:v2-containment": "npm run build --silent && node dist/test/v2-containment.canary.js",
42
42
  "typecheck": "tsc -p tsconfig.json --noEmit",
43
+ "sync:workflow": "node scripts/sync-agent-auto-workflow.mjs sync --codex-home \"${CODEX_HOME:-$HOME/.codex}\" --repo-root \"$PWD\" --config scripts/agent-auto-workflow-source.json --output-root internal-workflow",
44
+ "check:workflow": "node scripts/sync-agent-auto-workflow.mjs check --codex-home \"${CODEX_HOME:-$HOME/.codex}\" --repo-root \"$PWD\" --config scripts/agent-auto-workflow-source.json --output-root internal-workflow",
45
+ "verify:workflow": "node scripts/sync-agent-auto-workflow.mjs verify --output-root internal-workflow",
43
46
  "smoke:live": "node scripts/live-smoke.mjs",
44
- "prepack": "npm run build --silent"
47
+ "prepack": "npm run verify:workflow --silent && npm run build --silent"
45
48
  },
46
49
  "devDependencies": {
47
50
  "@types/node": "^24.0.0",