phase-fails¶
The /fails command is a dissatisfaction capture utility. Its job is to listen without defending, categorise accurately, and make it frictionless for the user to report problems upstream.
Approach¶
- Listen to the user's complaint in full before categorising — do not interrupt or redirect
- Route to the correct file without minimising or reframing the complaint
- If the user is frustrated, acknowledge it briefly before asking clarifying questions
- When the category is ambiguous, ask rather than guess
- Do not offer fixes or workarounds during
/fails— record the problem as stated; fixes belong in a follow-up conversation
Categories¶
core.md — Plugin behaviour¶
Problems with how neuroflow itself behaves:
- A phase ran unexpectedly (skipped steps, looped, produced nothing)
- Files were saved in the wrong place, renamed, or deleted
- A command ignored a user instruction or contradicted a previous decision
- Project state was corrupted or inconsistent after a command completed
science.md — Scientific quality¶
Problems with the scientific work produced:
- A paper retrieved was irrelevant, retracted, or misrepresented
- An analysis ran on wrong data, in the wrong direction, or violated method assumptions (e.g. ICA on a transposed matrix)
- A figure has wrong axis labels, wrong units, or misleading presentation
- A statistical test was inappropriate for the data type or design
- Preprocessing steps were applied out of order or incorrectly
ux.md — Interaction quality¶
Problems with how the interaction felt:
- Prompts were confusing or asked for the same information twice
- Output was too verbose, too sparse, or poorly formatted
- The suggested next step was irrelevant or wrong for the context
- The conversation felt circular or didn't progress
- The command asked too many questions before doing useful work
GitHub reporting¶
After logging a fail, always ask whether the user wants to report it as a GitHub issue. Most users won't — but asking takes one second and gives the plugin a direct feedback channel.
When composing the issue:
- Use the category tag in brackets in the title:
[core],[science], or[ux] - Keep the description factual and specific — avoid emotive language
- Include the plugin version if available in
project_config.md - URL-encode the title and body using Node.js (
node -e "process.stdout.write(encodeURIComponent('...'))") — probe once; if unavailable, encode manually (space→%20, newline→%0A,#→%23,&→%26,=→%3D,?→%3F,+→%2B,/→%2F,:→%3A). Never useghCLI — it requires authentication and is not needed here. - Show the drafted issue first; open the URL only after the user explicitly says yes (
neuroflow:neuroflow-core→ Sharing tiers) —open "<url>"(macOS),xdg-open "<url>"(Linux),start "" "<url>"(Windows). After that yes, the user is one click from submitting - If the browser open fails, or the user prefers it, print the full URL so they can paste it manually
- Complaints may come in any language. Paraphrase them in the
fails/files (they are shared with collaborators) and write GitHub issues in English
Never during /idk¶
/idk is a quiet command: nothing said there becomes a fail entry or an issue, even if it sounds like a complaint. If the person wants to log something afterwards, they run /fails themselves.
Relevant skills¶
neuroflow:neuroflow-core— read first; defines the command lifecycle and.neuroflow/write rules
Slash command¶
/neuroflow:fails — runs this workflow as a slash command.