Skip to content

docs(decompose): batch task creation via bd create --graph + stale gate ref cleanup (hew-qq28)#52

Merged
droidnoob merged 2 commits into
mainfrom
feat/task-new-batch-manifest
May 29, 2026
Merged

docs(decompose): batch task creation via bd create --graph + stale gate ref cleanup (hew-qq28)#52
droidnoob merged 2 commits into
mainfrom
feat/task-new-batch-manifest

Conversation

@droidnoob
Copy link
Copy Markdown
Owner

docs(decompose): batch task creation via bd create --graph

Closes hew-qq28 by reframing it as a documentation gap rather than a code gap. The original task spec proposed building hew task new-batch <manifest> to sidestep GOTCHA:zsh-cmd-substitution. While exploring the implementation I discovered bd already has the primitive: bd create --graph plan.json accepts JSON with nodes + edges + parent_key, runs as one transaction, and passes multi-line descriptions through verbatim — including apostrophes, quotes, backticks, and $() substitutions.

Reimplementing it in hew would be pure rewrap with no value-add. So instead this PR:

Documents the batch path in the skill body

skills/core/hew-decompose.md gains a new "Batch mode" section right before Step 4 (dep wiring). The example shows the actual schema (nodes[].key, parent_key, edges[].from_key/to_key/type: "blocks") with a description that includes the actual zsh-hostile shape:

{
  "description": "**What:** validates body, returns AuthResponse.\nApostrophes', \"quotes\", $(this) and `backticks` all pass through verbatim."
}

Smoke-verified: created a task with exactly that description via bd create --graph, content survived bit-for-bit.

Updates the GOTCHA highlight

CLAUDE.md's GOTCHA:zsh-cmd-substitution entry now points at bd create --graph as the recommended workaround for >3-task batches. The old bd q + bd update --body-file advice is preserved for one-off updates.

Fixes two stale references in the same skill

The decompose skill had the same ghost primitive /hew:ship had (resolved by PR #51):

  • Step 5 (external gates): bd gate create --type=gh:pr ... rewritten to use hew gate new --gh-pr=N (which actually exists).
  • Step 6 (type table): gate dropped from the --type= enum since bd doesn't accept it. External blockers go through the dedicated hew gate surface.

What didn't ship

No hew task new-batch subcommand, no hew_core::task_manifest module. The acceptance criteria from hew-qq28 (transactional creation, multi-line descriptions, intra-batch deps) are all met by bd create --graph already. Treating bd create --graph as a documented hold-out — like bd orphans and bd lint — keeps the surface area smaller and avoids drift.

Quality

  • 924 tests pass (no code changes)
  • cargo clippy --all-targets -- -D warnings clean
  • cargo fmt --check clean

🤖 Generated with Claude Code

droidnoob and others added 2 commits May 29, 2026 20:10
Closes hew-qq28 by reframing it: bd already has the batch primitive
(`bd create --graph plan.json` — JSON with nodes/edges/parent_key,
single transaction, deps wired inline). The original task spec called
for a `hew task new-batch` wrapper, but reimplementing bd's
graph-create surface would have been pure rewrap with no value-add.

Instead:

- skills/core/hew-decompose.md gains a "Batch mode" section right
  before Step 4 (dep wiring), with a small graph-JSON example that
  proves apostrophes / quotes / backticks / $() pass through verbatim
  (smoke-verified with the actual zsh-hostile shape from the GOTCHA).
- CLAUDE.md's GOTCHA:zsh-cmd-substitution highlight is updated to
  point at the new workaround.

Also fixes two stale references in the same skill — same ghost
primitive the /hew:ship skill had:

- Step 5 (external gates): the `bd gate create --type=gh:pr` table
  is rewritten to use `hew gate new --gh-pr=N` (which actually
  exists, as of PR #51). CI/issue-close/cmd backends are called out
  as deferred behind the same GateKind enum.
- Step 6 (type table): `gate` is dropped from the `--type=` enum
  since bd doesn't accept it; external blockers go through the
  dedicated `hew gate` surface.

No code changes. 924 tests still pass, clippy + fmt clean.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Same ghost primitive caught in ship.md (PR #51) and hew-decompose.md
(PR #52): bd's --type enum doesn't include `gate`, and the dedicated
hew gate command now owns external-state gating.

- skills/SKILL.md: "Beads has native types: --type=gate, --type=epic,
  bd mol bond" rewritten. --type=gate is gone; epic/decision are
  surfaced as the real typed surfaces; bd mol bond now correctly
  flagged as broken-don't-use rather than recommended.
- skills/core/hew-plan.md: the hand-off line that mentioned `bd
  create --type=gate` now points at `hew gate new --gh-pr=N` and
  recommends `bd create --graph` for the task batch.

Audit complete across all 22 skill files + 41 command files. No
remaining ghost bd references.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@droidnoob droidnoob merged commit 1ce885c into main May 29, 2026
14 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant