@kynetic-ai/spec 0.11.0 → 0.12.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.
- package/README.md +55 -455
- package/dist/agent-runtime/bootstrap.d.ts +31 -0
- package/dist/agent-runtime/bootstrap.d.ts.map +1 -0
- package/dist/agent-runtime/bootstrap.js +302 -0
- package/dist/agent-runtime/bootstrap.js.map +1 -0
- package/dist/agent-runtime/dispatch.d.ts +119 -10
- package/dist/agent-runtime/dispatch.d.ts.map +1 -1
- package/dist/agent-runtime/dispatch.js +1154 -219
- package/dist/agent-runtime/dispatch.js.map +1 -1
- package/dist/agent-runtime/invocation.d.ts +28 -1
- package/dist/agent-runtime/invocation.d.ts.map +1 -1
- package/dist/agent-runtime/invocation.js +171 -59
- package/dist/agent-runtime/invocation.js.map +1 -1
- package/dist/agent-runtime/prompts.d.ts +9 -0
- package/dist/agent-runtime/prompts.d.ts.map +1 -1
- package/dist/agent-runtime/prompts.js +42 -7
- package/dist/agent-runtime/prompts.js.map +1 -1
- package/dist/agent-runtime/session-event-accumulator.d.ts +83 -0
- package/dist/agent-runtime/session-event-accumulator.d.ts.map +1 -0
- package/dist/agent-runtime/session-event-accumulator.js +203 -0
- package/dist/agent-runtime/session-event-accumulator.js.map +1 -0
- package/dist/agent-runtime/session-event-types.d.ts +67 -0
- package/dist/agent-runtime/session-event-types.d.ts.map +1 -0
- package/dist/agent-runtime/session-event-types.js +13 -0
- package/dist/agent-runtime/session-event-types.js.map +1 -0
- package/dist/agent-runtime/workspace.d.ts +244 -0
- package/dist/agent-runtime/workspace.d.ts.map +1 -0
- package/dist/agent-runtime/workspace.js +2025 -0
- package/dist/agent-runtime/workspace.js.map +1 -0
- package/dist/agents/adapters.d.ts.map +1 -1
- package/dist/agents/adapters.js +58 -13
- package/dist/agents/adapters.js.map +1 -1
- package/dist/agents/spawner.d.ts +8 -0
- package/dist/agents/spawner.d.ts.map +1 -1
- package/dist/agents/spawner.js +25 -3
- package/dist/agents/spawner.js.map +1 -1
- package/dist/cli/batch-exec.js +1 -1
- package/dist/cli/batch-exec.js.map +1 -1
- package/dist/cli/command-annotations.d.ts +15 -3
- package/dist/cli/command-annotations.d.ts.map +1 -1
- package/dist/cli/command-annotations.js +23 -3
- package/dist/cli/command-annotations.js.map +1 -1
- package/dist/cli/commands/agent.d.ts +2 -0
- package/dist/cli/commands/agent.d.ts.map +1 -1
- package/dist/cli/commands/agent.js +144 -27
- package/dist/cli/commands/agent.js.map +1 -1
- package/dist/cli/commands/agents.d.ts.map +1 -1
- package/dist/cli/commands/agents.js +5 -5
- package/dist/cli/commands/agents.js.map +1 -1
- package/dist/cli/commands/derive.d.ts.map +1 -1
- package/dist/cli/commands/derive.js +118 -3
- package/dist/cli/commands/derive.js.map +1 -1
- package/dist/cli/commands/guard.d.ts.map +1 -1
- package/dist/cli/commands/guard.js +8 -6
- package/dist/cli/commands/guard.js.map +1 -1
- package/dist/cli/commands/index.d.ts +1 -0
- package/dist/cli/commands/index.d.ts.map +1 -1
- package/dist/cli/commands/index.js +1 -0
- package/dist/cli/commands/index.js.map +1 -1
- package/dist/cli/commands/init.d.ts.map +1 -1
- package/dist/cli/commands/init.js +20 -0
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/commands/item.d.ts.map +1 -1
- package/dist/cli/commands/item.js +205 -47
- package/dist/cli/commands/item.js.map +1 -1
- package/dist/cli/commands/log.d.ts.map +1 -1
- package/dist/cli/commands/log.js +24 -10
- package/dist/cli/commands/log.js.map +1 -1
- package/dist/cli/commands/plan-import.d.ts +3 -3
- package/dist/cli/commands/plan-import.d.ts.map +1 -1
- package/dist/cli/commands/plan-import.js +213 -528
- package/dist/cli/commands/plan-import.js.map +1 -1
- package/dist/cli/commands/plan.d.ts.map +1 -1
- package/dist/cli/commands/plan.js +533 -83
- package/dist/cli/commands/plan.js.map +1 -1
- package/dist/cli/commands/review.d.ts +14 -0
- package/dist/cli/commands/review.d.ts.map +1 -0
- package/dist/cli/commands/review.js +1142 -0
- package/dist/cli/commands/review.js.map +1 -0
- package/dist/cli/commands/serve.d.ts +1 -0
- package/dist/cli/commands/serve.d.ts.map +1 -1
- package/dist/cli/commands/serve.js +33 -10
- package/dist/cli/commands/serve.js.map +1 -1
- package/dist/cli/commands/session/checkpoint.d.ts +2 -4
- package/dist/cli/commands/session/checkpoint.d.ts.map +1 -1
- package/dist/cli/commands/session/checkpoint.js +6 -107
- package/dist/cli/commands/session/checkpoint.js.map +1 -1
- package/dist/cli/commands/session/commands.d.ts.map +1 -1
- package/dist/cli/commands/session/commands.js +33 -23
- package/dist/cli/commands/session/commands.js.map +1 -1
- package/dist/cli/commands/session/compact.js +4 -4
- package/dist/cli/commands/session/compact.js.map +1 -1
- package/dist/cli/commands/session/create.js +2 -2
- package/dist/cli/commands/session/create.js.map +1 -1
- package/dist/cli/commands/session/format.d.ts.map +1 -1
- package/dist/cli/commands/session/format.js +1 -6
- package/dist/cli/commands/session/format.js.map +1 -1
- package/dist/cli/commands/session/log.d.ts +32 -7
- package/dist/cli/commands/session/log.d.ts.map +1 -1
- package/dist/cli/commands/session/log.js +166 -60
- package/dist/cli/commands/session/log.js.map +1 -1
- package/dist/cli/commands/session/migrate.d.ts +9 -0
- package/dist/cli/commands/session/migrate.d.ts.map +1 -0
- package/dist/cli/commands/session/migrate.js +46 -0
- package/dist/cli/commands/session/migrate.js.map +1 -0
- package/dist/cli/commands/session/stale-close.d.ts.map +1 -1
- package/dist/cli/commands/session/stale-close.js +5 -8
- package/dist/cli/commands/session/stale-close.js.map +1 -1
- package/dist/cli/commands/session/types.d.ts +1 -1
- package/dist/cli/commands/session/types.d.ts.map +1 -1
- package/dist/cli/commands/setup.d.ts +2 -2
- package/dist/cli/commands/setup.d.ts.map +1 -1
- package/dist/cli/commands/setup.js +287 -257
- package/dist/cli/commands/setup.js.map +1 -1
- package/dist/cli/commands/shadow.d.ts.map +1 -1
- package/dist/cli/commands/shadow.js +147 -31
- package/dist/cli/commands/shadow.js.map +1 -1
- package/dist/cli/commands/skill-crud.d.ts +7 -0
- package/dist/cli/commands/skill-crud.d.ts.map +1 -1
- package/dist/cli/commands/skill-crud.js +41 -18
- package/dist/cli/commands/skill-crud.js.map +1 -1
- package/dist/cli/commands/skill-diff.d.ts.map +1 -1
- package/dist/cli/commands/skill-diff.js +29 -3
- package/dist/cli/commands/skill-diff.js.map +1 -1
- package/dist/cli/commands/skill-install.d.ts.map +1 -1
- package/dist/cli/commands/skill-install.js +5 -4
- package/dist/cli/commands/skill-install.js.map +1 -1
- package/dist/cli/commands/task.d.ts.map +1 -1
- package/dist/cli/commands/task.js +359 -49
- package/dist/cli/commands/task.js.map +1 -1
- package/dist/cli/commands/trait.d.ts.map +1 -1
- package/dist/cli/commands/trait.js +5 -27
- package/dist/cli/commands/trait.js.map +1 -1
- package/dist/cli/commands/validate.d.ts.map +1 -1
- package/dist/cli/commands/validate.js +113 -52
- package/dist/cli/commands/validate.js.map +1 -1
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +69 -2
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/output.d.ts +26 -0
- package/dist/cli/output.d.ts.map +1 -1
- package/dist/cli/output.js +108 -1
- package/dist/cli/output.js.map +1 -1
- package/dist/cli/sync-mode.d.ts +44 -0
- package/dist/cli/sync-mode.d.ts.map +1 -0
- package/dist/cli/sync-mode.js +64 -0
- package/dist/cli/sync-mode.js.map +1 -0
- package/dist/daemon/middleware/project-context.ts +25 -7
- package/dist/daemon/project-context.ts +18 -0
- package/dist/daemon/routes/agent-dispatch.ts +99 -22
- package/dist/daemon/routes/aggregation.ts +184 -0
- package/dist/daemon/routes/inbox.ts +5 -0
- package/dist/daemon/routes/items.ts +145 -0
- package/dist/daemon/routes/meta.ts +1 -1
- package/dist/daemon/routes/projects.ts +28 -6
- package/dist/daemon/routes/ref-resolution.ts +119 -0
- package/dist/daemon/routes/refs.ts +42 -0
- package/dist/daemon/routes/session-related.ts +140 -0
- package/dist/daemon/routes/sessions.ts +420 -19
- package/dist/daemon/routes/tasks.ts +62 -5
- package/dist/daemon/routes/triage.ts +40 -1
- package/dist/daemon/server.ts +143 -49
- package/dist/daemon/session-sync.ts +11 -0
- package/dist/daemon/shadow-sync.ts +11 -0
- package/dist/daemon/watcher.ts +56 -5
- package/dist/daemon/websocket/project-resolution.ts +77 -0
- package/dist/export/json.d.ts.map +1 -1
- package/dist/export/json.js +104 -1
- package/dist/export/json.js.map +1 -1
- package/dist/export/types.d.ts +52 -1
- package/dist/export/types.d.ts.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/parser/agent-detection.d.ts +1 -1
- package/dist/parser/agent-detection.d.ts.map +1 -1
- package/dist/parser/agent-detection.js +10 -0
- package/dist/parser/agent-detection.js.map +1 -1
- package/dist/parser/config.d.ts +397 -2
- package/dist/parser/config.d.ts.map +1 -1
- package/dist/parser/config.js +125 -3
- package/dist/parser/config.js.map +1 -1
- package/dist/parser/dispatch-workspaces.d.ts +18 -0
- package/dist/parser/dispatch-workspaces.d.ts.map +1 -0
- package/dist/parser/dispatch-workspaces.js +209 -0
- package/dist/parser/dispatch-workspaces.js.map +1 -0
- package/dist/parser/doctor.d.ts.map +1 -1
- package/dist/parser/doctor.js +27 -8
- package/dist/parser/doctor.js.map +1 -1
- package/dist/parser/file-lock.d.ts.map +1 -1
- package/dist/parser/file-lock.js +9 -2
- package/dist/parser/file-lock.js.map +1 -1
- package/dist/parser/index.d.ts +6 -0
- package/dist/parser/index.d.ts.map +1 -1
- package/dist/parser/index.js +6 -0
- package/dist/parser/index.js.map +1 -1
- package/dist/parser/plans.d.ts.map +1 -1
- package/dist/parser/plans.js +1 -0
- package/dist/parser/plans.js.map +1 -1
- package/dist/parser/refs.d.ts +8 -1
- package/dist/parser/refs.d.ts.map +1 -1
- package/dist/parser/refs.js +27 -1
- package/dist/parser/refs.js.map +1 -1
- package/dist/parser/review-operations.d.ts +72 -0
- package/dist/parser/review-operations.d.ts.map +1 -0
- package/dist/parser/review-operations.js +185 -0
- package/dist/parser/review-operations.js.map +1 -0
- package/dist/parser/review-task-integration.d.ts +78 -0
- package/dist/parser/review-task-integration.d.ts.map +1 -0
- package/dist/parser/review-task-integration.js +173 -0
- package/dist/parser/review-task-integration.js.map +1 -0
- package/dist/parser/review-threads.d.ts +101 -0
- package/dist/parser/review-threads.d.ts.map +1 -0
- package/dist/parser/review-threads.js +222 -0
- package/dist/parser/review-threads.js.map +1 -0
- package/dist/parser/review-validation.d.ts +69 -0
- package/dist/parser/review-validation.d.ts.map +1 -0
- package/dist/parser/review-validation.js +207 -0
- package/dist/parser/review-validation.js.map +1 -0
- package/dist/parser/reviews.d.ts +58 -0
- package/dist/parser/reviews.d.ts.map +1 -0
- package/dist/parser/reviews.js +230 -0
- package/dist/parser/reviews.js.map +1 -0
- package/dist/parser/session-branch.d.ts +91 -0
- package/dist/parser/session-branch.d.ts.map +1 -0
- package/dist/parser/session-branch.js +565 -0
- package/dist/parser/session-branch.js.map +1 -0
- package/dist/parser/session-sync-scheduler.d.ts +53 -0
- package/dist/parser/session-sync-scheduler.d.ts.map +1 -0
- package/dist/parser/session-sync-scheduler.js +100 -0
- package/dist/parser/session-sync-scheduler.js.map +1 -0
- package/dist/parser/setup-status.d.ts +7 -1
- package/dist/parser/setup-status.d.ts.map +1 -1
- package/dist/parser/setup-status.js +104 -39
- package/dist/parser/setup-status.js.map +1 -1
- package/dist/parser/shadow-sync-scheduler.d.ts +71 -0
- package/dist/parser/shadow-sync-scheduler.d.ts.map +1 -0
- package/dist/parser/shadow-sync-scheduler.js +139 -0
- package/dist/parser/shadow-sync-scheduler.js.map +1 -0
- package/dist/parser/shadow.d.ts +121 -14
- package/dist/parser/shadow.d.ts.map +1 -1
- package/dist/parser/shadow.js +752 -27
- package/dist/parser/shadow.js.map +1 -1
- package/dist/parser/skill-render.d.ts +24 -0
- package/dist/parser/skill-render.d.ts.map +1 -1
- package/dist/parser/skill-render.js +98 -26
- package/dist/parser/skill-render.js.map +1 -1
- package/dist/parser/validate.d.ts +43 -3
- package/dist/parser/validate.d.ts.map +1 -1
- package/dist/parser/validate.js +204 -30
- package/dist/parser/validate.js.map +1 -1
- package/dist/parser/yaml.d.ts +47 -11
- package/dist/parser/yaml.d.ts.map +1 -1
- package/dist/parser/yaml.js +329 -149
- package/dist/parser/yaml.js.map +1 -1
- package/dist/review/checks.d.ts +97 -0
- package/dist/review/checks.d.ts.map +1 -0
- package/dist/review/checks.js +175 -0
- package/dist/review/checks.js.map +1 -0
- package/dist/review/index.d.ts +3 -0
- package/dist/review/index.d.ts.map +1 -0
- package/dist/review/index.js +3 -0
- package/dist/review/index.js.map +1 -0
- package/dist/review/subject-bindings.d.ts +83 -0
- package/dist/review/subject-bindings.d.ts.map +1 -0
- package/dist/review/subject-bindings.js +175 -0
- package/dist/review/subject-bindings.js.map +1 -0
- package/dist/schema/common.d.ts +26 -0
- package/dist/schema/common.d.ts.map +1 -1
- package/dist/schema/common.js +13 -0
- package/dist/schema/common.js.map +1 -1
- package/dist/schema/dispatch-workspace.d.ts +2643 -0
- package/dist/schema/dispatch-workspace.d.ts.map +1 -0
- package/dist/schema/dispatch-workspace.js +187 -0
- package/dist/schema/dispatch-workspace.js.map +1 -0
- package/dist/schema/inbox.d.ts +8 -8
- package/dist/schema/index.d.ts +2 -0
- package/dist/schema/index.d.ts.map +1 -1
- package/dist/schema/index.js +2 -0
- package/dist/schema/index.js.map +1 -1
- package/dist/schema/meta.d.ts +648 -116
- package/dist/schema/meta.d.ts.map +1 -1
- package/dist/schema/meta.js +27 -0
- package/dist/schema/meta.js.map +1 -1
- package/dist/schema/plan.d.ts +30 -19
- package/dist/schema/plan.d.ts.map +1 -1
- package/dist/schema/plan.js +3 -1
- package/dist/schema/plan.js.map +1 -1
- package/dist/schema/review-records.d.ts +2676 -0
- package/dist/schema/review-records.d.ts.map +1 -0
- package/dist/schema/review-records.js +232 -0
- package/dist/schema/review-records.js.map +1 -0
- package/dist/schema/spec.d.ts +32 -14
- package/dist/schema/spec.d.ts.map +1 -1
- package/dist/schema/spec.js +5 -0
- package/dist/schema/spec.js.map +1 -1
- package/dist/schema/task.d.ts +187 -29
- package/dist/schema/task.d.ts.map +1 -1
- package/dist/schema/task.js +12 -2
- package/dist/schema/task.js.map +1 -1
- package/dist/schema/triage.d.ts +22 -22
- package/dist/sessions/cache.d.ts +119 -0
- package/dist/sessions/cache.d.ts.map +1 -0
- package/dist/sessions/cache.js +284 -0
- package/dist/sessions/cache.js.map +1 -0
- package/dist/sessions/index.d.ts +1 -0
- package/dist/sessions/index.d.ts.map +1 -1
- package/dist/sessions/index.js +2 -0
- package/dist/sessions/index.js.map +1 -1
- package/dist/sessions/legacy.d.ts +77 -0
- package/dist/sessions/legacy.d.ts.map +1 -0
- package/dist/sessions/legacy.js +146 -0
- package/dist/sessions/legacy.js.map +1 -0
- package/dist/sessions/store.d.ts +103 -73
- package/dist/sessions/store.d.ts.map +1 -1
- package/dist/sessions/store.js +335 -186
- package/dist/sessions/store.js.map +1 -1
- package/dist/sessions/types.d.ts +44 -16
- package/dist/sessions/types.d.ts.map +1 -1
- package/dist/sessions/types.js +11 -2
- package/dist/sessions/types.js.map +1 -1
- package/dist/strings/errors.d.ts +32 -0
- package/dist/strings/errors.d.ts.map +1 -1
- package/dist/strings/errors.js +17 -0
- package/dist/strings/errors.js.map +1 -1
- package/dist/strings/labels.d.ts +1 -0
- package/dist/strings/labels.d.ts.map +1 -1
- package/dist/strings/labels.js +1 -0
- package/dist/strings/labels.js.map +1 -1
- package/dist/utils/activity.d.ts +101 -0
- package/dist/utils/activity.d.ts.map +1 -0
- package/dist/utils/activity.js +408 -0
- package/dist/utils/activity.js.map +1 -0
- package/dist/utils/git.d.ts +31 -0
- package/dist/utils/git.d.ts.map +1 -1
- package/dist/utils/git.js +87 -0
- package/dist/utils/git.js.map +1 -1
- package/dist/utils/index.d.ts +2 -0
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +1 -0
- package/dist/utils/index.js.map +1 -1
- package/dist/web-ui/_app/immutable/assets/0.tmlwn-Ih.css +1 -0
- package/dist/web-ui/_app/immutable/assets/9.BwwJybWx.css +1 -0
- package/dist/web-ui/_app/immutable/chunks/2KqE8gtn.js +1 -0
- package/dist/web-ui/_app/immutable/chunks/70-t_QvE.js +1 -0
- package/dist/web-ui/_app/immutable/chunks/AiWQj974.js +1 -0
- package/dist/web-ui/_app/immutable/chunks/{CPPfDSei.js → B25nWFyA.js} +4 -4
- package/dist/web-ui/_app/immutable/chunks/{DBYE9jOd.js → B2bcA_Q_.js} +1 -1
- package/dist/web-ui/_app/immutable/chunks/B5e5HYyB.js +1 -0
- package/dist/web-ui/_app/immutable/chunks/B7-5z6eA.js +1 -0
- package/dist/web-ui/_app/immutable/chunks/B7bGmhK0.js +1 -0
- package/dist/web-ui/_app/immutable/chunks/{DzO4hlg9.js → B8tYZKAE.js} +1 -1
- package/dist/web-ui/_app/immutable/chunks/{B5LJFxqa.js → BFGAyJjD.js} +1 -1
- package/dist/web-ui/_app/immutable/chunks/BG0850zf.js +1 -0
- package/dist/web-ui/_app/immutable/chunks/{DAMmvwn4.js → BG8eSzAd.js} +1 -1
- package/dist/web-ui/_app/immutable/chunks/BIMxXS8I.js +1 -0
- package/dist/web-ui/_app/immutable/chunks/BSzL1fpU.js +1 -0
- package/dist/web-ui/_app/immutable/chunks/BYtjHfeq.js +1 -0
- package/dist/web-ui/_app/immutable/chunks/{DxCk-KHc.js → Bp5pFYXL.js} +1 -1
- package/dist/web-ui/_app/immutable/chunks/{B8a0xDxR.js → BsJFsuAT.js} +1 -1
- package/dist/web-ui/_app/immutable/chunks/BvpNHcD6.js +1 -0
- package/dist/web-ui/_app/immutable/chunks/BypqA25-.js +1 -0
- package/dist/web-ui/_app/immutable/chunks/{BVA9Exy-.js → C0w6WDm5.js} +1 -1
- package/dist/web-ui/_app/immutable/chunks/C5_PAZ0y.js +1 -0
- package/dist/web-ui/_app/immutable/chunks/CDRO15Iv.js +1 -0
- package/dist/web-ui/_app/immutable/chunks/CF1CoqD5.js +1 -0
- package/dist/web-ui/_app/immutable/chunks/CS2sa4_m.js +1 -0
- package/dist/web-ui/_app/immutable/chunks/{BJ0JX3ea.js → CWUQwB9H.js} +1 -1
- package/dist/web-ui/_app/immutable/chunks/CY5FDdSU.js +1 -0
- package/dist/web-ui/_app/immutable/chunks/C_7MTDoj.js +1 -0
- package/dist/web-ui/_app/immutable/chunks/{D3vxvonu.js → CaAJD3dl.js} +1 -1
- package/dist/web-ui/_app/immutable/chunks/{BP352uRn.js → ChB5iyEL.js} +1 -1
- package/dist/web-ui/_app/immutable/chunks/{pE6cYWlS.js → ChQD-6N8.js} +1 -1
- package/dist/web-ui/_app/immutable/chunks/{Eo4gF7ih.js → CqbsoCwA.js} +1 -1
- package/dist/web-ui/_app/immutable/chunks/DCeJW50p.js +1 -0
- package/dist/web-ui/_app/immutable/chunks/{Cncwi6fQ.js → DJtZNgcs.js} +1 -1
- package/dist/web-ui/_app/immutable/chunks/DKIeaprD.js +1 -0
- package/dist/web-ui/_app/immutable/chunks/DLd2uVIA.js +1 -0
- package/dist/web-ui/_app/immutable/chunks/{DjcCz-PU.js → DW_subyT.js} +2 -2
- package/dist/web-ui/_app/immutable/chunks/DbU6lVn0.js +1 -0
- package/dist/web-ui/_app/immutable/chunks/Dc7ZCC5m.js +1 -0
- package/dist/web-ui/_app/immutable/chunks/Dd5umPsk.js +2 -0
- package/dist/web-ui/_app/immutable/chunks/{BysXJlZb.js → Dg_zDpDS.js} +1 -1
- package/dist/web-ui/_app/immutable/chunks/Dgqu8Yuc.js +1 -0
- package/dist/web-ui/_app/immutable/chunks/DmxsPZTB.js +1 -0
- package/dist/web-ui/_app/immutable/chunks/DphTaFUB.js +1 -0
- package/dist/web-ui/_app/immutable/chunks/DqK4iHp0.js +1 -0
- package/dist/web-ui/_app/immutable/chunks/{D9QNBZM2.js → DqT6OH_u.js} +2 -2
- package/dist/web-ui/_app/immutable/chunks/Ds9I9wQb.js +1 -0
- package/dist/web-ui/_app/immutable/chunks/Du5ng3u4.js +1 -0
- package/dist/web-ui/_app/immutable/chunks/DxJw79Wi.js +1 -0
- package/dist/web-ui/_app/immutable/chunks/GFTX8GgV.js +1 -0
- package/dist/web-ui/_app/immutable/chunks/{C076q4JN.js → HNjs76Zz.js} +1 -1
- package/dist/web-ui/_app/immutable/chunks/HVMjDi4_.js +1 -0
- package/dist/web-ui/_app/immutable/chunks/{BkOJ8DkV.js → P0A_fJvS.js} +1 -1
- package/dist/web-ui/_app/immutable/chunks/T3vGWjIL.js +1 -0
- package/dist/web-ui/_app/immutable/chunks/VTmrX9Qu.js +1 -0
- package/dist/web-ui/_app/immutable/chunks/{k_Qegko0.js → Xvwhx_F1.js} +1 -1
- package/dist/web-ui/_app/immutable/chunks/Yyz1XMQA.js +1 -0
- package/dist/web-ui/_app/immutable/chunks/{62JVKtnb.js → dh5HeqUr.js} +1 -1
- package/dist/web-ui/_app/immutable/chunks/fZMteyca.js +62 -0
- package/dist/web-ui/_app/immutable/chunks/{D82RulSH.js → gPrj-hqC.js} +1 -1
- package/dist/web-ui/_app/immutable/chunks/htcWMiYN.js +1 -0
- package/dist/web-ui/_app/immutable/chunks/{CwELQvbx.js → oTsvd9y4.js} +1 -1
- package/dist/web-ui/_app/immutable/chunks/qJfLUwU4.js +1 -0
- package/dist/web-ui/_app/immutable/chunks/xCtiO_JE.js +1 -0
- package/dist/web-ui/_app/immutable/chunks/{DvA-KON-.js → y4GeEH6k.js} +1 -1
- package/dist/web-ui/_app/immutable/entry/app.C4h_eOn6.js +2 -0
- package/dist/web-ui/_app/immutable/entry/start.CQFTf9ep.js +1 -0
- package/dist/web-ui/_app/immutable/nodes/0.Dh1xO970.js +1 -0
- package/dist/web-ui/_app/immutable/nodes/1.l75D3Opx.js +1 -0
- package/dist/web-ui/_app/immutable/nodes/10.DBidBPc-.js +1 -0
- package/dist/web-ui/_app/immutable/nodes/11.Ab0gUKWe.js +1 -0
- package/dist/web-ui/_app/immutable/nodes/12.CMsnoxfs.js +1 -0
- package/dist/web-ui/_app/immutable/nodes/13.D8YKuknB.js +1 -0
- package/dist/web-ui/_app/immutable/nodes/14.DZ0aan7y.js +1 -0
- package/dist/web-ui/_app/immutable/nodes/15.CUIKreDL.js +2 -0
- package/dist/web-ui/_app/immutable/nodes/16.BWc8--BO.js +1 -0
- package/dist/web-ui/_app/immutable/nodes/2.CDUonbuh.js +1 -0
- package/dist/web-ui/_app/immutable/nodes/3.Ctg3M00i.js +1 -0
- package/dist/web-ui/_app/immutable/nodes/4.Ci-JDwbA.js +2 -0
- package/dist/web-ui/_app/immutable/nodes/5.CTyEDAq0.js +1 -0
- package/dist/web-ui/_app/immutable/nodes/6.BTZZqsAb.js +1 -0
- package/dist/web-ui/_app/immutable/nodes/7.BI52g_Jo.js +137 -0
- package/dist/web-ui/_app/immutable/nodes/8.3hZPaB9x.js +1 -0
- package/dist/web-ui/_app/immutable/nodes/9.DS49kvwl.js +29 -0
- package/dist/web-ui/_app/version.json +1 -1
- package/dist/web-ui/favicon-192.png +0 -0
- package/dist/web-ui/favicon-32.png +0 -0
- package/dist/web-ui/favicon.ico +0 -0
- package/dist/web-ui/index.html +14 -14
- package/package.json +12 -6
- package/plugin/.claude-plugin/marketplace.json +1 -1
- package/plugin/.claude-plugin/plugin.json +1 -1
- package/plugin/plugins/kspec/skills/merge/SKILL.md +127 -0
- package/plugin/plugins/kspec/skills/plan/SKILL.md +55 -26
- package/plugin/plugins/kspec/skills/review/SKILL.md +350 -133
- package/plugin/plugins/kspec/skills/task-work/SKILL.md +96 -106
- package/templates/agents-sections/04-pr-workflow.md +15 -12
- package/templates/agents-sections/06-ralph-loop.md +15 -10
- package/templates/skills/manifest.yaml +25 -7
- package/templates/skills/merge/SKILL.md +120 -0
- package/templates/skills/plan/SKILL.md +55 -26
- package/templates/skills/review/SKILL.md +346 -130
- package/templates/skills/task-work/SKILL.md +93 -103
- package/dist/web-ui/_app/immutable/assets/0.BJaYkGW2.css +0 -1
- package/dist/web-ui/_app/immutable/assets/9.SzGLxi4x.css +0 -1
- package/dist/web-ui/_app/immutable/chunks/-lc0BifF.js +0 -1
- package/dist/web-ui/_app/immutable/chunks/8RBjHMN1.js +0 -1
- package/dist/web-ui/_app/immutable/chunks/B5wTVqxm.js +0 -1
- package/dist/web-ui/_app/immutable/chunks/B6VSmczZ.js +0 -1
- package/dist/web-ui/_app/immutable/chunks/BEOQc37C.js +0 -1
- package/dist/web-ui/_app/immutable/chunks/BHtYorjv.js +0 -1
- package/dist/web-ui/_app/immutable/chunks/BMuCqDX8.js +0 -1
- package/dist/web-ui/_app/immutable/chunks/BUZujXJ2.js +0 -1
- package/dist/web-ui/_app/immutable/chunks/BWET-efb.js +0 -1
- package/dist/web-ui/_app/immutable/chunks/BXkNecpt.js +0 -1
- package/dist/web-ui/_app/immutable/chunks/BYzrIfX8.js +0 -1
- package/dist/web-ui/_app/immutable/chunks/BpuwufMc.js +0 -1
- package/dist/web-ui/_app/immutable/chunks/BwMO4RrG.js +0 -1
- package/dist/web-ui/_app/immutable/chunks/C33JaVbg.js +0 -1
- package/dist/web-ui/_app/immutable/chunks/CGtqifKp.js +0 -1
- package/dist/web-ui/_app/immutable/chunks/CHDZZ7OG.js +0 -1
- package/dist/web-ui/_app/immutable/chunks/CUir3f4J.js +0 -60
- package/dist/web-ui/_app/immutable/chunks/CrCIbn0C.js +0 -1
- package/dist/web-ui/_app/immutable/chunks/D6TVmR9T.js +0 -1
- package/dist/web-ui/_app/immutable/chunks/D7LTux4W.js +0 -1
- package/dist/web-ui/_app/immutable/chunks/DAh4Wfku.js +0 -1
- package/dist/web-ui/_app/immutable/chunks/DAx07bEQ.js +0 -1
- package/dist/web-ui/_app/immutable/chunks/DOno4cA2.js +0 -1
- package/dist/web-ui/_app/immutable/chunks/DQA8NZIH.js +0 -2
- package/dist/web-ui/_app/immutable/chunks/DRfPm2bo.js +0 -1
- package/dist/web-ui/_app/immutable/chunks/DhQhksaB.js +0 -1
- package/dist/web-ui/_app/immutable/chunks/DjG7s6hm.js +0 -1
- package/dist/web-ui/_app/immutable/chunks/DkltRNvh.js +0 -1
- package/dist/web-ui/_app/immutable/chunks/DlaTnPKL.js +0 -1
- package/dist/web-ui/_app/immutable/chunks/ExCq5swK.js +0 -1
- package/dist/web-ui/_app/immutable/chunks/T3zZGv51.js +0 -1
- package/dist/web-ui/_app/immutable/chunks/XZumBYeP.js +0 -1
- package/dist/web-ui/_app/immutable/chunks/_ySfNjkF.js +0 -1
- package/dist/web-ui/_app/immutable/chunks/iEtR5cV6.js +0 -1
- package/dist/web-ui/_app/immutable/entry/app.Cgu6uKeS.js +0 -2
- package/dist/web-ui/_app/immutable/entry/start.9XifnLoB.js +0 -1
- package/dist/web-ui/_app/immutable/nodes/0.DISwcKSK.js +0 -1
- package/dist/web-ui/_app/immutable/nodes/1.Cx2Ufqp1.js +0 -1
- package/dist/web-ui/_app/immutable/nodes/10.C3z8ijXL.js +0 -1
- package/dist/web-ui/_app/immutable/nodes/11.DZdIjZmM.js +0 -1
- package/dist/web-ui/_app/immutable/nodes/12.FsIGfAOa.js +0 -1
- package/dist/web-ui/_app/immutable/nodes/13.DZoFwagf.js +0 -1
- package/dist/web-ui/_app/immutable/nodes/14.DaIzDKbQ.js +0 -1
- package/dist/web-ui/_app/immutable/nodes/15.BYyt4XWF.js +0 -2
- package/dist/web-ui/_app/immutable/nodes/16.CQkSqpOe.js +0 -1
- package/dist/web-ui/_app/immutable/nodes/2.Bkf_j2UJ.js +0 -1
- package/dist/web-ui/_app/immutable/nodes/3.kaMCurJG.js +0 -1
- package/dist/web-ui/_app/immutable/nodes/4.BSsFPTHG.js +0 -2
- package/dist/web-ui/_app/immutable/nodes/5.CpPlcCEZ.js +0 -1
- package/dist/web-ui/_app/immutable/nodes/6.BN4FqQmY.js +0 -1
- package/dist/web-ui/_app/immutable/nodes/7.9kBYIZik.js +0 -1
- package/dist/web-ui/_app/immutable/nodes/8.BuijtZ6B.js +0 -1
- package/dist/web-ui/_app/immutable/nodes/9.C-Weba8R.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skill-render.js","sourceRoot":"","sources":["../../src/parser/skill-render.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"skill-render.js","sourceRoot":"","sources":["../../src/parser/skill-render.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Provides schema validation, reference validation, and orphan detection.
|
|
5
5
|
*/
|
|
6
|
-
import { type RefValidationError, type RefValidationWarning } from "./refs.js";
|
|
6
|
+
import { ReferenceIndex, type RefValidationError, type RefValidationWarning } from "./refs.js";
|
|
7
7
|
import type { KspecContext, LoadedSpecItem } from "./yaml.js";
|
|
8
8
|
/**
|
|
9
9
|
* Schema validation error
|
|
@@ -26,7 +26,7 @@ export interface OrphanItem {
|
|
|
26
26
|
/**
|
|
27
27
|
* Completeness warning types
|
|
28
28
|
*/
|
|
29
|
-
export type CompletenessWarningType = "missing_acceptance_criteria" | "missing_description" | "status_inconsistency" | "missing_test_coverage" | "automation_eligible_no_spec" | "ac_schema_field_mismatch";
|
|
29
|
+
export type CompletenessWarningType = "missing_acceptance_criteria" | "missing_description" | "status_inconsistency" | "missing_test_coverage" | "automation_eligible_no_spec" | "ac_schema_field_mismatch" | "invalid_ac_annotation" | "inconsistent_review_linkage";
|
|
30
30
|
/**
|
|
31
31
|
* Trait cycle error
|
|
32
32
|
*/
|
|
@@ -94,14 +94,54 @@ export interface ValidateOptions {
|
|
|
94
94
|
*/
|
|
95
95
|
requireAcceptance?: boolean;
|
|
96
96
|
}
|
|
97
|
+
/**
|
|
98
|
+
* Parse all @ref groups from an AC annotation line.
|
|
99
|
+
* Handles single and multiple @ref groups separated by commas or spaces.
|
|
100
|
+
* Examples:
|
|
101
|
+
* "// AC: @spec-a ac-1" → [{specRef:"@spec-a", acIds:["ac-1"]}]
|
|
102
|
+
* "// AC: @spec-a ac-create, ac-update" → [{specRef:"@spec-a", acIds:["ac-create","ac-update"]}]
|
|
103
|
+
* "// AC: @spec-a ac-1, @spec-b ac-2" → [{specRef:"@spec-a", acIds:["ac-1"]}, {specRef:"@spec-b", acIds:["ac-2"]}]
|
|
104
|
+
* "// AC: @spec-a ac-1 — N/A: reason" → [{specRef:"@spec-a", acIds:["ac-1"]}]
|
|
105
|
+
*/
|
|
106
|
+
export declare function parseACAnnotationLine(lineText: string): {
|
|
107
|
+
specRef: string;
|
|
108
|
+
acIds: string[];
|
|
109
|
+
}[];
|
|
97
110
|
/**
|
|
98
111
|
* Scan test files for AC annotations to build coverage index.
|
|
99
112
|
* Scans:
|
|
100
113
|
* - tests/ (unit/integration tests, .test.ts/.test.js)
|
|
101
114
|
* - packages/web-ui/tests/e2e/ (E2E Playwright tests, .spec.ts/.spec.js)
|
|
102
|
-
* Returns a Set of covered ACs in format "@spec-ref ac-
|
|
115
|
+
* Returns a Set of covered ACs in format "@spec-ref ac-id"
|
|
103
116
|
*/
|
|
104
117
|
export declare function scanTestCoverage(rootDir: string): Promise<Set<string>>;
|
|
118
|
+
/**
|
|
119
|
+
* Structured AC annotation found in a test file.
|
|
120
|
+
*/
|
|
121
|
+
export interface ACAnnotation {
|
|
122
|
+
/** The @slug or @ULID reference */
|
|
123
|
+
specRef: string;
|
|
124
|
+
/** Specific AC ids like "ac-1", "ac-2", or empty if just the ref */
|
|
125
|
+
acIds: string[];
|
|
126
|
+
/** Source file where annotation was found */
|
|
127
|
+
file: string;
|
|
128
|
+
/** Line number in the source file (1-based) */
|
|
129
|
+
line: number;
|
|
130
|
+
}
|
|
131
|
+
/**
|
|
132
|
+
* Scan all test directories for structured AC annotations.
|
|
133
|
+
*/
|
|
134
|
+
export declare function scanACAnnotations(rootDir: string): Promise<ACAnnotation[]>;
|
|
135
|
+
/**
|
|
136
|
+
* Validate AC annotations in test files.
|
|
137
|
+
* Checks that:
|
|
138
|
+
* 1. @slug resolves to a real spec item or trait
|
|
139
|
+
* 2. ac-N exists on the resolved item's acceptance_criteria
|
|
140
|
+
* 3. blanket refs without ac-* ids do not count for items that define ACs
|
|
141
|
+
*
|
|
142
|
+
* Returns completeness warnings for invalid annotations.
|
|
143
|
+
*/
|
|
144
|
+
export declare function validateACAnnotations(annotations: ACAnnotation[], items: LoadedSpecItem[], index: ReferenceIndex): CompletenessWarning[];
|
|
105
145
|
/**
|
|
106
146
|
* Compute coverage status for acceptance criteria of a spec item.
|
|
107
147
|
* Shared utility used by both daemon API and JSON export.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../src/parser/validate.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../src/parser/validate.ts"],"names":[],"mappings":"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"}
|
package/dist/parser/validate.js
CHANGED
|
@@ -8,7 +8,10 @@ import * as path from "node:path";
|
|
|
8
8
|
import { AgentSchema, ConventionSchema, isSkill, ManifestSchema, MetaManifestSchema, ObservationSchema, SkillSchema, SpecItemSchema, TaskSchema, TasksFileSchema, UlidSchema, WorkflowSchema, } from "../schema/index.js";
|
|
9
9
|
import { findMetaManifest, getSkillContentPath, loadMetaContext } from "./meta.js";
|
|
10
10
|
import { loadPlans } from "./plans.js";
|
|
11
|
+
import { findReviewFiles, validateReviewsFile } from "./review-validation.js";
|
|
11
12
|
import { ReferenceIndex, shortestUniqueUlid, validateRefs, } from "./refs.js";
|
|
13
|
+
import { checkReviewLinkageConsistency } from "./review-task-integration.js";
|
|
14
|
+
import { loadReviewRecords } from "./reviews.js";
|
|
12
15
|
import { TraitIndex } from "./traits.js";
|
|
13
16
|
import { expandIncludePattern, extractItemsFromRaw, findTaskFiles, loadSpecFile, readYamlFile, } from "./yaml.js";
|
|
14
17
|
// ============================================================
|
|
@@ -535,6 +538,47 @@ async function findTestFilesRecursive(dir) {
|
|
|
535
538
|
}
|
|
536
539
|
return testFiles;
|
|
537
540
|
}
|
|
541
|
+
/** Prefix pattern that identifies an AC annotation line. */
|
|
542
|
+
const AC_LINE_PREFIX = /\/\/\s*AC:\s*/;
|
|
543
|
+
/**
|
|
544
|
+
* Parse all @ref groups from an AC annotation line.
|
|
545
|
+
* Handles single and multiple @ref groups separated by commas or spaces.
|
|
546
|
+
* Examples:
|
|
547
|
+
* "// AC: @spec-a ac-1" → [{specRef:"@spec-a", acIds:["ac-1"]}]
|
|
548
|
+
* "// AC: @spec-a ac-create, ac-update" → [{specRef:"@spec-a", acIds:["ac-create","ac-update"]}]
|
|
549
|
+
* "// AC: @spec-a ac-1, @spec-b ac-2" → [{specRef:"@spec-a", acIds:["ac-1"]}, {specRef:"@spec-b", acIds:["ac-2"]}]
|
|
550
|
+
* "// AC: @spec-a ac-1 — N/A: reason" → [{specRef:"@spec-a", acIds:["ac-1"]}]
|
|
551
|
+
*/
|
|
552
|
+
export function parseACAnnotationLine(lineText) {
|
|
553
|
+
const prefixMatch = AC_LINE_PREFIX.exec(lineText);
|
|
554
|
+
if (!prefixMatch)
|
|
555
|
+
return [];
|
|
556
|
+
// Get everything after "// AC: "
|
|
557
|
+
let remainder = lineText.slice(prefixMatch.index + prefixMatch[0].length);
|
|
558
|
+
// Strip N/A suffix: " — N/A: ..." or " -- N/A: ..."
|
|
559
|
+
remainder = remainder.replace(/\s*[—–-]{1,3}\s*N\/A\b.*$/, "");
|
|
560
|
+
// Strip parenthetical comments: " (some comment)"
|
|
561
|
+
remainder = remainder.replace(/\s*\(.*$/, "");
|
|
562
|
+
const groups = [];
|
|
563
|
+
// Match each @ref followed by its optional ac-N ids
|
|
564
|
+
// This regex captures @ref and then all ac-N tokens until the next @ref or end
|
|
565
|
+
const refGroupPattern = /(@[\w-]+)((?:\s*,?\s*ac-[\w-]+)*)/g;
|
|
566
|
+
let match;
|
|
567
|
+
while ((match = refGroupPattern.exec(remainder)) !== null) {
|
|
568
|
+
const specRef = match[1];
|
|
569
|
+
const acPart = match[2].trim();
|
|
570
|
+
const acIds = [];
|
|
571
|
+
if (acPart) {
|
|
572
|
+
// Extract individual ac-N tokens
|
|
573
|
+
const acMatches = acPart.match(/ac-[\w-]+/g);
|
|
574
|
+
if (acMatches) {
|
|
575
|
+
acIds.push(...acMatches);
|
|
576
|
+
}
|
|
577
|
+
}
|
|
578
|
+
groups.push({ specRef, acIds });
|
|
579
|
+
}
|
|
580
|
+
return groups;
|
|
581
|
+
}
|
|
538
582
|
/**
|
|
539
583
|
* Scan a directory of test files for AC annotations and add to the coverage set.
|
|
540
584
|
*/
|
|
@@ -549,25 +593,16 @@ async function scanDirForACAnnotations(dir, coveredACs) {
|
|
|
549
593
|
const testFiles = await findTestFilesRecursive(dir);
|
|
550
594
|
for (const filePath of testFiles) {
|
|
551
595
|
const content = await fs.readFile(filePath, "utf-8");
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
const specRef
|
|
558
|
-
|
|
559
|
-
if (acList) {
|
|
560
|
-
// Split by comma and trim
|
|
561
|
-
const acs = acList.split(",").map((ac) => ac.trim());
|
|
562
|
-
for (const ac of acs) {
|
|
596
|
+
const lines = content.split("\n");
|
|
597
|
+
for (const lineText of lines) {
|
|
598
|
+
if (!AC_LINE_PREFIX.test(lineText))
|
|
599
|
+
continue;
|
|
600
|
+
const groups = parseACAnnotationLine(lineText);
|
|
601
|
+
for (const { specRef, acIds } of groups) {
|
|
602
|
+
for (const ac of acIds) {
|
|
563
603
|
coveredACs.add(`${specRef} ${ac}`);
|
|
564
604
|
}
|
|
565
605
|
}
|
|
566
|
-
else {
|
|
567
|
-
// No specific AC mentioned, just the spec ref
|
|
568
|
-
// We'll consider this as generic coverage
|
|
569
|
-
coveredACs.add(specRef);
|
|
570
|
-
}
|
|
571
606
|
}
|
|
572
607
|
}
|
|
573
608
|
}
|
|
@@ -576,7 +611,7 @@ async function scanDirForACAnnotations(dir, coveredACs) {
|
|
|
576
611
|
* Scans:
|
|
577
612
|
* - tests/ (unit/integration tests, .test.ts/.test.js)
|
|
578
613
|
* - packages/web-ui/tests/e2e/ (E2E Playwright tests, .spec.ts/.spec.js)
|
|
579
|
-
* Returns a Set of covered ACs in format "@spec-ref ac-
|
|
614
|
+
* Returns a Set of covered ACs in format "@spec-ref ac-id"
|
|
580
615
|
*/
|
|
581
616
|
export async function scanTestCoverage(rootDir) {
|
|
582
617
|
const coveredACs = new Set();
|
|
@@ -586,6 +621,117 @@ export async function scanTestCoverage(rootDir) {
|
|
|
586
621
|
await scanDirForACAnnotations(path.join(rootDir, "packages", "web-ui", "tests", "e2e"), coveredACs);
|
|
587
622
|
return coveredACs;
|
|
588
623
|
}
|
|
624
|
+
/**
|
|
625
|
+
* Scan a directory for structured AC annotation data.
|
|
626
|
+
* Unlike scanDirForACAnnotations which only returns a Set<string>,
|
|
627
|
+
* this returns full annotation details including file and line number.
|
|
628
|
+
*/
|
|
629
|
+
async function scanDirForACAnnotationsStructured(dir, annotations) {
|
|
630
|
+
try {
|
|
631
|
+
await fs.access(dir);
|
|
632
|
+
}
|
|
633
|
+
catch {
|
|
634
|
+
return;
|
|
635
|
+
}
|
|
636
|
+
const testFiles = await findTestFilesRecursive(dir);
|
|
637
|
+
for (const filePath of testFiles) {
|
|
638
|
+
const content = await fs.readFile(filePath, "utf-8");
|
|
639
|
+
const lines = content.split("\n");
|
|
640
|
+
for (let i = 0; i < lines.length; i++) {
|
|
641
|
+
const lineText = lines[i];
|
|
642
|
+
if (!AC_LINE_PREFIX.test(lineText))
|
|
643
|
+
continue;
|
|
644
|
+
const groups = parseACAnnotationLine(lineText);
|
|
645
|
+
for (const { specRef, acIds } of groups) {
|
|
646
|
+
annotations.push({
|
|
647
|
+
specRef,
|
|
648
|
+
acIds,
|
|
649
|
+
file: filePath,
|
|
650
|
+
line: i + 1,
|
|
651
|
+
});
|
|
652
|
+
}
|
|
653
|
+
}
|
|
654
|
+
}
|
|
655
|
+
}
|
|
656
|
+
/**
|
|
657
|
+
* Scan all test directories for structured AC annotations.
|
|
658
|
+
*/
|
|
659
|
+
export async function scanACAnnotations(rootDir) {
|
|
660
|
+
const annotations = [];
|
|
661
|
+
await scanDirForACAnnotationsStructured(path.join(rootDir, "tests"), annotations);
|
|
662
|
+
await scanDirForACAnnotationsStructured(path.join(rootDir, "packages", "web-ui", "tests", "e2e"), annotations);
|
|
663
|
+
return annotations;
|
|
664
|
+
}
|
|
665
|
+
/**
|
|
666
|
+
* Validate AC annotations in test files.
|
|
667
|
+
* Checks that:
|
|
668
|
+
* 1. @slug resolves to a real spec item or trait
|
|
669
|
+
* 2. ac-N exists on the resolved item's acceptance_criteria
|
|
670
|
+
* 3. blanket refs without ac-* ids do not count for items that define ACs
|
|
671
|
+
*
|
|
672
|
+
* Returns completeness warnings for invalid annotations.
|
|
673
|
+
*/
|
|
674
|
+
export function validateACAnnotations(annotations, items, index) {
|
|
675
|
+
const warnings = [];
|
|
676
|
+
for (const annotation of annotations) {
|
|
677
|
+
const { specRef, acIds, file, line } = annotation;
|
|
678
|
+
const relFile = path.basename(file);
|
|
679
|
+
// Check if the reference resolves
|
|
680
|
+
const result = index.resolve(specRef);
|
|
681
|
+
if (!result.ok) {
|
|
682
|
+
warnings.push({
|
|
683
|
+
type: "invalid_ac_annotation",
|
|
684
|
+
itemRef: specRef,
|
|
685
|
+
itemTitle: `${relFile}:${line}`,
|
|
686
|
+
message: `AC annotation references '${specRef}' which cannot be resolved`,
|
|
687
|
+
details: `${file}:${line}`,
|
|
688
|
+
});
|
|
689
|
+
continue;
|
|
690
|
+
}
|
|
691
|
+
// Find the resolved item in our loaded spec items
|
|
692
|
+
const item = items.find((i) => i._ulid === result.ulid);
|
|
693
|
+
if (!item) {
|
|
694
|
+
// Resolved to a non-spec item (task, plan, meta) — AC annotations must target spec items or traits
|
|
695
|
+
warnings.push({
|
|
696
|
+
type: "invalid_ac_annotation",
|
|
697
|
+
itemRef: specRef,
|
|
698
|
+
itemTitle: `${relFile}:${line}`,
|
|
699
|
+
message: `AC annotation references '${specRef}' which resolves but is not a spec item or trait`,
|
|
700
|
+
details: `${file}:${line}`,
|
|
701
|
+
});
|
|
702
|
+
continue;
|
|
703
|
+
}
|
|
704
|
+
if (acIds.length === 0) {
|
|
705
|
+
const hasAcceptanceCriteria = (item.acceptance_criteria?.length ?? 0) > 0;
|
|
706
|
+
if (hasAcceptanceCriteria) {
|
|
707
|
+
warnings.push({
|
|
708
|
+
type: "invalid_ac_annotation",
|
|
709
|
+
itemRef: specRef,
|
|
710
|
+
itemTitle: `${relFile}:${line}`,
|
|
711
|
+
message: `AC annotation references '${specRef}' without explicit ac-* ids; blanket refs do not count for completeness coverage`,
|
|
712
|
+
details: `${file}:${line}`,
|
|
713
|
+
});
|
|
714
|
+
}
|
|
715
|
+
continue;
|
|
716
|
+
}
|
|
717
|
+
const existingACs = new Set((item.acceptance_criteria || []).map((ac) => ac.id));
|
|
718
|
+
for (const acId of acIds) {
|
|
719
|
+
if (!existingACs.has(acId)) {
|
|
720
|
+
const itemRef = item.slugs?.[0]
|
|
721
|
+
? `@${item.slugs[0]}`
|
|
722
|
+
: `@${index.shortUlid(item._ulid)}`;
|
|
723
|
+
warnings.push({
|
|
724
|
+
type: "invalid_ac_annotation",
|
|
725
|
+
itemRef,
|
|
726
|
+
itemTitle: `${relFile}:${line}`,
|
|
727
|
+
message: `AC annotation references '${specRef} ${acId}' but ${itemRef} has no acceptance criterion '${acId}'`,
|
|
728
|
+
details: `${file}:${line}`,
|
|
729
|
+
});
|
|
730
|
+
}
|
|
731
|
+
}
|
|
732
|
+
}
|
|
733
|
+
return warnings;
|
|
734
|
+
}
|
|
589
735
|
/**
|
|
590
736
|
* Compute coverage status for acceptance criteria of a spec item.
|
|
591
737
|
* Shared utility used by both daemon API and JSON export.
|
|
@@ -598,19 +744,16 @@ export function computeACCoverage(item, coveredACs) {
|
|
|
598
744
|
if (!item.acceptance_criteria || item.acceptance_criteria.length === 0) {
|
|
599
745
|
return [];
|
|
600
746
|
}
|
|
601
|
-
return item.acceptance_criteria.map((ac
|
|
602
|
-
const acId = `ac-${index + 1}`;
|
|
747
|
+
return item.acceptance_criteria.map((ac) => {
|
|
603
748
|
const possibleRefs = [];
|
|
604
749
|
// Try with primary slug
|
|
605
750
|
if (item.slugs && item.slugs.length > 0) {
|
|
606
|
-
possibleRefs.push(`@${item.slugs[0]} ${
|
|
607
|
-
possibleRefs.push(`@${item.slugs[0]}`);
|
|
751
|
+
possibleRefs.push(`@${item.slugs[0]} ${ac.id}`);
|
|
608
752
|
}
|
|
609
753
|
// Try all ULID prefix lengths (8..full) to support shortest-unique refs
|
|
610
754
|
for (let prefixLength = 8; prefixLength <= item._ulid.length; prefixLength++) {
|
|
611
755
|
const prefix = item._ulid.slice(0, prefixLength);
|
|
612
|
-
possibleRefs.push(`@${prefix} ${
|
|
613
|
-
possibleRefs.push(`@${prefix}`);
|
|
756
|
+
possibleRefs.push(`@${prefix} ${ac.id}`);
|
|
614
757
|
}
|
|
615
758
|
const covered = possibleRefs.some((ref) => coveredACs.has(ref));
|
|
616
759
|
return { ...ac, covered };
|
|
@@ -619,6 +762,7 @@ export function computeACCoverage(item, coveredACs) {
|
|
|
619
762
|
/**
|
|
620
763
|
* Check spec items for completeness
|
|
621
764
|
* AC: @spec-completeness ac-1, ac-2, ac-3
|
|
765
|
+
* AC: @spec-completeness-policy ac-module-exempt, ac-feature-required, ac-description-required, ac-decision-required
|
|
622
766
|
* AC: @trait-validation ac-1, ac-2, ac-3
|
|
623
767
|
*/
|
|
624
768
|
async function checkCompleteness(items, index, rootDir, traitIndex) {
|
|
@@ -630,10 +774,14 @@ async function checkCompleteness(items, index, rootDir, traitIndex) {
|
|
|
630
774
|
? `@${item.slugs[0]}`
|
|
631
775
|
: `@${index.shortUlid(item._ulid)}`;
|
|
632
776
|
const isTrait = item.type === "trait";
|
|
777
|
+
const isModule = item.type === "module";
|
|
633
778
|
// AC: @spec-completeness ac-1
|
|
779
|
+
// AC: @spec-completeness-policy ac-module-exempt
|
|
780
|
+
// AC: @spec-completeness-policy ac-feature-required
|
|
781
|
+
// AC: @spec-completeness-policy ac-decision-required
|
|
634
782
|
// AC: @trait-type ac-2 - Traits should have acceptance criteria for completeness
|
|
635
783
|
// Check for missing acceptance criteria
|
|
636
|
-
if (!item.acceptance_criteria || item.acceptance_criteria.length === 0) {
|
|
784
|
+
if (!isModule && (!item.acceptance_criteria || item.acceptance_criteria.length === 0)) {
|
|
637
785
|
warnings.push({
|
|
638
786
|
type: "missing_acceptance_criteria",
|
|
639
787
|
itemRef,
|
|
@@ -642,9 +790,10 @@ async function checkCompleteness(items, index, rootDir, traitIndex) {
|
|
|
642
790
|
});
|
|
643
791
|
}
|
|
644
792
|
// AC: @spec-completeness ac-2
|
|
793
|
+
// AC: @spec-completeness-policy ac-description-required
|
|
645
794
|
// AC: @trait-type ac-3 - Traits should have description for completeness
|
|
646
795
|
// Check for missing description
|
|
647
|
-
if (!item.description || item.description.trim() === "") {
|
|
796
|
+
if (!isModule && (!item.description || item.description.trim() === "")) {
|
|
648
797
|
warnings.push({
|
|
649
798
|
type: "missing_description",
|
|
650
799
|
itemRef,
|
|
@@ -696,14 +845,11 @@ async function checkCompleteness(items, index, rootDir, traitIndex) {
|
|
|
696
845
|
// Try with primary slug
|
|
697
846
|
if (item.slugs && item.slugs.length > 0) {
|
|
698
847
|
possibleRefs.push(`@${item.slugs[0]} ${ac.id}`);
|
|
699
|
-
// Also check for just the slug without specific AC
|
|
700
|
-
possibleRefs.push(`@${item.slugs[0]}`);
|
|
701
848
|
}
|
|
702
849
|
// Try all ULID prefix lengths (8..full) to support shortest-unique refs
|
|
703
850
|
for (let prefixLength = 8; prefixLength <= item._ulid.length; prefixLength++) {
|
|
704
851
|
const prefix = item._ulid.slice(0, prefixLength);
|
|
705
852
|
possibleRefs.push(`@${prefix} ${ac.id}`);
|
|
706
|
-
possibleRefs.push(`@${prefix}`);
|
|
707
853
|
}
|
|
708
854
|
// Check if any of these references are covered
|
|
709
855
|
const isCovered = possibleRefs.some((ref) => coveredACs.has(ref));
|
|
@@ -733,12 +879,10 @@ async function checkCompleteness(items, index, rootDir, traitIndex) {
|
|
|
733
879
|
const possibleRefs = [];
|
|
734
880
|
// Try with trait slug
|
|
735
881
|
possibleRefs.push(`@${trait.slug} ${ac.id}`);
|
|
736
|
-
possibleRefs.push(`@${trait.slug}`);
|
|
737
882
|
// Try all trait ULID prefix lengths (8..full) to support shortest-unique refs
|
|
738
883
|
for (let prefixLength = 8; prefixLength <= trait.ulid.length; prefixLength++) {
|
|
739
884
|
const prefix = trait.ulid.slice(0, prefixLength);
|
|
740
885
|
possibleRefs.push(`@${prefix} ${ac.id}`);
|
|
741
|
-
possibleRefs.push(`@${prefix}`);
|
|
742
886
|
}
|
|
743
887
|
// Check if any of these references are covered
|
|
744
888
|
const isCovered = possibleRefs.some((ref) => coveredACs.has(ref));
|
|
@@ -981,7 +1125,11 @@ async function validateSkillContentFiles(ctx, skills) {
|
|
|
981
1125
|
*/
|
|
982
1126
|
function checkAutomationEligibility(tasks, index) {
|
|
983
1127
|
const warnings = [];
|
|
1128
|
+
const terminalStatuses = new Set(["completed", "cancelled"]);
|
|
984
1129
|
for (const task of tasks) {
|
|
1130
|
+
// AC: @task-automation-eligibility ac-21 — skip terminal statuses
|
|
1131
|
+
if (terminalStatuses.has(task.status))
|
|
1132
|
+
continue;
|
|
985
1133
|
const taskRef = task.slugs?.[0]
|
|
986
1134
|
? `@${task.slugs[0]}`
|
|
987
1135
|
: `@${index.shortUlid(task._ulid)}`;
|
|
@@ -1159,6 +1307,16 @@ export async function validate(ctx, options = {}) {
|
|
|
1159
1307
|
// Already reported in schema validation
|
|
1160
1308
|
}
|
|
1161
1309
|
}
|
|
1310
|
+
// Validate review files
|
|
1311
|
+
// AC: @review-record-validation ac-1, ac-2
|
|
1312
|
+
if (runSchema) {
|
|
1313
|
+
const reviewFiles = await findReviewFiles(ctx.specDir);
|
|
1314
|
+
for (const reviewFile of reviewFiles) {
|
|
1315
|
+
const reviewErrors = await validateReviewsFile(reviewFile);
|
|
1316
|
+
result.schemaErrors.push(...reviewErrors);
|
|
1317
|
+
result.stats.filesChecked++;
|
|
1318
|
+
}
|
|
1319
|
+
}
|
|
1162
1320
|
// Validate spec files (from includes)
|
|
1163
1321
|
if (ctx.manifest && ctx.manifestPath) {
|
|
1164
1322
|
const manifestDir = path.dirname(ctx.manifestPath);
|
|
@@ -1252,6 +1410,22 @@ export async function validate(ctx, options = {}) {
|
|
|
1252
1410
|
// Check automation eligibility warnings for tasks
|
|
1253
1411
|
const automationWarnings = checkAutomationEligibility(allTasks, index);
|
|
1254
1412
|
completenessWarnings.push(...automationWarnings);
|
|
1413
|
+
// AC: @review-task-lifecycle-integration ac-5
|
|
1414
|
+
// Check review linkage consistency for pending_review tasks
|
|
1415
|
+
const reviews = await loadReviewRecords(ctx);
|
|
1416
|
+
const linkageWarnings = checkReviewLinkageConsistency(allTasks, reviews);
|
|
1417
|
+
for (const lw of linkageWarnings) {
|
|
1418
|
+
completenessWarnings.push({
|
|
1419
|
+
type: "inconsistent_review_linkage",
|
|
1420
|
+
itemRef: lw.taskRef,
|
|
1421
|
+
itemTitle: lw.taskTitle,
|
|
1422
|
+
message: lw.message,
|
|
1423
|
+
});
|
|
1424
|
+
}
|
|
1425
|
+
// Validate AC annotations in test files
|
|
1426
|
+
const annotations = await scanACAnnotations(ctx.rootDir);
|
|
1427
|
+
const annotationWarnings = validateACAnnotations(annotations, allItems, index);
|
|
1428
|
+
completenessWarnings.push(...annotationWarnings);
|
|
1255
1429
|
// AC: @config-validation ac-1 — require_acceptance promotes missing AC to errors
|
|
1256
1430
|
if (options.requireAcceptance) {
|
|
1257
1431
|
const missingAC = completenessWarnings.filter((w) => w.type === "missing_acceptance_criteria");
|