mirror of
https://github.com/gastownhall/beads.git
synced 2026-09-14 20:17:24 +08:00
d2f87d50de
* docs(pipeline): pin the generated CLI docs to the released bd; repair main's CLI reference The #4874 squash-merge raced the docs-autofix bot: the bot had pushed a regeneration from main's source onto the PR branch, so the squash landed a contradictory mix — the release-aligned hand-written docs plus a CLI reference re-documenting unreleased commands and flags, with docs.json referencing four pages (heartbeat, migrate-personal, reclaim, unclaim) whose files do not exist. That broken nav fails the docsync guard on main and on every branch cut from it. This restores the intended end state of #4874 and lands the pin that prevents the race from recurring. - Regenerate the CLI reference from a bd built from the v1.1.0 tag (CI's canonical pure-Go build), removing the unreleased commands/flags and fixing the dangling nav entries. - docs/cli-docs.pin names the release tag; scripts/resolve-docs-bd.sh builds and caches a canonical pure-Go bd from that tag, fetching the tag first in shallow CI checkouts. - generate-cli-docs.sh, check-doc-flags.sh, and check-cli-docs-drift.sh resolve bd through the pin and ignore a supplied binary while pinned (BD_DOCS_IGNORE_PIN=1 bypasses), so the drift gates and the autofix bot now enforce docs-match-release instead of docs-match-main. - tools/docsmint detects the pre-overhaul Docusaurus staging layout that bd <= v1.1.0 emits and converts it to the generic form before its normal Mintlify transform (tested); removable once the pin reaches a release whose emitter writes build/cli-docs. - check-doc-flags.sh: run without timeout(1) on macOS instead of failing Check 4. - Decision record: engdocs/decisions/2026-07-17-docs-release-pin.md; the beads-docs skill §8 updated to match. * lint: annotate gosec G705 false positive in the docsmint legacy bridge Same class as the existing nav-splice annotation: a developer tool writing repo Markdown, not a web-output sink.
107 lines
2.8 KiB
Markdown
107 lines
2.8 KiB
Markdown
---
|
|
title: "bd formula"
|
|
description: "Manage workflow formulas - the source layer for molecule templates."
|
|
---
|
|
|
|
{/* AUTO-GENERATED: do not edit manually */}
|
|
|
|
Generated from `bd help --doc formula`.
|
|
|
|
Manage workflow formulas - the source layer for molecule templates.
|
|
|
|
Formulas are TOML/JSON files that define workflows with composition rules.
|
|
Define formulas, cook them into protos, then pour or wisp them into work.
|
|
|
|
Search paths (in order):
|
|
1. <resolved-beads-dir>/formulas/ (active project)
|
|
2. <checkout-root>/.beads/formulas/ (repo-local formulas)
|
|
3. ~/.beads/formulas/ (user)
|
|
4. $GT_ROOT/.beads/formulas/ (shared workspace root, if GT_ROOT set)
|
|
|
|
Commands:
|
|
list List available formulas from all search paths
|
|
show Show formula details, steps, and composition rules
|
|
|
|
```
|
|
bd formula [flags]
|
|
```
|
|
|
|
## bd formula convert
|
|
|
|
Convert formula files from JSON to TOML format.
|
|
|
|
TOML format provides better ergonomics:
|
|
- Multi-line strings without \n escaping
|
|
- Human-readable diffs
|
|
- Comments allowed
|
|
|
|
The convert command reads a .formula.json file and outputs .formula.toml.
|
|
The original JSON file is preserved (use --delete to remove it).
|
|
|
|
Examples:
|
|
bd formula convert shiny # Convert shiny.formula.json to .toml
|
|
bd formula convert ./my.formula.json # Convert specific file
|
|
bd formula convert --all # Convert all JSON formulas
|
|
bd formula convert shiny --delete # Convert and remove JSON file
|
|
bd formula convert shiny --stdout # Print TOML to stdout
|
|
|
|
```
|
|
bd formula convert <formula-name|path> [--all] [flags]
|
|
```
|
|
|
|
**Flags:**
|
|
|
|
```
|
|
--all Convert all JSON formulas
|
|
--delete Delete JSON file after conversion
|
|
--stdout Print TOML to stdout instead of file
|
|
```
|
|
|
|
## bd formula list
|
|
|
|
List all formulas from search paths.
|
|
|
|
Search paths (in order of priority):
|
|
1. <resolved-beads-dir>/formulas/ (active project - highest priority)
|
|
2. <checkout-root>/.beads/formulas/ (repo-local formulas)
|
|
3. ~/.beads/formulas/ (user)
|
|
4. $GT_ROOT/.beads/formulas/ (shared workspace root, if GT_ROOT set)
|
|
|
|
Formulas in earlier paths shadow those with the same name in later paths.
|
|
|
|
Examples:
|
|
bd formula list
|
|
bd formula list --json
|
|
bd formula list --type workflow
|
|
bd formula list --type convoy
|
|
|
|
```
|
|
bd formula list [flags]
|
|
```
|
|
|
|
**Flags:**
|
|
|
|
```
|
|
--type string Filter by type (workflow, expansion, aspect, convoy)
|
|
```
|
|
|
|
## bd formula show
|
|
|
|
Show detailed information about a formula.
|
|
|
|
Displays:
|
|
- Formula metadata (name, type, description)
|
|
- Variables with defaults and constraints
|
|
- Steps with dependencies
|
|
- Composition rules (extends, aspects, expansions)
|
|
- Bond points for external composition
|
|
|
|
Examples:
|
|
bd formula show shiny
|
|
bd formula show rule-of-five
|
|
bd formula show security-audit --json
|
|
|
|
```
|
|
bd formula show <formula-name> [flags]
|
|
```
|