Skip to content

Prevent follow-up cards from interrupting Freebuff base2 runs - #1519

Open
peter-research wants to merge 2 commits into
CodebuffAI:mainfrom
peter-research:fix/freebuff-followup-cards
Open

peter-research wants to merge 2 commits into
CodebuffAI:mainfrom
peter-research:fix/freebuff-followup-cards

Conversation

@peter-research

Copy link
Copy Markdown

Summary

  • Disable suggest_followups by default for Freebuff's base2 roots, matching the existing Fable variant's behavior.
  • Keep ask_user available so agents can still ask necessary clarifying questions.
  • Preserve follow-up cards for Codebuff modes and allow Freebuff variants to opt back in explicitly with noFollowups: false.
  • Add tests for defaults and the explicit override.

This addresses the failure mode described in #1434: time-limited Freebuff runs can stop on optional follow-up cards even when the user asked the agent to continue working.

Testing

Added regression coverage in agents/__tests__/base2.test.ts. I haven't run the Bun test suite in this environment.

@codebuff-team

Copy link
Copy Markdown
Contributor

Nice, tightly scoped fix. The change in agents/base2/base2.ts only flips the default for noFollowups when mode === 'free', which matches the stated goal of aligning Freebuff's base2 root with the existing Fable variant's behavior, and it's a one-line functional diff with a clear comment explaining the rationale (tied to #1434).

The tests in base2.test.ts cover both directions: default suppression for free mode while keeping ask_user, and the explicit noFollowups: false opt-in, plus a check that default/lite/max are unaffected. That's the right test shape for this kind of default-flip change.

A couple of things worth double-checking before porting:

  • Confirm that mode === 'free' is actually synonymous with "Freebuff base2 root" everywhere it's called, and that no other caller relies on free mode still emitting follow-up cards by default (e.g. any UI/CLI flow that expects the card even in free mode for non-Freebuff use). A grep for createBase2('free' call sites would be good due diligence.
  • The PR description says you haven't run the Bun test suite - please do before merge, just to catch any snapshot or fixture that encodes the old default.

Overall this looks like a correct, minimal, well-reasoned fix with matching tests. Happy to see this ported pending the default-overlap check above.

@codebuff-team codebuff-team added bot:triaged Classified by the community triage bot pr:port-candidate Worth porting into the private source tree labels Oct 14, 2026

This branch has not been deployed

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

Labels

bot:triaged Classified by the community triage bot pr:port-candidate Worth porting into the private source tree

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants