@yawlabs/postgres-mcp 0.6.2 → 0.6.4

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 CHANGED
@@ -7,6 +7,50 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [0.6.3] - 2026-05-15
11
+
12
+ ### Infrastructure
13
+ - Closed the partial-failure coverage gap deferred in 0.6.2:
14
+ `pg_replication_status` `_warnings`-populated path is now exercised
15
+ by an integration test that REVOKEs `EXECUTE` on
16
+ `pg_current_wal_lsn()` from PUBLIC, swaps `DATABASE_URL` to a
17
+ fixture LOGIN role (`mcp_test_restricted`, CONNECT-only), rebuilds
18
+ the pool, and asserts `ok=true` with `_warnings` populated,
19
+ `is_replica: null` (not `false`), `wal_position: null`, and a
20
+ 42501-tagged `wal_position fetch failed` entry. The grant is
21
+ restored unconditionally outside `finally` so the primary assertion
22
+ error (if any) isn't shadowed by a cleanup throw.
23
+ - `pg_health`, `pg_describe_table`, and `pg_advisor` share the same
24
+ partial-failure pattern but query catalogs PUBLIC can read;
25
+ engineering a realistic partial failure for them would require
26
+ revoking grants on catalog views, which would break the rest of the
27
+ suite. The success-case shape assertions already in their tests
28
+ protect the construction code from regression.
29
+ - No behavior changes for tool consumers.
30
+
31
+ ## [0.6.2] - 2026-05-15
32
+
33
+ ### Infrastructure
34
+ - Closed integration / unit coverage gaps surfaced by the coverage audit:
35
+ `pg_kill` positive paths (cancel + terminate against an out-of-band
36
+ `pg.Client` backend) and `signaled=false` on a non-postgres PID;
37
+ `pg_advisor.public_tables_without_rls` and `sequence_exhaustion`
38
+ positive cases (the latter pins the post-0.5.2 numeric-precision
39
+ formula via a fixture sequence at 80%); `pg_unused_indexes` excluding
40
+ unique + primary indexes (data-integrity hazard if regressed);
41
+ `pg_search_columns` case-insensitive ILIKE; `pg_list_views` with
42
+ `includeMaterialized=false`; `pg_list_roles.member_of` as a real
43
+ JS `string[]` (0.3.1 regression guard via grouped fixture roles);
44
+ `typeNameCache` miss-fill on a CREATE TYPE issued mid-session;
45
+ `safeResolveTypeNames` fallback contract via a stub `PoolClient`
46
+ whose `.query` rejects (helper exported with an
47
+ `@internal -- for testing` note). Fixtures grew a materialized view,
48
+ a `near_full_seq` sequence, and two cluster-scoped roles; teardown
49
+ drops the roles in member-before-group order.
50
+ - No behavior changes for tool consumers.
51
+
52
+ ## [0.6.1] - 2026-05-15
53
+
10
54
  ### Fixed
11
55
  - `pg_advisor` `tables_without_primary_key` now includes partitioned-table
12
56
  parents (`relkind='p'`) alongside plain heap tables. A partitioned table
package/dist/index.js CHANGED
@@ -37547,7 +37547,7 @@ function compareVersions(a, b) {
37547
37547
  }
37548
37548
 
37549
37549
  // src/index.ts
37550
- var version2 = true ? "0.6.2" : (await null).createRequire(import.meta.url)("../package.json").version;
37550
+ var version2 = true ? "0.6.4" : (await null).createRequire(import.meta.url)("../package.json").version;
37551
37551
  var subcommand = process.argv[2];
37552
37552
  if (subcommand === "version" || subcommand === "--version") {
37553
37553
  console.log(version2);
package/package.json CHANGED
@@ -1,6 +1,7 @@
1
1
  {
2
2
  "name": "@yawlabs/postgres-mcp",
3
- "version": "0.6.2",
3
+ "version": "0.6.4",
4
+ "mcpName": "io.github.YawLabs/postgres-mcp",
4
5
  "description": "PostgreSQL MCP server - query, schema introspection, explain, and health checks for AI assistants",
5
6
  "license": "MIT",
6
7
  "author": "YawLabs <contact@yaw.sh>",