Skip to content

v3.1.0 - Release version 3.1.0#152

Merged
neverinfamous merged 246 commits into
mainfrom
release/v3.1.0
May 14, 2026
Merged

v3.1.0 - Release version 3.1.0#152
neverinfamous merged 246 commits into
mainfrom
release/v3.1.0

Conversation

@neverinfamous
Copy link
Copy Markdown
Owner

Highlights

  • New Tool Groups: Added Security, Roles, and Document Store tool groups, totaling 30 new tools for advanced auditing, RLS management, and JSONB document collections.
  • Architectural Fixes: Enforced strict Object Existence (P154) verification and resolved Zod validation leaks across 10 tool groups to prevent silent failures and raw exceptions.
  • Security Updates: Pinned transitive Dockerfile dependencies and bumped hono, ip-address, and fast-uri to address known vulnerabilities.

Added

  • Automated coverage badge updates upon test suite execution.
  • Added initializationSql config to safely execute session setup queries on connection checkout.
  • Introduced 9 new tools for Security (auditing, SSL/TLS, masking, firewall).
  • Introduced 12 new tools for Roles (CRUD, privilege, RLS management).
  • Introduced 9 new tools for Document Store (JSONB document management, indexing).

Changed

  • Updated core dependencies (typescript, eslint, zod, jose, @playwright/test, vitest).
  • Pinned transitive Docker dependencies for security.
  • Optimized default limits and payload truncation parameters to prevent LLM token bloat.
  • Streamlined pg_schema_snapshot and added exclude parameter to pg_list_views.

Fixed

  • Remediated Zod validation leaks across multiple groups to ensure structured handler errors.
  • Enforced strict P154 object existence verification across Migration, Core, PostGIS, Performance, etc.
  • Standardized alias parsing and type coercion across tool groups.
  • Standardized parsing for missing extensions and native Postgres exceptions into structured errors.
  • Fixed numerous bugs across Backup, Docstore, Ltree, Transactions, Partman, and Pgcrypto tools.
  • Stabilized testing infrastructure (PowerShell bleed and E2E assertions).

Security

  • Bumped hono to 4.12.18, ip-address to 10.2.0, and fast-uri to 3.1.2 via package overrides.

View Full Changelog: v3.0.7...v3.1.0

Chris & Mike added 30 commits April 8, 2026 20:20
Port the initializationSql feature from mysql-mcp for cross-project parity.

- Add initializationSql?: string[] to ConnectionPoolConfig
- Track initialized connections via WeakSet<PoolClient> for zero-GC dedup
- Add applyInitializationSql() that runs SQL once per connection lifetime
- Hook into getConnection() to apply init before returning client
- Reroute query() through getConnection() for full init coverage
- Fix 2 existing query error tests (mockPoolQuery → mockClientQuery)
- Add 5 new unit tests: no-op, once-per-conn, query path, failure, empty
- Update UNRELEASED.md and code-map.md documentation
…rectory

Move migration Zod schemas to dedicated schemas/migration/ directory.
Update imports in core-exports.ts and introspection barrel.
Completes migration tool group restructuring for mysql-mcp parity.
Add 9 security tools: pg_security_audit, pg_security_firewall_status,
pg_security_firewall_rules, pg_security_ssl_status,
pg_security_encryption_status, pg_security_password_validate,
pg_security_mask_data, pg_security_user_privileges,
pg_security_sensitive_tables.

Includes Zod schemas, handler implementations, adapter registration,
Code Mode integration (pg.security.*), help resource, and full
documentation sync across README, DOCKER_README, Tool-Reference,
code-map, and test-server docs (248->257 tools, 22->23 groups).
- Add test-tool-group-security.md (direct, 23-item checklist)
- Add test-tool-group-codemode-security.md (code mode, 23-item checklist)
- Add test-tools-advanced-security.md (advanced, 14 stress tests across 6 categories)
- Update READMEs: prompt counts 27->28, 28->29, 28->29
- Update test-results.md: add security rows + monitoring pairing
- Add roles tool group: management, privileges, session (12 tools)
- Add Zod schemas (roles.ts) and wire into tool registry
- Add Code Mode API (pg.roles.*) with aliases
- Add server instructions (roles.md) and regenerate constants
- Update capabilities.ts (totalTools: 269, totalPrompts: 20)
- Sync README, DOCKER_README, code-map, Tool-Reference, test-server
- Update tool-filter test to 24 groups
- Fix UNRELEASED.md with roles changelog entry
- Add test-tool-group-roles.md (Direct MCP, 29 checklist items)
- Add test-tool-group-codemode-roles.md (Code Mode, 29 items)
- Add test-tools-advanced-roles.md (Advanced Stress, 15 items / 6 categories)
- Update READMEs: prompt counts (28->29, 29->30, 29->30)
- Update test-results: add TBD rows, update safe pairs
- Roles tools: role CRUD, privilege grants, membership, RLS, SET ROLE
…umentation audit

- Add 9 NoSQL-style JSONB document collection tools:
  pg_doc_list_collections, pg_doc_create_collection, pg_doc_drop_collection,
  pg_doc_collection_info, pg_doc_find, pg_doc_add, pg_doc_modify,
  pg_doc_remove, pg_doc_create_index
- Add Zod schemas, Code Mode bridge (pg.docstore.*), resource, prompt, help
- Update code-map.md, Tool-Reference.md, README.md, DOCKER_README.md
- Update tool-constants.ts header (248->278), all counts (269->278 tools,
  24->25 groups, 22->23 resources, 20->21 prompts)
- Verified: tsc 0 errors, eslint 0 errors, Docker README 23,246/25,000 chars
- Add test_documents seed collection (5 JSONB docs) to test-database.sql
- Add test_documents verification to reset-database.ps1
- Create test-tool-group-docstore.md (Direct MCP, 31 items)
- Create test-tool-group-codemode-docstore.md (Code Mode, 26 items)
- Create test-tools-advanced-docstore.md (Advanced, 15 items, 6 categories)
- Update all 3 READMEs with counts (30/31/31 prompts)
- Update all 3 test-results.md with docstore tracking rows
- Update test-server/README.md (25 groups, 278 tools, schema+group rows)
Chris & Mike added 25 commits May 13, 2026 23:28
…t objects

- Enforced strict canonical Schema X does not exist and Table X does not exist messages in helpers.ts
- Updated performance.test.ts assertions to expect the new canonical strings
- Logged changes in UNRELEASED.md
Copilot AI review requested due to automatic review settings May 14, 2026 20:46
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot wasn't able to review this pull request because it exceeds the maximum number of files (300). Try reducing the number of changed files and requesting a review from Copilot again.

@neverinfamous neverinfamous merged commit ba84229 into main May 14, 2026
10 checks passed
@neverinfamous neverinfamous deleted the release/v3.1.0 branch May 14, 2026 20:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants