What's Changed
🔧 Other Changes
- feat(policy): require_pinned_constraint to ban unbounded dep ranges by @danielmeppiel in #1494
- test(policy): e2e integration tests for require_pinned_constraint (follow-up to #1494) by @danielmeppiel in #1505
- feat(deps): add 'apm deps why ' to explain transitive dependencies by @danielmeppiel in #1495
- fix(policy): classify '=1.2.3' explicit-equality as pinned constraint by @danielmeppiel in #1506
- feat(deps): resolve semver ranges on git-source dependencies by @danielmeppiel in #1496
- chore: remove stale plan.md from repo root by @danielmeppiel in #1510
- fix(artifactory): deterministic boundary probe for nested GitLab paths by @chkp-roniz in #1472
- fix(install): repair -g hook integration across claude/cursor/copilot (closes #1499) by @danielmeppiel in #1516
- fix(install): honor SSH scheme for GitLab refs in validation (closes #1501) by @danielmeppiel in #1515
- fix(compile): honor compilation.strategy=single-file for CLAUDE.md (closes #1445) by @danielmeppiel in #1514
- fix(opencode): validate-and-warn on incompatible agent frontmatter at install (Phase 1 of #581) by @danielmeppiel in #1513
- fix(install): use %LOCALAPPDATA% literal in Windows shim (closes #1509) by @danielmeppiel in #1512
- docs: backfill apm-usage and consolidate registry guides (v0.14->v0.15 drift sweep) by @danielmeppiel in #1511
- Fix/windsurf uninstall skills cleanup by @yoelabril in #1486
- docs(skills): correct outdated windsurf-convergence status, link #1520 by @danielmeppiel in #1521
- feat(batch-bug-shepherd): recommendation-fold loop + Copilot+CI gates + mergeability table by @danielmeppiel in #1518
- fix(install): write apm.cmd shim as ASCII (cmd.exe cannot parse UTF-16LE) by @danielmeppiel in #1522
- fix(install): strip non-ASCII bytes from install.ps1 (unblocks self-update on cp1252 consoles) by @danielmeppiel in #1523
- spec: introduce OpenAPM v0.1 (closes #1502) by @danielmeppiel in #1517
- chore: release v0.16.0 by @danielmeppiel in #1526
Full Changelog: v0.15.0...v0.16.0