Skip to content

Ruleset fights host plan/review gates (agent writes spec .md instead of submit_plan) #757

Description

@fsdio

Found while using ponytail in OpenCode

Symptom: with a plan/review mode active and the plan-review tool available (submit_plan in OpenCode), the agent rarely opens it — it ships code, or writes hand-made .md / prose summaries instead.

Root cause (forensic):

  1. grep submit_plan across the repo returns nothing — the ruleset never acknowledges host review gates.

  2. Two rules actively clash with plan mode:

    • "Code first." (Output section)
    • "Ship the lazy version ... Never stall on an answer you can default" (Rules)

    The ruleset is injected last into the system prompt every turn, so it wins over the host's plan-only constraint.

  3. The one-check rule pushes toward writing files; in plan mode the only permitted write is an .md, which explains the spec-file behavior.

  4. Note: the ponytail MCP server only serves the ruleset text; MCP being active has no bearing on whether submit_plan gets used — that's a host tool.

Secondary finding: the runnable-check rule never bounds execution, so checks that fail due to a timeout (not logic) get re-run endlessly against long-running commands.

Proposed fix incoming as a PR: scope both rules to execution choices, add an explicit plan-gate clause, and require one bounded check run.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions