@extension.dev/mcp 5.2.0 → 5.3.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.
@@ -10,7 +10,7 @@
10
10
  "name": "extension-mcp",
11
11
  "source": "./",
12
12
  "description": "MCP tools for browser extension development: scaffold from 60+ templates, run the dev server with HMR, inspect the live DOM and logs, and publish store-ready builds for Chrome, Edge, and Firefox.",
13
- "version": "5.2.0",
13
+ "version": "5.3.1",
14
14
  "category": "development",
15
15
  "author": {
16
16
  "name": "Cezar Augusto"
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "extension-mcp",
3
3
  "description": "MCP tools for browser extension development: scaffold from 60+ templates, run the dev server with HMR, inspect the live DOM and logs, and publish store-ready builds for Chrome, Edge, and Firefox. Ships /extension, /extension-add, /extension-debug, and /extension-publish commands.",
4
- "version": "5.2.0",
4
+ "version": "5.3.1",
5
5
  "author": {
6
6
  "name": "Cezar Augusto",
7
7
  "email": "boss@cezaraugusto.net",
package/CHANGELOG.md CHANGED
@@ -1,5 +1,83 @@
1
1
  # Changelog
2
2
 
3
+ ## 5.3.1
4
+
5
+ ### Added
6
+
7
+ - `extension_login` pending results lead with the one-click device link
8
+ when the flow provides one (RFC 8628 `verification_uri_complete`): the
9
+ user opens it and approves with the code pre-filled, no typing. The
10
+ bare URI and code stay in the result as the fallback for flows that
11
+ cannot prefill.
12
+ - `extension_deploy` and `extension_release_promote` accept each other's
13
+ spelling for the same build commit: deploy folds a `buildId` argument
14
+ onto its canonical `buildSha`, and promote folds `buildSha` onto its
15
+ canonical `buildId`. Full-schema validation errors enumerate the new
16
+ aliases alongside the rest of the contract.
17
+
18
+ ### Fixed
19
+
20
+ - Resuming `extension_login` with a `deviceCode` while authorization is
21
+ still pending no longer claims a userCode of "(see the previous
22
+ response)". Only a hash of the code is stored, so it cannot be echoed
23
+ again; the result now says plainly that the one-click link and code
24
+ from the previous response are still valid, to open that link (or
25
+ enter the code at the verification URI), then call `extension_login`
26
+ again with the same deviceCode.
27
+
28
+ ## 5.3.0
29
+
30
+ The DevX surprise swarm ran ten personas over the full create-to-release
31
+ journey and ranked five blocker clusters. All five land here.
32
+
33
+ ### Added
34
+
35
+ - `extension_release_list`: the discovery sibling of the release verbs.
36
+ Lists the project's channels (channel to promoted build sha) and recent
37
+ builds from the public registry (registry.extension.land), so a caller
38
+ can pick a valid `buildSha` for `extension_release_promote`,
39
+ `extension_deploy`, or `extension_publish` instead of hunting the
40
+ console. Read-only, needs no auth for public projects. Tool count is
41
+ now 32.
42
+ - A shared public-registry client (`src/lib/registry.ts`) that reads
43
+ meta, channels, the build index, and store credential health. Reads
44
+ are best-effort: a registry blip never fails the verb it decorates.
45
+
46
+ ### Fixed
47
+
48
+ - `extension_create` announces every decision it took without being
49
+ asked. The resolved destination path leads the result, and
50
+ `defaultsApplied` names each silent choice (server cwd, package
51
+ manager, browser, git init) as one. Validation errors now teach the
52
+ full argument schema, required, optional, and aliases, instead of
53
+ revealing one missing field per attempt.
54
+ - `extension_dev` no longer forks sessions. A second call on the same
55
+ projectPath used to return ok:true while its browser died on the
56
+ profile lock; it now detects the live session and refuses, or stops it
57
+ first with `replace:true` and says so. A dead browser leg no longer
58
+ rides an ok:true envelope: the ready contract's `browser_exited` stamp
59
+ and the profile-lock signature both surface as failures.
60
+ - `extension_stop` finds orphaned sessions. It unions the in-memory
61
+ registry with the on-disk session markers, so a session whose dev
62
+ child exited (exactly when the orphaned browser most needs stopping)
63
+ is still found, verified, and reaped. A stale marker yields an honest
64
+ stopped:false and is pruned, never a phantom kill.
65
+ - `extension_deploy` dry runs stopped echoing an unqualified
66
+ "Preflight OK". The preflight now reads per-store credential health
67
+ from the registry and reports each browser as actionable, not
68
+ configured, or unverifiable, with the console stores URL in the
69
+ result. The silently defaulted channel is disclosed and checked
70
+ against channels.json. Under dryRun a platform error now reads
71
+ "preflight failed", never "submit failed".
72
+ - `extension_release_promote` dead-ends carry the way out: a 404 or
73
+ UNKNOWN_BUILD error now includes each channel's currently promoted
74
+ sha, the registry URL it read, and the console Builds page URL, plus
75
+ a pointer to `extension_release_list`.
76
+ - `extension_publish` says what the share link serves: the build sha,
77
+ build time, version, and channel behind the URL, resolved from the
78
+ registry's build index, with a note when it is the newest successful
79
+ build rather than a pinned one.
80
+
3
81
  ## 5.2.0
4
82
 
5
83
  ### Added