@lvlup-sw/exarchos 2.0.6 → 2.0.7

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 (30) hide show
  1. package/.claude-plugin/marketplace.json +2 -2
  2. package/.claude-plugin/plugin.json +1 -2
  3. package/dist/exarchos-cli.js +559 -4131
  4. package/dist/exarchos-mcp.js +35 -37
  5. package/dist/node_modules/better-sqlite3/build/Release/better_sqlite3.node +0 -0
  6. package/dist/node_modules/better-sqlite3/lib/database.js +90 -0
  7. package/dist/node_modules/better-sqlite3/lib/index.js +3 -0
  8. package/dist/node_modules/better-sqlite3/lib/methods/aggregate.js +43 -0
  9. package/dist/node_modules/better-sqlite3/lib/methods/backup.js +67 -0
  10. package/dist/node_modules/better-sqlite3/lib/methods/function.js +31 -0
  11. package/dist/node_modules/better-sqlite3/lib/methods/inspect.js +7 -0
  12. package/dist/node_modules/better-sqlite3/lib/methods/pragma.js +12 -0
  13. package/dist/node_modules/better-sqlite3/lib/methods/serialize.js +16 -0
  14. package/dist/node_modules/better-sqlite3/lib/methods/table.js +189 -0
  15. package/dist/node_modules/better-sqlite3/lib/methods/transaction.js +78 -0
  16. package/dist/node_modules/better-sqlite3/lib/methods/wrappers.js +54 -0
  17. package/dist/node_modules/better-sqlite3/lib/sqlite-error.js +20 -0
  18. package/dist/node_modules/better-sqlite3/lib/util.js +12 -0
  19. package/dist/node_modules/better-sqlite3/package.json +59 -0
  20. package/dist/node_modules/bindings/bindings.js +221 -0
  21. package/dist/node_modules/bindings/package.json +28 -0
  22. package/dist/node_modules/file-uri-to-path/index.js +66 -0
  23. package/dist/node_modules/file-uri-to-path/package.json +32 -0
  24. package/package.json +2 -2
  25. package/scripts/build-mcp.ts +56 -0
  26. package/scripts/verify-plan-coverage.sh +123 -11
  27. package/skills/delegation/SKILL.md +26 -0
  28. package/skills/dotnet-standards/templates/Directory.Packages.props +1 -1
  29. package/skills/shepherd/SKILL.md +30 -2
  30. package/skills/synthesis/SKILL.md +45 -0
@@ -71,6 +71,30 @@ Use `@skills/delegation/references/implementer-prompt.md` as template for Task t
71
71
  5. Dispatch parallel subagents via Task tool
72
72
  6. Monitor progress via TaskOutput
73
73
  7. Collect and verify — `scripts/post-delegation-check.sh`
74
+
75
+ ### Gate Event Emission
76
+
77
+ After post-delegation verification, emit gate results for each check:
78
+
79
+ ```
80
+ mcp__plugin_exarchos_exarchos__exarchos_event({
81
+ action: "append",
82
+ streamId: "<featureId>",
83
+ event: {
84
+ type: "gate.executed",
85
+ data: {
86
+ gateName: "post-delegation-check",
87
+ layer: "CI",
88
+ passed: <true|false>,
89
+ details: {
90
+ skill: "delegation",
91
+ commit: "<worktree-head-sha>"
92
+ }
93
+ }
94
+ }
95
+ })
96
+ ```
97
+
74
98
  8. Schema sync if API files modified
75
99
 
76
100
  For detailed step instructions, see `references/workflow-steps.md`.
@@ -181,4 +205,6 @@ See `references/troubleshooting.md` for MCP tool failures, state desync, worktre
181
205
 
182
206
  **Agent-team mode:** Follow the 6-step saga. Do NOT mix with subagent-mode patterns — the TeammateIdle hook handles completion. See `references/agent-teams-saga.md`.
183
207
 
208
+ **Gate events:** After post-delegation checks, emit `gate.executed` events for each verification result. These feed the CodeQualityView for quality tracking and regression detection.
209
+
184
210
  **Claim guard** (subagent only): Use `exarchos_orchestrate task_claim` for optimistic concurrency. On `ALREADY_CLAIMED`, skip and check status before re-dispatching.
@@ -22,7 +22,7 @@
22
22
  <!-- ===================================================================== -->
23
23
  <PackageVersion Include="TUnit" Version="0.15.0" />
24
24
  <PackageVersion Include="NSubstitute" Version="5.3.0" />
25
- <PackageVersion Include="coverlet.collector" Version="6.0.4" />
25
+ <PackageVersion Include="coverlet.collector" Version="8.0.0" />
26
26
 
27
27
  <!-- ===================================================================== -->
28
28
  <!-- Microsoft Extensions -->
@@ -90,6 +90,33 @@ For each comment thread, check if it has been **replied to** (has child comments
90
90
  - **PR #123** — Graphite: `resolveEvalsDir` should use injected config (eval-run.ts:14)
91
91
  ```
92
92
 
93
+ ### Gate Event Emission
94
+
95
+ After checking CI status for each PR, emit `gate.executed` events to the event store for quality tracking:
96
+
97
+ For each CI check result observed:
98
+ ```
99
+ mcp__plugin_exarchos_exarchos__exarchos_event({
100
+ action: "append",
101
+ streamId: "<featureId>",
102
+ event: {
103
+ type: "gate.executed",
104
+ data: {
105
+ gateName: "<check-name>",
106
+ layer: "CI",
107
+ passed: <true|false>,
108
+ duration: <duration-ms-if-available>,
109
+ details: {
110
+ skill: "shepherd",
111
+ commit: "<head-sha>"
112
+ }
113
+ }
114
+ }
115
+ })
116
+ ```
117
+
118
+ This feeds the CodeQualityView, which tracks gate pass rates and detects quality regressions.
119
+
93
120
  ### 2. Evaluate
94
121
 
95
122
  If ALL dimensions pass for ALL PRs → skip to step 5 (Request Approval).
@@ -295,8 +322,9 @@ When Exarchos MCP tools are available:
295
322
 
296
323
  1. **On shepherd start:** `mcp__plugin_exarchos_exarchos__exarchos_event` with `action: "append"` — event type `shepherd.started` with PR URLs and iteration count
297
324
  2. **On each iteration:** `mcp__plugin_exarchos_exarchos__exarchos_event` with `action: "append"` — event type `shepherd.iteration` with assessment results and actions taken
298
- 3. **On approval request:** `mcp__plugin_exarchos_exarchos__exarchos_event` with `action: "append"` — event type `shepherd.approval_requested` with approver list
299
- 4. **On completion:** `mcp__plugin_exarchos_exarchos__exarchos_event` with `action: "append"` — event type `shepherd.completed` with total iterations and final status
325
+ 3. **On CI check observed:** `mcp__plugin_exarchos_exarchos__exarchos_event` with `action: "append"` — event type `gate.executed` with check name, pass/fail, and duration (feeds CodeQualityView)
326
+ 4. **On approval request:** `mcp__plugin_exarchos_exarchos__exarchos_event` with `action: "append"` — event type `shepherd.approval_requested` with approver list
327
+ 5. **On completion:** `mcp__plugin_exarchos_exarchos__exarchos_event` with `action: "append"` — event type `shepherd.completed` with total iterations and final status
300
328
 
301
329
  ## Troubleshooting
302
330
 
@@ -43,6 +43,51 @@ Since delegation creates Graphite stack branches and review validates them, synt
43
43
  2. **REQUIRED: Verify/reconstruct Graphite stack** -- Run `scripts/reconstruct-stack.sh` before PR creation. If exit 1: stop and report error.
44
44
  3. **Quick test verification** -- `npm run test:run && npm run typecheck`
45
45
  4. **Check CodeRabbit reviews** -- `scripts/check-coderabbit.sh`
46
+
47
+ ### Gate Event Emission
48
+
49
+ After build/test verification, emit gate results for quality tracking:
50
+
51
+ ```
52
+ mcp__plugin_exarchos_exarchos__exarchos_event({
53
+ action: "append",
54
+ streamId: "<featureId>",
55
+ event: {
56
+ type: "gate.executed",
57
+ data: {
58
+ gateName: "pre-synthesis-tests",
59
+ layer: "CI",
60
+ passed: <true|false>,
61
+ duration: <test-duration-ms>,
62
+ details: {
63
+ skill: "synthesis",
64
+ commit: "<current-sha>"
65
+ }
66
+ }
67
+ }
68
+ })
69
+ ```
70
+
71
+ Also emit for CodeRabbit review gate:
72
+ ```
73
+ mcp__plugin_exarchos_exarchos__exarchos_event({
74
+ action: "append",
75
+ streamId: "<featureId>",
76
+ event: {
77
+ type: "gate.executed",
78
+ data: {
79
+ gateName: "coderabbit-review",
80
+ layer: "CI",
81
+ passed: <true|false>,
82
+ details: {
83
+ skill: "synthesis",
84
+ commit: "<current-sha>"
85
+ }
86
+ }
87
+ }
88
+ })
89
+ ```
90
+
46
91
  5. **Write PR descriptions** -- Follow `references/pr-descriptions.md` for title format and body structure
47
92
  6. **Submit to merge queue** -- `gt submit --no-interactive --publish --merge-when-ready`
48
93
  7. **Apply benchmark label** -- If `verification.hasBenchmarks` is `true` in workflow state, apply label to each PR: `gh pr edit <number> --add-label has-benchmarks`