baldart 3.22.0 → 3.22.1
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/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,24 @@ All notable changes to BALDART will be documented in this file.
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## [3.22.1] - 2026-05-27
|
|
9
|
+
|
|
10
|
+
Rimosso il gate `AskUserQuestion` di conferma merge introdotto in v3.22.0 Step 7 — era friction inutile contro il "seamless" che è il punto della release. Quando l'utente lancia `/prd` ha già implicitamente accettato la pipeline completa (discovery → design → cards → commit → merge in develop). Chiedere "Procedo con merge?" a fine sessione equivale a chiedere "sei sicuro di voler completare quello che mi hai chiesto di fare?".
|
|
11
|
+
|
|
12
|
+
### Changed — `/prd` Step 7 merge è ora full-seamless
|
|
13
|
+
|
|
14
|
+
- **[framework/.claude/skills/prd/references/validation-phase.md](framework/.claude/skills/prd/references/validation-phase.md)**: Step 7 point 9 non è più un `AskUserQuestion` ma una nota che chiarisce il razionale del no-confirmation flow + escape hatch user-initiated ("non mergiare" / "lascia il worktree" honora l'override e ferma dopo il commit).
|
|
15
|
+
- **[framework/.claude/skills/prd/SKILL.md](framework/.claude/skills/prd/SKILL.md)** HARD RULE 17 lifecycle: la descrizione di Step 7 cita "Seamless by default, no confirmation gate" + l'escape hatch.
|
|
16
|
+
- **[framework/.claude/skills/prd/references/discovery-phase.md](framework/.claude/skills/prd/references/discovery-phase.md)**: il messaggio di kickoff visibile all'utente promette esplicitamente "commit + merge automatico in develop + cleanup worktree, seamless" — niente più sorprese a fine sessione.
|
|
17
|
+
|
|
18
|
+
### Why PATCH and not MINOR
|
|
19
|
+
|
|
20
|
+
Rimozione di un comportamento (gate di conferma) introdotto solo 0 minuti fa nella stessa giornata. Nessuna nuova capability, nessun breaking change per consumer: il gate non era una feature documentata né attesa dagli utenti pre-v3.22.0, era una sovra-cautela introdotta da me contro la richiesta esplicita ("seamless"). La decision tree di MAINTAINING.md classifica "bugfix di behaviour non desiderato senza breaking change" come PATCH.
|
|
21
|
+
|
|
22
|
+
### Why no schema-change propagation
|
|
23
|
+
|
|
24
|
+
Modifica puramente comportamentale dentro un singolo step di una singola skill. Zero chiavi nuove, zero modifiche CLI, zero hook.
|
|
25
|
+
|
|
8
26
|
## [3.22.0] - 2026-05-27
|
|
9
27
|
|
|
10
28
|
Le sessioni `/prd` ora vivono in un **docs worktree** dedicato, esattamente come fa `/new` per le card di codice. Il problema risolto: con 5-10 sessioni Claude in parallelo, ogni PRD inquinava il main checkout con `docs/prd/<slug>/PRD.md`, lo state file, le card YAML, l'eventuale `design.html`, e gli update a `ssot-registry.md` / `project-status.md`. `git status` diventava un campo minato, le sessioni `/new` rischiavano di stashare/committare file PRD non loro, e la review manuale era pressoché impossibile. Soluzione: estendere `worktree-manager` con una **modalità docs lean** (no `npm install`, no porta, no `.env` copy, no build verify, no lint/tsc gates) e integrarla nel ciclo di vita del PRD — creazione automatica al kickoff, merge automatico (previa conferma utente) al termine, cleanup seamless.
|
package/VERSION
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
3.22.
|
|
1
|
+
3.22.1
|
|
@@ -133,10 +133,13 @@ message. You ask questions, wait for answers, and iterate.
|
|
|
133
133
|
`/prd-add`, scan `.worktrees/registry.json` for entries with
|
|
134
134
|
`kind: "docs"` matching the slug; if found, `cd` into that worktree
|
|
135
135
|
before scanning for state files. See [discovery-phase.md](references/discovery-phase.md) § Step 0.
|
|
136
|
-
- **Step 7 (Commit)** — commit happens inside the worktree, then
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
136
|
+
- **Step 7 (Commit & Merge)** — commit happens inside the worktree, then
|
|
137
|
+
`worktree-manager` programmatic `mw-docs` is invoked immediately to
|
|
138
|
+
rebase onto `origin/develop` and land the PRD via the configured
|
|
139
|
+
`git.merge_strategy`. Seamless by default, no confirmation gate (the
|
|
140
|
+
user opted into the full pipeline when they ran `/prd`). If the user
|
|
141
|
+
explicitly says "non mergiare" / "lascia il worktree", honor the
|
|
142
|
+
override and stop after the commit. See [validation-phase.md](references/validation-phase.md) § Step 7.
|
|
140
143
|
|
|
141
144
|
**Path resolution rule (CRITICAL — read carefully).** Claude Code's
|
|
142
145
|
`Write` / `Edit` / `Read` tools require ABSOLUTE paths and **do NOT
|
|
@@ -116,7 +116,8 @@ Descrizione: <user's description>
|
|
|
116
116
|
Contesto: <one-line summary from context-primer>
|
|
117
117
|
|
|
118
118
|
Tutti i file del PRD vivono nel worktree — il main repo resta pulito.
|
|
119
|
-
Al termine
|
|
119
|
+
Al termine commit + merge automatico in develop + cleanup worktree, seamless.
|
|
120
|
+
(Se in qualunque momento mi dici "non mergiare", mi fermo dopo il commit.)
|
|
120
121
|
|
|
121
122
|
Ora comincio la fase di **Discovery** — ti faro delle domande per capire bene
|
|
122
123
|
la feature prima di scrivere qualsiasi documento.
|
|
@@ -109,27 +109,25 @@ created by Step 1 (HARD RULE 17). `$WORKTREE_PATH` is set in the state file.
|
|
|
109
109
|
|
|
110
110
|
### Merge into develop (worktree-manager mw-docs)
|
|
111
111
|
|
|
112
|
-
9. **
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
10. **On confirmation: invoke `worktree-manager` programmatic mw-docs**:
|
|
112
|
+
9. **Invoke `worktree-manager` programmatic mw-docs immediately** — no
|
|
113
|
+
confirmation prompt. The user opted into the full PRD pipeline when they
|
|
114
|
+
ran `/prd`; chiedere conferma a fine sessione è friction inutile e rompe
|
|
115
|
+
il "seamless" che è il punto della v3.22.0.
|
|
116
|
+
|
|
117
|
+
The merge is recoverable: if something goes wrong post-merge the user can
|
|
118
|
+
`git revert` on develop just like any other commit. The hard-to-reverse
|
|
119
|
+
operations (`git push`, branch deletion) happen inside `mw-docs` which
|
|
120
|
+
has its own failure handling (rebase abort, push rejection, gh CLI error)
|
|
121
|
+
— none of which silently corrupts state.
|
|
122
|
+
|
|
123
|
+
**Escape hatch.** If the user explicitly says "non mergiare" or "lascia il
|
|
124
|
+
worktree" at any point during Step 7 (e.g. they want to review the PRD
|
|
125
|
+
manually before it lands on develop), respect that and STOP after the
|
|
126
|
+
commit — the worktree stays on disk, ready for a future manual `/mw` or
|
|
127
|
+
`worktree-manager mw-docs`. This is a user-initiated override, not a
|
|
128
|
+
default gate.
|
|
129
|
+
|
|
130
|
+
10. **Invoke `worktree-manager` programmatic mw-docs**:
|
|
133
131
|
|
|
134
132
|
```
|
|
135
133
|
Skill: worktree-manager
|