vibe-coding-master 0.5.1 → 0.5.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.
|
@@ -6,7 +6,7 @@ export function renderRootClaudeHarnessRules() {
|
|
|
6
6
|
- Use \`vcm-route-message\` whenever a VCM role hands off work, asks another role a question, reports a result, reports a blocker, or raises a finding. Follow its write-then-stop rule.
|
|
7
7
|
- Use \`vcm-long-running-validation\` for long-running validation. Follow the background job limits below.
|
|
8
8
|
- Use \`vcm-report-harness-issue\` when you notice a reusable VCM harness problem. Record feedback; do not contact Harness Engineer directly.
|
|
9
|
-
- Project-manager
|
|
9
|
+
- Project-manager runs \`vcm-gate-review\` unconditionally at every Gate Review trigger point and on VCM Gate Review callbacks; the tool reports the authoritative enable state.
|
|
10
10
|
|
|
11
11
|
## VCM Harness Scope
|
|
12
12
|
|
|
@@ -123,7 +123,7 @@ outside the source boundary.`;
|
|
|
123
123
|
export function renderVcmGateReviewSkillRules() {
|
|
124
124
|
return `## Purpose
|
|
125
125
|
|
|
126
|
-
Use this skill
|
|
126
|
+
Use this skill at every project-manager Gate Review trigger point and whenever VCM sends a Gate Review callback. Running the request is mandatory and unconditional: always run the tool at each trigger point and let its output decide; do not pre-judge whether Gate Review is enabled. The tool reports the authoritative enable state.
|
|
127
127
|
|
|
128
128
|
## Trigger Points
|
|
129
129
|
|
|
@@ -133,7 +133,7 @@ Use this skill when project-manager reaches a VCM Gate Review or receives a VCM
|
|
|
133
133
|
|
|
134
134
|
## Request
|
|
135
135
|
|
|
136
|
-
Run:
|
|
136
|
+
Run this unconditionally at each trigger point (do not first check whether Gate Review is enabled):
|
|
137
137
|
|
|
138
138
|
\`\`\`sh
|
|
139
139
|
.ai/tools/request-gate-review --gate <architecture-plan|validation-adequacy|final-diff>
|
|
@@ -310,6 +310,16 @@ def request_id(gate: str) -> str:
|
|
|
310
310
|
def local_request(gate: str) -> int:
|
|
311
311
|
root = root_dir()
|
|
312
312
|
index_path = root / ".ai/vcm/gate-reviews/index.json"
|
|
313
|
+
if not index_path.is_file():
|
|
314
|
+
# Reached only when the VCM API is unreachable (call_vcm_api returned None)
|
|
315
|
+
# AND no local index exists, so the authoritative enable state is unknown.
|
|
316
|
+
# Fail safe instead of silently treating an indeterminate state as disabled.
|
|
317
|
+
print_result(
|
|
318
|
+
"failed_to_start",
|
|
319
|
+
gate=gate,
|
|
320
|
+
reason="cannot reach VCM API and no local gate-review index; enable state is indeterminate",
|
|
321
|
+
)
|
|
322
|
+
return 2
|
|
313
323
|
index = read_json(index_path)
|
|
314
324
|
enabled = bool(index.get("enabled", False))
|
|
315
325
|
gate_record = index.get("gates", {}).get(gate, {}) if isinstance(index.get("gates"), dict) else {}
|
|
@@ -72,11 +72,10 @@ PM may lightly rewrite the user's words to:
|
|
|
72
72
|
|
|
73
73
|
### Gate Review Gates
|
|
74
74
|
|
|
75
|
-
-
|
|
76
|
-
-
|
|
77
|
-
-
|
|
78
|
-
-
|
|
79
|
-
- Before PR preparation, request \`final-diff\`; on \`request_changes\`, route the report to architect for Debug Mode or Replan assessment.
|
|
75
|
+
- Gate Review requests are mandatory and unconditional. At every trigger point, use the \`vcm-gate-review\` skill to run \`.ai/tools/request-gate-review --gate <gate>\` without first judging whether Gate Review is enabled. The tool (via VCM) is the single source of truth for enable state; never skip the run because you assume Gate Review is off or because the worktree has no gate-review index yet.
|
|
76
|
+
- The tool's first output line decides the next step: \`disabled\`, \`not_required\`, or \`already_approved\` continue the normal VCM flow; \`started\` or \`running\` stop the turn and wait for the VCM callback; \`failed_to_start\` is a hard stop — report it to the user and do not silently proceed past the gate.
|
|
77
|
+
- Trigger points (run each unconditionally): before coder dispatch run \`architecture-plan\`; before docs sync or final acceptance run \`validation-adequacy\`; before PR preparation run \`final-diff\`.
|
|
78
|
+
- On a callback, accept only \`approve\` or \`request_changes\`. On \`request_changes\`, route \`architecture-plan\`/\`final-diff\` reports to architect (Debug Mode or Replan assessment) and \`validation-adequacy\` reports to reviewer.
|
|
80
79
|
- Do not ask Gate Reviewer to choose owners, fixes, Replan, or user-intervention needs.
|
|
81
80
|
- Record gate decision, report path, and any skip or override reason.
|
|
82
81
|
|
|
@@ -57,6 +57,7 @@ Check:
|
|
|
57
57
|
- architecture plan completion, Replan, or architect follow-up decision is recorded
|
|
58
58
|
- reviewer report records validation commands, results, skipped checks with reasons, and an acceptable decision
|
|
59
59
|
- required Gate Reviews are approved, skipped with a recorded reason, or overridden with a recorded reason
|
|
60
|
+
- Gate Review enable state is confirmed authoritatively: do not infer that no Gate Reviews were required from an absent or empty \`.ai/vcm/gate-reviews/index.json\`. When Gate Review is enabled, a missing index or a required gate without a recorded decision means the gate was skipped — run the matching \`.ai/tools/request-gate-review --gate <gate>\` (the tool is the source of truth) and do not accept until each required gate returns \`approve\`/\`already_approved\`, \`disabled\`/\`not_required\`, or a recorded skip/override
|
|
60
61
|
- docs-sync report records docs updated, docs intentionally left unchanged, or required follow-up
|
|
61
62
|
- known issues are either resolved, promoted to durable docs by architect, or explicitly accepted
|
|
62
63
|
- temporary task state is ready to clean after durable facts are promoted
|