Skip to content

Reduce update check and installation overhead - #315

Merged
Brian Krabach (bkrabach) merged 4 commits into
mainfrom
fix/update-efficiency
Oct 1, 2026
Merged

Brian Krabach (bkrabach) merged 4 commits into
mainfrom
fix/update-efficiency

Conversation

@bkrabach

@bkrabach Brian Krabach (bkrabach) commented Oct 1, 2026 •

Copy link
Copy Markdown
Contributor

The update page repeats equivalent source rows, availability checks repeat upstream requests, and isolated installation repeats source copies and package preparation. Group equivalent rows with their cache/package roles disclosed and sort every source list alphabetically. Distinct refs, revisions, status and release tiers remain separate; installation still uses the full private inventory.

Availability checks use a private success cache, join equivalent in-flight requests, batch Git refs and pool registry connections. Automatic checks honor the check interval; manual checks fetch fresh results. Check timing and reuse counts are visible.

Staging uses copy-on-write where available, safely adopts clean legacy sources into an immutable shared store, synchronizes the candidate once and reuses preparation evidence only within that attempt. Worker environments are reused only when graph, source, interpreter/platform and qualification inputs match. Already qualified app environments become the launch target instead of being installed twice; manual uv upgrades remain authoritative. Conservative idle retirement protects current, rollback, pending, process/config references and uncertain or edited storage.

Related components: microsoft/amplifier-foundation#415 and microsoft/amplifier-bundle-skills#83. Recommended merge order: Foundation, Skills, Unified. Optional API detection supports staggered adoption. Global uv installations, unknown legacy caches and chat history are preserved. Shared source objects are retained until readers can be proven absent.

Validation:

  • 417 broad updater/backend tests passed; follow-up inventory/cache/usage suite: 134 passed.
  • Final storage/check/app-launch suite: 14 passed, including actual isolated interpreter delegation; worker/app qualification suite: 21 passed before the inherited-marker regression test was added.
  • 400 frontend tests passed; frontend build passed and generated assets are included.
  • Desktop/mobile source-list fixtures verified alphabetical grouping and role disclosure. New modules pass Ruff; diff whitespace checks pass.
  • Synthetic 300 logical lookups across 50 repositories: 50 transport requests cold, zero warm automatic, 50 manual fresh. This demonstrates request elimination, not real network timing.

These checks include real local offline Git/uv installation and qualified interpreter execution. They do not establish live-service adoption, real-account or physical-device acceptance. docs/UPDATES.md records the audited component revisions, compatibility boundaries and rollout behavior.

Unified no longer copies or reads CLI registry/cache during initialization.
Session registrations come from scoped settings; older imported registry files
are retained but cannot supply aliases. Root/nested-agent remote Skills and
the shared-model runtime adapter use app-owned generation caches, preserving
shared settings, keys, native history and local resources. Older Foundation
is supported by suppressing constructor registry reads before construction.
Follow-up isolation/settings/cache coverage: 134 tests passed.
Resume and scoped-source coverage: 68 tests passed across current/older registry
APIs and concurrent session composition. Additional updater/worker coverage: 126 tests passed with one environment-dependent skip.

Integrated current main and rebuilt generated frontend assets. Staging snapshots
shared settings/keys/routing without importing CLI registry/cache; source usage
classification also follows settings authority. Follow-up staging/runtime
coverage: 170 tests passed; provider-recording inheritance coverage: 14 passed
with read-only runtime source overlays. Updated frontend: 417 tests passed and
build succeeded. No live host was changed.

@bkrabach
Brian Krabach (bkrabach) merged commit c323891 into main Oct 1, 2026
5 checks 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