1.4 KiB
1.4 KiB
sec-cyBERT
Bun workspace monorepo. Three packages:
packages/schemas/— shared Zod schemas (@sec-cybert/schemas). Import directly by path:from "@sec-cybert/schemas/label.ts"ts/— GenAI labeling pipeline (CLI scripts, Vercel AI SDK, OpenRouter)labelapp/— Next.js human labeling webapp (Drizzle, Postgres, shadcn/ui, Playwright)
Quick reference
| What | Where |
|---|---|
| Shared schemas (Zod) | packages/schemas/src/ |
| Labeling codebook (source of truth for all category/specificity definitions) | docs/LABELING-CODEBOOK.md |
| Project narrative (decisions, roadblocks, lessons) | docs/NARRATIVE.md |
| Implementation plan for labelapp | docs/labelapp-plan.md |
| Labelapp-specific agent guide | labelapp/AGENTS.md |
| Docker compose (Postgres) | docker-compose.yaml (root) |
| DB credentials | sec_cybert / sec_cybert / sec_cybert on localhost:5432 |
Rules
bunfor all JS/TS.uvfor Python.- No barrel files. Direct path-based imports only.
- No TODO comments. Finish what you start.
- No parallel codepaths. Find and extend existing code before writing new.
- Schemas live in
packages/schemas/— do not duplicate type definitions elsewhere. labelapp/uses flat layout (nosrc/dir):app/,db/,lib/,components/at root.- Tests:
bun testfor backend route integration (__test__/dirs adjacent to routes), Playwright for E2E (tests/).