Wiki ๐Ÿ” Search

Feature Brainstorm Flow

Brainstorm a new feature with an assistant that knows the whole repo, pressure-test it, and turn the decision into an ADR โ€” without your exploration ever touching real code or the wrong branch. Three commands do all the git; you type none.

Created: 2026-06-03 | Last Updated: 2026-08-27

Start here for a new idea: /qiiub-intent-new (the Workshop). Since 2026-08-27 the Workshop is the elicitation front door. It runs these same four lenses as real research legs, then proves the result with two verifiers the three commands below do not have โ€” grounding (every factual claim re-verified by a fresh agent) and buildability (a fresh agent reading only the output must produce a build plan) โ€” and it files the intent on a PR, which the no-push brainstorm copy structurally cannot do. /qiiub-intent-import is the same loop prefilled from an external artifact. See docs/design/2026-08-27-workshop-loop-spec.md.

The three commands below are not retired. /qiiub-feature-brainstorm is still right for a fast, low-stakes pressure-test inside the no-push copy and for continuing an existing draft-*.md; /qiiub-feature-status still reads those notes; and /qiiub-feature-promote is not superseded at all โ€” it targets docs/adr/, a different destination from admission. What changed is only which door a new idea goes through.
Brainstorm-only namespace. Notes in docs/brainstorm/ are working drafts, not code. A decision becomes an ADR only through a reviewed PR from the real repo โ€” never directly from a brainstorm session.

The three commands

/qiiub-feature-brainstorm

Syncs a separate brainstorm copy to the latest main, reads the current ADRs and rules, pressure-tests your idea through four lenses (feasibility ยท conflict ยท risk ยท devil's advocate), and saves the decision as a draft-*.md note.

Run in: the brainstorm copy โ€” if you run it in the real repo, it sets the copy up and points you there
/qiiub-feature-status

Read-only dashboard: which ideas are still draft, which are approved, and which have already been promoted to an ADR.

Run in: either folder
/qiiub-feature-promote

Turns an approved note into an ADR and opens its PR, with a collision-checked ADR number.

Run in: the real repo only โ€” it refuses to run in the brainstorm copy

Setup โ€” once per developer

  1. In your normal repo: git pull origin main โ€” you now have the three commands.
  2. Run /qiiub-feature-brainstorm once. It creates a sibling brainstorm copy at ../qiiub-brainstorm whose push is disabled, and tells you to open it.

That is the whole install. No manual git.

Daily use

  1. Brainstorm โ€” open the qiiub-brainstorm folder and run /qiiub-feature-brainstorm. It syncs to the latest main, you talk the feature through, and the decision is saved as a draft note.
  2. Check what's pending โ€” /qiiub-feature-status.
  3. Make it real โ€” back in your normal repo, /qiiub-feature-promote drafts the ADR and opens the PR. Mike (or the ADR-review deputy) reviews it before it merges.

Why it is safe

Three layers. The real wall is the last one โ€” it lives on the server, not in trusting the assistant.

๐Ÿšซ
1 ยท The brainstorm copy cannot pushremote.origin.pushurl = DISABLED. Whatever happens in that copy cannot reach the remote or your real working tree.
๐Ÿงญ
2 ยท The commands guard the folder/qiiub-feature-brainstorm refuses to run in the real repo; /qiiub-feature-promote refuses to run in the copy. You cannot fumble the wrong folder.
๐Ÿ”’
3 ยท The source of truth changes only through a reviewed PRmain accepts changes only via PR approval plus the cascade-guards CI. Even if the assistant does something unexpected, nothing lands in main without a human "yes". This is the wall.

Admin โ€” the wall is enforced, with two gaps worth knowing

Branch protection on main is ON. This page previously said it was off, citing protected: false against the old BCPOS/qiiub path โ€” both stale. The current reading is kept in one place, docs/brainstorm/README.md, which records protected: true as of 2026-08-21: a PR with 1 approval, stale approvals dismissed on push, CODEOWNERS review required, three required status checks, and force-push and deletion of main blocked.

Two things that same reading does not say, and both matter: branches are not required to be up to date with main before merging (strict: false), so a check that passed may not reflect the merge result; and the rules are not enforced for administrators (enforce_admins: false), so an admin can still go around them.

To re-read it yourself: gh api repos/Qiiub/qiiub/branches/main/protection. Note the org โ€” the monorepo moved from BCPOS/qiiub to Qiiub/qiiub.

Companion: docs/brainstorm/README.md (same content, text form) ยท design history: docs/design/qiiub-orchestrated-brainstorm.md.