Skip to content

Releases: broomva/bstack

v0.27.1 — fix: L3 rate gate counts mutations, not creations — unblocks the initial bootstrap commit (BRO-1435)

08 Jun 23:49
19ef2ba

Choose a tag to compare

fix: L3 rate gate counts mutations, not creations — unblocks the initial bootstrap commit (BRO-1435)

Found via live dogfooding (P11) of the v0.27.0 autonomous-loop demo: bstack bootstrap activates the L3 rate gate, then the user's very first git commit of the freshly-scaffolded governance is blocked — the gate counted the 5 newly-created L3 files as 5 L3 mutations (5/1 EXCEEDED). Creation is not mutation: there is no prior governance state to destabilize.

Fixed

  • scripts/l3-rate-gate.sh — staged count: a staged L3 path counts as a mutation only if it already exists at HEAD (git cat-file -e HEAD:<path>). Newly-created L3 files (and the first-ever commit, where HEAD is absent) are exempt.
  • scripts/l3-rate-gate.sh — committed count: uses git log --diff-filter=M so commits that added L3 files (e.g. the bootstrap scaffold) don't consume the per-window budget; only commits that modified them do. Also switched the counter from wc -l on a format: stream to grep -c ., fixing a latent off-by-one (a single committed L3 mutation previously counted as 0).
  • The pre-commit template calls the script (no duplicated logic), so this fixes both bstack bootstrap Day-1 UX and every deployed .githooks/pre-commit.

Added

  • tests/l3-rate-gate.test.sh — 4 hermetic cases: (A) creating 5 L3 files is exempt, (B) 1 modification is within budget, (C) a 2nd modification in the same window is blocked, (D) non-governance changes are ignored. 4/4 pass.

Notes

  • The gate's actual purpose is preserved: governance modifications are still rate-limited to one per τ_a₃ window (verified by case C). Only creation is exempt.
  • Primitive count unchanged (20). VERSION 0.27.0 → 0.27.1.

v0.27.0 — fix: ship + deploy the dangling P1/P2/P6/P7 hook scripts; scaffold METALAYER + schemas; document the two-flow bootstrap (BRO-1431)

08 Jun 18:25
fff6671

Choose a tag to compare

fix: ship + deploy the dangling P1/P2/P6/P7 hook scripts; scaffold METALAYER + schemas; document the two-flow bootstrap (BRO-1431)

Surfaced by building a from-scratch RCS/RSI template (rcs-template) as a gap-discovery probe for bstack's own bootstrap. Found a real safety bug plus two scaffold omissions, and the absence of a generative flow.

Fixed

  • Dangling hook scripts (safety bug). settings.json.snippet wired the P1 (conversation-bridge), P2 (control-gate), P6 (knowledge-catalog-refresh), and P7 (skill-freshness) hooks at ${BROOMVA_WORKSPACE}/scripts/*.sh, but bstack shipped none of those scripts and bootstrap never copied them. Result: every workspace bootstrapped anywhere but the bstack origin had a non-functional control gate (P2) — the safety shield silently no-op'd because Claude Code invoked a script that did not exist. doctor §7 detected the gap but nothing closed it. Now bstack ships all four (scripts/{control-gate,skill-freshness,conversation-bridge,knowledge-catalog-refresh}-hook.sh, self-contained + $CLAUDE_PROJECT_DIR-portable) and deploys them into $WORKSPACE/scripts/bootstrap Phase 3.1 and repair's deploy_workspace_hooks (idempotent, never overwrites). Dogfood proof: on a fresh workspace with no bstack on PATH, the deployed control-gate blocks git push --force (exit 2) and allows git status (exit 0).

Added

  • bootstrap Phase 2 now scaffolds METALAYER.md + schemas/{state,action,trace,evaluator,egri-event}.schema.json (the control-systems manifest + typed interfaces). Templates added under assets/templates/ + assets/templates/schemas/. Previously only CLAUDE/AGENTS/policy/arcs scaffolded; the manifest and typed contract were omitted.
  • Two-flow bootstrap doc (SKILL.md). Names and sequences the structured flow (deterministic scaffold — the lossless floor, no LLM) → generative flow (agent-authored, workspace-tailored setup — bespoke, to-the-ceiling) → verify (bstack doctor gates both). Mirrors the P18 Audience Category-B-projection vs Category-C-generative split, applied to workspace setup. Invariant: never wire a hook whose script isn't deployed.

Notes

  • Primitive count unchanged (20). This is a bootstrap correctness + completeness fix, not a new P-row.
  • Hook-resolution is now consistent for the workspace-resolved hooks (all four deployed into $WORKSPACE/scripts/, self-contained on a fresh clone); the L0/L1 audit hooks remain $BSTACK_REPO-referenced (already resolving).
  • VERSION 0.26.0 → 0.27.0.

v0.25.0 — feat: doctor advisory + repair backfill for the Development Philosophy section (BRO-1409)

05 Jun 15:52
e3c2257

Choose a tag to compare

feat: doctor advisory + repair backfill for the Development Philosophy section (BRO-1409)

Follow-up to 0.24.0 (BRO-1406). The scaffold's idempotent-never-overwrite policy means newly-templated content never reaches existing workspaces — so the Development Philosophy section shipped only to new installs. This closes that gap for the section: bstack doctor surfaces it and bstack repair backfills it.

Changed

  • scripts/doctor.sh — new §4b advisory: if AGENTS.md lacks ## Development Philosophy, print an [info] nudge to run bstack repair. Informational only — a pre-0.24.0 workspace legitimately lacks it; it is not a GAP and does not fail --strict (mirrors the §12 Pillars / §13 dogfood convention).
  • scripts/repair.sh — new backfill_philosophy_section(): extracts the section verbatim from the template (heading → ## Bstack Core Automation Primitives anchor, exclusive) via files only (no shell interpolation of content), and inserts it before the target's own anchor line in both AGENTS.md and CLAUDE.md. Runs before the "fully bstack-compliant" early-exit (same pattern as the hook merge), since the advisory is not a GAP. Idempotent (skips if present) and non-destructive (insert-only; skips with a warning if the anchor is absent). Honors --dry-run / --apply-all.
  • tests/philosophy-backfill.test.sh — new: backfill + position + content-integrity + idempotency + --dry-run + missing-anchor + doctor-advisory (13 assertions).
  • references/new-workspace-flow.md — documents §4b + the repair backfill.

Notes

  • Primitive count unchanged (20). Governance-substrate tooling, not a P-row.
  • Backfill targets content gaps the never-overwrite scaffold skips — a general pattern (the hook merge does the same for .claude/settings.json).
  • VERSION 0.24.0 → 0.25.0.

v0.24.0 — feat: scaffold a Development Philosophy section into AGENTS.md/CLAUDE.md on install (BRO-1406)

05 Jun 15:18
4513547

Choose a tag to compare

feat: scaffold a Development Philosophy section into AGENTS.md/CLAUDE.md on install (BRO-1406)

bstack bootstrap now scaffolds a Development Philosophy section into a new workspace's AGENTS.md (full section) and CLAUDE.md (anchor). It states four guiding principles — Think Before Coding · Simplicity First · Surgical Changes · Goal-Driven Execution — and backs each with the primitive(s) that hold it: Think→P14+P15, Simplicity→P20, Surgical→P14+P20, Goal-Driven→P11+P19, with a note that enforcement strength varies (P14/P15 are hard predicates; P20 is a judgment gate). Previously the scaffold deployed the primitive contract without this stated intent.

Changed

  • assets/templates/AGENTS.md.template — new ## Development Philosophy section between Self-Meta Definition and the primitives table (so the why frames the how): 4-principle → backing-primitive table, the binding Ritual-vs-Substance rule, and an explicit invitation to extend it with project-specific principles.
  • assets/templates/CLAUDE.md.template — short philosophy anchor after Identity, linking to AGENTS.md#development-philosophy.
  • references/new-workspace-flow.md — deployed-files table note updated to describe the philosophy section.

Notes

  • No code change in scripts/bootstrap.sh — Phase 2 (scaffold_governance_file) copies whatever the templates hold. Idempotent-never-overwrite: new installs get the section automatically; existing workspaces are unaffected (backfill is the deferred bstack doctor/repair next step).
  • Not a new primitive. Primitive count stays 20. This is governance-substrate content, not a P-row — respects the L3 stability budget (λ₃≈0.006).
  • Companion KG artifact (workspace repo, not this repo): research/entities/tool/karpathy-claude-md-guidelines.md documents the lineage + the principle→primitive mapping.
  • VERSION 0.23.2 → 0.24.0.
  • Deferred: (1) a bstack doctor check that lints for the section (makes it contract-enforced + lets repair backfill existing workspaces); (2) dogfood into bstack's own root governance + ~/broomva.

v0.23.2 — docs: README sync to current contract + bench surfaced + P11 cross-reference (BRO-1376)

04 Jun 03:29
6ef01a3

Choose a tag to compare

docs: README sync to current contract + bench surfaced + P11 cross-reference (BRO-1376)

Closes a documentation-reconciliation gap surfaced by a post-ship audit of BRO-1205 (bench MVP) + BRO-1211 (Databricks live mode). The canonical surfaces (SKILL.md, references/provider-standards.md, CHANGELOG, spec, KG research entities) were already current; the public README.md was frozen at the P11 era and violated the CLAUDE.md Self-Documenting Standards rule #3 (counts must match SKILL.md as the authoritative source). bstack doctor does not lint the README, so the rot was not CI-enforced.

  • CHANGED README.md — synced to the current contract:
    • "Eleven irreducible primitives" → twenty; primitive table extended P1–P11 → full P1–P20 (wording from SKILL.md's enforcement table).
    • "28 curated skills" → 30 (matches SKILL.md authoritative count) across intro, Stack-layers header, and bootstrap description.
    • Commands section: was six (bootstrap/doctor/repair/status/validate/revamp); now also documents bench, wave, crystallize, metrics, skills under an "Orchestration & observability" subsection. bench links to references/provider-standards.md.
    • Reasoning-enforced primitive set corrected (P6, P9–P20) vs mechanism-enforced (P1, P2, P4, P5, P7, P8); closing narrative "eleven" → "twenty".
  • CHANGED references/primitives.md — P11 Empirical Feedback Loop section now lists bstack bench as the dedicated P11 measurement substrate (table row + paragraph), cross-referencing provider-standards.md and the bench spec.
  • NOTE Out of scope (separate audit): the deeper skill-count reconciliation (SKILL.md says 30 curated; companion-skills.yaml lists 65 full roster incl. optional). README follows SKILL.md per rule #1.

No code, no behavior change. Companion KG artifact (workspace repo, not this repo): research/entities/pattern/openai-compatible-provider-abstraction.md documents the provider-abstraction architecture that BRO-1211 introduced.

v0.23.0 — fix+feat: gitignore-aware, public-repo-aware, non-destructive bootstrap (issue #67)

29 May 21:25
ec27482

Choose a tag to compare

fix+feat: gitignore-aware, public-repo-aware, non-destructive bootstrap (issue #67)

Found dogfooding v0.22.0 on existing real repos (stimulus, broomva.tech): bootstrap is built for fresh workspaces and did two unsafe things + lacked one needed capability on repos with their own hooks/CI/gitignore.

Fixed

  • install-l3-stability.sh no longer clobbers a TRACKED .githooks/pre-commit. On a repo with a committed pre-commit (e.g. broomva.tech's multimedia-asset validator), bootstrap overwrote it with the bstack L3 rate-gate hook — moving the original to .pre-commit.localeven when core.hooksPath.githooks, so the bstack hook never even fired. Now: if the hook is git-tracked, skip + warn (the committed hook is authoritative; --force still allows the move-aside). An untracked hook is still preserved as .pre-commit.local as before.

Added

  • bootstrap.sh Phase 2.6 — gitignore reconciliation + public-repo advisory. Reconciles .gitignore against the committable-vs-machine-local manifest:
    • machine-local telemetry (.control/audit/*.jsonl) → auto-added to .gitignore if missing.
    • committable substrate (.control/arcs.yaml, rcs-parameters.toml, policy.yaml) → warns if gitignored (a coverage gap — the loop won't survive a fresh clone), never auto-un-ignores (publishing a maybe-private file is the human's call).
    • public-repo advisory (via gh repo view --json visibility, graceful if absent): on a PUBLIC remote, surfaces that scaffolded governance is committable-and-public so the operator reviews for secrets before pushing.
  • tests/gitignore-aware-bootstrap.test.sh — 5 assertions covering both fixes (tracked-hook preserved, untracked-hook sidecar still works, audit-glob added, committable-ignored warning). 5/5.

Notes

  • Additive + non-blocking: Phase 2.6 skips gracefully on a non-git workspace; canary 14/14 unaffected.
  • The manual handling on stimulus (#1811) + broomva.tech (broomva.tech#211) is the spec this automates.
  • VERSION 0.22.0 → 0.23.0.

v0.21.10 — revert: --full-depth no longer needed after broomva/skills restructure

28 May 04:33
eefd463

Choose a tag to compare

revert: --full-depth no longer needed after broomva/skills restructure

Companion to broomva/skills PR #11 (merge ab2d05b), which removed the root SKILL.md from broomva/skills to align with the anthropics/skills ecosystem-canonical monorepo shape (best practice per agentskills.io).

With the root SKILL.md gone, the npx skills CLI's default search descends into skills/<name>/ automatically — --full-depth is no longer required.

Reverted

  • references/skills-roster.md — dropped --full-depth from 26 --skill install commands
  • scripts/skill-graduate.sh — dropped --full-depth from the 4 generated install commands (commit msg, monorepo PR body, redirect-stub README, stub PR body). Future graduations now emit the canonical command form.
  • VERSION 0.21.9 → 0.21.10

Net effect across the 0.21.x line

Release What it did
0.21.9 Added --full-depth as a workaround for the root-SKILL.md shadowing (post-dogfood)
0.21.10 Removed --full-depth after the broomva/skills restructure eliminated the root cause

The roster's npx skills add broomva/skills --skill <name> commands are now both correct AND minimal — matching the form used by all other monorepos in the ecosystem.

20/20 tests (graduate + audit) still pass.


v0.21.6 — Phase 4f orcahand migration + dedup (final Tier-2 migration)

26 May 21:03
4310036

Choose a tag to compare

Phase 4f orcahand migration + dedup (final Tier-2 migration)

The last Tier-2 migration. orcahand consolidated to broomva/skills Tier-2 monorepo (broomva/skills PR #9 merge df4fb13), resolving the Phase-0 contested dedup case.

broomva/orcahand and broomva/orcahand-skill were true duplicates (both 180K, identical SKILL.md + assets/ + references/ + schemas/ + scripts/, both name: orcahand). Per user decision: migrate the canonical (.agents-symlinked) broomva/orcahandskills/orcahand/; archive BOTH source repos with redirect-stubs.

Source repos deprecated (both, 6mo window until 2026-11-26)

  • broomva/orcahand PR #1 (merge 4e637ed)
  • broomva/orcahand-skill PR #1 (merge f753966)

Files changed

  • references/companion-skills.yaml — 1 NEW entry (orcahand); 63 → 64 total
  • VERSION0.21.50.21.6
  • CHANGELOG.md — this entry

Migration complete

47 skills now in broomva/skills monorepo. All Tier-2 candidates from the inventory doc are migrated, except broomva/mirage (no remote on GitHub — flagged as an anomaly, not actionable). The skills-monorepo migration arc (Phases 2–4f) is complete.


v0.21.5 — Phase 4e neuroscience migration (TRIBE v2 family)

26 May 20:55
f5dd1ab

Choose a tag to compare

Phase 4e neuroscience migration (TRIBE v2 family)

3 standalone-repo neuroscience skills migrated to broomva/skills Tier-2 monorepo (broomva/skills PR #8 merge ca7de88):

  • tribe-v2-agent-alignment — cortical alignment benchmarking for AI encoders
  • tribe-v2-bci-applied — applied BCI + neuro-informed content optimization
  • tribe-v2-neuroscience — in-silico fMRI prediction

All NEW registry entries (none were previously registered).

Finding: _shared/ is demand-driven

The strategy doc anticipated a _shared/tribe-v2/ directory. On inspection, the 3 skills have DISJOINT reference sets (arcan-integration / cortical-region-atlas / brain-regions — no file overlap). No _shared/ extraction warranted. This validates the principle: _shared/<category>/ is created only when concrete shared content exists, never speculatively.

Source repos deprecated (6mo window until 2026-11-26)

  • broomva/tribe-v2-agent-alignment PR #1 (merge 7bca620)
  • broomva/tribe-v2-bci-applied PR #1 (merge 1e3ea14)
  • broomva/tribe-v2-neuroscience PR #1 (merge 64165b7)

Files changed

  • references/companion-skills.yaml — 3 NEW entries (60 → 63 total)
  • VERSION0.21.40.21.5
  • CHANGELOG.md — this entry

Cumulative monorepo state: 46 skills


v0.21.4 — Phase 4d specialty domain migration (largest batch)

26 May 13:02
db81481

Choose a tag to compare

Phase 4d specialty domain migration (largest batch)

17 standalone-repo skills migrated to broomva/skills Tier-2 monorepo (broomva/skills PR #7 merge 1be5fd9). 2 renamed during migration to drop -skill suffix per ecosystem norm.

By sub-category:

Hardware, robotics, physical (6): bitnet, capx-agentic-robotics, openrocket-sim, sdr-satellite, ocean-genomics, microgrid-agent

Compute & remote infrastructure (4): colab-remote, remote-gpu, claude-code-channels, claude-remote-sessions

Audio, voice, media (2, both renamed): omnivoice (from omnivoice-skill), livecoding

Advisory & consulting (3, one renamed): phronesis, procurer, alkosto-wait-optimizer (from alkosto-wait-optimizer-skill)

Health & body (2): health, founder-mode-oncology (Phase-0 contested case lean accepted)

Source repos deprecated (17 redirect-stubs merged 2026-05-26)

bitnet · livecoding · openrocket-sim · sdr-satellite · capx-agentic-robotics · ocean-genomics · phronesis · procurer · alkosto-wait-optimizer-skill · omnivoice-skill · microgrid-agent · claude-code-channels · claude-remote-sessions · colab-remote · remote-gpu · health · founder-mode-oncology — all archived after 6mo deprecation (2026-11-26).

Excluded from this batch

  • broomva/mirage — repository does not exist on GitHub (anomaly flagged in inventory § 8)
  • broomva/orcahand — Phase-0 contested dedup decision between broomva/orcahand (runtime) and broomva/orcahand-skill (duplicate); deferred to Phase 4f

Files changed

  • references/companion-skills.yaml — 16 NEW entries + 1 entry rewritten (alkosto-wait-optimizer)
  • references/skills-roster.md — install commands updated
  • VERSION0.21.30.21.4
  • CHANGELOG.md — this entry

Total registry size

44 → 60 entries (+16 net)

Cumulative monorepo state

43 skills under broomva/skills/skills/:

  • 2 workflow & lifecycle
  • 9 strategy & decision intelligence
  • 9 content & media
  • 3 research & intelligence
  • 3 finance
  • 6 hardware/robotics/physical
  • 4 compute & remote
  • 2 audio/voice/media
  • 3 advisory/consulting
  • 2 health & body