@webpresso/agent-kit 3.3.1 → 3.3.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 (87) hide show
  1. package/catalog/AGENTS.md.tpl +3 -5
  2. package/catalog/agent/rules/pre-implementation.md +15 -8
  3. package/catalog/agent/skills/ultragoal/SKILL.md +5 -18
  4. package/catalog/agent/skills/verify/SKILL.md +12 -12
  5. package/catalog/compose/admin-blocks-registry.json +659 -0
  6. package/dist/esm/blueprint/core/parser.js +2 -4
  7. package/dist/esm/blueprint/core/validation/criteria.js +2 -1
  8. package/dist/esm/blueprint/core/validation/task-blocks.js +7 -1
  9. package/dist/esm/blueprint/lifecycle/review-provenance.js +85 -30
  10. package/dist/esm/blueprint/markdown/task-heading.d.ts +21 -0
  11. package/dist/esm/blueprint/markdown/task-heading.js +25 -0
  12. package/dist/esm/blueprint/trust/command-runner.d.ts +40 -0
  13. package/dist/esm/blueprint/trust/command-runner.js +265 -41
  14. package/dist/esm/build/cli-mcp-parity.js +6 -0
  15. package/dist/esm/build/package-manifest.js +7 -2
  16. package/dist/esm/ci/native-session-memory-cache.d.ts +2 -1
  17. package/dist/esm/ci/native-session-memory-cache.js +2 -1
  18. package/dist/esm/ci/release-progress.d.ts +37 -0
  19. package/dist/esm/ci/release-progress.js +139 -0
  20. package/dist/esm/cli/cli.d.ts +1 -1
  21. package/dist/esm/cli/cli.js +9 -0
  22. package/dist/esm/cli/commands/audit-core.js +9 -1
  23. package/dist/esm/cli/commands/audit.js +16 -5
  24. package/dist/esm/cli/commands/blueprint/mutations.js +2 -3
  25. package/dist/esm/cli/commands/init/mcp-spec.d.ts +18 -3
  26. package/dist/esm/cli/commands/init/mcp-spec.js +54 -6
  27. package/dist/esm/cli/commands/init/scaffold-agents-md.js +5 -7
  28. package/dist/esm/cli/commands/package-manager.js +8 -2
  29. package/dist/esm/cli/commands/release-progress.d.ts +53 -0
  30. package/dist/esm/cli/commands/release-progress.js +155 -0
  31. package/dist/esm/cli/commands/review.js +74 -11
  32. package/dist/esm/cli/utils.d.ts +8 -1
  33. package/dist/esm/cli/utils.js +12 -2
  34. package/dist/esm/compose/compose.d.ts +38 -0
  35. package/dist/esm/compose/compose.js +143 -0
  36. package/dist/esm/compose/escape-html.d.ts +5 -0
  37. package/dist/esm/compose/escape-html.js +12 -0
  38. package/dist/esm/compose/ops-report-render.d.ts +5 -0
  39. package/dist/esm/compose/ops-report-render.js +71 -0
  40. package/dist/esm/compose/ops-report-schema.d.ts +42 -0
  41. package/dist/esm/compose/ops-report-schema.js +46 -0
  42. package/dist/esm/compose/preview.d.ts +14 -0
  43. package/dist/esm/compose/preview.js +32 -0
  44. package/dist/esm/compose/registry-resolve.d.ts +47 -0
  45. package/dist/esm/compose/registry-resolve.js +133 -0
  46. package/dist/esm/git/changed-files.d.ts +20 -0
  47. package/dist/esm/git/changed-files.js +63 -0
  48. package/dist/esm/hooks/pretool-guard/validators/plan-frontmatter.js +3 -2
  49. package/dist/esm/hooks/stop/qa-changed-files.js +6 -1
  50. package/dist/esm/mcp/blueprint/handlers/document-mutations.js +2 -1
  51. package/dist/esm/mcp/blueprint/handlers/task-advance.js +2 -12
  52. package/dist/esm/mcp/blueprint/handlers/validate.js +6 -0
  53. package/dist/esm/mcp/tools/_names.d.ts +1 -1
  54. package/dist/esm/mcp/tools/_names.js +4 -0
  55. package/dist/esm/mcp/tools/_registry.js +8 -0
  56. package/dist/esm/mcp/tools/release-progress.d.ts +9 -0
  57. package/dist/esm/mcp/tools/release-progress.js +110 -0
  58. package/dist/esm/mcp/tools/wp-ui-blocks-list.d.ts +3 -0
  59. package/dist/esm/mcp/tools/wp-ui-blocks-list.js +43 -0
  60. package/dist/esm/mcp/tools/wp-ui-compose.d.ts +3 -0
  61. package/dist/esm/mcp/tools/wp-ui-compose.js +62 -0
  62. package/dist/esm/mcp/tools/wp-ui-preview.d.ts +3 -0
  63. package/dist/esm/mcp/tools/wp-ui-preview.js +52 -0
  64. package/dist/esm/package.json +2 -0
  65. package/dist/esm/review/delivery-verifier.d.ts +33 -2
  66. package/dist/esm/review/delivery-verifier.js +130 -24
  67. package/dist/esm/review/execution/review-checkout.d.ts +1 -0
  68. package/dist/esm/review/execution/review-checkout.js +386 -23
  69. package/dist/esm/review/execution/sandbox/adapter.d.ts +37 -0
  70. package/dist/esm/review/execution/sandbox/adapter.js +39 -0
  71. package/dist/esm/review/execution/sandbox/env.d.ts +12 -0
  72. package/dist/esm/review/execution/sandbox/env.js +37 -0
  73. package/dist/esm/review/execution/sandbox/index.d.ts +5 -0
  74. package/dist/esm/review/execution/sandbox/index.js +4 -0
  75. package/dist/esm/review/execution/sandbox/policy.d.ts +19 -0
  76. package/dist/esm/review/execution/sandbox/policy.js +95 -0
  77. package/dist/esm/review/execution/sandbox/probe.d.ts +20 -0
  78. package/dist/esm/review/execution/sandbox/probe.js +97 -0
  79. package/dist/esm/review/execution/sandbox/shell-quote.d.ts +14 -0
  80. package/dist/esm/review/execution/sandbox/shell-quote.js +18 -0
  81. package/dist/esm/review/execution/sandbox/tmpdir.d.ts +9 -0
  82. package/dist/esm/review/execution/sandbox/tmpdir.js +36 -0
  83. package/dist/esm/review/execution/sandbox/types.d.ts +31 -0
  84. package/dist/esm/review/execution/sandbox/types.js +6 -0
  85. package/dist/esm/review/execution/supervisor.js +44 -5
  86. package/dist/esm/review/execution/types.d.ts +2 -0
  87. package/package.json +24 -12
@@ -10,14 +10,12 @@ Prefer repo-local instructions when more specific.
10
10
  wp install && wp run setup:agent && wp sync # setup and sync are separate, idempotent steps
11
11
  ```
12
12
 
13
- agent-kit's catalog is the single source of truth for generated agent surfaces.
14
- Agent-kit owns generated agent surfaces here; Webpresso CLI owns the end-user command surface.
13
+ agent-kit catalog is SSOT for generated agent surfaces; Webpresso CLI owns the end-user command surface.
15
14
 
16
- - Optional agent tools can be WP-owned with `wp install codex|claude-code|opencode` or `wp install oh-my opencode`; `openagent` aliases the latter, and WP-owned scopes use `wp update`.
15
+ - Optional agent tools: `wp install codex|claude-code|opencode` or `wp install oh-my opencode` (`openagent` aliases the latter); WP-owned scopes use `wp update`.
17
16
  - `wp setup` repairs the managed `.gitignore` block for regenerated surfaces.
18
- - Consumer repos use global `wp`, keep only `@webpresso/agent-config` locally, and do not add local `@webpresso/agent-kit`.
17
+ - Consumers use global `wp` + local `@webpresso/agent-config` only (no local `@webpresso/agent-kit`).
19
18
  - Track repo-owned instruction sources (`AGENTS.md`, `agent-rules/`, `agent-skills/`); ignore generated/runtime surfaces (`.agent/`, `.agents/`, `.codex/`, `.opencode/`, etc.).
20
-
21
19
  - Keep the generated default `AGENTS.md` under 8 KB.
22
20
 
23
21
  Codex routing instruction surface:
@@ -227,16 +227,23 @@ Ultragoal events, or approval frontmatter.
227
227
  killed writer is never overwritten. A complete content rejection is terminal
228
228
  for that unchanged target, while active provider limits/unavailability remain
229
229
  suppressed until their recorded retry window permits another attempt.
230
- - **Completed rejections have a two-subject circuit breaker.** Plan review
230
+ - **Rejections have a convergence-aware subject budget (4).** Plan review
231
231
  lineage uses the canonical `wp-blueprint-v1` subject, so lifecycle/trust
232
232
  bookkeeping commits reuse the prior rejection and do not invoke another
233
- reviewer. One semantically changed remediation subject may receive the final
234
- formal review; its prompt includes the prior rejection artifact and requires
235
- all remaining blockers together. After two distinct semantic subjects are
236
- rejected, `wp review gate` returns `scope-exhausted` before provider
237
- invocation. Stop automated retries and obtain an explicit human scope
238
- decision before creating a successor blueprint. Plan and delivery purposes
239
- have separate budgets; delivery retains its existing whole-tree subject.
233
+ reviewer. An identical resubmission of an already-rejected subject is likewise
234
+ reused for free (no reviewer call). Each genuinely different converging
235
+ subject one that addressed the prior findings is reviewed on its own, and
236
+ its prompt includes the prior rejection artifacts. After **four** distinct
237
+ semantic subjects are rejected, `wp review gate` returns `scope-exhausted`
238
+ before provider invocation. This is an anti-runaway cap, not a hard fork
239
+ point: automated runs must stop and escalate, but a human who judges the
240
+ attempt to be good-faith convergence may extend the budget **in place** by
241
+ setting `WP_REVIEW_SCOPE_CONTINUE=1` (recorded as an audit gate-issue) and keep
242
+ reviewing THIS blueprint — creating a successor blueprint only launders the
243
+ counter and is not required. The approval gate itself is unchanged: the
244
+ reviewer's verdict is still required under scope-continue. Plan and delivery
245
+ purposes have separate budgets; delivery retains its existing whole-tree
246
+ subject.
240
247
  - **`provider-event-too-large` means one captured provider JSON event exceeded
241
248
  the bounded event limit; it is not a reviewer verdict.** Keep the bound in
242
249
  place, retry the same gate id, and switch provider/model when possible because
@@ -109,24 +109,11 @@ Resolve models from the live catalog every time:
109
109
  opencode models opencode-go
110
110
  ```
111
111
 
112
- Pick by purpose (same intent as the committed OpenCode reviewer policy / `opencode-go` skill):
113
-
114
- | Purpose | Preferred family (live catalog) | Why |
115
- | ------------------------------------------- | ------------------------------------------------------------------------------------------------ | -------------------------- |
116
- | Plan / architecture critique | DeepSeek **Pro** (`opencode-go/deepseek…-pro`) | Deeper plan review depth |
117
- | Coding / implementation quality | Kimi **Code** first (`…kimi…-code`) | Coding quality lane |
118
- | Cheap recheck / high-availability follow-up | DeepSeek **Flash** (`…deepseek…-flash`) | Fast secondary pass |
119
- | Aggregate / unspecified | Follow `opencode-go` skill order: Kimi Code → DeepSeek Pro → DeepSeek Flash → remaining families | Default outside-voice lane |
120
-
121
- Resolve the actual model ID with catalog greps (never paste a fixed model string into agent instructions as the only option):
122
-
123
- ```bash
124
- CATALOG=$(opencode models opencode-go)
125
- # plan critique example:
126
- MODEL=$(echo "$CATALOG" | grep '^opencode-go/deepseek' | grep -- '-pro$' | sort -V | tail -1)
127
- # coding example:
128
- # MODEL=$(echo "$CATALOG" | grep '^opencode-go/kimi' | grep -- '-code$' | sort -V | tail -1)
129
- ```
112
+ **Selection order and the purpose→family mapping live in one place: the committed
113
+ reviewer policy (`packages/workflow-skills/src/opencode-reviewer-policy.ts`),
114
+ rendered into the `opencode-go` skill and drift-gated against it.** Follow that
115
+ skill; do not restate the ordering here. A second copy of a preference list is a
116
+ second thing to update, and the copy that goes stale is the one an agent reads.
130
117
 
131
118
  Treat a provider-wide usage limit as terminal for every OpenCode Go model in the current review window; do not hop families to evade a usage block on the same provider.
132
119
 
@@ -35,18 +35,18 @@ the preferred skill (`claude` / `codex` / `grok` / one OpenCode Go), then stops.
35
35
 
36
36
  ## Tooling map
37
37
 
38
- | Gate | Prefer |
39
- | ------------------------- | --------------------------------------------------------------- |
40
- | Lint / types / tests / QA | `wp_lint`, `wp_typecheck`, `wp_test`, `wp_qa` |
41
- | Format | `wp_format` |
42
- | Audits | `wp_audit`, `wp_audits` |
43
- | Blueprint | blueprint MCP tools + `wp audit blueprint-lifecycle` |
44
- | PR / CI wait | `wp_pr_status`, `wp_pr_wait` (not multi-sleep loops) |
45
- | Release | `wp_release_readiness` when shipping |
46
- | Large output | `wp_session_execute` / `batch_execute` / `execute_file` |
47
- | Continuity | `wp_session_capture` for verify summary; avoid paste-back walls |
48
- | E2E / act | `wp_e2e`, `wp_ci_act` when the change requires them |
49
- | Outside authority | `wp review gate` (not raw multi-agent review swarms) |
38
+ | Gate | Prefer |
39
+ | ------------------------- | --------------------------------------------------------------------------------------- |
40
+ | Lint / types / tests / QA | `wp_lint`, `wp_typecheck`, `wp_test`, `wp_qa` |
41
+ | Format | `wp_format` |
42
+ | Audits | `wp_audit`, `wp_audits` |
43
+ | Blueprint | blueprint MCP tools + `wp audit blueprint-lifecycle` |
44
+ | PR / CI wait | `wp_pr_status`, `wp_pr_wait` (not multi-sleep loops) |
45
+ | Release | `wp_release_progress` for live Release phases; `wp_release_readiness` for package gates |
46
+ | Large output | `wp_session_execute` / `batch_execute` / `execute_file` |
47
+ | Continuity | `wp_session_capture` for verify summary; avoid paste-back walls |
48
+ | E2E / act | `wp_e2e`, `wp_ci_act` when the change requires them |
49
+ | Outside authority | `wp review gate` (not raw multi-agent review swarms) |
50
50
 
51
51
  ## Iron law — evidence before claims
52
52