chore: version packages#101
Merged
Merged
Conversation
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 was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated.
Releases
@skill-map/spec@0.49.0
Minor Changes
Inspector action buttons are now self-projected by the dispatching Action instead of a sibling projector Analyzer: an Action may declare a
uibutton plus an optional deterministic scan-timeproject(ctx)(read-only graph) that emits its owninspector.action.buttonper node. The pure projector analyzerscore/supersedeandcore/tagswere removed andcore/annotation-staletrimmed to its badge + issue (the Bump button moved tocore/node-bump).User-facing
No change to how the inspector behaves: the Supersede, Edit tags, and Bump buttons look and work exactly as before, they are just now produced by the action they trigger rather than a separate analyzer.
Extensions declaring
stability: 'deprecated'now also ship DISABLED by default, joiningexperimentalin the ships-disabled set: a deprecated extension does not run or register until the operator opts in (sm plugins enable <plugin>/<ext>, the Settings toggle, or asettings.json/config_pluginsoverride), the same opt-inexperimentaluses.beta/stablekeep running. No built-in is deprecated today, so the default scan is unchanged until one is marked.User-facing
Deprecated plugin extensions now start disabled, like experimental ones: they show an off toggle (with the deprecated badge) in Settings and
sm plugins list, and don't run until you enable them. Enabling one keeps it working while you migrate off it.Extensions declaring
stability: 'experimental'now ship DISABLED by default: their installed default flips from enabled to disabled, so the extension does not run or register until the operator opts in (sm plugins enable <plugin>/<ext>, the Settings toggle, or asettings.json/config_pluginsoverride).beta/deprecated/stablekeep running. Built-ins flipped to experimental:core/mcp-toolsand the Supersede declarer (core/supersedebutton +core/node-supersedeaction).User-facing
Experimental plugin extensions now start disabled: an off toggle (with the experimental badge) in Settings and
sm plugins list, not running until you enable them. The MCP tools extractor and the Supersede button are experimental, so both are off until you turn them on.The scan now captures each file's modification time (
mtime) from the walker's existinglstat, persisted onscan_nodes.modified_at_msand surfaced on the node wire shape asmodifiedAtMs(nullable for virtual / derived nodes). The files table gains a sortable "Modified" column at the end, rendered as an ISO short date with a full date+time tooltip; sorting orders by the raw timestamp and sinks fileless nodes to the bottom. The value never participates inbodyHash/frontmatterHash.User-facing
The files table has a new Modified column showing when each file was last edited (for example
2026-06-13). Click the header to sort newest or oldest first, and hover a cell to see the exact date and time.sm plugins showis now extension-only: it takes a qualified<plugin>/<ext>id and renders one extension's detail. The whole-plugin view (manifest plus extension rows) moves tosm plugins list <id>, and the top-levelsm plugins listindex drops the per-extension name sub-lines. A bareshow <plugin>id and a qualifiedlist <plugin>/<ext>id are each rejected with a directed redirect to the other verb.User-facing
Plugin commands split by altitude.
sm plugins list <id>now shows a whole plugin's extensions (kinds, versions, status);sm plugins showis for a single<plugin>/<ext>extension. The plainsm plugins liststays a clean index, one row per plugin.Patch Changes
core/backtick-pathnow matches bare.mdfilenames inside code spans, not only slashed paths: a backticked`algo4.md`becomes apointsedge the way the runtime follows it. The/separator is now optional, with the first path segment anchored to a word char so globs and placeholders ({PROJECT}-x.md,*-S.md) stay rejected. Slashless names likeSKILL.mdmatch too; a self-reference becomes a self-loop, other misses flag viacore/reference-broken.User-facing
Backticked filenames now become links even without a folder: writing
`algo4.md`inside code formatting (not just`docs/algo4.md`) draws an arrow to that file in the graph, matching how an agent actually follows the reference.Broken graph edges now render fainter than resolved ones.
core/markdown-linkemits the spec's0.95(unambiguous syntax) instead of a hardcoded1.0, and the post-walk confidence-lift transform adds aBROKEN_TARGET_CONFIDENCE = 0.5downgrade for links that resolve to nothing (no path and no name-index match, likecore/reference-broken). A dangling[x](missing.md),@missing.md, or/no-such-commandnow sits at0.5, below a resolved1.0and above a reserved0.1.User-facing
Broken links in the graph now appear fainter than working ones: a markdown link,
@file, or/commandpointing at something that does not exist renders at low opacity, so dangling references stand out at a glance instead of looking like solid edges.The post-walk confidence-lift transform no longer bumps a link to
1.0when its resolved target is avirtual: truenode (today onlycore/mcp-tools'mcp://<server>nodes, reconstructed from frontmatter, never verified on disk). The edge still resolves (resolvedTargetset, navigable) but keeps its extractor emit confidence, so an MCP edge stays0.85: an unverified entity is not full certainty, like the reserved-target downgrade.@skill-map/cli@0.55.0
Minor Changes
Inspector action buttons are now self-projected by the dispatching Action instead of a sibling projector Analyzer: an Action may declare a
uibutton plus an optional deterministic scan-timeproject(ctx)(read-only graph) that emits its owninspector.action.buttonper node. The pure projector analyzerscore/supersedeandcore/tagswere removed andcore/annotation-staletrimmed to its badge + issue (the Bump button moved tocore/node-bump).User-facing
No change to how the inspector behaves: the Supersede, Edit tags, and Bump buttons look and work exactly as before, they are just now produced by the action they trigger rather than a separate analyzer.
Extensions declaring
stability: 'deprecated'now also ship DISABLED by default, joiningexperimentalin the ships-disabled set: a deprecated extension does not run or register until the operator opts in (sm plugins enable <plugin>/<ext>, the Settings toggle, or asettings.json/config_pluginsoverride), the same opt-inexperimentaluses.beta/stablekeep running. No built-in is deprecated today, so the default scan is unchanged until one is marked.User-facing
Deprecated plugin extensions now start disabled, like experimental ones: they show an off toggle (with the deprecated badge) in Settings and
sm plugins list, and don't run until you enable them. Enabling one keeps it working while you migrate off it.Extensions declaring
stability: 'experimental'now ship DISABLED by default: their installed default flips from enabled to disabled, so the extension does not run or register until the operator opts in (sm plugins enable <plugin>/<ext>, the Settings toggle, or asettings.json/config_pluginsoverride).beta/deprecated/stablekeep running. Built-ins flipped to experimental:core/mcp-toolsand the Supersede declarer (core/supersedebutton +core/node-supersedeaction).User-facing
Experimental plugin extensions now start disabled: an off toggle (with the experimental badge) in Settings and
sm plugins list, not running until you enable them. The MCP tools extractor and the Supersede button are experimental, so both are off until you turn them on.The scan now captures each file's modification time (
mtime) from the walker's existinglstat, persisted onscan_nodes.modified_at_msand surfaced on the node wire shape asmodifiedAtMs(nullable for virtual / derived nodes). The files table gains a sortable "Modified" column at the end, rendered as an ISO short date with a full date+time tooltip; sorting orders by the raw timestamp and sinks fileless nodes to the bottom. The value never participates inbodyHash/frontmatterHash.User-facing
The files table has a new Modified column showing when each file was last edited (for example
2026-06-13). Click the header to sort newest or oldest first, and hover a cell to see the exact date and time.The
core/node-supersededanalyzer (surfaces a node'ssupersededBydeclaration as aninfofinding) is nowexperimental, joining the rest of the supersession family (core/supersede,core/node-supersede) which already shipped experimental. As an experimental extension it ships disabled by default, so the "node is superseded by X" finding no longer appears until the operator enables the family withsm plugins enable core/node-superseded(or the Settings toggle).User-facing
The supersession info finding ("this node is superseded by X") no longer shows by default:
core/node-supersededis now experimental, so the whole supersession family (declare button + this finding) is off until you enable it in Settings or withsm plugins enable.sm plugins showis now extension-only: it takes a qualified<plugin>/<ext>id and renders one extension's detail. The whole-plugin view (manifest plus extension rows) moves tosm plugins list <id>, and the top-levelsm plugins listindex drops the per-extension name sub-lines. A bareshow <plugin>id and a qualifiedlist <plugin>/<ext>id are each rejected with a directed redirect to the other verb.User-facing
Plugin commands split by altitude.
sm plugins list <id>now shows a whole plugin's extensions (kinds, versions, status);sm plugins showis for a single<plugin>/<ext>extension. The plainsm plugins liststays a clean index, one row per plugin.The
sm tutorialcampaign's second half is now a single "daily loop" part (add, improve, publish) that operates the harness for real instead of by hand: the content-editor, check-links, and publish steps actually run, the maintenance analyzers (broken reference, orphan, reserved name,.smsidecar) surface from real work, and the portfolio it builds ships with a styled, personalized site. MCP is parked out of the menu pending its own iteration.User-facing
The interactive tutorial's second half is now a single "daily loop": you add a page with your agent, improve it, and publish, running the harness for real. The portfolio it builds ships with a clean, personalized site you can serve and deploy.
Patch Changes
core/backtick-pathnow matches bare.mdfilenames inside code spans, not only slashed paths: a backticked`algo4.md`becomes apointsedge the way the runtime follows it. The/separator is now optional, with the first path segment anchored to a word char so globs and placeholders ({PROJECT}-x.md,*-S.md) stay rejected. Slashless names likeSKILL.mdmatch too; a self-reference becomes a self-loop, other misses flag viacore/reference-broken.User-facing
Backticked filenames now become links even without a folder: writing
`algo4.md`inside code formatting (not just`docs/algo4.md`) draws an arrow to that file in the graph, matching how an agent actually follows the reference.Broken graph edges now render fainter than resolved ones.
core/markdown-linkemits the spec's0.95(unambiguous syntax) instead of a hardcoded1.0, and the post-walk confidence-lift transform adds aBROKEN_TARGET_CONFIDENCE = 0.5downgrade for links that resolve to nothing (no path and no name-index match, likecore/reference-broken). A dangling[x](missing.md),@missing.md, or/no-such-commandnow sits at0.5, below a resolved1.0and above a reserved0.1.User-facing
Broken links in the graph now appear fainter than working ones: a markdown link,
@file, or/commandpointing at something that does not exist renders at low opacity, so dangling references stand out at a glance instead of looking like solid edges.Every built-in extractor description now ends with a concrete usage example. The
markdown-link,external-url-counter,annotations,mcp-tools,backtick-path,tools-counter, andslash-commandmanifests keep their existing leading sentence and append a shortExample: ...clause, so the text shown insm plugins list,sm plugins show, and the Settings plugins panel illustrates what each extractor matches.User-facing
Extractor descriptions in
sm plugins listand Settings now include a usage example.The post-walk confidence-lift transform no longer bumps a link to
1.0when its resolved target is avirtual: truenode (today onlycore/mcp-tools'mcp://<server>nodes, reconstructed from frontmatter, never verified on disk). The edge still resolves (resolvedTargetset, navigable) but keeps its extractor emit confidence, so an MCP edge stays0.85: an unverified entity is not full certainty, like the reserved-target downgrade.