Skip to content

chore: version packages#247

Merged
suleimansh merged 1 commit into
mainfrom
changeset-release/main
Jul 5, 2026
Merged

chore: version packages#247
suleimansh merged 1 commit into
mainfrom
changeset-release/main

Conversation

@github-actions

@github-actions github-actions Bot commented Jul 5, 2026

Copy link
Copy Markdown
Contributor

This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated.

Releases

@gemstack/ai-autopilot@0.8.0

Minor Changes

  • 4a6311e: Domain preset runs can now pick a build event kind, so a preset's bug-fix loop actually fires. A run chooses it with runFramework({ buildEvent }) / the framework --kind <name> flag, and a preset can declare its own default via preset.md metadata.event (surfaced as DomainPreset.defaultEvent). Precedence: run choice > preset default > major-change; an event the preset has no loop for still falls back to the built-in checklist.

  • 8c3e7d0: The domain loop drives the production-grade review phase (Open Loop: drive the domain loop as a run phase #252).

    When a run has a domain preset, its review loop now replaces the built-in
    checklist: each pass dispatches a major-change event through the preset's
    driver-backed loop, so its review chain (e.g. code review, test coverage, security
    review) fires through the wrapped agent, and Bootstrap's pass / improve / maxPasses
    machinery gates on the union of the { blockers } verdicts the chain reports. A
    preset with no loop for the build event falls back to the built-in checklist, so a
    run is never left unreviewed. New: domainLoopChecklist + verdictFromLoopRun
    (@gemstack/framework).

    The shipped Software Development preset's review prompts (code review, test
    coverage, security review) now end with a { blockers } verdict so the loop
    actually gates rather than only running.

  • 03e06aa: Add the Open Loop bundle unit: a domain preset = {loops, prompts, skills} (Open Loop: bundle unit = preset {loops, prompts, skills} #242).

    This is the keystone that ties the three data types the framework already ships
    separately into one selectable, composable thing. Author one in code with
    defineDomainPreset, or load one from a directory of .md files (preset.md +
    loops/, prompts/, skills/) with loadDomainPreset. composeDomainPresets
    merges several into one (loops concatenate; prompts and skills merge by id/name,
    later wins), so presets-of-presets falls out; selectPreset picks the user's
    domain by name. Kept distinct from the framework Preset detector in presets/
    (skipped for the Open Loop MVP) by naming this DomainPreset.

  • 3c72f14: Add modes (Autopilot / Technical) to domain presets via conditions frontmatter (Open Loop: modes (Autopilot / Technical) via conditions frontmatter #244).

    A preset content file can now ship mode variants: a stem.<variant>.md sibling
    that declares metadata.conditions (a mode or list) overrides its stem.md base
    when those modes are active. loadDomainPreset(dir, { modes }) (and
    softwareDevelopmentPreset({ modes })) resolve the winner per stem — the most
    specific eligible variant, falling back to the base. The shipped Software
    Development preset gains a technical variant of its major-change loop as an
    illustration. This is the simple frontmatter fan-out; composing prompts from
    parameters is the follow-up (Parameterized markdown #245).

  • e45e4d0: Preset discovery API: enumerate domain presets so the CLI/UI picker can list and
    pick one by name (Preset discovery API: enumerate + pick domain presets by name #254).

    builtinDomainPresets() loads every domain preset shipped under the package's
    presets/ directory (today just Software Development; new built-ins are picked up
    automatically). loadDomainPresetsFrom(dir) loads every immediate subdirectory
    that holds a preset.md, skipping the rest, sorted by name. Pair either with the
    existing selectPreset(list, name) to pick the user's chosen domain.

  • 396dc7f: Rename the loop engine's rules vocabulary to loops (Open Loop, Open Loop: rename rules -> loops in the engine #241).

    A loop is a meta prompt, so that is the user-facing unit even though rule logic powers it. defineLoop / defaultLoops / Loop / LoopSpec replace defineRule / defaultLoopRules / LoopRule / LoopRuleSpec; the engine class is now LoopEngine (was Loop), created via createLoopEngine with LoopEngineOptions; and its option key is loops (was rules). Vocabulary only, no behavior change.

  • 24944b9: Ship the "Software Development" domain preset (Open Loop: 'Software Development' domain preset #243).

    The first built-in Open Loop preset, authored as a directory of .md files:
    two loops (major-change -> code-review + test-coverage + security-review; bug-fix
    -> root-cause + regression-test), five stack-agnostic prompt bodies, and one skill
    pointer. Non-web and user-picked (no dependency detection). Load it with
    softwareDevelopmentPreset(); builtinPresetsDir() points at the shipped
    presets/ directory. Proves the bundle unit end to end.

  • d2acba4: Add two more built-in domain presets: web-development and data-science.

    Each ships as a directory of .md files like software-development, so it is
    auto-discovered by builtinDomainPresets(), selectable via --preset <name> and
    the-framework.yml, and drives the review phase. Both carry a Technical Control
    variant (leaner major-change loop) and a bug-fix loop. Their major-change review
    prompts end with the { blockers } verdict footer so the review loop gates.

    • web-development — accessibility, performance budget, and web-security review; skill points at web.dev.
    • data-science — reproducibility, data validation, and methodology review; skill points at Google's Rules of ML.

@gemstack/framework@0.6.0

Minor Changes

  • 4a6311e: Domain preset runs can now pick a build event kind, so a preset's bug-fix loop actually fires. A run chooses it with runFramework({ buildEvent }) / the framework --kind <name> flag, and a preset can declare its own default via preset.md metadata.event (surfaced as DomainPreset.defaultEvent). Precedence: run choice > preset default > major-change; an event the preset has no loop for still falls back to the built-in checklist.

  • b81e563: Run a build under an Open Loop domain preset (Open Loop: wire domain presets into the framework run (framing + loop bridge) #251).

    runFramework({ preset, modes }) now accepts a user-picked domain preset
    ({loops, prompts, skills}). Its skills (and their personas) frame every phase of
    the run alongside the detected framework skill, the selected domain and active
    modes are narrated, and its loops + prompts are materialized into a driver-backed
    LoopEngine exposed as result.loop (each pass is a fresh driver prompt). The
    new driverLoopPrompts bridge does the materialization. Opt-in and additive: a
    run with no preset is unchanged. Driving the exposed loop as a run phase is the
    follow-up (Open Loop: drive the domain loop as a run phase #252).

  • c28c373: the-framework.yml gains an event: key so a repo can pin its build event kind (e.g. bug-fix) alongside preset/autopilot/technical. Precedence: --kind flag > the-framework.yml event > preset default > major-change.

  • 74a9907: CLI: --preset <name> runs a build under an Open Loop domain preset, with
    --autopilot / --technical mode flags (framework CLI: --preset <name> + --autopilot / --technical mode flags #256).

    --preset resolves a shipped domain preset by name (via builtinDomainPresets +
    selectPreset) and hands it to runFramework, so its loops, prompts, and skills
    frame the build. --autopilot / --technical activate the preset's conditions
    variants (applied at load time and narrated). An unknown preset name is a usage
    error that lists the available presets; the mode flags note when given without a
    preset. Additive: a run with no --preset is unchanged.

  • 8c3e7d0: The domain loop drives the production-grade review phase (Open Loop: drive the domain loop as a run phase #252).

    When a run has a domain preset, its review loop now replaces the built-in
    checklist: each pass dispatches a major-change event through the preset's
    driver-backed loop, so its review chain (e.g. code review, test coverage, security
    review) fires through the wrapped agent, and Bootstrap's pass / improve / maxPasses
    machinery gates on the union of the { blockers } verdicts the chain reports. A
    preset with no loop for the build event falls back to the built-in checklist, so a
    run is never left unreviewed. New: domainLoopChecklist + verdictFromLoopRun
    (@gemstack/framework).

    The shipped Software Development preset's review prompts (code review, test
    coverage, security review) now end with a { blockers } verdict so the loop
    actually gates rather than only running.

  • c24ae22: Read the-framework.yml for per-repo Open Loop defaults (framework: read the-framework.yml for per-repo preset + modes defaults #258).

    A project can now carry its own domain preset + modes, so you do not retype the
    flags each run:

    preset: software-development
    autopilot: true

    The CLI reads it from the run's workspace and merges it with the flags: --preset
    wins over the file's preset; --autopilot / --technical OR with the file's
    booleans (a flag only ever enables a mode). A missing file is a no-op and a
    malformed one is a warning, never a failed run. New exports: loadFrameworkConfig,
    parseFrameworkConfig, mergeRunConfig, FRAMEWORK_CONFIG_FILES,
    FrameworkFileConfig.

  • edd242b: Repo files as persistent AI memory (Repo files as persistent AI memory (CODE-OVERVIEW / KNOWLEDGE-BASE / ...) #260).

    The agent now reads the project's special files (CODE-OVERVIEW.md,
    KNOWLEDGE-BASE.md, BRAINSTORMING.md, DECISIONS.md) at the start of a run and is
    told to keep the ones it owns current, so a project's memory lives in the repo as
    plain markdown and the next run picks up where the last left off. DECISIONS.md
    stays framework-owned (we write it from the decisions ledger), so the agent reads
    it but does not edit it. New: loadRepoMemory(cwd), memoryFraming,
    MEMORY_FILES, and a memory option on runFramework; the CLI reads the files
    from the workspace and frames them alongside personas and skills.

Patch Changes

@gemstack/example-autopilot-quickstart@0.0.7

Patch Changes

@gemstack/example-bootstrap-quickstart@0.0.7

Patch Changes

@gemstack/example-framework-demo@0.0.4

Patch Changes

  • Updated dependencies [4a6311e]
  • Updated dependencies [b81e563]
  • Updated dependencies [c28c373]
  • Updated dependencies [74a9907]
  • Updated dependencies [8c3e7d0]
  • Updated dependencies [03e06aa]
  • Updated dependencies [c24ae22]
  • Updated dependencies [3c72f14]
  • Updated dependencies [e45e4d0]
  • Updated dependencies [396dc7f]
  • Updated dependencies [edd242b]
  • Updated dependencies [24944b9]
  • Updated dependencies [d2acba4]
    • @gemstack/ai-autopilot@0.8.0
    • @gemstack/framework@0.6.0

@gemstack/example-framework-discovery@0.0.4

Patch Changes

  • Updated dependencies [4a6311e]
  • Updated dependencies [b81e563]
  • Updated dependencies [c28c373]
  • Updated dependencies [74a9907]
  • Updated dependencies [8c3e7d0]
  • Updated dependencies [03e06aa]
  • Updated dependencies [c24ae22]
  • Updated dependencies [3c72f14]
  • Updated dependencies [e45e4d0]
  • Updated dependencies [396dc7f]
  • Updated dependencies [edd242b]
  • Updated dependencies [24944b9]
  • Updated dependencies [d2acba4]
    • @gemstack/ai-autopilot@0.8.0
    • @gemstack/framework@0.6.0
    • framework-hello@0.0.3

framework-hello@0.0.3

Patch Changes

@github-actions github-actions Bot force-pushed the changeset-release/main branch 12 times, most recently from 51dcf66 to 4253322 Compare July 5, 2026 17:44
@github-actions github-actions Bot force-pushed the changeset-release/main branch from 4253322 to 059429b Compare July 5, 2026 17:51
@suleimansh suleimansh merged commit 0211b23 into main Jul 5, 2026
2 checks passed
@suleimansh suleimansh deleted the changeset-release/main branch July 5, 2026 17:58
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