Skip to content

Latest commit

 

History

History
76 lines (54 loc) · 2.92 KB

File metadata and controls

76 lines (54 loc) · 2.92 KB

Contributing to Prisma Streams

Welcome. This repository is being prepared for public production use, and contributions that improve correctness, operator experience, and protocol clarity are useful.

This file follows the same general baseline Prisma uses in prisma/prisma, but is scoped to this repository and its Bun + TypeScript workflow.

Please read the Code of Conduct before participating.

Contributing Via Comments

To help maintainers triage efficiently:

  • Use GitHub reactions on the main issue or comment to signal support.
  • Add a comment only when you have new, actionable information: a reproduction, impact details, logs, or a concrete proposal.
  • Avoid +1, same here, or any update? comments. They add notification noise without improving triage.

Prerequisites

  • Bun >=1.3.6
  • Node.js >=22
  • Git

For Windows development, use WSL or another Unix-like environment. The scripts and examples in this repository assume a POSIX shell.

Setup

git clone <your-fork-or-repo-url>
cd prisma-streams
bun install

Common Commands

bun run typecheck
bun run check:result-policy
bun test
bun run test:conformance:local
bun run test:conformance
bun run test:large-index-filter

Notes:

  • bun test is the current fast repository baseline.
  • test:conformance:local and test:conformance run the upstream black-box suite against local and full server modes.
  • test:large-index-filter is an opt-in full-mode integration/performance test that writes 1 GiB of indexed JSON data into a MockR2-backed stream and measures filtered read time. The packaged script pins 16 MiB segments to match the production default. Use DS_LARGE_INDEX_FILTER=1 bun test test/large_index_filter.test.ts directly only when you intentionally want to override the segment size or other large-test settings. It is intentionally excluded from the fast baseline.
  • The current upstream conformance status is tracked in conformance.md.

Development Expectations

  • Keep changes focused. Avoid mixing refactors with unrelated cleanup.
  • Add or update tests for behavior changes.
  • Update documentation when public behavior, deployment guidance, or package surfaces change.
  • Do not commit generated archives, local databases, .DS_Store, or other workstation artifacts.
  • Follow the repository better-result policy. The current automated policy check covers src/; see better-result-adoption.md.

Pull Requests

Before opening a pull request:

  • Run bun run verify.
  • If you touched protocol behavior, run the relevant conformance suite and note the result.
  • Explain the motivation, scope, and any behavior changes clearly.
  • Call out follow-up work instead of silently leaving partial migrations behind.

Security Reports

Do not open public issues for suspected vulnerabilities. Follow security.md.