mcp-google-api 0.26.0 → 0.26.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 +376 -471
- package/README.md +5 -2
- package/dist/cli.js +50 -20
- package/dist/cli.js.map +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,311 +1,270 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [0.26.2](https://github.com/Ogekuri/mcp-google-api/compare/v0.26.0..v0.26.2) - 2026-11-10
|
|
4
|
+
### 🚜 Changes
|
|
5
|
+
- align --ver/--version report to padded labels [useReq] *(upgradeManager)*
|
|
6
|
+
REQUIREMENTS: REQ-120/REQ-162/REQ-163/REQ-181 reworded to the aligned three-line report; REQ-192 added pinning 'Current Installed : <version>'.
|
|
7
|
+
SRC: add pure renderVersionReportLine helper (label padEnd 17) consumed by runVersionCommand; sync stale probe doc in autoUpdate.ts.
|
|
8
|
+
DOCS: WORKFLOW.md TRACE-L/EDGE-06/EDGE-10 runtime model updated; REFERENCES.md regenerated. Verified: static-check clean, typecheck exit 0, npm test 153/153 passed.
|
|
9
|
+
- add --force forced-reinstall option to --upgrade [useReq] *(upgrade)*
|
|
10
|
+
REQUIREMENTS: add REQ-187..REQ-191 (force option, forced channel commands,
|
|
11
|
+
standard unforced child, help documentation) and PKG-064 (README coverage);
|
|
12
|
+
extend TST-017/TST-023 verification mapping.
|
|
13
|
+
upgradeManager: UPGRADE_FORCE_OPTION, parseUpgradeForce, --force-aware
|
|
14
|
+
parseManagementCommand shapes (any option order), buildDevelopUpgradeCommand
|
|
15
|
+
force flag, ManagementCommandOptions.force, forced/standard update child.
|
|
16
|
+
cli: forward --force to runManagementCommand; help epilog documents it.; tests: force parser/builder/child-spawn coverage (153/153 pass).; README: document --upgrade --develop/--dev and --force; fix stale
|
|
17
|
+
skip-on-latest sentence (REQ-146).
|
|
18
|
+
WORKFLOW/REFERENCES: runtime model and symbol index refreshed.
|
|
19
|
+
|
|
3
20
|
## [0.26.0](https://github.com/Ogekuri/mcp-google-api/compare/v0.25.0..v0.26.0) - 2026-11-08
|
|
4
21
|
### 🚜 Changes
|
|
5
22
|
- add opencode CLI support and alphabetical CLI listing [useReq] *(cliTargets)*
|
|
6
|
-
|
|
7
|
-
- REQ-112/REQ-113 updated: opencode MCP config at ~/.config/opencode/opencode.json (JSON mcp map) and skills at ~/.config/opencode/skills.
|
|
8
|
-
- REQ-117 updated: show CLI Configuration table covers all seven CLIs in alphabetical order; CLI_TARGETS registry reordered alphabetically.
|
|
9
|
-
- JSON read-modify-write helpers gained a mapKey parameter (default mcpServers, mcp for opencode) preserving unrelated keys; CliTarget gained jsonMcpMapKey.
|
|
10
|
-
- Unit suite 146/146 green; behavioral proof verified paths, mcp-map install/uninstall round-trip, and alphabetical show rows.
|
|
23
|
+
REQ-110/DES-017 updated: opencode joins the supported CLI registry; supported-name listings print alphabetically.; REQ-112/REQ-113 updated: opencode MCP config at ~/.config/opencode/opencode.json (JSON mcp map) and skills at ~/.config/opencode/skills.; REQ-117 updated: show CLI Configuration table covers all seven CLIs in alphabetical order; CLI_TARGETS registry reordered alphabetically.; JSON read-modify-write helpers gained a mapKey parameter (default mcpServers, mcp for opencode) preserving unrelated keys; CliTarget gained jsonMcpMapKey.; Unit suite 146/146 green; behavioral proof verified paths, mcp-map install/uninstall round-trip, and alphabetical show rows.
|
|
11
24
|
- rebuild dist binaries on every launcher run [useReq] *(mcp-google-api.sh)*
|
|
12
|
-
|
|
13
|
-
- PRJ-022 added: every argument is forwarded unchanged to the rebuilt dist/cli.js with exit-code propagation via exec.
|
|
14
|
-
- PKG-019 amended: the helper-script no-implicit-install/build rule now carves out the PRJ-018 development launcher.
|
|
15
|
-
- Build output routes to stderr so the exec'd CLI keeps stdout clean for stdio JSON-RPC framing (CTN-003).
|
|
16
|
-
- No src/ changes; unit suite 146/146 green; live proof verified rebuild, exit propagation, and JSON-pure stdout.
|
|
25
|
+
PRJ-019 amended: the dev launcher rebuilds dist from the current sources before every execution and aborts non-zero when the rebuild fails; dependency installs stay explicit (npm ci).; PRJ-022 added: every argument is forwarded unchanged to the rebuilt dist/cli.js with exit-code propagation via exec.; PKG-019 amended: the helper-script no-implicit-install/build rule now carves out the PRJ-018 development launcher.; Build output routes to stderr so the exec'd CLI keeps stdout clean for stdio JSON-RPC framing (CTN-003).; No src/ changes; unit suite 146/146 green; live proof verified rebuild, exit propagation, and JSON-pure stdout.
|
|
17
26
|
- render show tables as box-drawing grid [useReq] *(cliShow)*
|
|
18
|
-
|
|
19
|
-
- REQ-186 added: data rows emit without inter-row border lines, with exactly one header separator and a closing bottom border.
|
|
20
|
-
- renderAsciiTable now builds borders via a parametric borderLine helper (top/header/body/bottom) and pipe-delimited rows; column sizing, cell wrapping, and alignment are unchanged.
|
|
21
|
-
- WORKFLOW.md TRACE-K and EDGE-06 runtime model updated; REFERENCES.md regenerated; no test files modified.
|
|
27
|
+
REQ-185 added: the show CLI Configuration and Installation Status tables render as box-drawing grids using the specific border characters.; REQ-186 added: data rows emit without inter-row border lines, with exactly one header separator and a closing bottom border.; renderAsciiTable now builds borders via a parametric borderLine helper (top/header/body/bottom) and pipe-delimited rows; column sizing, cell wrapping, and alignment are unchanged.; WORKFLOW.md TRACE-K and EDGE-06 runtime model updated; REFERENCES.md regenerated; no test files modified.
|
|
22
28
|
- print enable/disable result as human-readable confirmation [useReq] *(cli)*
|
|
23
|
-
|
|
24
|
-
- REQ-184 added: enable/disable print a human-readable confirmation naming the resolved CLI and the resulting enabled state, exit 0.
|
|
25
|
-
- runEnableDisableCliCommand now writes plain-text confirmations on both success branches (state change and idempotent no-op); the unsupported-name JSON stderr diagnostic and exit 2 are unchanged (REQ-110).
|
|
26
|
-
- WORKFLOW.md TRACE-K and EDGE-06 runtime model updated; REFERENCES.md regenerated; no test files modified.
|
|
29
|
+
PRJ-008 updated: enable and disable join the human-readable stdout operation-report exceptions.; REQ-184 added: enable/disable print a human-readable confirmation naming the resolved CLI and the resulting enabled state, exit 0.; runEnableDisableCliCommand now writes plain-text confirmations on both success branches (state change and idempotent no-op); the unsupported-name JSON stderr diagnostic and exit 2 are unchanged (REQ-110).; WORKFLOW.md TRACE-K and EDGE-06 runtime model updated; REFERENCES.md regenerated; no test files modified.
|
|
27
30
|
- render GitHub probe failure reason in version report [useReq] *(upgradeManager)*
|
|
28
|
-
|
|
29
|
-
- REQ-164 updated to reference the REQ-181 failed-probe diagnostic rendering.
|
|
30
|
-
- probeLatestGitHubVersion embeds the GitHub API error message body field (e.g. HTTP 404 rate limit) via the new tolerant readGitHubErrorDetail helper.
|
|
31
|
-
- WORKFLOW.md TRACE-L and EDGE-06/EDGE-10 runtime model updated; REFERENCES.md regenerated; no test files modified.
|
|
31
|
+
REQ-181 added: --ver/--version now prints 'GitHub latest: unknown (<reason>)' when the GitHub releases probe fails, <reason> carrying the probe diagnostic message.; REQ-164 updated to reference the REQ-181 failed-probe diagnostic rendering.; probeLatestGitHubVersion embeds the GitHub API error message body field (e.g. HTTP 404 rate limit) via the new tolerant readGitHubErrorDetail helper.; WORKFLOW.md TRACE-L and EDGE-06/EDGE-10 runtime model updated; REFERENCES.md regenerated; no test files modified.
|
|
32
32
|
|
|
33
33
|
## [0.25.0](https://github.com/Ogekuri/mcp-google-api/compare/v0.24.0..v0.25.0) - 2026-11-08
|
|
34
34
|
### 🐛 Bug Fixes
|
|
35
35
|
- make doctor spawn tests hermetic with isolated home [useReq] *(cliSpawn)*
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
36
|
+
Root cause of the CI-only failure: the doctor spawn test inherited the
|
|
37
|
+
host HOME, so it read the developer machine's real
|
|
38
|
+
~/.config/mcp-google-api/config.json; locally the real API key made the
|
|
39
|
+
REQ-070 api-key check pass (exit 0), while the clean CI runner had no
|
|
40
|
+
settings file, so doctor correctly exited 1 and the gate failed.
|
|
41
|
+
spawnCli now accepts an injectable HOME override; the doctor success
|
|
42
|
+
test provisions an isolated home with the DES-018 settings fixture and
|
|
43
|
+
a valid-format test key, so local runs reproduce the CI runner state
|
|
44
|
+
exactly and the discrepancy can no longer hide before publication.
|
|
45
|
+
Add a REQ-070 regression pin: doctor exits 1 on a clean isolated home
|
|
46
|
+
without a configured API key (the exact CI failure state).
|
|
47
|
+
Evidence: clean-HOME reproduction exited 1 with api-key fail before the
|
|
48
|
+
fix; after the fix the suite passes 4/4 both with the real and a clean
|
|
49
|
+
HOME; full suite 146/146; local pre-release gate green (exit 0).
|
|
50
|
+
No source changes: doctor clean-env exit-1 behavior is REQ-070-correct.
|
|
51
51
|
|
|
52
52
|
## [0.24.0](https://github.com/Ogekuri/mcp-google-api/compare/v0.23.0..v0.24.0) - 2026-11-08
|
|
53
53
|
### ⛰️ Features
|
|
54
54
|
- add pre-release-check.sh release gate [useReq] *(scripts)*
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
55
|
+
Ship scripts/pre-release-check.sh running the release-gating stages
|
|
56
|
+
in mandatory order: publish-version guard, typecheck, unit tests,
|
|
57
|
+
production build, aborting at the first failed stage (PKG-058/059).
|
|
58
|
+
The script exits 0 only when every stage passes, runs from any cwd
|
|
59
|
+
by resolving the repository root, and never installs dependencies
|
|
60
|
+
or publishes (PKG-060).
|
|
61
|
+
Add tests/preReleaseCheck.unit.test.ts (TST-024): static contract on
|
|
62
|
+
stage order, fail-fast wiring, repository-root cd, and no install/
|
|
63
|
+
publish commands, plus a sandbox run proving fail-fast exit 1 on an
|
|
64
|
+
injected failing stage.
|
|
65
|
+
Runtime verification: full run green (guard 0.23.0 publishable,
|
|
66
|
+
typecheck clean, 143/143 unit tests, build success, exit 0); real
|
|
67
|
+
fail-fast observed on a missing-toolchain run (typecheck FAILED ->
|
|
68
|
+
exit 1, later stages skipped).
|
|
69
69
|
|
|
70
70
|
### 🐛 Bug Fixes
|
|
71
71
|
- sync package-lock bin path with package.json launcher [useReq] *(packaging)*
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
72
|
+
The committed package-lock.json root bin entry still recorded the
|
|
73
|
+
superseded dist/cli.js launcher, so every standard bootstrap
|
|
74
|
+
(npm install) rewrote the tracked lockfile and left a fresh clone dirty.
|
|
75
|
+
Regenerate the lockfile bin entry to bin/mcp-google-api.mjs, matching
|
|
76
|
+
the package.json launcher contract (PRJ-020).
|
|
77
|
+
Add a level-0 regression guard test asserting lockfile/package.json
|
|
78
|
+
bin-map identity to tests/npmPublishContract.unit.test.ts, closing
|
|
79
|
+
the TST-021 coverage gap that let the drift go undetected.
|
|
80
|
+
Evidence: reproducer red on the stale lockfile, green after the fix;
|
|
81
|
+
full suite 138/138 pass, typecheck clean, static analysis clean.
|
|
82
82
|
|
|
83
83
|
### 🚜 Changes
|
|
84
84
|
- gate pipeline on pre-release test checks [useReq] *(release)*
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
- direct test commands; suite 6/6, full suite 145/145.
|
|
85
|
+
Add a Pre-release check step to .github/workflows/release-npm.yml
|
|
86
|
+
running scripts/pre-release-check.sh after npm ci and before every
|
|
87
|
+
build, pack, publish, and release-creation step, so versions whose
|
|
88
|
+
tests fail produce no release artifact and are never published
|
|
89
|
+
(PKG-063).
|
|
90
|
+
The gate executes the PKG-058 stages (publish-version guard,
|
|
91
|
+
typecheck, unit tests, build) in fail-fast order (PKG-059) and never
|
|
92
|
+
installs dependencies or publishes (PKG-060).
|
|
93
|
+
Update the workflow header and pack-step comments; the release
|
|
94
|
+
pipeline defines no direct test commands - all test stages live in
|
|
95
|
+
the gate script.
|
|
96
|
+
SRS: add PKG-063 and extend TST-020 with the gate contract.; Tests: ciContract asserts gate presence, placement, and absence of
|
|
97
|
+
direct test commands; suite 6/6, full suite 145/145.
|
|
99
98
|
- clean run-created artifacts in pre-release-check [useReq] *(scripts)*
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
- the run; pre-existing dist preserved in a second scenario; static
|
|
110
|
-
- analysis clean; git status clean after every run.
|
|
99
|
+
scripts/pre-release-check.sh now snapshots the repository state before
|
|
100
|
+
the stages and removes on exit every artifact directory the run created
|
|
101
|
+
(e.g. the tsup dist/ tree), on both success and fail-fast paths, so the
|
|
102
|
+
repository is left as found (PKG-061).
|
|
103
|
+
Pre-existing artifact directories are preserved untouched (PKG-062).; SRS: add PKG-061/PKG-062 and extend TST-024 with the cleanup contract.; Tests: shared sandbox helper plus two behavioral proofs - run-created
|
|
104
|
+
dist removed on the fail-fast path, pre-existing dist sentinel intact.
|
|
105
|
+
Verification: suite 7/7; full run 145/145 tests with dist removed after
|
|
106
|
+
the run; pre-existing dist preserved in a second scenario; static
|
|
107
|
+
analysis clean; git status clean after every run.
|
|
111
108
|
|
|
112
109
|
## [0.23.0](https://github.com/Ogekuri/mcp-google-api/compare/v0.22.0..v0.23.0) - 2026-11-07
|
|
113
110
|
### ⛰️ Features
|
|
114
111
|
- add copilot CLI agent support (DES-017, REQ-110/112/113/117) [useReq] *(cli-targets)*
|
|
115
|
-
|
|
116
|
-
- Source: add COPILOT_TARGET adapter (~/.copilot/mcp.json JSON mcpServers + ~/.copilot/skills) to CLI_TARGETS registry in src/utils/cliTargets.ts
|
|
117
|
-
- Docs: README supported-agents list/table and WORKFLOW/REFERENCES runtime model updated
|
|
118
|
-
- Verification: eslint/tsc clean, npm test 132/132 pass, enable/show/install runtime smoke on isolated HOME
|
|
112
|
+
Requirements: extend DES-017, REQ-110, REQ-112, REQ-113, REQ-117 with the copilot target; Source: add COPILOT_TARGET adapter (~/.copilot/mcp.json JSON mcpServers + ~/.copilot/skills) to CLI_TARGETS registry in src/utils/cliTargets.ts; Docs: README supported-agents list/table and WORKFLOW/REFERENCES runtime model updated; Verification: eslint/tsc clean, npm test 132/132 pass, enable/show/install runtime smoke on isolated HOME
|
|
119
113
|
|
|
120
114
|
### 🐛 Bug Fixes
|
|
121
115
|
- build dist via prepare lifecycle for GitHub installs [useReq] *(packaging)*
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
116
|
+
Develop-channel installs (npm install -g github:Ogekuri/mcp-google-api#<tag>,
|
|
117
|
+
REQ-171) packed the fetched git tree without dist/: no build lifecycle ran, so
|
|
118
|
+
every installed package hit the PRJ-021 remediation error and the post-upgrade
|
|
119
|
+
install child failed (evidence: v0.22.4 pack listing had 0 dist entries).
|
|
120
|
+
package.json: declare scripts.prepare = npm run build so npm git-dep
|
|
121
|
+
preparation builds dist/ into the packed tarball (PRJ-020; verified by
|
|
122
|
+
local git-sim packs: 8 dist entries incl. dist/cli.js).
|
|
123
|
+
tests/npmPublishContract.unit.test.ts: add failing-first reproducer test
|
|
124
|
+
pinning the prepare lifecycle contract (no chained installs, PKG-019) and
|
|
125
|
+
restore deterministic pack listing via --ignore-scripts.
|
|
126
|
+
usereq/docs/WORKFLOW.md: document the prepare build inside EDGE-09.
|
|
133
127
|
- spawn package-manager child with neutral home cwd [useReq] *(upgrade)*
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
128
|
+
Defect: --upgrade (npm and --dev|--develop channels) and --uninstall
|
|
129
|
+
spawned npm from the caller's working directory. When invoked from the
|
|
130
|
+
source checkout of the same package (scripts/mcp-google-api.sh cd's to
|
|
131
|
+
the repo root), npm reconciled the git-ref global install against that
|
|
132
|
+
same-name local project and corrupted reify: TAR_ENTRY_ERROR ENOENT
|
|
133
|
+
floods on hono/@modelcontextprotocol/sdk/@grpc/grpc-js plus a fatal
|
|
134
|
+
lifecycle 'spawn sh ENOENT' (protobufjs) against a cwd deleted
|
|
135
|
+
mid-reify.
|
|
136
|
+
Fix: runPackageManagerCommand spawns the child with cwd = os.homedir()
|
|
137
|
+
(explicit neutral directory, env/prefix unchanged); stdio inheritance,
|
|
138
|
+
exit propagation, and the REQ-128 manual-command hint are unchanged.
|
|
139
|
+
Reproducer test (HDT Level 1) added to tests/upgradeManager.unit.test.ts:
|
|
140
|
+
asserts the child cwd is the user home and never the caller cwd; suite
|
|
141
|
+
went 11 pass / 1 fail before the fix to 136/136 after.
|
|
148
142
|
- report skipped server-start dispatch with build remediation [useReq] *(cli)*
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
143
|
+
Root cause of the persistent pi 'MCP connection closed' after the 0.21.0 rename:
|
|
144
|
+
the REQ-114 launcher 'npx -y mcp-google-api start --stdio' resolves a same-name
|
|
145
|
+
local project in the spawn cwd, launching a stale pre-rename dist artifact that
|
|
146
|
+
skips dispatch and exits 0 silently (reproduced: exit 0, zero stdout bytes).
|
|
147
|
+
Add describeUndispatchedServerStart() and handleUndispatchedEntry() to the CLI
|
|
148
|
+
entry gate: server-start-shaped argv that matches no gate rule now emits a JSON
|
|
149
|
+
build-remediation diagnostic on stderr (REQ-094) and exits 1; stdout stays
|
|
150
|
+
JSON-RPC-clean (CTN-003); non-server-start argv keeps the silent exit-0 no-op.
|
|
151
|
+
Extend tests/cliEntryGate.unit.test.ts with failing-first reproducers (3 tests);
|
|
152
|
+
full suite 132/132 green; typecheck, static checks, and build clean.
|
|
153
|
+
Document the stale-artifact remediation in docs/CONFIGURATION.md; update
|
|
154
|
+
WORKFLOW.md TRACE-A/EDGE-06 and regenerate REFERENCES.md.
|
|
161
155
|
|
|
162
156
|
### 🚜 Changes
|
|
163
157
|
- make --upgrade update unconditionally [useReq] *(upgradeManager)*
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
158
|
+
--upgrade now reinstalls mcp-google-api@latest in every invocation,
|
|
159
|
+
without any pre-upgrade version comparison (REQ-146 rewrite).
|
|
160
|
+
Removed the pre-upgrade registry necessity check and the
|
|
161
|
+
already-latest skip path (REQ-144, REQ-145, REQ-147 deleted) and the
|
|
162
|
+
pre-upgrade-latest summary shortcut (REQ-181 deleted); REQ-172
|
|
163
|
+
reworded since the comparison no longer exists.
|
|
164
|
+
The summary updated version now comes from the post-upgrade probe
|
|
165
|
+
(REQ-134); unused isUpgradeNecessary removed.
|
|
166
|
+
Requirements, workflow model, and references updated; typecheck and
|
|
167
|
+
136 unit tests pass.
|
|
174
168
|
- self-heal npm reify ENOENT in --upgrade [useReq] *(upgradeManager)*
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
169
|
+
--upgrade update children (npm and --develop/--dev channels) run with
|
|
170
|
+
captured output echoed on stderr (REQ-125, REQ-171).
|
|
171
|
+
A non-zero exit carrying an ENOENT reify diagnostic triggers one
|
|
172
|
+
tolerated npm uninstall -g clean-slate child plus a single retry,
|
|
173
|
+
repairing corrupted global trees whose dependency lifecycle spawns
|
|
174
|
+
fail like the reported 'spawn sh ENOENT' (REQ-182, REQ-183).
|
|
175
|
+
Requirements, workflow model, and references updated; typecheck and
|
|
176
|
+
136 unit tests pass.
|
|
183
177
|
- resolve npmjs latest via packument manifest [useReq] *(upgradeManager)*
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
178
|
+
--ver/--version now probe the npm packument manifest with the
|
|
179
|
+
abbreviated Accept header and print dist-tags.latest (REQ-179, REQ-180).
|
|
180
|
+
--upgrade reports the pre-upgrade npmjs latest as the summary updated
|
|
181
|
+
version and skips the post-upgrade probe when resolved (REQ-181).
|
|
182
|
+
REQUIREMENTS/WORKFLOW/REFERENCES updated; typecheck and 136 unit
|
|
183
|
+
tests pass.
|
|
190
184
|
- ship mcp-google-api launcher bin with remediation [useReq] *(bin)*
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
185
|
+
PRJ-020: the installed mcp-google-api bin executes the packaged
|
|
186
|
+
dist/cli.js Node entry forwarding every argument unchanged with no
|
|
187
|
+
implicit install/build steps (analogous to scripts/mcp-google-api.sh).
|
|
188
|
+
PRJ-021: new launcher bin/mcp-google-api.mjs (realpath-safe package-root
|
|
189
|
+
resolution) prints JSON build-remediation guidance on stderr and exits
|
|
190
|
+
non-zero when dist/cli.js is missing - impossible to deliver from the
|
|
191
|
+
built artifact itself.
|
|
192
|
+
package.json: bin repointed to bin/mcp-google-api.mjs; files allowlist
|
|
193
|
+
ships bin/ (verified in npm pack --dry-run); .gitignore gains !bin/
|
|
194
|
+
exceptions (CTN-010).
|
|
195
|
+
PKG-038 publication fixture updated for the bin/ prefix; verified live:
|
|
196
|
+
launcher forwards (--help, exit 0) and remediates (exit 1, JSON stderr);
|
|
197
|
+
136/136 tests, typecheck and eslint clean.
|
|
204
198
|
- add develop-channel coverage for --upgrade --dev|--develop [useReq] *(test)*
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
199
|
+
TST-023: new test requirement mapping REQ-170/171/172/173/177/178 to
|
|
200
|
+
tests/upgradeManager.unit.test.ts.
|
|
201
|
+
HDT Level 0: buildDevelopUpgradeCommand builds the raw tag install
|
|
202
|
+
command npm install -g github:Ogekuri/mcp-google-api#<tag>.
|
|
203
|
+
HDT Level 1: the develop channel probes only the GitHub releases
|
|
204
|
+
endpoint bypassing the idle cache (REQ-177), spawns the tagged install
|
|
205
|
+
with the raw tag_name (REQ-171), always proceeds even when the probed
|
|
206
|
+
tag equals the installed version (REQ-172), reports the probed version
|
|
207
|
+
in the summary (REQ-173), and fails fast on probe error without
|
|
208
|
+
spawning any child process (REQ-178).
|
|
209
|
+
No src/ changes: verification confirmed the implementation already
|
|
210
|
+
satisfied the request; 135/135 tests, typecheck and eslint clean.
|
|
217
211
|
- move publish guard to tools/ with gitignore exception [useReq] *(tools)*
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
212
|
+
Move scripts/check-publish-version.mjs to tools/ (PKG-057 updated):
|
|
213
|
+
the ../package.json resolution keeps working at the same directory
|
|
214
|
+
depth; guard verified executable from the new path (exit 0).
|
|
215
|
+
Wire package.json check:publish-version to the new path; the
|
|
216
|
+
prepublishOnly chain (PKG-005, PKG-017) is unchanged.
|
|
217
|
+
.gitignore: append !tools/ and !tools/**/* at the tail of the
|
|
218
|
+
negated-inclusion included-paths section (CTN-009); git check-ignore
|
|
219
|
+
confirms the guard is version-controlled.
|
|
220
|
+
requirements: scripts/ tree entry reduced to the mcp-google-api.sh
|
|
221
|
+
launcher; tools/ entry added for the publish guard.
|
|
228
222
|
- BREAKING CHANGE: remove redundant shell helpers, document HTTP vs stdio [useReq] *(scripts)*
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
223
|
+
Delete scripts/build.sh, start-http.sh, start-mcp.sh, test.sh: thin
|
|
224
|
+
wrappers over npm run build/start/test/test:e2e; PKG-019 keeps the
|
|
225
|
+
single npm run verify pipeline and REQ-094 forbids implicit builds.
|
|
226
|
+
scripts/ now holds only mcp-google-api.sh (PRJ-018, PRJ-019) and the
|
|
227
|
+
retained check-publish-version.mjs publish guard: required prepublishOnly
|
|
228
|
+
stage, not an end-user accessory (PKG-057, PKG-005, PKG-017).
|
|
229
|
+
README: new 'stdio vs Streamable HTTP' comparison section (PKG-054,
|
|
230
|
+
PKG-055, PKG-056).
|
|
231
|
+
Remove the obsolete start-mcp.sh remediation test whose subject was
|
|
232
|
+
deleted; no src/ changes, WORKFLOW.md unaffected.
|
|
239
233
|
- --dev|--develop installs the latest tagged GitHub release [useReq] *(upgrade)*
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
- cli: help text and dispatch comments document the new channel semantics.
|
|
234
|
+
REQ-170..173: --upgrade --develop|--dev now selects the latest tagged
|
|
235
|
+
GitHub release regardless of the branch carrying the tag; REQ-177 adds
|
|
236
|
+
the forced releases-API probe bypassing the idle cache gate; REQ-178
|
|
237
|
+
fails fast with a stderr diagnostic and no child spawn on probe failure.
|
|
238
|
+
upgradeManager: GITHUB_UPGRADE_REPOSITORY + buildDevelopUpgradeCommand(tag)
|
|
239
|
+
replace PACKAGE_DEVELOP_UPGRADE_COMMAND; develop branch probes GitHub first,
|
|
240
|
+
installs github:Ogekuri/mcp-google-api#<tag>, and reports the probed version.
|
|
241
|
+
autoUpdate: GitHubLatestVersionProbe ok outcome now carries the raw tag_name.; cli: help text and dispatch comments document the new channel semantics.
|
|
249
242
|
- BREAKING CHANGE: remove legacy exec aliases, placeholder key, entry-gate fallback [useReq] *(cli)*
|
|
250
|
-
|
|
251
|
-
- BREAKING: legacy INSTALL_API_KEY_PLACEHOLDER config value no longer loads as unset (DES-023, REQ-142); empty values still do.
|
|
252
|
-
- BREAKING: superseded isRunDirectly basename entry-gate removed; isEntryMainModule() alone decides dispatch.
|
|
253
|
-
- DOCTOR_PROBES use canonical tool names; tests canonicalized per user-requested legacy removal.
|
|
254
|
-
- Verified: typecheck, static-check clean, npm test 132/132; exec geocode now rejected as unknown tool.
|
|
243
|
+
BREAKING: exec accepts only canonical maps_ tool names (REQ-073); short/snake_case/batch-geocode-tool aliases removed from EXEC_TOOLS, execTool switch, help examples, and README.; BREAKING: legacy INSTALL_API_KEY_PLACEHOLDER config value no longer loads as unset (DES-023, REQ-142); empty values still do.; BREAKING: superseded isRunDirectly basename entry-gate removed; isEntryMainModule() alone decides dispatch.; DOCTOR_PROBES use canonical tool names; tests canonicalized per user-requested legacy removal.; Verified: typecheck, static-check clean, npm test 132/132; exec geocode now rejected as unknown tool.
|
|
255
244
|
- make --help user-facing and document --develop/--dev [useReq] *(cli)*
|
|
256
|
-
|
|
257
|
-
- REQ-175: --upgrade epilog documents the --develop | --dev GitHub develop-branch option.
|
|
258
|
-
- REQ-176: --ver described accurately as installed, npmjs-latest, and GitHub-latest versions.
|
|
259
|
-
- Verified facts kept: exec alias list (batch-geocode-tool) and search-nearby example params match the schema.
|
|
260
|
-
- Verified: static-check clean, npm test 132/132 (help contract REQ-129/130/131 intact).
|
|
245
|
+
REQ-174: help descriptions limited to user-facing usage; removed internal details (persisted configuration, settings file, dispatch order, dist/cli.js path).; REQ-175: --upgrade epilog documents the --develop | --dev GitHub develop-branch option.; REQ-176: --ver described accurately as installed, npmjs-latest, and GitHub-latest versions.; Verified facts kept: exec alias list (batch-geocode-tool) and search-nearby example params match the schema.; Verified: static-check clean, npm test 132/132 (help contract REQ-129/130/131 intact).
|
|
261
246
|
- add --develop/--dev GitHub develop-branch upgrade channel [useReq] *(upgrade-manager)*
|
|
262
|
-
|
|
263
|
-
- REQ-125/REQ-144 scoped to the default npm channel; develop channel skips the registry gate and already-latest path.
|
|
264
|
-
- upgradeManager: UpgradeChannel, PACKAGE_DEVELOP_UPGRADE_COMMAND (npm install -g github:Ogekuri/mcp-google-api#develop), parseUpgradeChannel; parseManagementCommand accepts the --upgrade + --develop/--dev pair.
|
|
265
|
-
- Develop-channel summary reports unknown as the updated version; default npm path unchanged.
|
|
266
|
-
- WORKFLOW.md TRACE-A/L and EDGE-07/09 updated; REFERENCES.md regenerated.
|
|
267
|
-
- Verified: typecheck, static-check clean, npm test 132/132.
|
|
247
|
+
REQ-170..173: --upgrade accepts --develop with equivalent --dev alias selecting the GitHub develop branch.; REQ-125/REQ-144 scoped to the default npm channel; develop channel skips the registry gate and already-latest path.; upgradeManager: UpgradeChannel, PACKAGE_DEVELOP_UPGRADE_COMMAND (npm install -g github:Ogekuri/mcp-google-api#develop), parseUpgradeChannel; parseManagementCommand accepts the --upgrade + --develop/--dev pair.; Develop-channel summary reports unknown as the updated version; default npm path unchanged.; WORKFLOW.md TRACE-A/L and EDGE-07/09 updated; REFERENCES.md regenerated.; Verified: typecheck, static-check clean, npm test 132/132.
|
|
268
248
|
- encode README header block structure and centered quick index [useReq] *(readme)*
|
|
269
|
-
|
|
270
|
-
- Rebuild README header: centered description block (strong summary + br + detail), HTML quick-index anchors now including Requirements, single status+notice centered block.
|
|
271
|
-
- No source-code change; WORKFLOW.md runtime model unaffected; REFERENCES.md regenerated unchanged.
|
|
272
|
-
- Verified: static-check clean; npm test 132/132 pass.
|
|
249
|
+
Add requirements PKG-046..PKG-053: [!CAUTION] pre-header, exact title format, centered badge/description/quick-index/status blocks, fixed H1 section order, quick-start step order.; Rebuild README header: centered description block (strong summary + br + detail), HTML quick-index anchors now including Requirements, single status+notice centered block.; No source-code change; WORKFLOW.md runtime model unaffected; REFERENCES.md regenerated unchanged.; Verified: static-check clean; npm test 132/132 pass.
|
|
273
250
|
|
|
274
251
|
## [0.22.0](https://github.com/Ogekuri/mcp-google-api/compare/v0.21.0..v0.22.0) - 2026-11-06
|
|
275
252
|
### 🐛 Bug Fixes
|
|
276
253
|
- symlink-aware main-module gate restores CLI dispatch [useReq] *(cli)*
|
|
277
|
-
|
|
278
|
-
- Add isEntryMainModule(): symmetric realpathSync comparison of argv[1] and the module URL; name-independent dispatch for symlink launches, false on plain imports.
|
|
279
|
-
- Add tests/cliEntryGate.unit.test.ts reproducer (symlink dispatch + direct control); update WORKFLOW.md TRACE-A; regenerate REFERENCES.md.
|
|
280
|
-
- Verification: reproducer fails pre-fix and passes post-fix; npm run verify green (typecheck, 135/135 tests, build); eslint clean.
|
|
254
|
+
The entry gate compared import.meta.url with a string-concatenated file:// argv[1], false for every symlinked launcher (npm global bin links, _npx .bin shims), so a stale pre-rename dist silently exited 0 with no output after the 0.21.0 bin rename; pi reported 'MCP connection closed'.; Add isEntryMainModule(): symmetric realpathSync comparison of argv[1] and the module URL; name-independent dispatch for symlink launches, false on plain imports.; Add tests/cliEntryGate.unit.test.ts reproducer (symlink dispatch + direct control); update WORKFLOW.md TRACE-A; regenerate REFERENCES.md.; Verification: reproducer fails pre-fix and passes post-fix; npm run verify green (typecheck, 135/135 tests, build); eslint clean.
|
|
281
255
|
|
|
282
256
|
### 🚜 Changes
|
|
283
257
|
- BREAKING CHANGE: remove env-var configuration, add settings commands and readable install report [useReq] *(cli)*
|
|
284
|
-
|
|
285
|
-
- Add tools/host/port config commands persisting enabledTools, host, port in ~/.config/mcp-google-api/config.json (REQ-167/168/169, DES-018)
|
|
286
|
-
- install/uninstall now print a human-readable per-CLI activity report (REQ-166); post-upgrade parser updated
|
|
287
|
-
- Startup banners identify the app as 'MCP Google API server' (REQ-165)
|
|
288
|
-
- README.md documents the standard flow only; CONFIGURATION.md rewritten around the settings file
|
|
289
|
-
- Requirements/docs updated (REQ-165..169, TST-022); tests aligned, new cliConfigCommands suite; all 129 unit tests pass
|
|
258
|
+
Remove GOOGLE_MAPS_API_KEY/GOOGLE_MAPS_ENABLED_TOOLS/MCP_SERVER_* env support and all .env/--env-file/setup logic (REQ removed: PRJ-011, CTN-007, CTN-009, REQ-087/088; dotenv dep and .env.example dropped); Add tools/host/port config commands persisting enabledTools, host, port in ~/.config/mcp-google-api/config.json (REQ-167/168/169, DES-018); install/uninstall now print a human-readable per-CLI activity report (REQ-166); post-upgrade parser updated; Startup banners identify the app as 'MCP Google API server' (REQ-165); README.md documents the standard flow only; CONFIGURATION.md rewritten around the settings file; Requirements/docs updated (REQ-165..169, TST-022); tests aligned, new cliConfigCommands suite; all 129 unit tests pass
|
|
290
259
|
|
|
291
260
|
## [0.21.0](https://github.com/Ogekuri/mcp-google-api/compare/v0.20.0..v0.21.0) - 2026-11-06
|
|
292
261
|
### 🚜 Changes
|
|
293
262
|
- pin release automation compliance to the mcp-google-api npm package [useReq] *(release-npm)*
|
|
294
|
-
|
|
295
|
-
- Verified automation compliance: release-npm.yml publishes package.json name, npm pack emits mcp-google-api-<ver>.tgz, asset glob mcp-google-api-*.tgz, .galias.conf regex matches the renamed lockfile; version guard name-agnostic; registry confirms mcp-google-api exists on npmjs.
|
|
296
|
-
- Zero superseded-name references in automation paths; REFERENCES.md regenerated unchanged.
|
|
297
|
-
- Verification: typecheck clean, static-check clean, 133/133 unit tests pass (ciContract 6/6), build success.
|
|
263
|
+
Add PKG-045: publish, pack, and release-asset glob derive from the distribution package name mcp-google-api.; Verified automation compliance: release-npm.yml publishes package.json name, npm pack emits mcp-google-api-<ver>.tgz, asset glob mcp-google-api-*.tgz, .galias.conf regex matches the renamed lockfile; version guard name-agnostic; registry confirms mcp-google-api exists on npmjs.; Zero superseded-name references in automation paths; REFERENCES.md regenerated unchanged.; Verification: typecheck clean, static-check clean, 133/133 unit tests pass (ciContract 6/6), build success.
|
|
298
264
|
- add mcp-google-api.sh local launcher mirroring the installed bin [useReq] *(scripts)*
|
|
299
|
-
|
|
300
|
-
- Forward every argument unchanged to the local dist/cli.js entry with the full CLI surface; no implicit install/build steps, missing-artifact remediation message instead (PRJ-019, PKG-019).
|
|
301
|
-
- Update SRS scripts/ tree comment and requirements; REFERENCES.md regenerated unchanged.
|
|
302
|
-
- Verification: static-check clean, 133/133 unit tests pass; launcher guard/help/forwarding functionally verified.
|
|
265
|
+
Add scripts/mcp-google-api.sh named after the installed mcp-google-api distribution bin (PRJ-018).; Forward every argument unchanged to the local dist/cli.js entry with the full CLI surface; no implicit install/build steps, missing-artifact remediation message instead (PRJ-019, PKG-019).; Update SRS scripts/ tree comment and requirements; REFERENCES.md regenerated unchanged.; Verification: static-check clean, 133/133 unit tests pass; launcher guard/help/forwarding functionally verified.
|
|
303
266
|
- BREAKING CHANGE: rename project to mcp-google-api and widen scope to all Google APIs [useReq] *(pkg)*
|
|
304
|
-
|
|
305
|
-
- Widen scope to Google APIs at large with Google Maps as the currently implemented family (PRJ-017, CTN-008, DES-018, DES-021).
|
|
306
|
-
- Reword README Acknowledgments to credit CabLate without the superseded name (PKG-044).
|
|
307
|
-
- Update SRS, WORKFLOW.md, README/docs, CHANGELOG, release workflow glob, skills, and unit-test assertions; regenerate REFERENCES.md.
|
|
308
|
-
- Verification: typecheck clean, static-check clean, 133/133 unit tests pass, build success.
|
|
267
|
+
Rename package, bin, CLI script name, npm/GitHub probe endpoints, MCP entry, settings (~/.config/mcp-google-api), and idle cache paths (PRJ-016, REQ-082, 114, 115, 121, 125, 127, 162, 163).; Widen scope to Google APIs at large with Google Maps as the currently implemented family (PRJ-017, CTN-008, DES-018, DES-021).; Reword README Acknowledgments to credit CabLate without the superseded name (PKG-044).; Update SRS, WORKFLOW.md, README/docs, CHANGELOG, release workflow glob, skills, and unit-test assertions; regenerate REFERENCES.md.; Verification: typecheck clean, static-check clean, 133/133 unit tests pass, build success.
|
|
309
268
|
|
|
310
269
|
### 📚 Documentation
|
|
311
270
|
- Update TODO.md file.
|
|
@@ -313,36 +272,30 @@
|
|
|
313
272
|
## [0.20.0](https://github.com/Ogekuri/mcp-google-api/compare/v0.19.0..v0.20.0) - 2026-11-05
|
|
314
273
|
### 🚜 Changes
|
|
315
274
|
- GitHub version probe targets the Ogekuri repository [useReq] *(upgrade-manager)*
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
275
|
+
Re-point DEFAULT_GITHUB_RELEASES_API_URL (src/utils/autoUpdate.ts) from
|
|
276
|
+
the upstream cablate/mcp-google-map (latest release v0.0.69) to the
|
|
277
|
+
distribution repository Ogekuri/mcp-google-map (latest release v0.19.0),
|
|
278
|
+
fixing the wrong 'GitHub latest:' line of --ver/--version.
|
|
279
|
+
Update REQ-163 to pin the GitHub probe repository to
|
|
280
|
+
Ogekuri/mcp-google-map; sync TRACE-L, external boundaries, and EDGE-10
|
|
281
|
+
in WORKFLOW.md; REFERENCES.md regenerated unchanged.
|
|
323
282
|
|
|
324
283
|
## [0.19.0](https://github.com/Ogekuri/mcp-google-api/compare/v0.18.0..v0.19.0) - 2026-11-05
|
|
325
284
|
### 🚜 Changes
|
|
326
285
|
- --ver/--version prints installed, npmjs, and GitHub latest versions [useReq] *(upgrade-manager)*
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
- EDGE-07, EDGE-10), and regenerate REFERENCES.md.
|
|
286
|
+
Rewrite runVersionCommand (REQ-120): concurrent npm-registry and
|
|
287
|
+
GitHub-releases probes bypassing the idle cache gate (REQ-161), printing
|
|
288
|
+
the three-line stdout report: installed version, 'npmjs latest: <v>'
|
|
289
|
+
(REQ-162), 'GitHub latest: <v>' with leading v stripped (REQ-163), and
|
|
290
|
+
'unknown' placeholders on undeterminable versions (REQ-164).
|
|
291
|
+
Add probeLatestGitHubVersion, GitHubProbeDeps, GitHubLatestVersionProbe,
|
|
292
|
+
and DEFAULT_GITHUB_RELEASES_API_URL to autoUpdate.ts.
|
|
293
|
+
Extract resolveProbeLatestVersion; resolveUpdatedVersion delegates to it.; Update SRS (REQ-120, REQ-161..REQ-164), WORKFLOW.md (TRACE-L, EDGE-06,
|
|
294
|
+
EDGE-07, EDGE-10), and regenerate REFERENCES.md.
|
|
337
295
|
- add Acknowledgments section crediting CabLate's mcp-google-map [useReq] *(readme)*
|
|
338
|
-
|
|
339
|
-
- README: append the Acknowledgments section after License, thanking CabLate for the mcp-google-map contribution.
|
|
340
|
-
- Verification: full unit suite 133/133 pass; static analysis clean.
|
|
296
|
+
Requirements: add PKG-044 (Acknowledgments as the last README.md section naming CabLate and the project URL).; README: append the Acknowledgments section after License, thanking CabLate for the mcp-google-map contribution.; Verification: full unit suite 133/133 pass; static analysis clean.
|
|
341
297
|
- publish to npm only for master tags; develop tags release without publish [useReq] *(release-npm)*
|
|
342
|
-
|
|
343
|
-
- Workflow: branch gate resolves origin/master and origin/develop reachability, fails on neither, exports step outputs; npm publish runs only for master-reachable tags.
|
|
344
|
-
- Develop-only version tags now build, pack, and create the GitHub Release with the tarball asset without npm publication.
|
|
345
|
-
- Tests: refactor ciContract suite to the updated contract; targeted suite 6/6, full suite 133/133 pass.
|
|
298
|
+
Requirements: update PKG-008/PKG-009/PKG-026/PKG-028, add PKG-042/PKG-043, update TST-020.; Workflow: branch gate resolves origin/master and origin/develop reachability, fails on neither, exports step outputs; npm publish runs only for master-reachable tags.; Develop-only version tags now build, pack, and create the GitHub Release with the tarball asset without npm publication.; Tests: refactor ciContract suite to the updated contract; targeted suite 6/6, full suite 133/133 pass.
|
|
346
299
|
|
|
347
300
|
## [0.18.0](https://github.com/Ogekuri/mcp-google-api/compare/v0.17.0..v0.18.0) - 2026-11-05
|
|
348
301
|
### 📚 Documentation
|
|
@@ -351,259 +304,221 @@
|
|
|
351
304
|
## [0.17.0](https://github.com/Ogekuri/mcp-google-api/compare/v0.16.0..v0.17.0) - 2026-11-05
|
|
352
305
|
### 🚜 Changes
|
|
353
306
|
- BREAKING CHANGE: migrate runtime floor to Node.js 24 and drop Node 22 workarounds [useReq] *(runtime)*
|
|
354
|
-
|
|
355
|
-
- NODE_ENGINE_FLOOR 22->24: doctor and setup checks, Doxygen docs updated
|
|
356
|
-
- README badge/prerequisites, docs/CONFIGURATION.md floor, scripts/setup.sh gate at >=24
|
|
357
|
-
- tests: doctor/setup floor 24 (22.x now fails); remove transitional Node<=23 --env-file tolerance (exit 9 contract)
|
|
358
|
-
- release workflow already Node24-pinned (24.15.0, checkout@v5/setup-node@v5); requirements CTN-005/REQ-070/PKG-014 updated, PKG-041 added
|
|
359
|
-
- verification: typecheck clean, 132/132 unit tests pass, static-check clean
|
|
307
|
+
package.json engines >=24; @types/node ^24; lockfile refreshed (root identity kept); NODE_ENGINE_FLOOR 22->24: doctor and setup checks, Doxygen docs updated; README badge/prerequisites, docs/CONFIGURATION.md floor, scripts/setup.sh gate at >=24; tests: doctor/setup floor 24 (22.x now fails); remove transitional Node<=23 --env-file tolerance (exit 9 contract); release workflow already Node24-pinned (24.15.0, checkout@v5/setup-node@v5); requirements CTN-005/REQ-070/PKG-014 updated, PKG-041 added; verification: typecheck clean, 132/132 unit tests pass, static-check clean
|
|
360
308
|
- enforce npm publication compliance contract [useReq] *(pkg)*
|
|
361
|
-
|
|
362
|
-
- Declare SPDX GPL-3.0-only in package.json, package-lock.json, README badge/section
|
|
363
|
-
- Add package.json exports map (dist entry + package.json subpath)
|
|
364
|
-
- Ship CHANGELOG.md via the files allowlist
|
|
365
|
-
- Add tests/npmPublishContract.unit.test.ts: metadata, lockfile identity, private-flag, name policy, npm pack --dry-run tarball allowlist
|
|
309
|
+
Add PKG-033..PKG-040 and TST-021 codifying npm publication policies; Declare SPDX GPL-3.0-only in package.json, package-lock.json, README badge/section; Add package.json exports map (dist entry + package.json subpath); Ship CHANGELOG.md via the files allowlist; Add tests/npmPublishContract.unit.test.ts: metadata, lockfile identity, private-flag, name policy, npm pack --dry-run tarball allowlist
|
|
366
310
|
|
|
367
311
|
## [0.16.0](https://github.com/Ogekuri/mcp-google-api/compare/v0.15.0..v0.16.0) - 2026-11-05
|
|
368
312
|
### 🚜 Changes
|
|
369
313
|
- publish npm via OIDC Trusted Publishing [useReq] *(release)*
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
314
|
+
REQUIREMENTS: PKG-010 switches npm publishing to OIDC Trusted Publishing (no long-lived tokens); add PKG-030 id-token: write permission, PKG-031 no publish-token secret/env, PKG-032 npm >= 11.5.1 floor on the pinned runtime; extend TST-020.
|
|
315
|
+
release-npm.yml: remove the publish-token secret/environment from the publish step; authentication is minted from the workflow OIDC token. Tag trigger, master gate, single job, build/pack/changelog/GitHub Release mechanics unchanged.
|
|
316
|
+
tests: ciContract publish test asserts OIDC permission, token absence, and the pinned runtime floor; npm test passes 124/124.
|
|
373
317
|
|
|
374
318
|
## [0.15.0](https://github.com/Ogekuri/mcp-google-api/compare/v0.14.0..v0.15.0) - 2026-11-04
|
|
375
319
|
### 🚜 Changes
|
|
376
320
|
- remove CI automation and release-time testing [useReq] *(ci)*
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
- Development-phase minimum verification stays local via npm scripts
|
|
385
|
-
- (PKG-019: typecheck, test, verify).
|
|
321
|
+
Delete .github/workflows/ci.yml and PKG-004: no push/PR automation.; Release pipeline keeps gate, build, pack, publish, changelog, release;
|
|
322
|
+
typecheck, unit tests, and the doctor smoke check are removed
|
|
323
|
+
(PKG-021 deleted; PKG-005/008/027 updated).
|
|
324
|
+
package.json prepublishOnly now runs version guard + build only.; tests/ciContract.unit.test.ts rewritten per TST-020: asserts ci.yml
|
|
325
|
+
absence, master-gate ordering, and no test/smoke steps in release-npm.yml.
|
|
326
|
+
Development-phase minimum verification stays local via npm scripts
|
|
327
|
+
(PKG-019: typecheck, test, verify).
|
|
386
328
|
|
|
387
329
|
## [0.14.0](https://github.com/Ogekuri/mcp-google-api/compare/v0.13.0..v0.14.0) - 2026-11-04
|
|
388
330
|
### 🚜 Changes
|
|
389
331
|
- BREAKING CHANGE: rename npm release workflow file to release-npm.yml [useReq] *(ci)*
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
- REQUIREMENTS.md: add PKG-029, refresh structure tree and TST-020 mapping.
|
|
332
|
+
Rename .github/workflows/release.yml to .github/workflows/release-npm.yml
|
|
333
|
+
as mandated by new PKG-029; the single master-tag-gated release job
|
|
334
|
+
(PKG-008/PKG-009/PKG-027/PKG-028) is unchanged in content.
|
|
335
|
+
Update the ci.yml header comment to reference the new workflow file name.; Point tests/ciContract.unit.test.ts at release-npm.yml and extend TST-020
|
|
336
|
+
to cover PKG-029.
|
|
337
|
+
REQUIREMENTS.md: add PKG-029, refresh structure tree and TST-020 mapping.
|
|
397
338
|
- collapse release into single master-tag-gated job [useReq] *(ci)*
|
|
398
|
-
|
|
399
|
-
- release.yml: merge check-branch into one release job; master-reachability gate is the first step and exits 1 before npm ci/build/pack/publish; no parallel or separate release jobs remain
|
|
400
|
-
- tests: ciContract gate test verifies the single-job contract and gate-before-build ordering
|
|
339
|
+
requirements: PKG-009 gates the single release job; add PKG-027 (exactly one integrated release job) and PKG-028 (fail before any install/build/pack/publish when tag not on origin/master, so develop tags never build); update TST-020; release.yml: merge check-branch into one release job; master-reachability gate is the first step and exits 1 before npm ci/build/pack/publish; no parallel or separate release jobs remain; tests: ciContract gate test verifies the single-job contract and gate-before-build ordering
|
|
401
340
|
|
|
402
341
|
## [0.13.0](https://github.com/Ogekuri/mcp-google-api/compare/v0.11.0..v0.13.0) - 2026-11-04
|
|
403
342
|
### 🚜 Changes
|
|
404
343
|
- restrict package build to master version-tag release workflow [useReq] *(ci)*
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
344
|
+
Activate the package build only on a canonical version tag whose commit
|
|
345
|
+
is reachable from master (PKG-008, PKG-009, PKG-026):
|
|
346
|
+
ci.yml: drop build/pack/tarball-install/doctor smoke steps from push/PR
|
|
347
|
+
CI, which now runs lockfile install, typecheck, and unit tests only.
|
|
348
|
+
release.yml: build, pack, install the tarball into a temporary
|
|
349
|
+
environment, and run the no-Google doctor smoke check inside the
|
|
350
|
+
master-gated build-release job before npm publish (PKG-021).
|
|
351
|
+
tests/ciContract.unit.test.ts: re-target the workflow contract suite to
|
|
352
|
+
the new trigger/build placement and add release ordering assertions.
|
|
353
|
+
REQUIREMENTS.md: sharpen PKG-008, retarget PKG-021, add PKG-026/TST-020.
|
|
415
354
|
|
|
416
355
|
## [0.11.0](https://github.com/Ogekuri/mcp-google-api/compare/v0.10.0..v0.11.0) - 2026-11-04
|
|
417
356
|
### 🐛 Bug Fixes
|
|
418
357
|
- document geocode payload contract and bounded debug capture [useReq] *(skills)*
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
358
|
+
eatspot-discovery skill v1.2.0 fixes two concrete agent-run failures:
|
|
359
|
+
Section 13.1 now documents the real flat maps_geocode payload and
|
|
360
|
+
forbids dereferencing the internal {success,data} envelope (root
|
|
361
|
+
cause of TypeError on response.data.location during debug-register
|
|
362
|
+
aggregation).
|
|
363
|
+
Section D9 adds a mandatory bounded-capture procedure with declared
|
|
364
|
+
TRUNCATED payloads and register-entry integrity rules (re-execute
|
|
365
|
+
missing entries; mark NOT_ACCESSIBLE), preventing loss of executed
|
|
366
|
+
call records on size-limit aborts.
|
|
367
|
+
manifest.json version synced to 1.2.0; new contract unit test
|
|
368
|
+
tests/eatspotSkillContract.unit.test.ts guards both rules.
|
|
430
369
|
|
|
431
370
|
### 🚜 Changes
|
|
432
371
|
- append skill debug overlays only on install --debug-skills [useReq] *(skills)*
|
|
433
|
-
|
|
434
|
-
- Add optional manifest debug overlay and layout-aware skill sync
|
|
435
|
-
- Append overlay only with install --debug-skills; show accepts both modes
|
|
436
|
-
- Post-upgrade and api-key reinstalls never append the overlay
|
|
437
|
-
- Requirements: REQ-152..REQ-160, REQ-126, DES-020, PRJ-012/013, TST-018/019
|
|
372
|
+
Move eatspot-discovery debug instructions into DEBUG.md; Add optional manifest debug overlay and layout-aware skill sync; Append overlay only with install --debug-skills; show accepts both modes; Post-upgrade and api-key reinstalls never append the overlay; Requirements: REQ-152..REQ-160, REQ-126, DES-020, PRJ-012/013, TST-018/019
|
|
438
373
|
- BREAKING CHANGE: config-file-only settings, human-readable api-key, auto-update [useReq] *(cli)*
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
374
|
+
REQ-083/DES-018/DES-023/DES-024: configuration comes only from
|
|
375
|
+
~/.config/mcp-google-map/config.json ({enabled, apiKey, autoUpdate});
|
|
376
|
+
startup resolves the API key from settings (default empty key) and the
|
|
377
|
+
auto-update check only runs when the autoUpdate flag is true (default on).
|
|
378
|
+
New auto-update enable|disable|1|0 command persists the flag. Env-var
|
|
379
|
+
configuration and connector env/key embedding removed (REQ-114, REQ-142).
|
|
380
|
+
api-key prints a human-readable operation report (REQ-137..139).
|
|
381
|
+
install/exec/batch-geocode drop --apikey and read the settings key.
|
|
382
|
+
Verified: tsc --noEmit clean; eslint clean; npm test 110/110 passing.
|
|
448
383
|
- gate --upgrade on a latest-version necessity check [useReq] *(upgrade)*
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
384
|
+
REQ-144..147: --upgrade first runs a forced registry probe bypassing the idle gate.
|
|
385
|
+
Already-latest installs print the version on stdout and exit 0 with no child spawn.
|
|
386
|
+
Newer or undeterminable outcomes proceed with the npm update, post-upgrade install,
|
|
387
|
+
and stdout summary. Updates REQUIREMENTS.md, WORKFLOW.md (TRACE-L, EDGE-07, external
|
|
388
|
+
boundaries), and regenerated REFERENCES.md. Verified: tsc --noEmit clean; npm test
|
|
389
|
+
110/110 passing (upgradeManager suite exercises the proceed path).
|
|
455
390
|
|
|
456
391
|
## [0.10.0](https://github.com/Ogekuri/mcp-google-api/compare/v0.9.0..v0.10.0) - 2026-11-03
|
|
457
392
|
### ⛰️ Features
|
|
458
393
|
- add api-key command, install placeholder, and stdio key guard [useReq] *(api-key)*
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
394
|
+
Add api-key <key> CLI: validate REQ-020 format, persist key in
|
|
395
|
+
~/.config/mcp-google-map/config.json (apiKey field), then reinstall
|
|
396
|
+
every enabled CLI with the new key (REQ-136..REQ-139)
|
|
397
|
+
install: resolve embedded key as --apikey > persisted settings >
|
|
398
|
+
GOOGLE_MAPS_API_KEY; embed placeholder naming api-key when unset
|
|
399
|
+
(REQ-140, REQ-141, DES-023)
|
|
400
|
+
start/run: effective-key resolution incl. persisted settings and
|
|
401
|
+
placeholder-as-unset; stdio mode exits 1 with stderr JSON inviting
|
|
402
|
+
api-key when no key resolves (REQ-142, REQ-143)
|
|
403
|
+
Docs: REQUIREMENTS/WORKFLOW/REFERENCES updated; README documents the
|
|
404
|
+
command, key priority, and startup guard (PKG-025)
|
|
470
405
|
|
|
471
406
|
## [0.9.0](https://github.com/Ogekuri/mcp-google-api/compare/v0.8.0..v0.9.0) - 2026-11-03
|
|
472
407
|
### 🐛 Bug Fixes
|
|
473
408
|
- spawn post-upgrade install via upgraded package bin [useReq] *(upgrade)*
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
409
|
+
The --upgrade post-upgrade child spawned 'npx -y mcp-google-map install',
|
|
410
|
+
an unversioned npx spec resolved from the npx cache/registry instead of the
|
|
411
|
+
package just upgraded by 'npm install -g'. A stale cached CLI copy could run
|
|
412
|
+
its default command (pre-v0.7.0 releases start the MCP HTTP server there),
|
|
413
|
+
never exit, and block the parent spawnSync forever: the user observed the
|
|
414
|
+
MCP server running instead of the 'install' command (REQ-126 violation).
|
|
415
|
+
POST_UPGRADE_INSTALL_COMMAND is now ['mcp-google-map', 'install']: the
|
|
416
|
+
globally installed bin of the just-upgraded package, already on PATH in
|
|
417
|
+
the exact --upgrade scenario; captured stdout and stderr-inherited spawn
|
|
418
|
+
mechanics unchanged (REQ-125, REQ-126, REQ-128).
|
|
419
|
+
Add tests/upgradeManager.unit.test.ts reproducer: post-upgrade child must
|
|
420
|
+
be the upgraded package bin with captured stdout; upgrade-child failure
|
|
421
|
+
propagation; no-CLI no-op; spawn-failure manual hint; uninstall child;
|
|
422
|
+
parseManagementCommand exact-match dispatch (PRJ-003, REQ-125, REQ-127).
|
|
423
|
+
Update WORKFLOW.md TRACE-L, External Boundaries and EDGE-09; regenerate
|
|
424
|
+
REFERENCES.md. Full suite: 110 tests passing; typecheck and static
|
|
425
|
+
checks clean.
|
|
491
426
|
|
|
492
427
|
## [0.8.0](https://github.com/Ogekuri/mcp-google-api/compare/v0.7.0..v0.8.0) - 2026-11-03
|
|
493
428
|
### 🚜 Changes
|
|
494
429
|
- BREAKING CHANGE: rename venue-discovery skill to eatspot-discovery [useReq] *(skills)*
|
|
495
|
-
|
|
430
|
+
Rename the bundled agent skill identifier venue-discovery to eatspot-discovery (display name EatSpot Discovery). Updates src/resources/skills/{venue-discovery => eatspot-discovery}/SKILL.md, manifest.json id/name/path, REQUIREMENTS.md PRJ-014/REQ-027/REQ-030/REQ-033/REQ-100..REQ-109, and README.md plus docs/CONFIGURATION.md cross-references.
|
|
496
431
|
- replace echoed install JSON with human-readable upgrade summary [useReq] *(upgrade)*
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
432
|
+
REQUIREMENTS: REQ-126 now mandates captured child install stdout; new
|
|
433
|
+
REQ-132..135 define the stdout summary (starting/updated versions,
|
|
434
|
+
install outcome, per-CLI results, unknown-version and fallback rules).
|
|
435
|
+
upgradeManager: runPostUpgradeSkillInstall captures child stdout and
|
|
436
|
+
parses per-CLI outcomes; runUpgradeCommand prints the summary on
|
|
437
|
+
stdout after a successful npm upgrade and returns the install code.
|
|
438
|
+
WORKFLOW/REFERENCES: TRACE-L, EDGE-06, EDGE-09 and symbol index
|
|
439
|
+
updated for the new post-upgrade rendering path.
|
|
505
440
|
|
|
506
441
|
## [0.7.0](https://github.com/Ogekuri/mcp-google-api/compare/v0.6.0..v0.7.0) - 2026-11-03
|
|
507
442
|
### 🚜 Changes
|
|
508
443
|
- gate server start on start/run, no-command help, silent version check [useReq] *(cli)*
|
|
509
|
-
|
|
510
|
-
- cli.ts: server runs only via start/run; bare invocation prints help with mcp-google-map v<version> header and --upgrade/--uninstall/--ver/--version epilog.
|
|
511
|
-
- upgradeManager: no stderr output when no newer version exists (not an error).
|
|
512
|
-
- clientSnippets/cliInstaller: stdio registrations launch 'mcp-google-map start --stdio'.
|
|
513
|
-
- Scripts, README, CONFIGURATION docs, and spawn/snippet tests aligned; npm test 103 pass, tsc/eslint clean.
|
|
444
|
+
REQUIREMENTS: PRJ-003/REQ-079/REQ-080/REQ-114/REQ-124 updated; REQ-129/130/131 and TST-017 added.; cli.ts: server runs only via start/run; bare invocation prints help with mcp-google-map v<version> header and --upgrade/--uninstall/--ver/--version epilog.; upgradeManager: no stderr output when no newer version exists (not an error).; clientSnippets/cliInstaller: stdio registrations launch 'mcp-google-map start --stdio'.; Scripts, README, CONFIGURATION docs, and spawn/snippet tests aligned; npm test 103 pass, tsc/eslint clean.
|
|
514
445
|
|
|
515
446
|
## [0.6.0](https://github.com/Ogekuri/mcp-google-api/compare/v0.5.0..v0.6.0) - 2026-11-02
|
|
516
447
|
### ⛰️ Features
|
|
517
448
|
- add --upgrade/--uninstall/--ver/--version with idle-gated version check [useReq] *(upgradeManager)*
|
|
518
|
-
|
|
519
|
-
- Extract logging-free probeLatestVersion in autoUpdate.ts; startup check now idle-gated (REQ-082, REQ-121)
|
|
520
|
-
- Fix registry accept header (406 -> application/json) so online version verification works
|
|
521
|
-
- Update REQUIREMENTS (PRJ-003, CTN-008, DES-022, REQ-120..128), WORKFLOW (TRACE-L, EDGE-07/09), REFERENCES
|
|
449
|
+
Add src/utils/upgradeManager.ts: idle cache (~/.cache/mcp-google-map/), forced --ver/--version check, npm-based --upgrade with post-upgrade skill install, --uninstall (REQ-120..REQ-128); Extract logging-free probeLatestVersion in autoUpdate.ts; startup check now idle-gated (REQ-082, REQ-121); Fix registry accept header (406 -> application/json) so online version verification works; Update REQUIREMENTS (PRJ-003, CTN-008, DES-022, REQ-120..128), WORKFLOW (TRACE-L, EDGE-07/09), REFERENCES
|
|
522
450
|
|
|
523
451
|
## [0.5.0](https://github.com/Ogekuri/mcp-google-api/compare/v0.4.0..v0.5.0) - 2026-11-02
|
|
524
452
|
### ⛰️ Features
|
|
525
453
|
- add enable/disable/install/uninstall/show CLI configuration commands [useReq] *(cli)*
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
454
|
+
Add enable/disable/install/uninstall/show commands managing MCP-server
|
|
455
|
+
registration and packaged skills for pi, openclaw, codex, antigravity,
|
|
456
|
+
claude (REQ-110..REQ-119, PRJ-015, DES-017..DES-020)
|
|
457
|
+
Add cliSettings/cliTargets/cliInstaller/cliShow utils with atomic
|
|
458
|
+
read-modify-write preserving unrelated config entries (JSON mcpServers
|
|
459
|
+
and codex TOML mcp_servers)
|
|
460
|
+
Fix malformed skills manifest.json; ship src/resources/skills in the
|
|
461
|
+
npm package (PKG-024); document commands in README (PKG-023)
|
|
462
|
+
Update REQUIREMENTS/WORKFLOW/REFERENCES
|
|
535
463
|
|
|
536
464
|
### 🐛 Bug Fixes
|
|
537
465
|
- Fix .gitignore file.
|
|
538
466
|
- drop deprecated glob@10 via @googlemaps/places ^3.1.0 [useReq] *(deps)*
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
467
|
+
Install-time deprecation warnings traced to the production dependency tree: @googlemaps/places@2.x -> google-gax@5 -> rimraf@5 -> glob@10.5.0 (npm deprecation cites publicized security vulnerabilities).
|
|
468
|
+
Bump @googlemaps/places ^2.1.0 -> ^3.1.0: google-gax@^6 removes rimraf/glob from the tree; engines node >= 22 preserved; PlacesClient surface unchanged (tsc clean, 57 unit tests pass).
|
|
469
|
+
Add tests/dependencyTree.unit.test.ts reproducer: lockfile tree must contain no glob package and must lock @googlemaps/places at major 3. Remaining crypto-js and node-domexception deprecations plus the protobufjs install-scripts notice are upstream or npm-client-side.
|
|
542
470
|
|
|
543
471
|
### 🚜 Changes
|
|
544
472
|
- derive settings dir from program name, forbid generic skills dir [useReq] *(cli-settings)*
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
473
|
+
Add DES-021: settings directory MUST equal the distribution program
|
|
474
|
+
name mcp-google-map; shared/generic dirs like ~/.config/skills/ are
|
|
475
|
+
forbidden
|
|
476
|
+
Introduce SETTINGS_PROGRAM_NAME constant as single source of truth
|
|
477
|
+
for CLI_SETTINGS_RELATIVE in src/utils/cliSettings.ts
|
|
478
|
+
Drop the reference skills settings-path mention from documentation;
|
|
479
|
+
runtime path stays ~/.config/mcp-google-map/config.json (DES-018)
|
|
480
|
+
Regenerate REFERENCES.md
|
|
553
481
|
- drop GeoScout 6.2 lineage and bind filters to venue-discovery skill [useReq] *(skills)*
|
|
554
|
-
|
|
555
|
-
- Bind filters and raw-payload implementations to the in-project venue-discovery skill and vice-versa (REQ-027, REQ-030, REQ-033, new REQ-109)
|
|
556
|
-
- Rename tests/geoscoutFilters.unit.test.ts to placesFilters.unit.test.ts (titles only; TST-003 updated); npm test 102/102 green
|
|
482
|
+
Remove all GeoScout 6.2 references: PRJ-014 rewritten, docs/GEOSCOUT.md deleted, README/docs/package.json/manifest/SKILL/NewPlacesService cleaned; Bind filters and raw-payload implementations to the in-project venue-discovery skill and vice-versa (REQ-027, REQ-030, REQ-033, new REQ-109); Rename tests/geoscoutFilters.unit.test.ts to placesFilters.unit.test.ts (titles only; TST-003 updated); npm test 102/102 green
|
|
557
483
|
- add venue-discovery skill and skills resource framework [useReq] *(skills)*
|
|
558
|
-
|
|
559
|
-
- Add venue-discovery SKILL.md: GeoScout 6.2 translated to English and bound to mcp-google-map; all 18 tools mapped; budget/priceLevels/priceRange rules, grades A-E, categories, hours, geo modes, progressive search, output A-D + DEBUG
|
|
560
|
-
- REQUIREMENTS.md: skills section; WORKFLOW.md: inert-resources note
|
|
484
|
+
Add src/resources/skills: manifest.json registry + README.md authoring guide (PRJ-012..014, REQ-097..108); Add venue-discovery SKILL.md: GeoScout 6.2 translated to English and bound to mcp-google-map; all 18 tools mapped; budget/priceLevels/priceRange rules, grades A-E, categories, hours, geo modes, progressive search, output A-D + DEBUG; REQUIREMENTS.md: skills section; WORKFLOW.md: inert-resources note
|
|
561
485
|
- add setup+snippet commands, typed config, doctor probes, loopback *(cli)*
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
- Doctor: engines floor 22, masked config diagnostics, per-tool API profiles, selectable --probes (legacy --live preserved).
|
|
565
|
-
- HTTP: loopback default 127.0.0.1 (migration documented), non-zero exit on failed startup, SIGINT/SIGTERM orderly shutdown; stdio from ready artifact.
|
|
566
|
-
- Tooling: no implicit script chains, npm run verify pipeline, CI 3-OS matrix with tarball install + no-Google-API smoke; docs aligned with supported CLI/headers.
|
|
567
|
-
- Tests: 6 new unit suites; 93 unit tests pass; typecheck and build clean.
|
|
486
|
+
Requirements: PRJ-003/006/009-011, CTN-005/007-009, DES-014-016, REQ-008/009/070/079/087-096, PKG-003-005/018-022, TST-002/012-016; LIM-003 removed (doctor now enforces engines >= 22).
|
|
487
|
+
New: non-interactive setup onboarding, snippet generator, tool/API profiles, typed config resolver with --env-file and secret masking.; Doctor: engines floor 22, masked config diagnostics, per-tool API profiles, selectable --probes (legacy --live preserved).; HTTP: loopback default 127.0.0.1 (migration documented), non-zero exit on failed startup, SIGINT/SIGTERM orderly shutdown; stdio from ready artifact.; Tooling: no implicit script chains, npm run verify pipeline, CI 3-OS matrix with tarball install + no-Google-API smoke; docs aligned with supported CLI/headers.; Tests: 6 new unit suites; 93 unit tests pass; typecheck and build clean.
|
|
568
488
|
|
|
569
489
|
### 🎯 Cover Requirements
|
|
570
490
|
- add spawn-level env-file/HTTP/shutdown and CI-contract tests *(tests)*
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
- tests/ciContract.unit.test.ts: static regression guard for the CI contract (3-OS matrix, lockfile install, typecheck/test/build, tarball install, doctor smoke with placeholder key, e2e excluded).
|
|
574
|
-
- src/cli.ts: export extractEnvFileOption for direct unit testing; no behavior change.
|
|
575
|
-
- WORKFLOW.md unchanged (no runtime-model impact); REFERENCES.md regenerated.
|
|
576
|
-
- Verification: 102/102 unit tests pass; typecheck and static-check clean.
|
|
491
|
+
Close verification-coverage gaps of the new contracts without SRS changes:
|
|
492
|
+
tests/cliSpawn.unit.test.ts: process-level --env-file tests (missing file non-zero exit with JSON error on the exit-1 path, Node>=24 exit-9 tolerated; existing file loads for both argv forms before doctor), HTTP server startup from an env-file port with loopback endpoint and SIGTERM orderly shutdown (exit 0, 'HTTP server stopped'), and the start-mcp.sh missing-artifact remediation guard (non-win32).; tests/ciContract.unit.test.ts: static regression guard for the CI contract (3-OS matrix, lockfile install, typecheck/test/build, tarball install, doctor smoke with placeholder key, e2e excluded).; src/cli.ts: export extractEnvFileOption for direct unit testing; no behavior change.; WORKFLOW.md unchanged (no runtime-model impact); REFERENCES.md regenerated.; Verification: 102/102 unit tests pass; typecheck and static-check clean.
|
|
577
493
|
|
|
578
494
|
## [0.4.0](https://github.com/Ogekuri/mcp-google-api/compare/v0.3.0..v0.4.0) - 2026-10-30
|
|
579
495
|
### 🚜 Changes
|
|
580
496
|
- enable startup update check by default with opt-out [useReq] *(auto-update)*
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
497
|
+
Add auto-update check at MCP server startup (stdio + HTTP), enabled by
|
|
498
|
+
default (REQ-082), comparing running version vs npm registry latest.
|
|
499
|
+
Add inverse-polarity disable variable MCP_AUTO_UPDATE_DISABLED
|
|
500
|
+
(1/true/yes case-insensitive) skipping all registry calls (REQ-083).
|
|
501
|
+
Report newer versions on stderr only with upgrade command (REQ-084);
|
|
502
|
+
fire-and-forget execution tolerates all failures without blocking
|
|
503
|
+
startup (REQ-085).
|
|
504
|
+
New src/utils/autoUpdate.ts with injectable fetch/logger/env; new
|
|
505
|
+
tests/autoUpdate.unit.test.ts covering TST-011 (55/55 pass).
|
|
506
|
+
Document variable in .env.example and docs/CONFIGURATION.md (REQ-086);
|
|
507
|
+
update REQUIREMENTS.md, WORKFLOW.md, REFERENCES.md.
|
|
592
508
|
- enforce publish version guard via prepublishOnly [useReq] *(packaging)*
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
509
|
+
Add PKG-017 to SRS 2.3: npm publish MUST fail when package.json version is 0.0.0-based or carries a prerelease/build suffix (stray 0.0.0-stage incident).
|
|
510
|
+
Add scripts/check-publish-version.mjs (Doxygen-documented): strict X.Y.Z pattern plus 0.0.0 placeholder prefix check; wired as first stage of prepublishOnly, preserving PKG-005 chain (typecheck, tests, build).
|
|
511
|
+
Verified: tsc --noEmit clean, 41/41 unit tests, npm publish --dry-run full chain, refusal cases 0.0.0-stage and 1.2.3-rc.1 exit 1.
|
|
512
|
+
Ops: unpublished mcp-google-map@0.0.0-stage from the npm registry.
|
|
597
513
|
|
|
598
514
|
## [0.3.0](https://github.com/Ogekuri/mcp-google-api/compare/v0.2.0..v0.3.0) - 2026-10-29
|
|
599
515
|
### 🚜 Changes
|
|
600
516
|
- document pi CLI and OpenClaw MCP registration and Google API prerequisites [useReq] *(docs)*
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
- No source or test changes; typecheck and 41 unit tests pass
|
|
517
|
+
Add PKG-015/PKG-016: MCP client registration docs and configuration
|
|
518
|
+
prerequisites for pi CLI and OpenClaw in README and CONFIGURATION
|
|
519
|
+
README: fix stale 'From npm (once published)', add pi CLI, OpenClaw
|
|
520
|
+
and configuration-prerequisites sections linked to the Google API table
|
|
521
|
+
docs/CONFIGURATION.md: add 'Registrazione nei client MCP' section; No source or test changes; typecheck and 41 unit tests pass
|
|
607
522
|
|
|
608
523
|
## [0.2.0](https://github.com/Ogekuri/mcp-google-api/releases/tag/v0.2.0) - 2026-10-29
|
|
609
524
|
### ⛰️ Features
|
|
@@ -615,28 +530,16 @@
|
|
|
615
530
|
|
|
616
531
|
### 🚜 Changes
|
|
617
532
|
- migrate tag pipeline with master gate, npm publish and commit changelog *(release)*
|
|
618
|
-
|
|
619
|
-
- Trigger only canonical tags v[0-9]+.[0-9]+.[0-9]+ gated on origin/master
|
|
620
|
-
- Publish to npm with provenance (OIDC) and --access public via NPM_TOKEN
|
|
621
|
-
- Changelog via mikepenz/release-changelog-builder v6 (COMMIT mode)
|
|
622
|
-
- Release asset: npm tarball instead of raw sources (fail on unmatched)
|
|
623
|
-
- SRS: PKG-008 modified, PKG-009..PKG-014 added [useReq]
|
|
533
|
+
Rewrite .github/workflows/release.yml from /tmp/release-npm.yml desiderata; Trigger only canonical tags v[0-9]+.[0-9]+.[0-9]+ gated on origin/master; Publish to npm with provenance (OIDC) and --access public via NPM_TOKEN; Changelog via mikepenz/release-changelog-builder v6 (COMMIT mode); Release asset: npm tarball instead of raw sources (fail on unmatched); SRS: PKG-008 modified, PKG-009..PKG-014 added [useReq]
|
|
624
534
|
- add publication readiness with CI, release workflow and README fixes *(packaging)*
|
|
625
|
-
|
|
626
|
-
- Fix README: Node/TS badges, remove TODOs, working anchors, Feature Highlights and Install/Uninstall sections (npm, npx, cross-platform)
|
|
627
|
-
- Add .github/workflows/ci.yml (node 22: npm ci, typecheck, unit tests; e2e excluded)
|
|
628
|
-
- Add .github/workflows/release.yml (tag: verify, build, npm pack, GitHub Release)
|
|
629
|
-
- Add prepublishOnly script; rename doctor package label; bump 0.0.0 -> 0.1.0 [useReq]
|
|
535
|
+
Add PKG-001..008 packaging/publication requirements (SRS section 2.3); Fix README: Node/TS badges, remove TODOs, working anchors, Feature Highlights and Install/Uninstall sections (npm, npx, cross-platform); Add .github/workflows/ci.yml (node 22: npm ci, typecheck, unit tests; e2e excluded); Add .github/workflows/release.yml (tag: verify, build, npm pack, GitHub Release); Add prepublishOnly script; rename doctor package label; bump 0.0.0 -> 0.1.0 [useReq]
|
|
630
536
|
- align SRS and workflow with places pagination fix [useReq] *(docs)*
|
|
631
|
-
|
|
632
|
-
|
|
633
|
-
|
|
634
|
-
|
|
635
|
-
|
|
636
|
-
|
|
637
|
-
- TST-003 extended to the pageSize-to-maxResultCount translation test
|
|
638
|
-
- WORKFLOW.md searchTextFull trace node updated; REFERENCES.md regenerated
|
|
639
|
-
- No source changes: commit ab2a65c already implemented the fix (41/41 tests pass)
|
|
537
|
+
Analyze commit ab2a65c and update canonical docs to the true state.
|
|
538
|
+
REQ-029 rewritten: pageSize/maxResultCount translated to a single
|
|
539
|
+
maxResultCount field clamped 1-20 (SDK proto lacks pageSize)
|
|
540
|
+
REQ-081 added: nextPageToken surfaced when the API returns one; LIM-007 added: pageToken forwarded but dropped by @googlemaps/places
|
|
541
|
+
protos (<= v3.1.0), so pagination has no server-side effect
|
|
542
|
+
TST-003 extended to the pageSize-to-maxResultCount translation test; WORKFLOW.md searchTextFull trace node updated; REFERENCES.md regenerated; No source changes: commit ab2a65c already implemented the fix (41/41 tests pass)
|
|
640
543
|
|
|
641
544
|
### 📚 Documentation
|
|
642
545
|
- Update REFERENCES.md document. [useReq] *(references)*
|
|
@@ -668,6 +571,7 @@
|
|
|
668
571
|
- \[0.24.0\]: https://github.com/Ogekuri/mcp-google-api/releases/tag/v0.24.0
|
|
669
572
|
- \[0.25.0\]: https://github.com/Ogekuri/mcp-google-api/releases/tag/v0.25.0
|
|
670
573
|
- \[0.26.0\]: https://github.com/Ogekuri/mcp-google-api/releases/tag/v0.26.0
|
|
574
|
+
- \[0.26.2\]: https://github.com/Ogekuri/mcp-google-api/releases/tag/v0.26.2
|
|
671
575
|
|
|
672
576
|
[0.2.0]: https://github.com/Ogekuri/mcp-google-api/releases/tag/v0.2.0
|
|
673
577
|
[0.3.0]: https://github.com/Ogekuri/mcp-google-api/compare/v0.2.0..v0.3.0
|
|
@@ -693,3 +597,4 @@
|
|
|
693
597
|
[0.24.0]: https://github.com/Ogekuri/mcp-google-api/compare/v0.23.0..v0.24.0
|
|
694
598
|
[0.25.0]: https://github.com/Ogekuri/mcp-google-api/compare/v0.24.0..v0.25.0
|
|
695
599
|
[0.26.0]: https://github.com/Ogekuri/mcp-google-api/compare/v0.25.0..v0.26.0
|
|
600
|
+
[0.26.2]: https://github.com/Ogekuri/mcp-google-api/compare/v0.26.0..v0.26.2
|