Skip to content

Add defensive bash error-handling guidance to .fullsend/AGENTS.md #47

Open

Description

@fullsend-ai-retro

What happened

The retro agent created issue #44 with a proposed bash snippet for the cve-bump agent definition that lacked error handling on the yarn dedupe remediation command. The code agent implemented this snippet verbatim in PR #45 commit e1b9cf5. The review agent (run 34272263019) correctly identified that if yarn dedupe itself failed (e.g., registry resolution error), execution would fall through to yarn install without surfacing the error — leaving duplicates in the lockfile, which is the exact condition the step was meant to prevent. The fix agent added || { echo "yarn dedupe failed"; exit 1; } in commit 1d88202, costing ~$4.19 and ~20 minutes for the fix + re-review cycle.

What could go better

The code agent should independently add error handling to bash commands in agent definition files, even when the source issue's proposed snippet omits it. Agent definition bash snippets are instruction templates that other agents will follow literally, so robustness is especially important — a missing error handler in an instruction template can propagate to every future agent run that follows it.

This repo's .fullsend/AGENTS.md already contains repo-specific agent guidance (skill invocation, test commands, yarn lockfile handling) but has no guidance about defensive bash practices in agent definition files. Adding such guidance would help code, fix, and retro agents produce more robust bash snippets when modifying files under .fullsend/rhdh/agents/.

Confidence: moderate. This is based on a single instance. The rework cost ($4.19) is modest, but agent definition files in this repo contain multiple bash blocks (cve-bump.md alone has several), so the guidance could prevent future occurrences of the same pattern.

Proposed change

Add the following guidance to .fullsend/AGENTS.md:

When writing or modifying bash commands in agent definition files
(`.fullsend/rhdh/agents/*.md`), ensure every command that can fail has
explicit error handling (e.g., `cmd || { echo "cmd failed"; exit 1; }`).
Agent definition bash snippets are instruction templates — other agents
will follow them literally, so missing error handlers propagate silently.

Place it after the existing yarn/dedupe guidance block, since it addresses the same class of concern (ensuring agent-generated artifacts are CI-ready).

Validation criteria

The next 3 code or fix agent PRs that modify bash snippets in .fullsend/rhdh/agents/ files should include error handling on every failable command without requiring a review-agent finding to add it. Verify by checking that review agent runs on those PRs do not flag missing error handling in bash commands.


Generated by retro agent from #45

Activity

  1. fullsend-ai-triage commented on Sep 8, 2026

    @fullsend-ai-triage

    🤖 Finished Triage · ✅ Success · Started 9:19 PM UTC · Completed 9:23 PM UTC

    Commit: ecd1098 · View workflow run →

    Runtime: claude · Model: opus → claude-opus-4-6 · Effort: high · Cost: $0.71

  2. fullsend-ai-triage commented on Sep 8, 2026

    @fullsend-ai-triage

    This is a straightforward documentation addition with a clear insertion point and proposed text. The motivating incident (PR #45 fix cycle) is already resolved — this issue captures the process improvement to prevent recurrence.

    Proposed test case

    Verify .fullsend/AGENTS.md contains a paragraph after the yarn/dedupe
    guidance block instructing agents to add explicit error handling
    (e.g., cmd || { echo "cmd failed"; exit 1; }) to every failable bash
    command in agent definition files (.fullsend/rhdh/agents/*.md).
    

    Next steps:

    • /fs-code — agent creates a PR to implement this issue
    • /fs-code <your instruction> — agent implements with your specific guidance
  3. fullsend-ai-coder commented on Sep 8, 2026

    @fullsend-ai-coder

    🤖 Finished Code · ✅ Success · Started 9:24 PM UTC · Completed 9:28 PM UTC

    Commit: ecd1098 · View workflow run →

    Runtime: claude · Model: claude-opus-4-6 · Cost: $0.67

  4. fullsend-ai-coder commented on Sep 8, 2026

    @fullsend-ai-coder

    An open PR already addresses this issue — skipping automated implementation.

    To override, comment /fs-code --force on this issue.

    Posted by fullsend pre-code check

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    documentationImprovements or additions to documentationpr-openAn open PR already addresses this issueready-for-triageTriggers triage agent dispatchready-to-code

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions