@dewtech/dare-cli 3.8.0 → 3.8.2
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 +2 -0
- package/package.json +1 -1
- package/templates/UPDATE-MANIFEST.json +290 -4
package/README.md
CHANGED
|
@@ -164,6 +164,8 @@ Pick **one** of the two paths per stack:
|
|
|
164
164
|
| `mcp-rust` (beta) | Rust 1.78+ (rustup) | `rust:1.83` |
|
|
165
165
|
| `mcp-go` (beta) | Go 1.23+ — https://go.dev/dl/ | `golang:1.25` |
|
|
166
166
|
|
|
167
|
+
> **v3.8.1–3.8.2 (manutenção):** `dare update` passa a entregar os skills/comandos/config das v3.4→v3.8 a projetos existentes (backfill do `UPDATE-MANIFEST`, 3.8.1). O CI ganha um **gate de cobertura de docs** + **redeploy automático da documentação** a cada release (3.8.2).
|
|
168
|
+
|
|
167
169
|
> **v3.8.0:** **Formal Verification Gate** — opt-in strict aspect `verification.formal` (enabled/backend/modules/maxRepairIterations/proofTimeoutSeconds/antiBypass) plus flags `--formal` / `--no-formal` / `--formal-backend <dafny|verus|lean>`. Proves marked critical modules against external Dafny/Verus/Lean toolchain (not an npm dep); exit 5 when toolchain missing on a marked module; anti-bypass rejects `assume(false)`/`ensures true`/leaks even on solver exit 0; telemetry edge `proven_by` → `formal-gate`.
|
|
168
170
|
|
|
169
171
|
> **v3.7.0:** **Brownfield Discovery** — deterministic auto-discovery of codebase patterns/conventions (`dare patterns`, read-only) fed into the dual graph + steering, plus lightweight planning personas (Analyst/PM/Architect) at planning time only (no runtime swarm). Extends `dare reverse`/`dna`.
|
package/package.json
CHANGED
|
@@ -16,19 +16,25 @@
|
|
|
16
16
|
"type": "modified",
|
|
17
17
|
"path": "dare.config.json#version",
|
|
18
18
|
"description": "Campo `version` agora rastreia a release do DARE (antes era placeholder `0.1.0` zombie)",
|
|
19
|
-
"appliesTo": [
|
|
19
|
+
"appliesTo": [
|
|
20
|
+
"*"
|
|
21
|
+
]
|
|
20
22
|
},
|
|
21
23
|
{
|
|
22
24
|
"type": "added",
|
|
23
25
|
"path": "dare.config.json#review",
|
|
24
26
|
"description": "Adiciona objeto `review` ({ onComplete, strict }) em dare.config.json — gate opt-in pré-DONE no Ralph Loop",
|
|
25
|
-
"appliesTo": [
|
|
27
|
+
"appliesTo": [
|
|
28
|
+
"*"
|
|
29
|
+
]
|
|
26
30
|
},
|
|
27
31
|
{
|
|
28
32
|
"type": "added",
|
|
29
33
|
"path": "dare.config.json#refine",
|
|
30
34
|
"description": "Adiciona objeto `refine.thresholds` em dare.config.json para customizar buckets de complexidade",
|
|
31
|
-
"appliesTo": [
|
|
35
|
+
"appliesTo": [
|
|
36
|
+
"*"
|
|
37
|
+
]
|
|
32
38
|
}
|
|
33
39
|
],
|
|
34
40
|
"migrations": [
|
|
@@ -53,7 +59,36 @@
|
|
|
53
59
|
"type": "added",
|
|
54
60
|
"path": "dare.config.json#verification",
|
|
55
61
|
"description": "Adiciona objeto `verification` (enabled:false + defaults) — gate opt-in pós-Ralph Loop",
|
|
56
|
-
"appliesTo": [
|
|
62
|
+
"appliesTo": [
|
|
63
|
+
"*"
|
|
64
|
+
]
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
"type": "added",
|
|
68
|
+
"path": ".claude/commands/dare-bench.md",
|
|
69
|
+
"templateSource": "ide/claude/.claude/commands/dare-bench.md",
|
|
70
|
+
"description": "Comando `/dare-bench` (Claude Code) — harness determinístico de fixtures (Fix·Rate, solve-rate, regressão)",
|
|
71
|
+
"appliesTo": [
|
|
72
|
+
"claude-code"
|
|
73
|
+
]
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
"type": "added",
|
|
77
|
+
"path": ".cursor/commands/dare-bench.md",
|
|
78
|
+
"templateSource": "ide/cursor/.cursor/commands/dare-bench.md",
|
|
79
|
+
"description": "Comando `/dare-bench` (Cursor) — harness determinístico de fixtures (Fix·Rate, solve-rate, regressão)",
|
|
80
|
+
"appliesTo": [
|
|
81
|
+
"cursor"
|
|
82
|
+
]
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
"type": "added",
|
|
86
|
+
"path": ".agents/skills/dare-bench/SKILL.md",
|
|
87
|
+
"templateSource": "ide/antigravity/.agents/skills/dare-bench/SKILL.md",
|
|
88
|
+
"description": "Skill `dare-bench` (Antigravity) — harness determinístico de fixtures (Fix·Rate, solve-rate, regressão)",
|
|
89
|
+
"appliesTo": [
|
|
90
|
+
"antigravity"
|
|
91
|
+
]
|
|
57
92
|
}
|
|
58
93
|
],
|
|
59
94
|
"migrations": [
|
|
@@ -63,6 +98,257 @@
|
|
|
63
98
|
"optional": false
|
|
64
99
|
}
|
|
65
100
|
]
|
|
101
|
+
},
|
|
102
|
+
"3.4.0": {
|
|
103
|
+
"releasedAt": "2026-06",
|
|
104
|
+
"summary": "Security Hardening — superfície MCP endurecida, validação de `dare init` e supply-chain no CI",
|
|
105
|
+
"changelog": "Endurece a superfície MCP (auth Bearer fora de loopback, bind 127.0.0.1, erros 5xx sanitizados), valida estritamente o nome em `dare init` e adiciona gates de supply-chain no CI (ESLint bloqueante, cobertura Vitest, `npm publish --provenance`, GitHub Actions pinadas por SHA). Não introduz skill/comando/config de projeto novo — as mudanças vivem no runtime do CLI e no CI; `dare update` não precisa entregar artefato ao projeto-alvo.",
|
|
106
|
+
"changes": [],
|
|
107
|
+
"migrations": []
|
|
108
|
+
},
|
|
109
|
+
"3.5.0": {
|
|
110
|
+
"releasedAt": "2026-06",
|
|
111
|
+
"summary": "Dual Graph — grafo dual requisito↔código determinístico",
|
|
112
|
+
"changelog": "Grafo dual (nós `code_symbol`+`requirement`, arestas `affects`+`derives_from`) com extração determinística de símbolos/requisitos e travessia tipada BFS. Os subcomandos `dare graph owners|impact|trace|locate` entram via skill `dare-graph` atualizada nas 3 IDEs. Localização opcional pré-patch no Ralph Loop (`graph.locateBeforePatch`) e MCP tools `graph_locate`/`graph_map_requirement`/`graph_traverse`.",
|
|
113
|
+
"changes": [
|
|
114
|
+
{
|
|
115
|
+
"type": "modified",
|
|
116
|
+
"path": ".claude/commands/dare-graph.md",
|
|
117
|
+
"templateSource": "ide/claude/.claude/commands/dare-graph.md",
|
|
118
|
+
"description": "Skill `dare-graph` (Claude Code) atualizada com subcomandos owners/impact/trace/locate",
|
|
119
|
+
"appliesTo": [
|
|
120
|
+
"claude-code"
|
|
121
|
+
]
|
|
122
|
+
},
|
|
123
|
+
{
|
|
124
|
+
"type": "modified",
|
|
125
|
+
"path": ".cursor/commands/dare-graph.md",
|
|
126
|
+
"templateSource": "ide/cursor/.cursor/commands/dare-graph.md",
|
|
127
|
+
"description": "Skill `dare-graph` (Cursor) atualizada com subcomandos owners/impact/trace/locate",
|
|
128
|
+
"appliesTo": [
|
|
129
|
+
"cursor"
|
|
130
|
+
]
|
|
131
|
+
},
|
|
132
|
+
{
|
|
133
|
+
"type": "modified",
|
|
134
|
+
"path": ".agents/skills/dare-graph/SKILL.md",
|
|
135
|
+
"templateSource": "ide/antigravity/.agents/skills/dare-graph/SKILL.md",
|
|
136
|
+
"description": "Skill `dare-graph` (Antigravity) atualizada com subcomandos owners/impact/trace/locate",
|
|
137
|
+
"appliesTo": [
|
|
138
|
+
"antigravity"
|
|
139
|
+
]
|
|
140
|
+
}
|
|
141
|
+
],
|
|
142
|
+
"migrations": []
|
|
143
|
+
},
|
|
144
|
+
"3.6.0": {
|
|
145
|
+
"releasedAt": "2026-06",
|
|
146
|
+
"summary": "Agent Hooks + Steering Files — hooks determinísticos com trust gate + steering por precedência",
|
|
147
|
+
"changelog": "Agent Hooks (eventos fechados on-save/on-file-create/on-task-complete/pre-commit, allowlist canônica, trust gate opt-in) e Steering files (reuso de PROJECT-DNA.md como base + precedência determinística), servidos às 3 IDEs via MCP. Adiciona comandos `dare hooks` e `dare steering` (skills nas 3 IDEs) e os blocos `hooks`/`steering` em dare.config.json. Opt-in: ausência dos blocos mantém comportamento idêntico a v3.5.0.",
|
|
148
|
+
"changes": [
|
|
149
|
+
{
|
|
150
|
+
"type": "added",
|
|
151
|
+
"path": ".claude/commands/dare-hooks.md",
|
|
152
|
+
"templateSource": "ide/claude/.claude/commands/dare-hooks.md",
|
|
153
|
+
"description": "Comando `/dare-hooks` (Claude Code) — hooks determinísticos com trust gate",
|
|
154
|
+
"appliesTo": [
|
|
155
|
+
"claude-code"
|
|
156
|
+
]
|
|
157
|
+
},
|
|
158
|
+
{
|
|
159
|
+
"type": "added",
|
|
160
|
+
"path": ".cursor/commands/dare-hooks.md",
|
|
161
|
+
"templateSource": "ide/cursor/.cursor/commands/dare-hooks.md",
|
|
162
|
+
"description": "Comando `/dare-hooks` (Cursor) — hooks determinísticos com trust gate",
|
|
163
|
+
"appliesTo": [
|
|
164
|
+
"cursor"
|
|
165
|
+
]
|
|
166
|
+
},
|
|
167
|
+
{
|
|
168
|
+
"type": "added",
|
|
169
|
+
"path": ".agents/skills/dare-hooks/SKILL.md",
|
|
170
|
+
"templateSource": "ide/antigravity/.agents/skills/dare-hooks/SKILL.md",
|
|
171
|
+
"description": "Skill `dare-hooks` (Antigravity) — hooks determinísticos com trust gate",
|
|
172
|
+
"appliesTo": [
|
|
173
|
+
"antigravity"
|
|
174
|
+
]
|
|
175
|
+
},
|
|
176
|
+
{
|
|
177
|
+
"type": "added",
|
|
178
|
+
"path": ".claude/commands/dare-steering.md",
|
|
179
|
+
"templateSource": "ide/claude/.claude/commands/dare-steering.md",
|
|
180
|
+
"description": "Comando `/dare-steering` (Claude Code) — steering por precedência via MCP",
|
|
181
|
+
"appliesTo": [
|
|
182
|
+
"claude-code"
|
|
183
|
+
]
|
|
184
|
+
},
|
|
185
|
+
{
|
|
186
|
+
"type": "added",
|
|
187
|
+
"path": ".cursor/commands/dare-steering.md",
|
|
188
|
+
"templateSource": "ide/cursor/.cursor/commands/dare-steering.md",
|
|
189
|
+
"description": "Comando `/dare-steering` (Cursor) — steering por precedência via MCP",
|
|
190
|
+
"appliesTo": [
|
|
191
|
+
"cursor"
|
|
192
|
+
]
|
|
193
|
+
},
|
|
194
|
+
{
|
|
195
|
+
"type": "added",
|
|
196
|
+
"path": ".agents/skills/dare-steering/SKILL.md",
|
|
197
|
+
"templateSource": "ide/antigravity/.agents/skills/dare-steering/SKILL.md",
|
|
198
|
+
"description": "Skill `dare-steering` (Antigravity) — steering por precedência via MCP",
|
|
199
|
+
"appliesTo": [
|
|
200
|
+
"antigravity"
|
|
201
|
+
]
|
|
202
|
+
},
|
|
203
|
+
{
|
|
204
|
+
"type": "added",
|
|
205
|
+
"path": "dare.config.json#hooks",
|
|
206
|
+
"description": "Adiciona objeto `hooks` (trusted:false + defaults opt-in) em dare.config.json",
|
|
207
|
+
"appliesTo": [
|
|
208
|
+
"*"
|
|
209
|
+
]
|
|
210
|
+
},
|
|
211
|
+
{
|
|
212
|
+
"type": "added",
|
|
213
|
+
"path": "dare.config.json#steering",
|
|
214
|
+
"description": "Adiciona objeto `steering` (defaults opt-in) em dare.config.json",
|
|
215
|
+
"appliesTo": [
|
|
216
|
+
"*"
|
|
217
|
+
]
|
|
218
|
+
}
|
|
219
|
+
],
|
|
220
|
+
"migrations": [
|
|
221
|
+
{
|
|
222
|
+
"id": "add-hooks-steering-defaults",
|
|
223
|
+
"description": "Adiciona os blocos `hooks` e `steering` com defaults opt-in (trusted:false) em projetos pré-3.6 — não habilita hooks automaticamente",
|
|
224
|
+
"optional": false
|
|
225
|
+
}
|
|
226
|
+
]
|
|
227
|
+
},
|
|
228
|
+
"3.7.0": {
|
|
229
|
+
"releasedAt": "2026-06",
|
|
230
|
+
"summary": "Brownfield Discovery — auto-discovery determinístico de padrões + planejadores leves",
|
|
231
|
+
"changelog": "Comando `dare patterns` (auto-discovery determinístico de padrões implícitos do legado, com evidência arquivo:linha) gerando `PATTERNS.md` + `patterns-facts.json`, e nós `pattern` no grafo. Adiciona skill `dare-patterns` nas 3 IDEs. `dare design --interactive` e personas leves (Analyst/PM em `/dare-design`, Architect em `/dare-blueprint`) atualizam as skills design/blueprint nas 3 IDEs. Opt-in puro: ausência de patterns-facts.json/PATTERNS.md mantém comportamento idêntico a v3.6.0.",
|
|
232
|
+
"changes": [
|
|
233
|
+
{
|
|
234
|
+
"type": "added",
|
|
235
|
+
"path": ".claude/commands/dare-patterns.md",
|
|
236
|
+
"templateSource": "ide/claude/.claude/commands/dare-patterns.md",
|
|
237
|
+
"description": "Comando `/dare-patterns` (Claude Code) — auto-discovery determinístico de padrões do legado",
|
|
238
|
+
"appliesTo": [
|
|
239
|
+
"claude-code"
|
|
240
|
+
]
|
|
241
|
+
},
|
|
242
|
+
{
|
|
243
|
+
"type": "added",
|
|
244
|
+
"path": ".cursor/commands/dare-patterns.md",
|
|
245
|
+
"templateSource": "ide/cursor/.cursor/commands/dare-patterns.md",
|
|
246
|
+
"description": "Comando `/dare-patterns` (Cursor) — auto-discovery determinístico de padrões do legado",
|
|
247
|
+
"appliesTo": [
|
|
248
|
+
"cursor"
|
|
249
|
+
]
|
|
250
|
+
},
|
|
251
|
+
{
|
|
252
|
+
"type": "added",
|
|
253
|
+
"path": ".agents/skills/dare-patterns/SKILL.md",
|
|
254
|
+
"templateSource": "ide/antigravity/.agents/skills/dare-patterns/SKILL.md",
|
|
255
|
+
"description": "Skill `dare-patterns` (Antigravity) — auto-discovery determinístico de padrões do legado",
|
|
256
|
+
"appliesTo": [
|
|
257
|
+
"antigravity"
|
|
258
|
+
]
|
|
259
|
+
},
|
|
260
|
+
{
|
|
261
|
+
"type": "modified",
|
|
262
|
+
"path": ".claude/commands/dare-design.md",
|
|
263
|
+
"templateSource": "ide/claude/.claude/commands/dare-design.md",
|
|
264
|
+
"description": "Skill `dare-design` (Claude Code) com `--interactive` + personas Analyst/PM",
|
|
265
|
+
"appliesTo": [
|
|
266
|
+
"claude-code"
|
|
267
|
+
]
|
|
268
|
+
},
|
|
269
|
+
{
|
|
270
|
+
"type": "modified",
|
|
271
|
+
"path": ".cursor/commands/dare-design.md",
|
|
272
|
+
"templateSource": "ide/cursor/.cursor/commands/dare-design.md",
|
|
273
|
+
"description": "Skill `dare-design` (Cursor) com `--interactive` + personas Analyst/PM",
|
|
274
|
+
"appliesTo": [
|
|
275
|
+
"cursor"
|
|
276
|
+
]
|
|
277
|
+
},
|
|
278
|
+
{
|
|
279
|
+
"type": "modified",
|
|
280
|
+
"path": ".agents/skills/dare-design/SKILL.md",
|
|
281
|
+
"templateSource": "ide/antigravity/.agents/skills/dare-design/SKILL.md",
|
|
282
|
+
"description": "Skill `dare-design` (Antigravity) com `--interactive` + personas Analyst/PM",
|
|
283
|
+
"appliesTo": [
|
|
284
|
+
"antigravity"
|
|
285
|
+
]
|
|
286
|
+
},
|
|
287
|
+
{
|
|
288
|
+
"type": "modified",
|
|
289
|
+
"path": ".claude/commands/dare-blueprint.md",
|
|
290
|
+
"templateSource": "ide/claude/.claude/commands/dare-blueprint.md",
|
|
291
|
+
"description": "Skill `dare-blueprint` (Claude Code) com persona Architect",
|
|
292
|
+
"appliesTo": [
|
|
293
|
+
"claude-code"
|
|
294
|
+
]
|
|
295
|
+
},
|
|
296
|
+
{
|
|
297
|
+
"type": "modified",
|
|
298
|
+
"path": ".cursor/commands/dare-blueprint.md",
|
|
299
|
+
"templateSource": "ide/cursor/.cursor/commands/dare-blueprint.md",
|
|
300
|
+
"description": "Skill `dare-blueprint` (Cursor) com persona Architect",
|
|
301
|
+
"appliesTo": [
|
|
302
|
+
"cursor"
|
|
303
|
+
]
|
|
304
|
+
},
|
|
305
|
+
{
|
|
306
|
+
"type": "modified",
|
|
307
|
+
"path": ".agents/skills/dare-blueprint/SKILL.md",
|
|
308
|
+
"templateSource": "ide/antigravity/.agents/skills/dare-blueprint/SKILL.md",
|
|
309
|
+
"description": "Skill `dare-blueprint` (Antigravity) com persona Architect",
|
|
310
|
+
"appliesTo": [
|
|
311
|
+
"antigravity"
|
|
312
|
+
]
|
|
313
|
+
}
|
|
314
|
+
],
|
|
315
|
+
"migrations": []
|
|
316
|
+
},
|
|
317
|
+
"3.8.0": {
|
|
318
|
+
"releasedAt": "2026-06",
|
|
319
|
+
"summary": "Formal Verification Gate — gate opt-in que prova (não só testa) módulos críticos marcados",
|
|
320
|
+
"changelog": "Aspecto `formal` no runner de verificação (extensão do verification-core v3.3.0) — gate opt-in estrito em dois níveis (`verification.formal.enabled` + marcação por módulo). Dafny default, Verus/Lean opcionais; flags `--formal`/`--no-formal`/`--formal-backend`. Toolchain externa não é dep do CLI. Opt-in estrito: ausência do bloco `verification.formal` ou de marcação mantém comportamento idêntico a v3.7.0.",
|
|
321
|
+
"changes": [
|
|
322
|
+
{
|
|
323
|
+
"type": "added",
|
|
324
|
+
"path": "dare.config.json#verification.formal",
|
|
325
|
+
"description": "Adiciona bloco `verification.formal` (enabled:false + defaults) — gate de prova formal opt-in por módulo marcado",
|
|
326
|
+
"appliesTo": [
|
|
327
|
+
"*"
|
|
328
|
+
]
|
|
329
|
+
}
|
|
330
|
+
],
|
|
331
|
+
"migrations": [
|
|
332
|
+
{
|
|
333
|
+
"id": "add-formal-defaults",
|
|
334
|
+
"description": "Adiciona `verification.formal` com defaults opt-in (enabled:false) em projetos pré-3.8 — não ativa prova formal automaticamente",
|
|
335
|
+
"optional": false
|
|
336
|
+
}
|
|
337
|
+
]
|
|
338
|
+
},
|
|
339
|
+
"3.8.1": {
|
|
340
|
+
"releasedAt": "2026-06",
|
|
341
|
+
"summary": "Patch — dare update entrega skills/comandos/config das v3.4→v3.8 a projetos existentes",
|
|
342
|
+
"changelog": "Correcao de manutencao do `dare update`. O UPDATE-MANIFEST.json parava na v3.3.0, entao projetos existentes nao recebiam os artefatos das v3.4-v3.8. Esta release faz o backfill do manifesto (ver entradas 3.4.0-3.8.0). Sem artefato novo de projeto nesta 3.8.1.",
|
|
343
|
+
"changes": [],
|
|
344
|
+
"migrations": []
|
|
345
|
+
},
|
|
346
|
+
"3.8.2": {
|
|
347
|
+
"releasedAt": "2026-06",
|
|
348
|
+
"summary": "Patch de processo/docs — gate de cobertura de docs + redeploy automatico no release + playbook de regeneracao",
|
|
349
|
+
"changelog": "Patch interno do repo (CI/docs). Sem artefato novo de projeto: gate verify-docs-coverage, redeploy da doc via workflow_run, e o RELEASE-DOCS-PLAYBOOK. Nada a aplicar via dare update.",
|
|
350
|
+
"changes": [],
|
|
351
|
+
"migrations": []
|
|
66
352
|
}
|
|
67
353
|
}
|
|
68
354
|
}
|