@evref-bl/pharo-agent 0.13.1 → 0.14.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "pharo-agent",
3
3
  "displayName": "Pharo Agent",
4
- "version": "0.13.1",
4
+ "version": "0.14.1",
5
5
  "description": "Terminal-first Pharo image setup for coding agents.",
6
6
  "author": {
7
7
  "name": "Evref-BL",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@evref-bl/pharo-agent",
3
- "version": "0.13.1",
3
+ "version": "0.14.1",
4
4
  "private": false,
5
5
  "description": "Terminal-first Pharo integration for coding agents.",
6
6
  "license": "Apache-2.0",
@@ -32,9 +32,9 @@
32
32
  "test": "node --test"
33
33
  },
34
34
  "dependencies": {
35
- "@evref-bl/pharo-mcp": "3.3.1",
36
- "@evref-bl/plexus": "0.12.1",
37
- "@modelcontextprotocol/sdk": "1.32.1"
35
+ "@evref-bl/pharo-mcp": "3.4.0",
36
+ "@evref-bl/plexus": "0.14.0",
37
+ "@modelcontextprotocol/sdk": "1.32.2"
38
38
  },
39
39
  "devDependencies": {
40
40
  "@types/node": "^22.20.5",
package/plugin.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
3
3
  "name": "pharo-agent",
4
- "version": "0.13.1",
4
+ "version": "0.14.1",
5
5
  "description": "Terminal-first Pharo image setup for coding agents.",
6
6
  "author": {
7
7
  "name": "Evref-BL",
@@ -8,7 +8,7 @@ Run this only when the user asks to enable or refresh Pharo tooling in this proj
8
8
  From the project root, run the released CLI that matches this plugin:
9
9
 
10
10
  ```sh
11
- npx --yes @evref-bl/pharo-agent@0.13.1 init --host claude
11
+ npx --yes @evref-bl/pharo-agent@0.14.1 init --host claude
12
12
  ```
13
13
 
14
14
  Name the host this chat runs in: `--host claude` in Claude Code,
package/src/live.js CHANGED
@@ -22,7 +22,7 @@ import {
22
22
  writeRunningImages,
23
23
  } from "./runtime.js";
24
24
 
25
- export const pifsRelease = "v0.10.0";
25
+ export const pifsRelease = "v0.10.1";
26
26
 
27
27
  // fuse-t ships as a macOS installer package, so it lands in /usr/local
28
28
  // whatever Homebrew's prefix is. The unversioned symlink is what the daemon
package/src/runtime.js CHANGED
@@ -166,8 +166,21 @@ export function selectRunningImage(state, imageId) {
166
166
  // is a supported way to run — it is what the policy is for — but nothing said
167
167
  // so, and the image's tools then quietly differ from the ones the project was
168
168
  // written against. PLexus records it; this says it.
169
+ //
170
+ // An image copied from a home image cache base is another matter: PLexus keys
171
+ // a base on what preparing it loaded and says whether that is still what the
172
+ // project loads. A `current` base holds the project's own MCP, and warning
173
+ // about it told every new image the opposite of what happened; an `outdated`
174
+ // one certainly holds another. Only an image nobody can vouch for gets the
175
+ // hedged warning.
169
176
  export function unappliedPharoMcpPin(image) {
170
- if (image?.pharoMcpLoad?.state !== "provided") return undefined;
177
+ const load = image?.pharoMcpLoad;
178
+ if (load?.state !== "provided" || load.preparedBase === "current") return undefined;
179
+ if (load.preparedBase === "outdated") {
180
+ return `Image ${image.id} kept the Pharo MCP it was prepared with, which is not the one this project`
181
+ + " loads now, so its tools may differ from the ones this project expects."
182
+ + " Recreate the image, or set mcp.loadPolicy to always.";
183
+ }
171
184
  return `Image ${image.id} started with the Pharo MCP it already had, so the version this project pins`
172
185
  + " was not loaded and its tools may differ from the ones this project expects."
173
186
  + " Recreate the image, or set mcp.loadPolicy to always.";