vibe-coding-master 0.3.1 → 0.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.
- package/README.md +1 -1
- package/dist/backend/adapters/claude-adapter.js +4 -1
- package/dist/backend/api/round-routes.js +1 -0
- package/dist/backend/server.js +10 -7
- package/dist/backend/services/app-settings-service.js +56 -1
- package/dist/backend/services/codex-review-service.js +46 -108
- package/dist/backend/services/round-service.js +78 -3
- package/dist/backend/services/session-service.js +43 -20
- package/dist/backend/templates/handoff.js +10 -0
- package/dist/backend/templates/harness/architect-agent.js +8 -4
- package/dist/backend/templates/harness/claude-root.js +1 -1
- package/dist/backend/templates/harness/coder-agent.js +1 -1
- package/dist/backend/templates/harness/codex-review.js +11 -30
- package/dist/backend/templates/harness/reviewer-agent.js +1 -0
- package/dist/shared/types/session.js +10 -1
- package/dist/shared/validation/artifact-check.js +1 -0
- package/dist-frontend/assets/{index-BavJjWQY.js → index-OPkFuHRf.js} +29 -29
- package/dist-frontend/index.html +1 -1
- package/docs/cc-best-practices.md +1 -0
- package/docs/codex-file-translation-plan.md +618 -0
- package/docs/codex-review-gates.md +35 -16
- package/docs/full-harness-baseline.md +1 -1
- package/docs/product-design.md +2 -1
- package/docs/vcm-cc-best-practices.md +15 -5
- package/package.json +1 -1
|
@@ -123,6 +123,7 @@ Recommended inputs:
|
|
|
123
123
|
- original user request
|
|
124
124
|
- project-manager route message or durable task plan when present
|
|
125
125
|
- architecture plan
|
|
126
|
+
- Scaffold Manifest and any architect-created scaffold diff
|
|
126
127
|
- relevant durable architecture docs
|
|
127
128
|
- `docs/TESTING.md` when the plan depends on validation strategy
|
|
128
129
|
- changed file list when architect created scaffolding
|
|
@@ -132,6 +133,8 @@ Codex should review whether:
|
|
|
132
133
|
- the plan matches the user request
|
|
133
134
|
- the architecture boundaries are clear and compatible with the existing repo
|
|
134
135
|
- file responsibilities and public contracts are specific enough for coder
|
|
136
|
+
- the Scaffold Manifest carries task-specific context and coder guidance instead
|
|
137
|
+
of putting that information in source-code comments
|
|
135
138
|
- the plan avoids unnecessary scope expansion
|
|
136
139
|
- risks, dependencies, migrations, permissions, data, and error paths are named
|
|
137
140
|
- acceptance and validation evidence can be produced
|
|
@@ -215,6 +218,8 @@ Codex should review whether:
|
|
|
215
218
|
- the final diff satisfies the user request
|
|
216
219
|
- the implementation contains correctness bugs or behavior regressions
|
|
217
220
|
- the code follows existing project conventions
|
|
221
|
+
- source and test comments contain no task-specific process notes, phase notes,
|
|
222
|
+
current-task rationale, or coder instructions
|
|
218
223
|
- tests and implementation remain aligned
|
|
219
224
|
- durable docs and generated artifacts are consistent with the diff
|
|
220
225
|
- files outside the expected scope are explained
|
|
@@ -300,11 +305,17 @@ Codex review outputs live under:
|
|
|
300
305
|
.ai/vcm/codex-reviews/requests/<request-id>.json
|
|
301
306
|
```
|
|
302
307
|
|
|
303
|
-
VCM
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
+
VCM stores Codex Review Gate switches outside the repository in the global
|
|
309
|
+
`~/.vcm/settings.json` file as one VCM-wide selected gate list. The
|
|
310
|
+
project-local `.ai/codex/config.toml` must not store gate enablement, VCM must
|
|
311
|
+
not key these switches by project or task, and VCM must not create a separate
|
|
312
|
+
Codex review settings file for them.
|
|
313
|
+
|
|
314
|
+
VCM owns `.ai/vcm/codex-reviews/index.json` as task runtime state. It mirrors
|
|
315
|
+
the global settings enablement marker, active gate, gate status, report path,
|
|
316
|
+
decision, input hash, execution error, skip / override reason, and timestamps.
|
|
317
|
+
PM reads this state through VCM turn context or the `vcm-codex-review-gate`
|
|
318
|
+
skill; PM must not infer Codex state from report files alone.
|
|
308
319
|
|
|
309
320
|
The `.ai/codex/` directory is VCM-managed runtime configuration for the fifth
|
|
310
321
|
role. It should contain:
|
|
@@ -336,11 +347,9 @@ The managed block should include the Codex reviewer role, evidence sources,
|
|
|
336
347
|
three gate-specific review criteria, finding format, and write constraints.
|
|
337
348
|
Project-local custom notes may live outside the block.
|
|
338
349
|
|
|
339
|
-
`.ai/codex/config.toml` is VCM-owned
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
so the VCM Codex adapter reads this file and maps supported keys to the Codex
|
|
343
|
-
CLI invocation.
|
|
350
|
+
`.ai/codex/config.toml` is stable VCM-owned Codex Reviewer permission
|
|
351
|
+
configuration. It must not contain Codex Review Gate switches, default
|
|
352
|
+
`command = "codex"` boilerplate, or model / effort values that the VCM UI owns.
|
|
344
353
|
|
|
345
354
|
`.ai/codex/.codex/config.toml` and `.ai/codex/.codex/hooks.json` are the
|
|
346
355
|
Codex CLI project-level hook configuration. Because VCM starts Codex with
|
|
@@ -375,6 +384,9 @@ root using a relative path:
|
|
|
375
384
|
".ai/codex" = "read"
|
|
376
385
|
".ai/vcm/codex-reviews" = "write"
|
|
377
386
|
"**/*.env" = "deny"
|
|
387
|
+
|
|
388
|
+
[permissions.vcm_codex_reviewer.network]
|
|
389
|
+
enabled = true
|
|
378
390
|
```
|
|
379
391
|
|
|
380
392
|
With `--cd <taskRepoRoot>/.ai/codex`, `../..` points back to
|
|
@@ -450,10 +462,16 @@ codex \
|
|
|
450
462
|
--sandbox workspace-write \
|
|
451
463
|
--ask-for-approval never \
|
|
452
464
|
--dangerously-bypass-hook-trust \
|
|
453
|
-
--
|
|
454
|
-
--
|
|
465
|
+
--search \
|
|
466
|
+
--model <model-selected-in-VCM-UI> \
|
|
467
|
+
--config model_reasoning_effort="<effort-selected-in-VCM-UI>"
|
|
455
468
|
```
|
|
456
469
|
|
|
470
|
+
VCM omits `--model` or `model_reasoning_effort` when the user selects
|
|
471
|
+
`Default`, letting Codex CLI use its account or CLI default. `--search` enables
|
|
472
|
+
Codex CLI's native web search tool for reviewer checks that need current
|
|
473
|
+
external context.
|
|
474
|
+
|
|
457
475
|
Starting from `.ai/codex` causes Codex to load `.ai/codex/AGENTS.md` through
|
|
458
476
|
its normal `AGENTS.md` discovery path and `.ai/codex/.codex/hooks.json` through
|
|
459
477
|
the Codex project hook path. VCM sends the gate prompt into this terminal,
|
|
@@ -472,10 +490,11 @@ connected active task and contains three independent toggles:
|
|
|
472
490
|
- Validation Adequacy
|
|
473
491
|
- Final Diff
|
|
474
492
|
|
|
475
|
-
All three toggles default to `off`. Turning on any gate writes
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
`
|
|
493
|
+
All three toggles default to `off`. Turning on any gate writes the selected
|
|
494
|
+
global gate list to `~/.vcm/settings.json`. Turning all gates off stores an
|
|
495
|
+
empty selected gate list. VCM then mirrors this global setting into the active
|
|
496
|
+
task's `.ai/vcm/codex-reviews/index.json` as runtime state for PM/tool
|
|
497
|
+
consumption.
|
|
479
498
|
|
|
480
499
|
The task workspace must not show a separate Codex Review Gates panel. The UI
|
|
481
500
|
does not expose manual `Run`, `Run Again`, `Retry`, `Skip`, or `Override`
|
|
@@ -81,7 +81,7 @@ These entries match the current `example/rust-layered/.ai/vcm-harness-manifest.j
|
|
|
81
81
|
| Claude settings | `.claude/settings.json` | json-merge | Long-term | VCM owns hook entries matching VCM command markers. |
|
|
82
82
|
| Agent directory | `.claude/agents/` | VCM-created directory | Long-term | Contains the four core VCM role agents. |
|
|
83
83
|
| Core agent | `.claude/agents/project-manager.md` | managed-block | Long-term | Project-manager role rules. |
|
|
84
|
-
| Core agent | `.claude/agents/architect.md` | managed-block | Long-term | Architect role rules: plan document, code scaffolding, Debug Mode, docs sync. |
|
|
84
|
+
| Core agent | `.claude/agents/architect.md` | managed-block | Long-term | Architect role rules: plan document, Scaffold Manifest, code scaffolding, Debug Mode, docs sync. |
|
|
85
85
|
| Core agent | `.claude/agents/coder.md` | managed-block | Long-term | Coder role rules: scaffold implementation, coding standards, baseline unit checks. |
|
|
86
86
|
| Core agent | `.claude/agents/reviewer.md` | managed-block | Long-term | Reviewer role rules: independent validation, TESTING.md strategy, integration/E2E case lists. |
|
|
87
87
|
| Skill directory | `.claude/skills/` | VCM-created directory | Conditional long-term | Keep while repo-local VCM skills are installed. |
|
package/docs/product-design.md
CHANGED
|
@@ -75,7 +75,7 @@ Recommended flow:
|
|
|
75
75
|
|
|
76
76
|
```text
|
|
77
77
|
project-manager
|
|
78
|
-
-> architect architecture plan and code scaffolding
|
|
78
|
+
-> architect architecture plan, Scaffold Manifest, and code scaffolding
|
|
79
79
|
-> coder implementation and baseline unit checks
|
|
80
80
|
-> reviewer independent validation
|
|
81
81
|
-> architect docs sync / architecture drift check
|
|
@@ -219,6 +219,7 @@ The project manager must not become the architect, coder, reviewer, or debugger
|
|
|
219
219
|
The architect owns:
|
|
220
220
|
|
|
221
221
|
- architecture plan
|
|
222
|
+
- Scaffold Manifest for task-specific file context and coder guidance
|
|
222
223
|
- module boundaries
|
|
223
224
|
- file responsibilities
|
|
224
225
|
- cross-file callable surfaces and contract comments
|
|
@@ -194,8 +194,9 @@ VCM uses four core roles:
|
|
|
194
194
|
- `architect`: technical planner and docs-sync owner. It defines module/file
|
|
195
195
|
responsibilities, cross-file callable surfaces, public contracts, phase
|
|
196
196
|
boundaries, risks, and durable docs updates. Before coder work starts,
|
|
197
|
-
architect writes the plan
|
|
198
|
-
contract comments and
|
|
197
|
+
architect writes the plan with a Scaffold Manifest and materializes only the
|
|
198
|
+
minimum necessary code scaffolding with durable contract comments and
|
|
199
|
+
`VCM:CODE` placeholders.
|
|
199
200
|
- `coder`: implementation owner. It changes production code and baseline unit
|
|
200
201
|
tests within the approved plan. It follows the architect-defined scaffold,
|
|
201
202
|
implements and removes `VCM:CODE` placeholders, follows general coding
|
|
@@ -240,19 +241,28 @@ workload or context size is not a valid reason to change the architect plan.
|
|
|
240
241
|
## 7.1 Architecture Plan And Code Scaffolding
|
|
241
242
|
|
|
242
243
|
For code changes, the architect plan is not only a markdown handoff. It is a
|
|
243
|
-
plan document plus code
|
|
244
|
+
plan document plus a Scaffold Manifest and the minimum necessary code
|
|
245
|
+
scaffolding.
|
|
244
246
|
|
|
245
247
|
The plan document defines affected modules, changed or created files, file
|
|
246
248
|
responsibilities, why each file is in scope, user-visible behavior changes,
|
|
247
249
|
non-private cross-file callable surfaces, docs impact, risks, and Replan
|
|
248
250
|
triggers.
|
|
249
251
|
|
|
252
|
+
The Scaffold Manifest carries task-specific file context for the current handoff:
|
|
253
|
+
why a file is in scope, what coder should implement, allowed implementation
|
|
254
|
+
freedom, expected `VCM:CODE` placeholders, durable code comment needs, proof
|
|
255
|
+
points, and Replan triggers. Task context, phase notes, handoff instructions,
|
|
256
|
+
temporary rationale, and coder guidance belong in the Scaffold Manifest, not in
|
|
257
|
+
source-code comments.
|
|
258
|
+
|
|
250
259
|
Code scaffolding materializes that plan in the repository before coder work
|
|
251
260
|
starts:
|
|
252
261
|
|
|
253
262
|
- new modules or files are created when needed
|
|
254
|
-
-
|
|
255
|
-
are documented in code
|
|
263
|
+
- durable behavior, contracts, invariants, error boundaries, or non-obvious
|
|
264
|
+
logic are documented in code only when they should remain useful after the
|
|
265
|
+
task is complete
|
|
256
266
|
- new or changed non-private callable surfaces are defined directly in code with
|
|
257
267
|
signature shape and contract comments
|
|
258
268
|
- incomplete implementation bodies are marked with `VCM:CODE`
|