Repository navigation
Releases: abi83/prepify
Releases · abi83/prepify
Release list
v1.2.0
1.2.0 (2026-09-23)
Features
- add easy/medium/hard question difficulty tiers (#215) (78c12fa)
- add environment URLs to deploy workflow (#229) (491644c)
- bake runtime version into image, expose via /api/healthz (#189) (a0227e4)
- per-attempt pipeline state, failed-slot resume/UI, rewrite progress stage (#218) (2dd3cd1)
- redirect www.prepify.cc to the bare domain (#188) (1cebec7)
- reviewed rewrite loop, score-only reviewer, wasted-cost tracking (#217) (b73018a)
- score QuestionReviewer output with a tier-aware rubric (#216) (b82a149)
- separate least-privilege app_runtime DB role from migration owner (#190) (90e7a85), closes #91
- structured logging — W3C trace propagation, GCP adapter, single-line errors (#222) (a4d5f4b)
- visual polish pass — AppHeader/AppFooter, UserMenu, font-highlight, clean color palette (#228) (6c2ed57)
Bug Fixes
- add human-readable job names, trim redundant workflow comments (#209) (a94bf48), closes #208
- add missing GenerationMeta migration, CI drift check (#207) (c785753)
- persist per-slot GenerationMeta so crash-resumed pipelines keep it (#211) (bcc0fea)
- pin all deps to exact versions, add npm audit CI gate (#204) (718f483)
- remove empty-string fallback for shadowDatabaseUrl (#220) (dfa9f73)
- resolve --font-body to a real CSS var, not the Tailwind theme alias (#192) (424f7b9)
- strip C0 controls and lone surrogates from LLM output (#221) (f2a8509)
- tag releases as vX.Y.Z, not <package>-vX.Y.Z (#186) (de3a37a)
- visual polish, CSS cascade fix, unified card components (#230) (c2a1785)
prepify: v1.1.0
1.1.0 (2026-09-18)
Features
- add /healthz + /readyz probes and wire Cloud Run startup/liveness checks (#166) (#179) (0d13de8)
- add Artifact Registry cleanup policies (#111) (80c12ba)
- add coder and reviewer GitHub Actions agents (#108) (1f31749)
- add delete prep action (#37) (93a7e49)
- add Docker build and dev/prod deploy pipeline (#81) (7a7ab74)
- add epic issue type with multi-criteria estimation (#106) (4851942)
- add issue refinement + estimation pipeline (a87e9ee)
- add issue refinement + estimation pipeline (a91d8ca)
- add naming step to checklist; extract taskBuilder (8b66363)
- add PrepLabeler agent for discipline & grade inference (33b0ccf)
- add Prisma schema for Neon and wire DATABASE_URL into Cloud Run (#84) (1bc0b2a)
- add repositories, server actions, and pglite-backed tests for the data layer (#86) (b3e96b0)
- adopt Tailwind CSS + shadcn/ui foundations (#128) (a44a26e)
- asset system — LLM-generated visual content for questions (closes #34) (b420889)
- authenticate issue-pipeline agents via Claude subscription OAuth token (20168ed)
- central agent-pipeline.yml config for the agent jobs (#159) (9b982d6)
- checklist progress UI + save prep title eagerly on naming (742c236)
- chunk rawText through ConceptExtractor with LLM merger (63cbe0a)
- chunk rawText through ConceptExtractor with LLM merger (#1) (2aa6251)
- configurable question count and type toggles (#10) (1d36d1f)
- cut client screens over to server actions, retire Supabase table access (#89) (6849c65)
- detect language via OCR, use configured model, thread language through pipeline (#30) (9d10854)
- enrich OCR with visual elements (closes #35) (49316fe)
- expand PrepLabeler language disciplines (#43) (#177) (f7db23b)
- grant code + wiki read access, preserve original body, comment run link/cost (dddca32)
- let agents fall back to asking the owner instead of guessing (a12b07d)
- let the reviewer read the linked issue and its cross-references (#114) (0439d04)
- let the reviewer verify CI checks it can't reproduce locally (#113) (8654e93)
- map prepify.cc as custom domain for prod Cloud Run service (#185) (f4f6015)
- migrate auth from Supabase Auth to Auth.js (Google OAuth, JWT sessions) (#94) (b84976b)
- multi-image upload with collect-first flow (#32) (2c64b2d)
- persist pipeline stages to Supabase for crash recovery (7e5a6ba)
- pipeline crash recovery via Supabase checkpointing (5359823)
- prep catalog page with grade/discipline filters (#28) (8dedaf0)
- public study page for shared preps (#27) (41dde7b)
- replace Tesseract.js OCR with OpenAI Vision (dc862d2)
- replace Tesseract.js OCR with OpenAI Vision (gpt-5-nano) (0e5f041), closes #12
- share & publish flow (#26) (7c0a138)
- shuffle answer options once per attempt (all question types) (7ddfd72)
- shuffle answer options once per attempt for all question types (01256a4)
- SSR metadata, sitemap.xml, robots.txt for public routes (#183) (2bea19e)
- store token usage per-prep in Supabase with cost estimates (7056838)
- store token usage per-prep in Supabase with cost estimates (b10d17d)
- store token usage per-prep in Supabase with cost estimates (#9) (7056838)
- tighten ConceptExtractor concept quality — cap 20, filter importance < 0.5 (8d5c976), closes #11
- tighten ConceptExtractor quality — cap 20, filter importance < 0.5 (2d2d25a)
- two-layer pipeline state, gate reviewer on CI checks (#139) (9879e2d)
- visibility badge + description on MyPreps list (#38) (#180) (e53ad7e)
- write a run summary to $GITHUB_STEP_SUMMARY for every agent job (#144) (6187d06)
Bug Fixes
- add .nullable() to asset_hint Zod fields for OpenAI structured outputs (5f97358)
- add missing GeneratedQuestion type and generatedQuestionSchema export (a0f5241)
- add vercel.json SPA rewrite so /preps and /preps/:id don't 404 on hard load (5837d8d)
- allow gh-safe scripts to be invoked by absolute path ([#70](https://github.com/abi83/prepify/is...