@com55/node-red-ai-access 0.2.0-beta.1 → 0.2.0-beta.2
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.
- package/CHANGELOG.md +46 -0
- package/README.md +3 -3
- package/ai-access.html +1 -1
- package/dist/plugin.cjs +443 -163
- package/dist/plugin.d.cts +15 -8
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -8,6 +8,52 @@ and this project adheres to
|
|
|
8
8
|
|
|
9
9
|
## Unreleased
|
|
10
10
|
|
|
11
|
+
## [0.2.0-beta.2] - 2026-10-28
|
|
12
|
+
|
|
13
|
+
### Fixed
|
|
14
|
+
|
|
15
|
+
- OAuth route collision check no longer counts disabled `http in` nodes or nodes
|
|
16
|
+
on disabled flows; collisions are re-evaluated from scratch on every deploy,
|
|
17
|
+
and an enabled `http in` node is reported once (not again as an Express "bound
|
|
18
|
+
dispatch" route).
|
|
19
|
+
- OAuth route collision check ignores `http in` nodes in subflow templates
|
|
20
|
+
without a running instance, compares real mounted paths (`httpAdminRoot` /
|
|
21
|
+
`httpNodeRoot`), and matches paths case-insensitively like Express.
|
|
22
|
+
- `GET /mcp/api/v1/oauth/status` no longer exposes absolute `httpStatic`
|
|
23
|
+
filesystem paths to users without full (`*`) permission.
|
|
24
|
+
- Editor sidebar: OAuth lifetime number inputs and unit dropdowns sit on one
|
|
25
|
+
line, including the narrow Node-RED 5 sidebar.
|
|
26
|
+
- Editor sidebar: OAuth route collisions are shown as a readable bulleted list,
|
|
27
|
+
one route per line with paths in `<code>`; `http in` nodes link to the node in
|
|
28
|
+
the editor.
|
|
29
|
+
- Editor sidebar: Public URL "Check" result is shown as a clear green/red
|
|
30
|
+
status; loopback notes and the trust proxy state are moved into a muted,
|
|
31
|
+
collapsible "About the check" section with human-readable wording.
|
|
32
|
+
- OAuth route collision check also honours `httpStaticRoot` (and per-entry
|
|
33
|
+
`httpStatic` roots).
|
|
34
|
+
- `/mcp` page Access links: the area under the form now always shows generic
|
|
35
|
+
usage (with a `<YOUR_TOKEN>` placeholder) for the currently selected channel
|
|
36
|
+
and updates when the channel changes. The real token and client setup are
|
|
37
|
+
shown once in a modal right after creation; closing it removes the token from
|
|
38
|
+
the page.
|
|
39
|
+
- Access link create/list responses are sent with `Cache-Control: no-store` and
|
|
40
|
+
`Pragma: no-cache`.
|
|
41
|
+
- Access link tokens are kept in memory as a SHA-256 hash only (the raw token is
|
|
42
|
+
no longer retained after creation).
|
|
43
|
+
|
|
44
|
+
### Breaking
|
|
45
|
+
|
|
46
|
+
- **Access tokens can no longer be viewed or copied after creation:**
|
|
47
|
+
`GET /mcp/api/v1/links` no longer returns `token` (rest/mcp) or `url`
|
|
48
|
+
(get_link), and the links table only offers Revoke. Revoke and create a new
|
|
49
|
+
token instead.
|
|
50
|
+
|
|
51
|
+
### Added
|
|
52
|
+
|
|
53
|
+
- Editor sidebar: short "How to use MCP OAuth" help in the OAuth section.
|
|
54
|
+
- `GET /mcp/api/v1/oauth/status` returns structured `details` (path, source,
|
|
55
|
+
node id/name) for each collision.
|
|
56
|
+
|
|
11
57
|
## [0.2.0-beta.1] - 2026-10-28
|
|
12
58
|
|
|
13
59
|
First pre-release of 0.2.0, published under the npm `beta` dist-tag.
|
package/README.md
CHANGED
|
@@ -287,9 +287,9 @@ a `code`. `token_expired` also includes `expiredAt` and `accessLinksUrl` (the
|
|
|
287
287
|
|
|
288
288
|
Access links are **in memory** (default TTL **4h**, max 10). Caps: **get_link ≤
|
|
289
289
|
24h**, **rest/mcp ≤ 30d**. Creating a link returns the raw `token` plus a
|
|
290
|
-
self-contained `url` for `get_link` (`/mcp/a/<token>`).
|
|
291
|
-
|
|
292
|
-
|
|
290
|
+
self-contained `url` for `get_link` (`/mcp/a/<token>`). The token is shown only
|
|
291
|
+
once: `GET /links` never returns `token` or `url`, so to give access again
|
|
292
|
+
revoke the link and create a new one. After a restart every old token is
|
|
293
293
|
invalid.
|
|
294
294
|
|
|
295
295
|
Call `list_flows` or `get_flow` first and pass the returned `rev` as
|
package/ai-access.html
CHANGED
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
}
|
|
15
15
|
window.__com55AiAccessSidebarLoading = true;
|
|
16
16
|
|
|
17
|
-
var EDITOR_SIDEBAR_ASSET_VERSION = '0.2.0-beta.
|
|
17
|
+
var EDITOR_SIDEBAR_ASSET_VERSION = '0.2.0-beta.2';
|
|
18
18
|
var root = (RED.settings.httpAdminRoot || '/').replace(/\/$/, '');
|
|
19
19
|
var src =
|
|
20
20
|
(root || '') +
|