pumuki 6.3.54 → 6.3.56
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 +20 -89
- package/VERSION +1 -1
- package/docs/README.md +44 -15
- package/docs/mcp/{MCP_AGENT_CONTEXT_CONSUMPTION.md → agent-context-consumption.md} +2 -2
- package/docs/mcp/{MCP_SERVERS.md → mcp-servers-overview.md} +2 -2
- package/docs/operations/RELEASE_NOTES.md +36 -4
- package/docs/product/API_REFERENCE.md +8 -2
- package/docs/product/INSTALLATION.md +16 -108
- package/docs/product/USAGE.md +18 -6
- package/docs/validation/README.md +6 -5
- package/integrations/config/skillsCustomRules.ts +171 -16
- package/integrations/config/skillsEffectiveLock.ts +109 -2
- package/integrations/gate/evaluateAiGate.ts +158 -21
- package/integrations/git/gitAtomicity.ts +30 -2
- package/integrations/git/stageRunners.ts +41 -4
- package/integrations/lifecycle/cli.ts +16 -0
- package/integrations/lifecycle/packageInfo.ts +34 -4
- package/integrations/sdd/syncDocs.ts +16 -375
- package/integrations/sdd/syncDocsTargets.ts +380 -0
- package/package.json +2 -1
- package/scripts/backlog-action-reasons-lib.ts +18 -22
- package/scripts/backlog-action-reasons-types.ts +25 -0
- package/scripts/backlog-consumer-gh.ts +117 -0
- package/scripts/backlog-consumer-patterns.ts +36 -0
- package/scripts/backlog-consumer-types.ts +7 -0
- package/scripts/backlog-id-issue-map-lib.ts +9 -42
- package/scripts/backlog-id-issue-map-parse.ts +40 -0
- package/scripts/backlog-id-issue-map-types.ts +4 -0
- package/scripts/check-self-worktree-hygiene.ts +94 -0
- package/scripts/check-tracking-single-active.sh +4 -2
- package/scripts/framework-menu-advanced-view-help.ts +39 -0
- package/scripts/framework-menu-advanced-view-lib.ts +6 -63
- package/scripts/framework-menu-advanced-view-status.ts +31 -0
- package/scripts/framework-menu-consumer-preflight-hints.ts +119 -0
- package/scripts/framework-menu-consumer-preflight-lib.ts +14 -247
- package/scripts/framework-menu-consumer-preflight-render.ts +41 -0
- package/scripts/framework-menu-consumer-preflight-run.ts +105 -0
- package/scripts/framework-menu-consumer-preflight-types.ts +40 -0
- package/scripts/framework-menu-consumer-runtime-actions.ts +139 -0
- package/scripts/framework-menu-consumer-runtime-audit.ts +86 -0
- package/scripts/framework-menu-consumer-runtime-lib.ts +46 -223
- package/scripts/framework-menu-consumer-runtime-menu.ts +104 -0
- package/scripts/framework-menu-consumer-runtime-types.ts +52 -0
- package/scripts/framework-menu-evidence-summary-file.ts +42 -0
- package/scripts/framework-menu-evidence-summary-format.ts +49 -0
- package/scripts/framework-menu-evidence-summary-lib.ts +7 -258
- package/scripts/framework-menu-evidence-summary-normalize.ts +87 -0
- package/scripts/framework-menu-evidence-summary-read.ts +60 -0
- package/scripts/framework-menu-evidence-summary-severity.ts +70 -0
- package/scripts/framework-menu-evidence-summary-types.ts +28 -0
- package/scripts/framework-menu-layout-data.ts +52 -0
- package/scripts/framework-menu-layout-lib.ts +8 -116
- package/scripts/framework-menu-layout-resolve.ts +51 -0
- package/scripts/framework-menu-layout-types.ts +16 -0
- package/scripts/framework-menu-legacy-audit-lib.ts +14 -1229
- package/scripts/framework-menu-legacy-audit-markdown-document.ts +31 -0
- package/scripts/framework-menu-legacy-audit-markdown-links.ts +29 -0
- package/scripts/framework-menu-legacy-audit-markdown.ts +19 -0
- package/scripts/framework-menu-legacy-audit-render-panel.ts +249 -0
- package/scripts/framework-menu-legacy-audit-render-report.ts +162 -0
- package/scripts/framework-menu-legacy-audit-render-sections.ts +97 -0
- package/scripts/framework-menu-legacy-audit-render.ts +16 -0
- package/scripts/framework-menu-legacy-audit-summary-metrics.ts +50 -0
- package/scripts/framework-menu-legacy-audit-summary-normalize.ts +195 -0
- package/scripts/framework-menu-legacy-audit-summary-platforms.ts +183 -0
- package/scripts/framework-menu-legacy-audit-summary-ranked.ts +76 -0
- package/scripts/framework-menu-legacy-audit-summary-types.ts +42 -0
- package/scripts/framework-menu-legacy-audit-summary.ts +105 -0
- package/scripts/framework-menu-legacy-audit-types.ts +74 -0
- package/scripts/framework-menu-matrix-canary-evidence.ts +34 -0
- package/scripts/framework-menu-matrix-canary-lib.ts +16 -140
- package/scripts/framework-menu-matrix-canary-scenario.ts +91 -0
- package/scripts/framework-menu-matrix-canary-types.ts +21 -0
- package/scripts/framework-menu-matrix-evidence-diagnosis.ts +46 -0
- package/scripts/framework-menu-matrix-evidence-lib.ts +10 -59
- package/scripts/framework-menu-matrix-evidence-types.ts +18 -0
- package/scripts/framework-menu-rule-coverage-diagnostics-build.ts +122 -0
- package/scripts/framework-menu-rule-coverage-diagnostics-format.ts +46 -0
- package/scripts/framework-menu-rule-coverage-diagnostics-lib.ts +10 -208
- package/scripts/framework-menu-rule-coverage-diagnostics-types.ts +54 -0
- package/scripts/framework-menu-system-notifications-cause.ts +54 -0
- package/scripts/framework-menu-system-notifications-config-choice.ts +35 -0
- package/scripts/framework-menu-system-notifications-config-file.ts +25 -0
- package/scripts/framework-menu-system-notifications-config-state.ts +62 -0
- package/scripts/framework-menu-system-notifications-config-types.ts +8 -0
- package/scripts/framework-menu-system-notifications-config.ts +7 -0
- package/scripts/framework-menu-system-notifications-dispatch.ts +32 -0
- package/scripts/framework-menu-system-notifications-effective-config.ts +18 -0
- package/scripts/framework-menu-system-notifications-event-types.ts +27 -0
- package/scripts/framework-menu-system-notifications-gate.ts +22 -0
- package/scripts/framework-menu-system-notifications-lib.ts +51 -867
- package/scripts/framework-menu-system-notifications-macos-applescript-banner.ts +16 -0
- package/scripts/framework-menu-system-notifications-macos-applescript-dialog.ts +18 -0
- package/scripts/framework-menu-system-notifications-macos-applescript-parse.ts +4 -0
- package/scripts/framework-menu-system-notifications-macos-applescript.ts +38 -0
- package/scripts/framework-menu-system-notifications-macos-banner-delivery-dispatch.ts +15 -0
- package/scripts/framework-menu-system-notifications-macos-banner-delivery-runner.ts +14 -0
- package/scripts/framework-menu-system-notifications-macos-banner-delivery.ts +21 -0
- package/scripts/framework-menu-system-notifications-macos-banner-result.ts +8 -0
- package/scripts/framework-menu-system-notifications-macos-banner-run.ts +6 -0
- package/scripts/framework-menu-system-notifications-macos-banner-script.ts +6 -0
- package/scripts/framework-menu-system-notifications-macos-banner-stage.ts +15 -0
- package/scripts/framework-menu-system-notifications-macos-banner.ts +18 -0
- package/scripts/framework-menu-system-notifications-macos-blocked-dispatch-gate.ts +11 -0
- package/scripts/framework-menu-system-notifications-macos-blocked-dispatch-runner.ts +9 -0
- package/scripts/framework-menu-system-notifications-macos-blocked-dispatch.ts +39 -0
- package/scripts/framework-menu-system-notifications-macos-blocked-stage.ts +30 -0
- package/scripts/framework-menu-system-notifications-macos-dialog-effect.ts +25 -0
- package/scripts/framework-menu-system-notifications-macos-dialog-enabled.ts +20 -0
- package/scripts/framework-menu-system-notifications-macos-dialog-mode-dispatch.ts +50 -0
- package/scripts/framework-menu-system-notifications-macos-dialog-mode-resolve.ts +1 -0
- package/scripts/framework-menu-system-notifications-macos-dialog-mode.ts +21 -0
- package/scripts/framework-menu-system-notifications-macos-dialog-payload.ts +35 -0
- package/scripts/framework-menu-system-notifications-macos-dialog.ts +54 -0
- package/scripts/framework-menu-system-notifications-macos-result.ts +11 -0
- package/scripts/framework-menu-system-notifications-macos-runner-exec.ts +11 -0
- package/scripts/framework-menu-system-notifications-macos-runner-output.ts +29 -0
- package/scripts/framework-menu-system-notifications-macos-runner-parse.ts +7 -0
- package/scripts/framework-menu-system-notifications-macos-runner.ts +3 -0
- package/scripts/framework-menu-system-notifications-macos-swift-args.ts +38 -0
- package/scripts/framework-menu-system-notifications-macos-swift-run.ts +52 -0
- package/scripts/framework-menu-system-notifications-macos-swift-source.ts +246 -0
- package/scripts/framework-menu-system-notifications-macos-swift.ts +6 -0
- package/scripts/framework-menu-system-notifications-macos.ts +48 -0
- package/scripts/framework-menu-system-notifications-payload-types.ts +10 -0
- package/scripts/framework-menu-system-notifications-payloads-audit.ts +31 -0
- package/scripts/framework-menu-system-notifications-payloads-blocked.ts +32 -0
- package/scripts/framework-menu-system-notifications-payloads-context.ts +14 -0
- package/scripts/framework-menu-system-notifications-payloads-events.ts +18 -0
- package/scripts/framework-menu-system-notifications-payloads.ts +55 -0
- package/scripts/framework-menu-system-notifications-remediation.ts +58 -0
- package/scripts/framework-menu-system-notifications-runner-types.ts +20 -0
- package/scripts/framework-menu-system-notifications-text.ts +31 -0
- package/scripts/framework-menu-system-notifications-types.ts +22 -0
- package/scripts/framework-menu-ui-components-lib.ts +14 -220
- package/scripts/framework-menu-ui-components-panel.ts +46 -0
- package/scripts/framework-menu-ui-components-render.ts +58 -0
- package/scripts/framework-menu-ui-components-tokens.ts +105 -0
- package/scripts/framework-menu-ui-components-types.ts +30 -0
- package/scripts/gitflow-cli-commands.ts +145 -0
- package/scripts/gitflow-cli-lib.ts +34 -244
- package/scripts/gitflow-cli-snapshot.ts +97 -0
- package/scripts/gitflow-cli-types.ts +26 -0
- package/scripts/legacy-parity-report-build.ts +96 -0
- package/scripts/legacy-parity-report-lib.ts +11 -406
- package/scripts/legacy-parity-report-markdown.ts +60 -0
- package/scripts/legacy-parity-report-normalize.ts +202 -0
- package/scripts/legacy-parity-report-types.ts +74 -0
- package/scripts/reconcile-consumer-backlog-issues-lib.ts +56 -578
- package/scripts/reconcile-consumer-backlog-issues-parse.ts +197 -0
- package/scripts/reconcile-consumer-backlog-issues-sync.ts +272 -0
- package/scripts/reconcile-consumer-backlog-issues-types.ts +71 -0
- package/scripts/self-worktree-hygiene-lib.ts +202 -0
- package/scripts/watch-consumer-backlog-fleet-lib.ts +131 -0
- package/scripts/watch-consumer-backlog-fleet-tick.ts +10 -82
- package/scripts/watch-consumer-backlog-fleet.ts +10 -77
- package/scripts/watch-consumer-backlog-lib.ts +33 -353
- package/scripts/watch-consumer-backlog-parse.ts +168 -0
- package/scripts/watch-consumer-backlog-types.ts +45 -0
- /package/docs/mcp/{MCP_EVIDENCE_CONTEXT_SERVER.md → evidence-context-server.md} +0 -0
- /package/docs/operations/{framework-menu-option-1-walkthrough.md → framework-menu-consumer-walkthrough.md} +0 -0
- /package/docs/operations/{OPERATIONS.md → production-operations-policy.md} +0 -0
- /package/docs/validation/{ast-intelligence-roadmap.md → ast-intelligence-validation-roadmap.md} +0 -0
package/README.md
CHANGED
|
@@ -83,12 +83,12 @@ Expected behavior:
|
|
|
83
83
|
|
|
84
84
|
Version drift quick check:
|
|
85
85
|
|
|
86
|
-
- `status --json` and `doctor --json` expose `version.effective`, `version.runtime`, `version.consumerInstalled`, `version.lifecycleInstalled`, `version.driftWarning`, and `version.
|
|
87
|
-
- If `driftWarning` is not `null`,
|
|
86
|
+
- `status --json` and `doctor --json` expose `version.effective`, `version.runtime`, `version.consumerInstalled`, `version.lifecycleInstalled`, `version.driftWarning`, `version.alignmentCommand`, `version.pathExecutionHazard`, `version.pathExecutionWarning`, and `version.pathExecutionWorkaroundCommand`.
|
|
87
|
+
- If `driftWarning` is not `null`, prefer the exact command already exposed in `version.alignmentCommand`.
|
|
88
|
+
- If `pathExecutionHazard` is `true`, avoid `npx/npm exec` for the install step and use the safe local workaround reported by Pumuki, for example:
|
|
88
89
|
|
|
89
90
|
```bash
|
|
90
|
-
|
|
91
|
-
npx --yes pumuki update --latest
|
|
91
|
+
node ./node_modules/pumuki/bin/pumuki.js install
|
|
92
92
|
```
|
|
93
93
|
|
|
94
94
|
## Why Pumuki
|
|
@@ -238,87 +238,18 @@ Legacy parity report (strict comparator):
|
|
|
238
238
|
node --import tsx scripts/build-legacy-parity-report.ts --legacy=<legacy-evidence-path> --enterprise=<enterprise-evidence-path> --out=<output-path>
|
|
239
239
|
```
|
|
240
240
|
|
|
241
|
-
## Command
|
|
241
|
+
## Command Paths
|
|
242
242
|
|
|
243
|
-
|
|
243
|
+
Use these docs instead of treating `README.md` as the full command manual:
|
|
244
244
|
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
### SDD / OpenSpec (Consumer)
|
|
255
|
-
|
|
256
|
-
```bash
|
|
257
|
-
npx --yes pumuki sdd status
|
|
258
|
-
npx --yes pumuki sdd session --open --change=<change-id>
|
|
259
|
-
npx --yes pumuki sdd session --refresh
|
|
260
|
-
npx --yes pumuki sdd session --close
|
|
261
|
-
npx --yes pumuki sdd validate --stage=PRE_COMMIT
|
|
262
|
-
```
|
|
263
|
-
|
|
264
|
-
### Loop Runner (Consumer)
|
|
265
|
-
|
|
266
|
-
```bash
|
|
267
|
-
npx --yes pumuki loop run --objective="stabilize gate before commit" --max-attempts=3 --json
|
|
268
|
-
npx --yes pumuki loop status --session=<session-id> --json
|
|
269
|
-
npx --yes pumuki loop stop --session=<session-id> --json
|
|
270
|
-
npx --yes pumuki loop resume --session=<session-id> --json
|
|
271
|
-
npx --yes pumuki loop list --json
|
|
272
|
-
npx --yes pumuki loop export --session=<session-id> --output-json=.audit-reports/loop-session.json
|
|
273
|
-
```
|
|
274
|
-
|
|
275
|
-
### Stage Gates (Consumer)
|
|
276
|
-
|
|
277
|
-
```bash
|
|
278
|
-
npx --yes --package pumuki@latest pumuki-pre-write
|
|
279
|
-
npx --yes --package pumuki@latest pumuki-pre-commit
|
|
280
|
-
npx --yes --package pumuki@latest pumuki-pre-push
|
|
281
|
-
npx --yes --package pumuki@latest pumuki-ci
|
|
282
|
-
```
|
|
283
|
-
|
|
284
|
-
### MCP Servers (Optional, Long-Running)
|
|
285
|
-
|
|
286
|
-
```bash
|
|
287
|
-
npx --yes --package pumuki@latest pumuki-mcp-evidence
|
|
288
|
-
npx --yes --package pumuki@latest pumuki-mcp-evidence-stdio
|
|
289
|
-
npx --yes --package pumuki@latest pumuki-mcp-enterprise
|
|
290
|
-
npx --yes --package pumuki@latest pumuki-mcp-enterprise-stdio
|
|
291
|
-
```
|
|
292
|
-
|
|
293
|
-
## Validation and Diagnostics (Framework-Only)
|
|
294
|
-
|
|
295
|
-
These commands are for maintainers and may require additional arguments, external repo context, or authenticated GitHub access.
|
|
296
|
-
|
|
297
|
-
```bash
|
|
298
|
-
npm run validation:consumer-ci-artifacts -- --repo <owner/repo>
|
|
299
|
-
npm run validation:consumer-ci-auth-check -- --repo <owner/repo>
|
|
300
|
-
npm run validation:consumer-workflow-lint -- --repo-path <absolute-path-to-consumer-repo>
|
|
301
|
-
npm run validation:consumer-support-bundle -- --repo <owner/repo>
|
|
302
|
-
npm run validation:consumer-support-ticket-draft
|
|
303
|
-
npm run validation:consumer-startup-unblock-status
|
|
304
|
-
npm run validation:consumer-startup-triage -- --repo <owner/repo> --skip-workflow-lint
|
|
305
|
-
npm run validation:mock-consumer-ab-report
|
|
306
|
-
npm run validation:adapter-readiness
|
|
307
|
-
npm run validation:adapter-session-status
|
|
308
|
-
npm run validation:adapter-real-session-report
|
|
309
|
-
npm run validation:phase5-blockers-readiness
|
|
310
|
-
npm run validation:phase5-execution-closure-status
|
|
311
|
-
npm run validation:phase5-execution-closure -- --repo <owner/repo> --skip-workflow-lint
|
|
312
|
-
npm run validation:phase5-external-handoff
|
|
313
|
-
npm run validation:clean-artifacts
|
|
314
|
-
```
|
|
315
|
-
|
|
316
|
-
Important:
|
|
317
|
-
|
|
318
|
-
- Several validation scripts intentionally return non-zero when verdict is `BLOCKED`, `PENDING`, or `MISSING_INPUTS`.
|
|
319
|
-
- Non-zero in these scripts is often diagnostic output, not a runtime crash.
|
|
320
|
-
- `validation:consumer-support-ticket-draft` expects an existing support bundle generated by `validation:consumer-support-bundle`.
|
|
321
|
-
- If workflow lint is required in your flow, provide `--repo-path` and `--actionlint-bin`; otherwise use `--skip-workflow-lint`.
|
|
245
|
+
- Installation and bootstrap:
|
|
246
|
+
- `docs/product/INSTALLATION.md`
|
|
247
|
+
- Daily usage, gates, menu, lifecycle, SDD and troubleshooting:
|
|
248
|
+
- `docs/product/USAGE.md`
|
|
249
|
+
- Operator-focused short playbook:
|
|
250
|
+
- `PUMUKI.md`
|
|
251
|
+
- Validation runbooks and framework-only diagnostics:
|
|
252
|
+
- `docs/validation/README.md`
|
|
322
253
|
|
|
323
254
|
## Menu Walkthrough and Screenshots
|
|
324
255
|
|
|
@@ -348,13 +279,13 @@ Important:
|
|
|
348
279
|
|
|
349
280
|
Extended annotated walkthrough:
|
|
350
281
|
|
|
351
|
-
- `docs/operations/framework-menu-
|
|
282
|
+
- `docs/operations/framework-menu-consumer-walkthrough.md`
|
|
352
283
|
|
|
353
284
|
## Enterprise Operations Baseline
|
|
354
285
|
|
|
355
286
|
Pumuki production SaaS operation baseline is defined in:
|
|
356
287
|
|
|
357
|
-
- `docs/operations/
|
|
288
|
+
- `docs/operations/production-operations-policy.md`
|
|
358
289
|
|
|
359
290
|
Highlights:
|
|
360
291
|
|
|
@@ -384,11 +315,11 @@ Highlights:
|
|
|
384
315
|
- Configuration: `docs/product/CONFIGURATION.md`
|
|
385
316
|
- Code standards: `docs/governance/CODE_STANDARDS.md`
|
|
386
317
|
- Branch protection: `docs/governance/BRANCH_PROTECTION_GUIDE.md`
|
|
387
|
-
- MCP servers: `docs/mcp/
|
|
388
|
-
- MCP evidence server: `docs/mcp/
|
|
389
|
-
- MCP consumption: `docs/mcp/
|
|
318
|
+
- MCP servers: `docs/mcp/mcp-servers-overview.md`
|
|
319
|
+
- MCP evidence server: `docs/mcp/evidence-context-server.md`
|
|
320
|
+
- MCP consumption: `docs/mcp/agent-context-consumption.md`
|
|
390
321
|
- Evidence schema v2.1: `docs/mcp/ai-evidence-v2.1-contract.md`
|
|
391
|
-
- Operations policy (SLA/SLO): `docs/operations/
|
|
322
|
+
- Operations policy (SLA/SLO): `docs/operations/production-operations-policy.md`
|
|
392
323
|
- Release notes: `docs/operations/RELEASE_NOTES.md`
|
|
393
324
|
- Changelog: `CHANGELOG.md`
|
|
394
325
|
|
package/VERSION
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
v6.3.
|
|
1
|
+
v6.3.56
|
package/docs/README.md
CHANGED
|
@@ -2,27 +2,57 @@
|
|
|
2
2
|
|
|
3
3
|
Mapa corto y humano de la documentación oficial de Pumuki.
|
|
4
4
|
|
|
5
|
-
##
|
|
5
|
+
## Si buscas algo concreto
|
|
6
|
+
|
|
7
|
+
- Quiero instalar y arrancar Pumuki en un repo consumidor:
|
|
8
|
+
- `README.md`
|
|
9
|
+
- `docs/product/INSTALLATION.md`
|
|
10
|
+
- `docs/product/USAGE.md`
|
|
11
|
+
|
|
12
|
+
- Quiero entender cómo funciona por dentro:
|
|
13
|
+
- `ARCHITECTURE.md`
|
|
14
|
+
- `docs/product/ARCHITECTURE.md`
|
|
15
|
+
- `docs/product/HOW_IT_WORKS.md`
|
|
16
|
+
|
|
17
|
+
- Quiero el contrato técnico de CLI, status, doctor o evidence:
|
|
18
|
+
- `docs/product/API_REFERENCE.md`
|
|
19
|
+
- `docs/mcp/ai-evidence-v2.1-contract.md`
|
|
20
|
+
|
|
21
|
+
- Quiero la parte MCP:
|
|
22
|
+
- `docs/mcp/mcp-servers-overview.md`
|
|
23
|
+
- `docs/mcp/evidence-context-server.md`
|
|
24
|
+
- `docs/mcp/agent-context-consumption.md`
|
|
25
|
+
|
|
26
|
+
- Quiero operación diaria o releases:
|
|
27
|
+
- `PUMUKI.md`
|
|
28
|
+
- `docs/operations/production-operations-policy.md`
|
|
29
|
+
- `docs/operations/framework-menu-consumer-walkthrough.md`
|
|
30
|
+
- `docs/operations/RELEASE_NOTES.md`
|
|
31
|
+
|
|
32
|
+
- Quiero runbooks de validación:
|
|
33
|
+
- `docs/validation/README.md`
|
|
34
|
+
|
|
35
|
+
- Quiero saber en qué estamos ahora:
|
|
36
|
+
- `docs/tracking/estado-ejecutivo.md`
|
|
37
|
+
- `docs/tracking/plan-activo-de-trabajo.md`
|
|
38
|
+
|
|
39
|
+
## Estructura oficial
|
|
6
40
|
|
|
7
41
|
- `docs/product/`
|
|
8
42
|
- Manual funcional y técnico del producto.
|
|
9
|
-
-
|
|
43
|
+
- Contiene arquitectura, instalación, uso, configuración, testing y referencia API.
|
|
10
44
|
|
|
11
45
|
- `docs/governance/`
|
|
12
46
|
- Reglas de contribución y gobierno del repo.
|
|
13
|
-
- Archivos clave: `CODE_STANDARDS.md`, `CONTRIBUTING.md`, `BRANCH_PROTECTION_GUIDE.md`.
|
|
14
47
|
|
|
15
48
|
- `docs/mcp/`
|
|
16
49
|
- Contratos MCP, evidence y consumo por agentes.
|
|
17
|
-
- Archivos clave: `MCP_SERVERS.md`, `MCP_EVIDENCE_CONTEXT_SERVER.md`, `MCP_AGENT_CONTEXT_CONSUMPTION.md`, `ai-evidence-v2.1-contract.md`.
|
|
18
50
|
|
|
19
51
|
- `docs/operations/`
|
|
20
52
|
- Operación diaria, walkthroughs y notas de release.
|
|
21
|
-
- Archivos clave: `OPERATIONS.md`, `framework-menu-option-1-walkthrough.md`, `RELEASE_NOTES.md`.
|
|
22
53
|
|
|
23
54
|
- `docs/validation/`
|
|
24
55
|
- Runbooks y contratos estables de validación.
|
|
25
|
-
- Punto de entrada: `docs/validation/README.md`.
|
|
26
56
|
|
|
27
57
|
- `docs/rule-packs/`
|
|
28
58
|
- Packs de reglas oficiales por ámbito.
|
|
@@ -32,21 +62,20 @@ Mapa corto y humano de la documentación oficial de Pumuki.
|
|
|
32
62
|
|
|
33
63
|
- `docs/tracking/`
|
|
34
64
|
- Seguimiento permitido y solo el imprescindible.
|
|
35
|
-
- Maestro: `docs/tracking/
|
|
36
|
-
- Plan activo: `docs/tracking/plan-activo-
|
|
65
|
+
- Maestro: `docs/tracking/estado-ejecutivo.md`
|
|
66
|
+
- Plan activo: `docs/tracking/plan-activo-de-trabajo.md`
|
|
37
67
|
- Históricos técnicos permitidos:
|
|
38
68
|
- `docs/tracking/historico-validacion-ruralgo-03-03-2026.md`
|
|
39
|
-
- `docs/tracking/historico-
|
|
69
|
+
- `docs/tracking/historico-contrato-aceptacion-c022.md`
|
|
40
70
|
- Regla hard: solo puede existir una tarea `🚧` en el plan activo.
|
|
41
71
|
|
|
42
72
|
## Fuera de `docs/`
|
|
43
73
|
|
|
44
|
-
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
- `PUMUKI.md`
|
|
74
|
+
- `README.md`
|
|
75
|
+
- `ARCHITECTURE.md`
|
|
76
|
+
- `CHANGELOG.md`
|
|
77
|
+
- `AGENTS.md`
|
|
78
|
+
- `PUMUKI.md`
|
|
50
79
|
|
|
51
80
|
## Lo que no se conserva
|
|
52
81
|
|
|
@@ -183,6 +183,6 @@ Summary facet contract:
|
|
|
183
183
|
|
|
184
184
|
## Related References
|
|
185
185
|
|
|
186
|
-
- `docs/mcp/
|
|
187
|
-
- `docs/mcp/
|
|
186
|
+
- `docs/mcp/evidence-context-server.md`
|
|
187
|
+
- `docs/mcp/mcp-servers-overview.md`
|
|
188
188
|
- `docs/product/API_REFERENCE.md`
|
|
@@ -275,6 +275,6 @@ npm run test:mcp
|
|
|
275
275
|
|
|
276
276
|
## Referencias
|
|
277
277
|
|
|
278
|
-
- `docs/mcp/
|
|
279
|
-
- `docs/mcp/
|
|
278
|
+
- `docs/mcp/evidence-context-server.md`
|
|
279
|
+
- `docs/mcp/agent-context-consumption.md`
|
|
280
280
|
- `docs/mcp/ai-evidence-v2.1-contract.md`
|
|
@@ -1,10 +1,42 @@
|
|
|
1
1
|
# Release Notes (v2.x line)
|
|
2
2
|
|
|
3
3
|
This file tracks the active deterministic framework line used in this repository.
|
|
4
|
-
|
|
4
|
+
Canonical release chronology lives in `CHANGELOG.md`.
|
|
5
|
+
This file keeps only the operational highlights and rollout notes that matter while running the framework.
|
|
5
6
|
|
|
6
7
|
## 2026-03 (enterprise hardening updates)
|
|
7
8
|
|
|
9
|
+
### 2026-03-11 (v6.3.56)
|
|
10
|
+
|
|
11
|
+
- RuralGo consumer hygiene fix:
|
|
12
|
+
- `PRE_COMMIT` now restores tracked `.ai_evidence.json` from `HEAD` when that file was not staged before the gate,
|
|
13
|
+
- the hook no longer injects the refreshed artifact into unrelated commits after a successful run.
|
|
14
|
+
- Operational impact:
|
|
15
|
+
- closes RuralGo bug `PUMUKI-INC-069`,
|
|
16
|
+
- minimal commits such as `README.md` stop being contaminated by `.ai_evidence.json` during normal publish/commit flows.
|
|
17
|
+
- Validation evidence:
|
|
18
|
+
- `node --import tsx --test integrations/git/__tests__/stageRunners.test.ts` (`42 pass / 0 fail`)
|
|
19
|
+
- `npm run -s typecheck` (`PASS`)
|
|
20
|
+
|
|
21
|
+
### 2026-03-06 (v6.3.55)
|
|
22
|
+
|
|
23
|
+
- Safe remediation for consumers whose repository path breaks `PATH` execution:
|
|
24
|
+
- `status` / `doctor` now detect when the repo root contains the platform `PATH` delimiter,
|
|
25
|
+
- the JSON contract exposes:
|
|
26
|
+
- `version.pathExecutionHazard`
|
|
27
|
+
- `version.pathExecutionWarning`
|
|
28
|
+
- `version.pathExecutionWorkaroundCommand`
|
|
29
|
+
- `version.alignmentCommand` now falls back to a safe local-node invocation when `npx/npm exec` would be unsafe.
|
|
30
|
+
- Human-readable lifecycle output now explains the problem directly:
|
|
31
|
+
- `execution warning: ...`
|
|
32
|
+
- `execution workaround: node ./node_modules/pumuki/bin/pumuki.js ...`
|
|
33
|
+
- Operational impact:
|
|
34
|
+
- consumers like `SAAS:APP_SUPERMERCADOS` no longer depend on broken `PATH` rewriting for lifecycle remediation,
|
|
35
|
+
- the workaround is deterministic and machine-readable instead of tribal knowledge.
|
|
36
|
+
- Validation evidence:
|
|
37
|
+
- `npx --yes tsx@4.21.0 --test integrations/lifecycle/__tests__/packageInfo.test.ts integrations/lifecycle/__tests__/status.test.ts integrations/lifecycle/__tests__/doctor.test.ts integrations/lifecycle/__tests__/cli.test.ts` (`pass`)
|
|
38
|
+
- `npm run -s typecheck` (`PASS`)
|
|
39
|
+
|
|
8
40
|
### 2026-03-06 (v6.3.54)
|
|
9
41
|
|
|
10
42
|
- Consumer package/runtime correctness:
|
|
@@ -222,7 +254,7 @@ Detailed commit history remains available through Git history (`git log` / `git
|
|
|
222
254
|
- smoke de instalación local hace fallback cuando `npx --no-install` falla por `MODULE_NOT_FOUND`.
|
|
223
255
|
- `ai_gate_check` unifica hint de precedencia para códigos legacy `EVIDENCE_*` (incluye `EVIDENCE_INTEGRITY_MISSING`).
|
|
224
256
|
- RFC y plan de rollout/rollback:
|
|
225
|
-
- `docs/validation/ast-intelligence-roadmap.md`.
|
|
257
|
+
- `docs/validation/ast-intelligence-validation-roadmap.md`.
|
|
226
258
|
- Evidencia de validación:
|
|
227
259
|
- `npx --yes tsx@4.21.0 --test scripts/__tests__/backlog-cli-help-exit-code.test.ts` (`11 pass / 0 fail`)
|
|
228
260
|
- `npm run -s typecheck` (`PASS`)
|
|
@@ -433,13 +465,13 @@ Detailed commit history remains available through Git history (`git log` / `git
|
|
|
433
465
|
- Consumer vs framework-maintainer command surfaces are now explicitly separated.
|
|
434
466
|
- Added collaboration and support/security guidance sections.
|
|
435
467
|
- New stable operations policy:
|
|
436
|
-
- `docs/operations/
|
|
468
|
+
- `docs/operations/production-operations-policy.md` introduces SaaS production operation baseline:
|
|
437
469
|
- SLO/SLA minimums
|
|
438
470
|
- incident severity and response windows
|
|
439
471
|
- alerting thresholds and mandatory operational controls
|
|
440
472
|
- go-live and rollback requirements
|
|
441
473
|
- README walkthrough extraction:
|
|
442
|
-
- detailed menu Option 1 capture narrative moved to `docs/operations/framework-menu-
|
|
474
|
+
- detailed menu Option 1 capture narrative moved to `docs/operations/framework-menu-consumer-walkthrough.md`.
|
|
443
475
|
- root README now remains concise while preserving deep visual guidance by reference.
|
|
444
476
|
- Command documentation hardening from end-to-end execution audit:
|
|
445
477
|
- fixed legacy parity command argument format to `--legacy=<path> --enterprise=<path>`.
|
|
@@ -158,6 +158,9 @@ Machine-readable fields exposed by both `pumuki status --json` and `pumuki docto
|
|
|
158
158
|
- `version.driftFromLifecycleInstalled`
|
|
159
159
|
- `version.driftWarning`
|
|
160
160
|
- `version.alignmentCommand`
|
|
161
|
+
- `version.pathExecutionHazard`
|
|
162
|
+
- `version.pathExecutionWarning`
|
|
163
|
+
- `version.pathExecutionWorkaroundCommand`
|
|
161
164
|
|
|
162
165
|
Compatibility note:
|
|
163
166
|
|
|
@@ -172,6 +175,9 @@ Interpretation contract:
|
|
|
172
175
|
- `lifecycleInstalled`: version recorded in managed lifecycle metadata.
|
|
173
176
|
- `driftWarning`: compact human-readable explanation when those values diverge.
|
|
174
177
|
- `alignmentCommand`: exact remediation command to align dependency and lifecycle state with the current runtime version.
|
|
178
|
+
- `pathExecutionHazard`: boolean flag raised when the repo root contains the platform `PATH` delimiter and `npx/npm exec` can fail to resolve `pumuki`.
|
|
179
|
+
- `pathExecutionWarning`: compact warning explaining why `PATH` resolution is unsafe in that repo.
|
|
180
|
+
- `pathExecutionWorkaroundCommand`: safe local-node entrypoint to use when `pathExecutionHazard=true`.
|
|
175
181
|
|
|
176
182
|
## Evidence API
|
|
177
183
|
|
|
@@ -286,8 +292,8 @@ Read-only endpoints:
|
|
|
286
292
|
- deterministic bound: `maxLimit=100`
|
|
287
293
|
- pagination metadata includes `has_more` when `limit` is provided
|
|
288
294
|
|
|
289
|
-
Reference: `docs/mcp/
|
|
290
|
-
Consumption: `docs/mcp/
|
|
295
|
+
Reference: `docs/mcp/evidence-context-server.md`.
|
|
296
|
+
Consumption: `docs/mcp/agent-context-consumption.md`.
|
|
291
297
|
|
|
292
298
|
## Local execution quick refs
|
|
293
299
|
|
|
@@ -3,8 +3,14 @@
|
|
|
3
3
|
This guide covers the active setup for the deterministic framework implementation in this repository.
|
|
4
4
|
From v2.x, SDD with OpenSpec is part of the default enterprise installation path.
|
|
5
5
|
|
|
6
|
+
This file is only for installation, bootstrap and first verification.
|
|
7
|
+
For daily operation after setup, use:
|
|
8
|
+
|
|
9
|
+
- `docs/product/USAGE.md`
|
|
10
|
+
- `PUMUKI.md`
|
|
11
|
+
|
|
6
12
|
For production SaaS operation requirements (SLO/SLA, incident model, alerting), see:
|
|
7
|
-
- `docs/operations/
|
|
13
|
+
- `docs/operations/production-operations-policy.md`
|
|
8
14
|
|
|
9
15
|
## Prerequisites
|
|
10
16
|
|
|
@@ -114,115 +120,17 @@ npm run adapter:install -- --agent=claude
|
|
|
114
120
|
|
|
115
121
|
Supported agents: `codex`, `claude`, `cursor`, `windsurf`, `opencode`.
|
|
116
122
|
|
|
117
|
-
##
|
|
118
|
-
|
|
119
|
-
### Interactive menu
|
|
120
|
-
|
|
121
|
-
```bash
|
|
122
|
-
npm run framework:menu
|
|
123
|
-
```
|
|
124
|
-
|
|
125
|
-
Menu starts in `Consumer` mode by default (focused options for day-to-day gate usage).
|
|
126
|
-
Use `A` to switch to the full `Advanced` menu and `C` to switch back.
|
|
127
|
-
Each option includes a short inline description.
|
|
128
|
-
|
|
129
|
-
Consumer repositories do not have the `framework:menu` npm script by default.
|
|
130
|
-
Use the published binary instead:
|
|
131
|
-
|
|
132
|
-
```bash
|
|
133
|
-
npx --yes --package pumuki@latest pumuki-framework
|
|
134
|
-
```
|
|
135
|
-
|
|
136
|
-
### Direct stage runners
|
|
137
|
-
|
|
138
|
-
```bash
|
|
139
|
-
# PRE_WRITE
|
|
140
|
-
npx --yes --package pumuki@latest pumuki-pre-write
|
|
141
|
-
|
|
142
|
-
# PRE_COMMIT
|
|
143
|
-
npx --yes --package pumuki@latest pumuki-pre-commit
|
|
144
|
-
|
|
145
|
-
# PRE_PUSH
|
|
146
|
-
npx --yes --package pumuki@latest pumuki-pre-push
|
|
147
|
-
|
|
148
|
-
# CI
|
|
149
|
-
npx --yes --package pumuki@latest pumuki-ci
|
|
150
|
-
```
|
|
151
|
-
|
|
152
|
-
## Lifecycle + SDD commands
|
|
153
|
-
|
|
154
|
-
```bash
|
|
155
|
-
# package level
|
|
156
|
-
npm install --save-exact pumuki
|
|
157
|
-
npm update pumuki
|
|
158
|
-
npm uninstall pumuki
|
|
159
|
-
|
|
160
|
-
# lifecycle
|
|
161
|
-
npx --yes pumuki install
|
|
162
|
-
npx --yes pumuki update --latest
|
|
163
|
-
npx --yes pumuki doctor
|
|
164
|
-
npx --yes pumuki status
|
|
165
|
-
npx --yes pumuki uninstall --purge-artifacts
|
|
166
|
-
npx --yes pumuki remove
|
|
167
|
-
|
|
168
|
-
# sdd
|
|
169
|
-
npx --yes pumuki sdd status
|
|
170
|
-
npx --yes pumuki sdd validate --stage=PRE_WRITE
|
|
171
|
-
npx --yes pumuki sdd validate --stage=PRE_COMMIT
|
|
172
|
-
npx --yes pumuki sdd validate --stage=PRE_PUSH
|
|
173
|
-
npx --yes pumuki sdd validate --stage=CI
|
|
174
|
-
npx --yes pumuki sdd session --open --change=<change-id>
|
|
175
|
-
npx --yes pumuki sdd session --refresh
|
|
176
|
-
npx --yes pumuki sdd session --close
|
|
177
|
-
```
|
|
178
|
-
|
|
179
|
-
Notes:
|
|
180
|
-
- `pumuki remove` is the deterministic teardown path (`hooks + state + managed artifacts + dependency removal`).
|
|
181
|
-
- Plain `npm uninstall pumuki` removes only the dependency entry.
|
|
182
|
-
- `pumuki update --latest` migrates legacy `openspec` package to `@fission-ai/openspec` when required.
|
|
183
|
-
|
|
184
|
-
## Guardrails
|
|
185
|
-
|
|
186
|
-
- `pumuki install` / `pumuki update` block when tracked files exist under `node_modules`.
|
|
187
|
-
- `PRE_WRITE`, `PRE_COMMIT`, `PRE_PUSH`, and `CI` enforce SDD/OpenSpec policy.
|
|
188
|
-
- `PRE_WRITE` also enforces AI Gate checks (evidence freshness/validity and protected branch guardrail).
|
|
189
|
-
|
|
190
|
-
Emergency bypass (incident-only):
|
|
191
|
-
|
|
192
|
-
```bash
|
|
193
|
-
PUMUKI_SDD_BYPASS=1 npx --yes pumuki sdd validate --stage=PRE_COMMIT
|
|
194
|
-
```
|
|
195
|
-
|
|
196
|
-
Remove bypass immediately after remediation.
|
|
197
|
-
|
|
198
|
-
## CI workflows
|
|
199
|
-
|
|
200
|
-
The repository ships reusable and platform workflows:
|
|
201
|
-
|
|
202
|
-
- `.github/workflows/pumuki-gate-template.yml`
|
|
203
|
-
- `.github/workflows/pumuki-ios.yml`
|
|
204
|
-
- `.github/workflows/pumuki-backend.yml`
|
|
205
|
-
- `.github/workflows/pumuki-frontend.yml`
|
|
206
|
-
- `.github/workflows/pumuki-android.yml`
|
|
207
|
-
|
|
208
|
-
Each run uploads `.ai_evidence.json` artifact.
|
|
209
|
-
|
|
210
|
-
## MCP servers
|
|
211
|
-
|
|
212
|
-
```bash
|
|
213
|
-
npm run mcp:evidence
|
|
214
|
-
npm run mcp:enterprise
|
|
215
|
-
```
|
|
216
|
-
|
|
217
|
-
References:
|
|
218
|
-
- `docs/mcp/MCP_EVIDENCE_CONTEXT_SERVER.md`
|
|
219
|
-
- `docs/mcp/MCP_SERVERS.md`
|
|
220
|
-
|
|
221
|
-
## Evidence file
|
|
123
|
+
## After installation
|
|
222
124
|
|
|
223
|
-
|
|
125
|
+
Once bootstrap is complete, move to the operational docs:
|
|
224
126
|
|
|
225
|
-
|
|
127
|
+
- Daily usage and stage gates:
|
|
128
|
+
- `docs/product/USAGE.md`
|
|
129
|
+
- Short operator playbook:
|
|
130
|
+
- `PUMUKI.md`
|
|
131
|
+
- MCP references:
|
|
132
|
+
- `docs/mcp/mcp-servers-overview.md`
|
|
133
|
+
- `docs/mcp/evidence-context-server.md`
|
|
226
134
|
|
|
227
135
|
## Troubleshooting
|
|
228
136
|
|
package/docs/product/USAGE.md
CHANGED
|
@@ -3,11 +3,16 @@
|
|
|
3
3
|
This guide describes the deterministic gate flow implemented in this repository.
|
|
4
4
|
From v2.x, SDD with OpenSpec is mandatory for enterprise gate execution.
|
|
5
5
|
|
|
6
|
+
If you still need to install or bootstrap the framework first, go to:
|
|
7
|
+
|
|
8
|
+
- `docs/product/INSTALLATION.md`
|
|
9
|
+
- `PUMUKI.md`
|
|
10
|
+
|
|
6
11
|
Production operations baseline (SLA/SLO, incident response and alerting):
|
|
7
|
-
- `docs/operations/
|
|
12
|
+
- `docs/operations/production-operations-policy.md`
|
|
8
13
|
|
|
9
14
|
Visual walkthrough for menu Option 1 captures:
|
|
10
|
-
- `docs/operations/framework-menu-
|
|
15
|
+
- `docs/operations/framework-menu-consumer-walkthrough.md`
|
|
11
16
|
|
|
12
17
|
## Prerequisites
|
|
13
18
|
|
|
@@ -328,10 +333,14 @@ Plain `npm uninstall pumuki` removes only the dependency; it does not remove man
|
|
|
328
333
|
"runtime": "6.3.52",
|
|
329
334
|
"consumerInstalled": "6.3.47",
|
|
330
335
|
"lifecycleInstalled": "6.3.46",
|
|
331
|
-
"source": "
|
|
336
|
+
"source": "consumer-node-modules",
|
|
332
337
|
"driftFromRuntime": true,
|
|
333
338
|
"driftFromLifecycleInstalled": true,
|
|
334
|
-
"driftWarning": "Version drift detectado: effective=6.3.47 runtime=6.3.52 lifecycle=6.3.46."
|
|
339
|
+
"driftWarning": "Version drift detectado: effective=6.3.47 runtime=6.3.52 lifecycle=6.3.46.",
|
|
340
|
+
"alignmentCommand": "npm install --save-exact pumuki@6.3.52 && npx --yes --package pumuki@6.3.52 pumuki install",
|
|
341
|
+
"pathExecutionHazard": false,
|
|
342
|
+
"pathExecutionWarning": null,
|
|
343
|
+
"pathExecutionWorkaroundCommand": null
|
|
335
344
|
}
|
|
336
345
|
}
|
|
337
346
|
```
|
|
@@ -345,17 +354,20 @@ How to read it:
|
|
|
345
354
|
- `source`: source chosen to compute `effective`.
|
|
346
355
|
- `driftWarning`: compact explanation when those values diverge.
|
|
347
356
|
- `alignmentCommand`: exact command to align consumer dependency and lifecycle state with the current runtime.
|
|
357
|
+
- `pathExecutionHazard`: tells you whether the repo root itself can break `PATH`-based execution.
|
|
358
|
+
- `pathExecutionWarning`: compact explanation of that hazard.
|
|
359
|
+
- `pathExecutionWorkaroundCommand`: safe local-node entrypoint to use when `PATH` execution is unsafe.
|
|
348
360
|
|
|
349
361
|
Recommended remediation when drift appears:
|
|
350
362
|
|
|
351
363
|
```bash
|
|
352
|
-
|
|
353
|
-
npx --yes pumuki update --latest
|
|
364
|
+
<use version.alignmentCommand>
|
|
354
365
|
npx --yes pumuki status --json
|
|
355
366
|
npx --yes pumuki doctor --json
|
|
356
367
|
```
|
|
357
368
|
|
|
358
369
|
Use this sequence to align dependency, hooks, and lifecycle metadata in the same consumer.
|
|
370
|
+
If `pathExecutionHazard=true`, use the local workaround printed by Pumuki instead of `npx/npm exec`.
|
|
359
371
|
|
|
360
372
|
Loop runtime behavior:
|
|
361
373
|
- `pumuki loop run` creates a session in `.pumuki/loop-sessions/`.
|
|
@@ -5,7 +5,7 @@ Este directorio contiene solo documentación estable de validación y runbooks o
|
|
|
5
5
|
## Documentación vigente
|
|
6
6
|
|
|
7
7
|
- `adapter-hook-runtime-runbook.md`
|
|
8
|
-
- `ast-intelligence-roadmap.md`
|
|
8
|
+
- `ast-intelligence-validation-roadmap.md`
|
|
9
9
|
- `full-repo-detection-audit-baseline.md`
|
|
10
10
|
- `enterprise-consumer-isolation-policy.md`
|
|
11
11
|
- `mock-consumer-integration-runbook.md`
|
|
@@ -13,13 +13,13 @@ Este directorio contiene solo documentación estable de validación y runbooks o
|
|
|
13
13
|
|
|
14
14
|
## Estado de seguimiento
|
|
15
15
|
|
|
16
|
-
- Maestro: `docs/tracking/
|
|
17
|
-
- Plan activo: `docs/tracking/plan-activo-
|
|
16
|
+
- Maestro: `docs/tracking/estado-ejecutivo.md`
|
|
17
|
+
- Plan activo: `docs/tracking/plan-activo-de-trabajo.md`
|
|
18
18
|
- Histórico permitido: `docs/tracking/historico-validacion-ruralgo-03-03-2026.md`
|
|
19
19
|
|
|
20
20
|
## Histórico técnico conservado
|
|
21
21
|
|
|
22
|
-
- `docs/tracking/historico-
|
|
22
|
+
- `docs/tracking/historico-contrato-aceptacion-c022.md`
|
|
23
23
|
|
|
24
24
|
## Política de higiene
|
|
25
25
|
|
|
@@ -32,5 +32,6 @@ Este directorio contiene solo documentación estable de validación y runbooks o
|
|
|
32
32
|
|
|
33
33
|
## Comprobaciones útiles
|
|
34
34
|
|
|
35
|
+
- Higiene hard del worktree propio: `npm run -s validation:self-worktree-hygiene`
|
|
35
36
|
- Suite contractual enterprise: `npm run -s validation:contract-suite:enterprise`
|
|
36
|
-
- Verificación de plan activo único: `npm run -s validation:tracking-single-active`
|
|
37
|
+
- Verificación de plan activo único + higiene hard del worktree propio: `npm run -s validation:tracking-single-active`
|