Repository navigation
update: bump microsoft/apm to 0.35.0 - #352
Merged
Merged
Conversation
TL;DR for garyj
v0.35.0
v0.34.0
Auto-summarized by |
Owner
|
/merge
⚊
GJ
☛ +61403265135 | ♚ ***@***.***
[Apologies for my brevity & any errors/creative spelling - this was sent from a mobile device]
…________________________________
From: github-actions[bot] ***@***.***>
Sent: Tuesday, 27 October 2026 23:24:54
To: garyj/dotfiles ***@***.***>
Cc: Gary Jarrel ***@***.***>; Assign ***@***.***>
Subject: Re: [garyj/dotfiles] update: bump microsoft/apm to 0.35.0 (PR #352)
[https://avatars.githubusercontent.com/in/15368?s=20&v=4]github-actions[bot] left a comment (garyj/dotfiles#352)<#352 (comment)>
TL;DR for garyj
* Breaking (v0.34.0): apm install --frozen no longer auto-repairs apm.lock.yaml; it now fails and lists missing paths if the lockfile doesn't record every deployed file. If CI breaks on --frozen after upgrading, run apm install locally and commit the updated lockfile.
* v0.35.0 adds a security fix: apm audit --ci --policy <path> now exits 1 if the named policy can't be loaded, rather than silently passing unenforced. Worth adopting if you gate CI on audit policy.
* APM_EXTRA_CA_BUNDLE (v0.34.0) lets you add corporate/proxy CA certs without replacing the system trust store, useful if you're behind a TLS-inspecting proxy.
* apm install now fetches MCP registry server details concurrently (up to 4 at a time) in v0.34.0, speeding up installs with several registry MCP servers.
* Several v0.35.0 fixes harden --frozen installs (snapshot/hash verification, cold restores, lockfile byte-stability), relevant if you rely on frozen installs for reproducible dotfiles setup.
v0.35.0
* Security: audit policy enforcement now fails closed instead of silently warning when an explicit policy fails to load.
* Frozen install path hardened significantly: verifies local/remote snapshots before deploying, refuses on missing trustworthy hashes, preserves lockfile bytes across reinstalls.
* New opt-in replace manifest rules allow substituting local/fork checkouts across the dependency graph (candidate schema, not yet ratified).
v0.34.0
* Action needed: --frozen install behavior change, see above, may break CI until lockfile is regenerated.
* APM_EXTRA_CA_BUNDLE for custom CA trust and concurrent MCP registry fetches for faster installs.
* Cursor hooks now require choosing one route (native v1 vs Claude import) instead of silently colliding.
Auto-summarized by claude-sonnet-5 from the release notes above. Add/remove the deps-summary label to control this.
—
Reply to this email directly, view it on GitHub<#352?email_source=notifications&email_token=AAE5KY65TTNONTVC4HRQAHL5WCHZNA5CNFSNUABFM5UWIORPF5TWS5BNNB2WEL2JONZXKZKDN5WW2ZLOOQXTMNBUGE4DANRWGU3KM4TFMFZW63VGMFZXG2LHN2SWK5TFNZ2KYZTPN52GK4S7MNWGSY3L#issuecomment-6441806656>, or unsubscribe<https://github.com/notifications/unsubscribe-auth/AAE5KY2QLAFVOKWOFNJTAR35WCHZNAVCNFSNUABFKJSXA33TNF2G64TZHM3TENRSGY4DQNRWHNEXG43VMU5TMMBVHEYTCMBWHE3KC5QC>.
You are receiving this because you were assigned.Message ID: ***@***.***>
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
0.33.0→0.35.0Release Notes
microsoft/apm
v0.35.0Compare Source
Added
replacerules can substitute a local checkout or explicit-ref fork throughout the dependency graph while preserving the original dependency's ownership. This opt-in capability requires the candidate schema selector; its manifest and lock-v3 contracts remain unratified, and older clients may ignore replacement intent. (#3309)manifest-v0.1.48.schema.jsoncandidate accepts supported Git/subpath, registry and MCP declarations rejected by older schemas. Earlier schema resources remain unchanged, and the correction remains a proposal rather than a ratified OpenAPM amendment. (#3308)Fixed
apm installaccepts local.agent.md,.instructions.mdand.prompt.mddependencies, with copied snapshots, frozen verification and audit replay matching remote single-file packages. (#3310).kiro/prompts/<stem>.mdat project scope and the corresponding user directory, preserving the command name and prompt body instead of copying unsupported frontmatter. -- by @DBVamsi (#3263)apm installpreserves separately owned assets when dependencies share a skill directory and records only files it successfully deploys, preventing reinstall from deleting another package's resources. (#3313)apm installchecks the complete selected skill plan for differing unmanaged files before deploying any dependency, avoiding partial native deployment on a collision. Audit now distinguishes ownership conflicts from managed drift and offers nondestructive recovery. (#3314)apm installretires obsolete claims for already-absent skill files after complete reintegration, so audit no longer demands files the dependency stopped supplying. Present content, other owners, unprocessed targets and frozen protections remain unchanged. (#3315)apm install --frozenverifies direct and transitive local dependency snapshots before deployment, refusing changed content or missing trustworthy hashes without modifying managed files or the lockfile. Run an ordinary install to accept a changed local snapshot and record its baseline. -- by @dajiaohuang (#3236)apm install --frozenrestores pinned remote plugins without a preliminary ordinary install and verifies their actual MCP declarations before activation. (#3305)apm install --frozenpreserves lockfile bytes through late MCP/LSP integration and MCP-only installs, while checking recorded native-service ownership and ignoring inactive orphan lock rows. (#3307)apm install --dry-runincludes locally known required indirect dependencies instead of falsely previewing their files as orphan removals; unavailable subtrees produce an explicit incomplete-preview warning. (#3302)apm installpreservesapm.ymlbytes, pinned refs and metadata instead of treating serialization as an update request; genuine dependency changes still apply. (#3346)apm installpersists changed, cleared or removed root replacement rules even after the final dependency is removed, without fetching dormant sources or cleaning deployed files. (#3328)resolved_attimestamp, keeping otherwise identical lockfile replay byte-stable. (#3325)apm --versionreports a Git revision only when it belongs to the loaded APM checkout, rather than borrowing an unrelated parent repository's SHA, and succeeds without Git installed. (#3280)apm auditcorrectly replays native Copilot Agent Plugins, including plugins withoutapm.yml, instead of reporting false configuration inconsistencies. -- by @bodapatisaikrishna (#3257)apm auditpreserves recorded Grok Cloud target identity despite unrelated GitHub workflows and verifies retained historical files after target changes instead of falsely reporting them missing. (#3289)apm auditrecognizes Windows short-path spellings of a project checkout, avoiding a false refusal that asks forapm install --global. (#3316)apm auditaccepts intentionally omitted dependency MCP fromapm install --only apmor default refusal of transitive self-defined servers, while continuing to detect drift in root and admitted services. (#3304){env:VAR}syntax without saving resolved values; authored literals and registry overlays are preserved. Export referenced variables when launching OpenCode. -- by @leninworld (#3303)idsetting; reinstalling repairs recorded APM-owned entries while preserving registry identity, user settings and ownership safeguards. -- by @Pybsama (#3157)hooks/*.jsonor.apm/hooks/*.jsoninstall without a placeholder manifest or skill, and invalid updates preserve the installed source, lockfile and deployment ownership. (#3282)apm installandapm updateno longer fail withObject of type mappingproxy is not JSON serializablewhen hooks carry nested metadata such asenv; Claude, Codex, Gemini and Antigravity keep that metadata as plain JSON. -- by @abhishekacharya200, with regression coverage from @MohammedAlkindi (#3211)apm installwrites untyped flat command hooks as Claude"type": "command"handlers, including alongside Claude-shaped hook files. Explicit types and other targets are unchanged; reinstall to refresh existing entries. -- by @Parth-Vasave (#3153)targets: [copilot], so the documented install works in a fresh project without existing harness markers. -- by @venkatayedidavs (#3086)Security
apm audit --ci --policy <path|url|owner/repo>exits 1 when the explicitly selected policy cannot be loaded, rather than passing without enforcement, and JSON/SARIF reports whether a policy was enforced. Correct the named source and retry; auto-discovery and--policy orgretain their warn default, and proposedreq-pl-021remains unratified. (#3230)v0.34.0Compare Source
Added
APM_EXTRA_CA_BUNDLEadds corporate PEM certificates to APM's package-management HTTPS while retaining default trust roots, so private registries and TLS-inspecting proxies work without replacing the machine trust store. (by @TameTheGame, closes #2034, #2741)*.agent.md) accept an optionaluser-invocable: falsefrontmatter field (aliasvisibility: internal) to mark an agent as reachable only through handoffs or subagent calls on harnesses that support it. Verbatim-copy targets preserve the field; Codex and Kiro warn instead of silently dropping it. (by @richard-fowles-epam, closes #3132, #3133)apm packcan emit a GitHub Copilot CLI marketplace viamarketplace.outputs: {copilot: {}}, preserving local paths, remote subdirectories, tag refs, and full commit pins; Claude and Codex defaults are unchanged. (by @aryansk, #2600)grok-botinstall target deploys skill packages toagent-data/workflows/<skill-name>/at project and user (--global) scope. An explicit--target grok-botfails only when nothing in the install is compatible; other incompatible dependencies warn. (by @sergio-sisternes-epam, closes #3083, #3106)apm audit --external-argsnow accepts SkillSpector's--baseline, so reviewed suppression baselines inside the scan directory work through APM. (by @MohammedAlkindi, closes #2331, #2936)Changed
apm install --frozenno longer writesapm.lock.yaml; a frozen install whose lockfile does not record every deployed file now fails and names the missing paths instead of silently repairing the lockfile. If CI starts failing on--frozenafter upgrading, runapm installlocally and commit the updatedapm.lock.yaml. (by @salpers, closes #2379, #2384)Fixed
apm installfails instead of deleting a dependency's skills when its persistedskills:selection no longer matches any available skill, preserving prior files and ownership. (by @dajiaohuang, closes #3204, #3235)apm installnow reconciles renamed or deleted project-local skills and removed targets under shared.agents/roots using recorded ownership, preserving shared claims and user edits. (by @tillig, #3190)apm install plugin@marketplacefor an in-repository plugin of agithub.commarketplace registered over SSH now pre-flights over SSH, so private marketplaces install with an SSH key and no GitHub token. (by @MohammedAlkindi, closes #3164, #3200)apm install -g(including--mcp) configures MCP servers for Cursor (~/.cursor/mcp.json) and OpenCode (~/.config/opencode/opencode.json), andapm uninstall -gremoves them; configs APM cannot parse, such as OpenCode JSONC, are left untouched. (by @alvedder, #3100)CLAUDE_CONFIG_DIRinstead of always editing~/.claude.json. (by @bodapatisaikrishna, closes #3127, #3148)apm.ymlkeys matchingx-[a-z][a-z0-9-]*are preserved in the parsed manifest and lockfile dependency entry; other unknown keys warn without failing (proposedreq-ext-003). (by @sergio-sisternes-epam, #3222)modelandmodel_reasoning_effortsettings and warns about dropped metadata instead of silently losing it (proposedreq-tg-015). (closes #3126, #3150)apm compile --target copilotomits a global instruction from.github/copilot-instructions.mdwhen its matching native rule is deployed under.github/instructions/, avoiding duplicate context; hand-authored root files are never removed. (by @dajiaohuang, closes #3099, #3113)apm packrecords the commit an annotated or signed tag points to assource.shainstead of the tag object, so plugin installers that check out the tag accept the pin. (by @nefayran, closes #3048, #3161)apm pack --check-cleancertifies GitHub-hosted manifestless skills whoseSKILL.mdhas valid frontmatter at the resolved ref; invalid metadata and missing repositories, refs, or paths still fail closed. (by @yfoel, #3064)apm auditno longer reports a rootskills/folder alongside.apm/content asunintegratedafter a clean install; replay now interprets project-local content the same way install does. (by @adityaanikam, closes #3151, #3209)apm audit --civalidates selected skill subsets against its prepared lock-pinned dependency tree, so a clean committed checkout passes without a priorapm install. (closes #3136, #3147)apm auditdrift checks ignore JSON key order and formatting in hook ownership sidecars while still reporting meaningful and invalid content changes. (by @Pybsama, #3155)apm prunekeeps an installed GitHub dependency when only its owner/repo casing changes inapm.yml; genuinely duplicate paths stop with a path-specific error. (closes #3034, #3241)git credential fill(Git Credential Manager) afterADO_APM_PATandazbearer tokens are rejected, so Windows GCM-backed marketplace and package installs succeed without a PAT. (by @mheeaxa, #2610)core.symlinksvalue instead of letting an inherited global or system setting override it, so per-checkout symlink detection (for example on non-admin Windows) is respected. (#3145)apm runtime setup llmsucceeds when re-run over an existing LLM environment instead of failing inensurepip, and now reports the underlying pip bootstrap error if setup fails. (#3251, #3253, #3262)Cleaned N stale deployed files for DEPENDENCYinstead of implying the dependency key is the deletion location. (by @Dansatch, closes #3026, #3120)apm-usageguide no longer claims package content must be ASCII-only, and correctsapm runstability and LSP discoverability guidance. (by @MohammedAlkindi, closes #2315, #2647)Performance
apm installfetches independent MCP registry server details concurrently (up to 4 at a time), shortening installs that declare several registry MCP servers. (by @sergio-sisternes-epam, closes #2981, #2983)Configuration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.