Skip to content

feat(bundle): make 'anchors' the default bundle for new sessions#208

Merged
sadlilas merged 2 commits into
mainfrom
feat/default-bundle-anchors
Jun 23, 2026
Merged

feat(bundle): make 'anchors' the default bundle for new sessions#208
sadlilas merged 2 commits into
mainfrom
feat/default-bundle-anchors

Conversation

@sadlilas

Copy link
Copy Markdown
Collaborator

What

Makes anchors the CLI's default bundle for new sessions.

  • Registers anchors in WELL_KNOWN_BUNDLES -> git+https://github.com/microsoft/amplifier-foundation@main#subdirectory=bundles/anchors/bundle.md
  • Flips every hardcoded last-resort default fallback "foundation" -> "anchors":
    • commands/run.py (interactive session default)
    • runtime/config.py (resolve-config default)
    • commands/tool.py x2 (amplifier tool default)
  • Updates amplifier bundle clear messages + README to name anchors as the default.

Why / behavior guarantees

The fallback only applies when no bundle is explicitly configured:

Scenario Result
New install / new session defaults to anchors
User ran amplifier bundle use foundation unaffected (settings.bundle.active wins over fallback)
In-flight / resumed session reads its persisted bundle, not the fallback
Want foundation as default amplifier bundle use foundation (unchanged)

foundation and the original experiment are not deleted.

PR 2 of 2 - depends on foundation PR #259

Requires microsoft/amplifier-foundation#259 (publishes bundles/anchors/). The remote is pinned @main, so this resolves correctly once #259 merges. Merge #259 first.

Tests

  • Existing suite: 88 passed (bundle-loader discovery, routing, registration, root-bundle-marker).
  • Full end-to-end matrix validated in a Digital Twin Universe (new-install, existing-foundation, other-bundle, switch-to-foundation, resume).

🤖 Generated with Amplifier

sadlilas and others added 2 commits June 22, 2026 14:52
Register `anchors` in WELL_KNOWN_BUNDLES (foundation subdirectory bundle
bundles/anchors/bundle.md, pinned @main) and flip every hardcoded last-resort
default fallback from "foundation" to "anchors":
- commands/run.py        (interactive session default)
- runtime/config.py      (resolve-config default)
- commands/tool.py x2     (`amplifier tool` default)

User-facing `amplifier bundle clear` messages and README updated to name
anchors as the default. The default only applies when no bundle is explicitly
configured, so:
- New installs/sessions default to anchors.
- Users who explicitly ran `amplifier bundle use foundation` are unaffected
  (their settings.bundle.active wins over the fallback).
- In-flight/resumed sessions read their persisted bundle, not the fallback.
- `amplifier bundle use foundation` still lets anyone keep foundation as default.

PR 2 of 2. Depends on amplifier-foundation PR #259 (publishes bundles/anchors).
Because the remote is pinned @main, this resolves correctly once #259 merges.

🤖 Generated with [Amplifier](https://github.com/microsoft/amplifier)

Co-Authored-By: Amplifier <240397093+microsoft-amplifier@users.noreply.github.com>
…current display

DTU validation surfaced two spots the initial default-flip missed:
- commands/tool.py _should_use_bundle() still returned 'foundation' as the
  no-active-bundle default, so 'amplifier tool ...' invocations defaulted to
  foundation despite run/config already defaulting to anchors.
- commands/bundle.py 'current' printed 'foundation (default)' and the 'use'
  tips said 'revert to default (foundation bundle)' — misreporting the default.

Adds regression tests asserting _should_use_bundle() defaults to anchors and
still honors an explicit active bundle.

🤖 Generated with [Amplifier](https://github.com/microsoft/amplifier)

Co-Authored-By: Amplifier <240397093+microsoft-amplifier@users.noreply.github.com>
@sadlilas sadlilas marked this pull request as ready for review June 22, 2026 23:30
@sadlilas sadlilas merged commit a72f561 into main Jun 23, 2026
1 check 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