What's Changed
🔧 Other Changes
- fix(compile): reuse placement analysis across targets (closes #2482) by Daniel Meppiel (@danielmeppiel) in #2486
- Fix SSH passphrase hang: add BatchMode=yes to GIT_SSH_COMMAND by Sergio Sisternes (@sergio-sisternes-epam) in #2360
- feat(install): add --trust-bin / --no-trust-bin for plugin bin/ consent (supersedes #2045, closes #1620) by Daniel Meppiel (@danielmeppiel) in #2508
- fix(yaml): skip alias-expansion budget for anchor-free documents (supersedes #2493, closes #2389) by Daniel Meppiel (@danielmeppiel) in #2518
- Fix Windows Defender false positive via Authenticode signing (#2435) by Sergio Sisternes (@sergio-sisternes-epam) in #2497
- Fix deployed-files-present false positive on gitignored deploy paths (#2452) by Sergio Sisternes (@sergio-sisternes-epam) in #2496
- fix(cli): align help texts with target catalog (#2451) by Sergio Sisternes (@sergio-sisternes-epam) in #2499
- fix: report malformed marketplace structure (supersedes #2459) by Daniel Meppiel (@danielmeppiel) in #2474
- feat(agent-plugins): add a portable v1 foundation by Daniel Meppiel (@danielmeppiel) in #2654
- fix: make plugin.json dry-run match non-force pack behavior by Aryan Singh K. (@aryansk) in #2583
- docs: align monorepo release layout by Daniel Meppiel (@danielmeppiel) in #2670
- fix(uninstall): clean removed-only target files by Daniel Meppiel (@danielmeppiel) in #2658
- fix(compile): honour source_attribution on the AGENTS.md path by Mohammed Alkindi (@MohammedAlkindi) in #2646
- fix(auth): normalize git message locale so auth failures stay classifiable by Naofel El Alouani (@Naofel-eal) in #2534
- fix(mcp): route Copilot and VS Code configs separately by Daniel Meppiel (@danielmeppiel) in #2669
- fix(audit): allow local Claude-skill deps to omit apm.yml by Tech Guy (@lukiod) in #2643
- docs: add Windows lifecycle admin path by Ching Wei Kang (@WilliamK112) in #2640
- remove(roadmap): make milestones the single roadmap authority by Daniel Meppiel (@danielmeppiel) in #2672
- fix(hooks): resolve quoted plugin-root refs and warn on the ones that survive by Mohammed Alkindi (@MohammedAlkindi) in #2645
- fix(policy): use valid ADO project coordinate by Daniel Meppiel (@danielmeppiel) in #2450
- Allow plain-http MCP URLs for loopback hosts in the Codex adapter by normandev92 in #2468
- fix(deps): write synthetic package manifests with LF so content hashes match across OSes (closes #2619) by McNultyyy in #2620
- fix(bundle): write generated text with deterministic LF by Ching Wei Kang (@WilliamK112) in #2638
- fix(lock): validate ISO 8601 format for --timestamp flag (#2659) by Manideep Malyala (@manideep-malyala) in #2660
- fix: skip literal preflight for git semver ranges by Aryan Singh K. (@aryansk) in #2590
- fix(plugins): let the resolved declaration decide which skills deploy (closes #2537) by Eden (@edenfunf) in #2540
- fix(install): frozen install no longer fails on cold cache with git apm_package deps by Sergio Sisternes (@sergio-sisternes-epam) in #2502
- fix: allow percent-encoded sourceBase path segments by Aryan Singh K. (@aryansk) in #2584
- perf: scope compile walks to applyTo roots by Aryan Singh K. (@aryansk) in #2595
- fix: deploy OpenCode user-scope skills and instructions by Aryan Singh K. (@aryansk) in #2596
- fix(plugins): stop root-declared components copying the plugin into itself (closes #2556) by Yorai Levi (@YoraiLevi) in #2557
- fix: scope install security scan to deployable content by Aryan Singh K. (@aryansk) in #2598
- fix(audit): preserve user hooks during drift checks by Daniel Meppiel (@danielmeppiel) in #2682
- fix: harden GitLab policy discovery (supersedes #2605, closes #2566) by Daniel Meppiel (@danielmeppiel) in #2662
- Pin GitHub Actions to full-length commit SHAs by Dan Fiedler (@danfiedler-msft) in #2632
- fix(agent-plugins): preserve cross-platform asset inventory by Daniel Meppiel (@danielmeppiel) in #2694
- chore: release v0.29.0 by Daniel Meppiel (@danielmeppiel) in #2697
- fix(release): restore cross-platform promotion gates by Daniel Meppiel (@danielmeppiel) in #2700
- feat(install): register Agent Plugins natively with GitHub Copilot by Daniel Meppiel (@danielmeppiel) in #2705
- fix(dashboard): reduce GitHub API polling by Sergio Sisternes (@sergio-sisternes-epam) in #2679
- chore: release v0.29.0 by Daniel Meppiel (@danielmeppiel) in #2718
- fix(tests): accept native plugin result metadata by Daniel Meppiel (@danielmeppiel) in #2724
New Contributors
- Aryan Singh K. (@aryansk) made their first contribution in #2583
- Mohammed Alkindi (@MohammedAlkindi) made their first contribution in #2646
- Naofel El Alouani (@Naofel-eal) made their first contribution in #2534
- Tech Guy (@lukiod) made their first contribution in #2643
- normandev92 made their first contribution in #2468
- McNultyyy made their first contribution in #2620
- Manideep Malyala (@manideep-malyala) made their first contribution in #2660
- Yorai Levi (@YoraiLevi) made their first contribution in #2557
- Dan Fiedler (@danfiedler-msft) made their first contribution in #2632
Full Changelog: v0.28.0...v0.29.0