refactor: Switch formula format from YAML to JSON

- Change file extension from .formula.yaml to .formula.json
- Replace gopkg.in/yaml.v3 with encoding/json in parser
- Remove yaml struct tags, keep json tags only
- Update all test cases to use JSON format
- Update documentation references

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
Steve Yegge
2025-12-25 01:37:10 -08:00
parent a8ec1d6483
commit e6ce0d6365
6 changed files with 158 additions and 166 deletions

View File

@@ -15,11 +15,11 @@ import (
"github.com/steveyegge/beads/internal/ui"
)
// cookCmd compiles a formula YAML into a proto bead.
// cookCmd compiles a formula JSON into a proto bead.
var cookCmd = &cobra.Command{
Use: "cook <formula-file>",
Short: "Compile a formula into a proto bead",
Long: `Cook transforms a .formula.yaml file into a proto bead.
Long: `Cook transforms a .formula.json file into a proto bead.
Formulas are high-level workflow templates that support:
- Variable definitions with defaults and validation
@@ -31,9 +31,9 @@ The cook command parses the formula, resolves inheritance, and
creates a proto bead in the database that can be poured or spawned.
Examples:
bd cook mol-feature.formula.yaml
bd cook .beads/formulas/mol-release.formula.yaml --force
bd cook mol-patrol.formula.yaml --search-path .beads/formulas
bd cook mol-feature.formula.json
bd cook .beads/formulas/mol-release.formula.json --force
bd cook mol-patrol.formula.json --search-path .beads/formulas
Output:
Creates a proto bead with: