Thank you for contributing. Use issues to discuss scope and pull requests for reviewable changes. Keep the plugin focused on DSH's native persistence seams.
Use Node.js 22.18 or newer and npm. From the repository root:
npm ci
npm run typecheck
npm run build
npm pack --dry-run --ignore-scriptsThe repository currently has no automated runtime test suite. Static checks do not establish database correctness. Report any manual PostgreSQL verification, including server and DSH versions, explicitly in the pull request. Do not label a change database-verified merely because its TypeScript build passes.
- Make one logical change per commit, with a focused subject such as
fix(storage): fence expired writers before appending. - Explain the problem and relevant design decisions in the commit body.
- Separate implementation changes from unrelated formatting or documentation.
- Preserve upstream license notices when adapting code.
- Update the English and Chinese entry documentation when behavior changes.
- Add a versioned migration for a schema change; never edit an applied migration to silently reinterpret existing user data.
- Describe compatibility against specific published DSH package versions.
- Do not add broad compatibility layers for removed upstream APIs.
Use independently constructed examples. Do not commit credentials, connection strings for real systems, customer content, internal specifications, local workspace paths, private repository details, or generated session exports.
Security concerns belong in the private channel described in SECURITY.md. Contributions are licensed under the project's MIT license.