sourcebot/packages/db
Michael Sukkarieh 5438298d61
feat(audit-logging): Adds audit logging support (#355)
* add audit factory skeleton

* add additional audit events

* add more audit logs

* delete account join request when redeeming an invite

* add audit event for account request removed

* wip api to fetch audits

* add check for audit with public access and entitlement

* fix issues with merge

* add docs for audit logs

* add proper audit log for audit fetch and proper handling of api key hash in audit

* format nit

* feedback
2025-06-18 10:50:36 -07:00
..
prisma feat(audit-logging): Adds audit logging support (#355) 2025-06-18 10:50:36 -07:00
src v3 effort (#158) 2025-03-31 22:34:42 -07:00
tools Add support for structured logs (#323) 2025-06-02 11:16:01 -07:00
.gitignore v3 effort (#158) 2025-03-31 22:34:42 -07:00
package.json Add support for structured logs (#323) 2025-06-02 11:16:01 -07:00
README.md v3 effort (#158) 2025-03-31 22:34:42 -07:00
tsconfig.json v3 effort (#158) 2025-03-31 22:34:42 -07:00

@sourcebot/db

This package contains the database schema (prisma/schema.prisma), migrations (prisma/migrations) and the client library for interacting with the database. Before making edits to the schema, please read about prisma's migration model to get an idea of how migrations work.

Tools

This library contains a /tools directory with a collection of tooling needed for database management. Notable tools are:

  • yarn tool:prisma - runs the prisma CLI with an additional required param --url, the connection URL of the database you want the command to run against. This tool is geared towards running commands against non-dev database like staging or prod since 1) it allows you to quickly switch between environments, and 2) connection URLs do not need to be persisted in a DATABASE_URL environment variable. Examples:
# Run prisma studio
yarn tool:prisma studio --url postgresql://username:password@url:5432/db_name

# Rollback a migration
yarn tool:prisma migrate resolve --rolled-back "migration_name" --url postgresql://username:password@url:5432/db_name
  • yarn tool:run-script - runs a script (located in the /tools/scripts directory) that performs some operations against the DB. This is useful for writing bespoke CRUD operations while still being type-safe and having all the perks of the prisma client lib.
# Run `migrate-duplicate-connections.ts`
yarn tool:run-script --script  migrate-duplicate-connections --url postgresql://username:password@url:5432/db_name