Skip to content

feat: fall back to built-in methods when the elicitation registry is missing or malformed #2516

Description

@devilliersdutoit

Describe your idea

When bmad-advanced-elicitation runs Step 1 (Method Registry Loading), it loads src/core-skills/bmad-advanced-elicitation/methods.csv but has no instruction for what to do if that file is missing, empty, or malformed. Add a registry load guard so the skill HALTs with a clear error instead of silently improvising.

Why is this needed?

If methods.csv is absent or corrupted, the agent has no defined behavior and falls back to inventing methods from memory — an unpredictable menu that doesn't match the documented registry. A fast, explicit failure tells the user exactly what's wrong (missing/malformed registry) instead of degrading silently. Fail-fast on missing required config is standard practice.

How should it work?

Add a natural-language HALT condition to Step 1: if methods.csv cannot be read, is empty, is missing the header num,category,method_name,description,output_pattern, or has no method rows, stop and report a clear error, and do not invent methods. No code — consistent with the natural-language framework.

Additional context

Small, focused SKILL.md-only change. Follows the same Track-0 hardening pattern as #2514.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions