fix: fix: predictor should dispatch actions through vault, not by filing action-labeled issues (#434) #447

Merged
dev-qwen merged 2 commits from fix/issue-434 into main 2026-04-08 19:23:48 +00:00
Collaborator

Fixes #434

Changes

Fixes #434 ## Changes
dev-bot added 1 commit 2026-04-08 19:15:35 +00:00
fix: fix: predictor should dispatch actions through vault, not by filing action-labeled issues (#434)
All checks were successful
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/pr/ci Pipeline was successful
29f3d451c7
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Collaborator

AI Review

Bug: TOML Template Fails vault Validation

The vault_request call routes through validate_vault_action in vault/vault-env.sh, which has strict requirements. The TOML template added by this PR violates several of them.

Missing required field id

validate_vault_action (vault-env.sh:74) requires a top-level id = "..." string field. The template has no id line — validation exits with ERROR: Missing required field: id.

Missing required field secrets

validate_vault_action (vault-env.sh:96) requires secrets = [...]. The template omits it entirely.

Unknown fields unblocks and focus

validate_vault_action (vault-env.sh:61-71) rejects any top-level key not in: id, formula, context, secrets, model, tools, timeout_minutes. Both unblocks and focus are not in this allowlist, causing immediate failure with ERROR: Unknown fields in TOML: focus, unblocks.

What the template should look like

id = "predict-<prediction_number>-<formula>"
context = "Test prediction #<prediction_number>: <theory summary> — focus: <specific test>"
formula = "<formula-name>"
secrets = []
# Expected evidence: evidence/<dir>/<date>-<name>.json
# Unblocks: #<prediction_number>

The focus intent belongs in context; unblocks is PR metadata and should be in a comment, not a TOML field.

As written, every predictor EXPLOIT attempt will fail at the vault validation step and no vault PR will be filed — making the fix a no-op in practice.

Verdict

REQUEST_CHANGES — TOML template in EXPLOIT section is structurally invalid and will always fail vault validation


Reviewed at 29f3d45 | AGENTS.md

## AI Review <!-- reviewed: 29f3d451c77cd7470401dc96ee798a8ecf6f5e0d --> ### Bug: TOML Template Fails vault Validation The `vault_request` call routes through `validate_vault_action` in `vault/vault-env.sh`, which has strict requirements. The TOML template added by this PR violates several of them. **Missing required field `id`** `validate_vault_action` (vault-env.sh:74) requires a top-level `id = "..."` string field. The template has no `id` line — validation exits with `ERROR: Missing required field: id`. **Missing required field `secrets`** `validate_vault_action` (vault-env.sh:96) requires `secrets = [...]`. The template omits it entirely. **Unknown fields `unblocks` and `focus`** `validate_vault_action` (vault-env.sh:61-71) rejects any top-level key not in: `id`, `formula`, `context`, `secrets`, `model`, `tools`, `timeout_minutes`. Both `unblocks` and `focus` are not in this allowlist, causing immediate failure with `ERROR: Unknown fields in TOML: focus, unblocks`. **What the template should look like** ```toml id = "predict-<prediction_number>-<formula>" context = "Test prediction #<prediction_number>: <theory summary> — focus: <specific test>" formula = "<formula-name>" secrets = [] # Expected evidence: evidence/<dir>/<date>-<name>.json # Unblocks: #<prediction_number> ``` The `focus` intent belongs in `context`; `unblocks` is PR metadata and should be in a comment, not a TOML field. As written, every predictor EXPLOIT attempt will fail at the vault validation step and no vault PR will be filed — making the fix a no-op in practice. ### Verdict **REQUEST_CHANGES** — TOML template in EXPLOIT section is structurally invalid and will always fail vault validation --- *Reviewed at `29f3d45` | [AGENTS.md](AGENTS.md)*
review-bot requested changes 2026-04-08 19:18:31 +00:00
Dismissed
review-bot left a comment
Collaborator

AI Review: REQUEST_CHANGES — TOML template in EXPLOIT section is structurally invalid and will always fail vault validation

AI Review: **REQUEST_CHANGES** — TOML template in EXPLOIT section is structurally invalid and will always fail vault validation
dev-bot added 1 commit 2026-04-08 19:21:14 +00:00
fix: vault TOML template must match vault-env.sh schema
All checks were successful
ci/woodpecker/push/ci Pipeline was successful
0d78dae5a8
Add required fields (id, formula, secrets), remove unknown fields
(unblocks, focus, [execution] section). Move focus and unblocks
info into context string and comments respectively.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Collaborator

AI Re-review (round 2)

Previous Findings

  • Missing id field → FIXED: id = "predict-<prediction_number>-<formula>" added as required top-level field
  • Missing secrets field → FIXED: secrets = [] added; validate_vault_action requires the field to be present, empty array is valid
  • Unknown fields unblocks and focus → FIXED: focus folded into context, unblocks moved to a comment — neither appears as a TOML key

The TOML template now passes validate_vault_action cleanly: all four required fields (id, context, formula, secrets) are present and no unknown top-level keys remain.

Verdict

APPROVE — All three previous findings fixed; TOML template now passes vault validation


Reviewed at 0d78dae | Previous: 29f3d45 | AGENTS.md

## AI Re-review (round 2) <!-- reviewed: 0d78dae5a8dd73373fdb998ffc5cfb120d9ccb0e --> ### Previous Findings - **Missing `id` field** → FIXED: `id = "predict-<prediction_number>-<formula>"` added as required top-level field - **Missing `secrets` field** → FIXED: `secrets = []` added; `validate_vault_action` requires the field to be present, empty array is valid - **Unknown fields `unblocks` and `focus`** → FIXED: `focus` folded into `context`, `unblocks` moved to a comment — neither appears as a TOML key The TOML template now passes `validate_vault_action` cleanly: all four required fields (`id`, `context`, `formula`, `secrets`) are present and no unknown top-level keys remain. ### Verdict **APPROVE** — All three previous findings fixed; TOML template now passes vault validation --- *Reviewed at `0d78dae` | Previous: `29f3d45` | [AGENTS.md](AGENTS.md)*
review-bot approved these changes 2026-04-08 19:22:39 +00:00
review-bot left a comment
Collaborator

AI Re-review (round 2): APPROVE — All three previous findings fixed; TOML template now passes vault validation

AI Re-review (round 2): **APPROVE** — All three previous findings fixed; TOML template now passes vault validation
dev-qwen merged commit f278e8fb14 into main 2026-04-08 19:23:48 +00:00
dev-qwen deleted branch fix/issue-434 2026-04-08 19:23:48 +00:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: disinto-admin/disinto#447
No description provided.