Commit Graph

  • 5576fe86ef ci: unify to canonical docker-build workflow (drift labels baked in) main jason 2026-07-19 13:15:23 -05:00
  • 577638b4fa ci: trigger PORT auto-redeploy after image push Jason Stedwell 2026-07-18 20:25:25 -05:00
  • be79364aa4 Fix Pairing Simulator: dog dropdowns were always empty Jason Stedwell 2026-07-06 15:51:56 -05:00
  • 9f446d7b01 Align package versions with docs: 1.0.0 -> 0.8.1 Jason Stedwell 2026-07-06 15:45:02 -05:00
  • a06ddf0435 Docs: bring all documentation current with v0.8.1 Jason Stedwell 2026-07-06 15:43:23 -05:00
  • f7a5e8ecb8 Docs: API.md + ROADMAP.md updates for the health-record overhaul Jason Stedwell 2026-07-06 15:07:04 -05:00
  • f3fc01f31c Polish: live OFA age warning, puppy sorting, responsive fixes, form hints Jason Stedwell 2026-07-06 15:06:32 -05:00
  • 55d636b512 Client UX: toast system, confirm dialogs, load-error banners, nav fix, 404 page Jason Stedwell 2026-07-06 14:55:32 -05:00
  • 31b1d903f4 Remove dead debug scripts test_app.js / test_express.js Jason Stedwell 2026-07-06 14:47:41 -05:00
  • 5e45031789 Harden dog endpoints: parent validation, 404s, safe photo handling, transactions Jason Stedwell 2026-07-06 14:47:41 -05:00
  • 1f1e0c3e5a Deps: bump better-sqlite3 to ^11 (Node 18-24 prebuilds), drop unused auth deps Jason Stedwell 2026-07-06 14:45:22 -05:00
  • ce287f63d1 Fix schema drift: fresh installs were broken Jason Stedwell 2026-07-06 14:45:22 -05:00
  • c9d2aa734e Health records: typed fields per record type, document upload, delete button Jason Stedwell 2026-07-06 14:39:45 -05:00
  • e2e8e00dff Fix docker-build.yml push trigger branch to match default branch jason 2026-07-02 10:07:30 -05:00
  • 9a9f958dbb Update docker-build.yml workflow jason 2026-07-02 10:03:09 -05:00
  • 9051094c9b docker-build.yml: build + push :latest only, no cleanup step jason 2026-06-30 07:07:10 -05:00
  • db2509cd03 docker-build.yml: push :latest only + clean up host build images jason 2026-06-29 23:07:37 -05:00
  • d178b28567 Delete directory '.zenflow/tasks' jason 2026-06-29 23:01:00 -05:00
  • 49ad7ef8f8 Update docker-build.yml: run on forgerunner host label, fix doubled image path jason 2026-06-29 22:58:02 -05:00
  • 761387388d Add .gitea/workflows/docker-build.yml jason 2026-03-29 14:22:45 -05:00
  • 4394286d0b Delete .gitea/workflows/docker-publish.yml jason 2026-03-29 14:15:19 -05:00
  • b8633863b0 fix: add pagination to unbounded GET endpoints jason 2026-03-16 16:40:28 -05:00
  • fa7a336588 docs jason 2026-03-12 11:26:48 -05:00
  • c3696ba015 docker jason 2026-03-12 07:43:30 -05:00
  • c483096c63 qs jason 2026-03-12 07:40:50 -05:00
  • e4e3b44fcf Delete RELEASE_NOTES_v0.4.0.md jason 2026-03-12 07:38:32 -05:00
  • 78e15d08af Delete CLEANUP_NOTES.md jason 2026-03-12 07:38:27 -05:00
  • 454665b9cb Delete TEST.md jason 2026-03-12 07:38:04 -05:00
  • d8557fcfca database jason 2026-03-12 07:37:20 -05:00
  • 5f68ca0e8b readmes jason 2026-03-12 07:35:15 -05:00
  • 42bab14ac3 reverse pedigree jason 2026-03-12 07:27:41 -05:00
  • 5ca594fdc7 external dogs jason 2026-03-12 07:21:44 -05:00
  • 13185a5281 Roadmap 2,3,4 jason 2026-03-11 23:48:35 -05:00
  • 17b008a674 Merge pull request 'stroke fix' (#55) from pedigree-update into master jason 2026-03-11 15:49:55 -05:00
  • 9b3210a81e stroke fix jason 2026-03-11 15:49:46 -05:00
  • 81357e87ae Merge pull request 'halo effect' (#54) from pedigree-update into master jason 2026-03-11 15:41:57 -05:00
  • 8abd5e2db6 halo effect jason 2026-03-11 15:41:30 -05:00
  • a63617d9c0 Merge pull request 'remove shadow' (#53) from pedigree-update into master jason 2026-03-11 15:37:49 -05:00
  • 7195aaecfc remove shadow jason 2026-03-11 15:37:38 -05:00
  • 34bf29d8bf Merge pull request 'text update' (#52) from pedigree-update into master jason 2026-03-11 15:33:49 -05:00
  • 4f3074b1f4 text update jason 2026-03-11 15:33:23 -05:00
  • 3c7ba1775f Merge pull request 'ped changes' (#51) from pedigree-update into master jason 2026-03-11 15:27:42 -05:00
  • 0a0a5d232c ped changes jason 2026-03-11 15:26:35 -05:00
  • 58b53c981e feat: Add pedigree routes for COI calculation, direct relation checks, and ancestral/descendant trees. jason 2026-03-11 14:48:59 -05:00
  • 7b941c9a9a Push from Zen main2 Zenflow 2026-03-11 13:15:01 -05:00
  • 055364f467 New task (zenflow 738246ea) Zenflow 2026-03-11 13:12:01 -05:00
  • b8eadd9efa "Fix_COI_display_consistency" Zenflow 2026-03-11 13:09:08 -05:00
  • ff1eb455dc "Fix_COI_and_routes" Zenflow 2026-03-11 13:07:04 -05:00
  • c22ebbe45c New task (zenflow 738246ea) Zenflow 2026-03-11 13:02:24 -05:00
  • e5f7b2b053 Implementation Zenflow 2026-03-11 09:56:43 -05:00
  • c00b6191e7 Investigation and Planning Zenflow 2026-03-11 09:54:38 -05:00
  • 0f9d3cf187 Initialize task: New task Zenflow 2026-03-11 09:53:35 -05:00
  • 2daccf7d8c INIT (zenflow 9c6862b8) Zenflow 2026-03-11 09:51:35 -05:00
  • 5c6068364b Update TEST.md to include abc456 jason 2026-03-11 01:22:26 -05:00
  • 768e25183d Add TEST.md with text 123 jason 2026-03-11 01:06:52 -05:00
  • 78069f2880 Merge pull request 'feature/external-dogs' (#50) from feature/external-dogs into master jason 2026-03-11 01:01:48 -05:00
  • 2cfeaf667e Merge pull request 'fix: wire external dogs end-to-end (modal, form flag, pairing simulator)' (#49) from fix/external-dogs-wiring into feature/external-dogs jason 2026-03-11 01:01:18 -05:00
  • 5eaa6e566c fix: GET /api/dogs honours ?include_external=1 query param for pairing simulator jason 2026-03-11 01:00:48 -05:00
  • 80b497e902 fix: PairingSimulator fetches /api/dogs?include_external=1 so external dogs appear in selectors jason 2026-03-11 00:57:59 -05:00
  • 8cb4c773fd fix: DogForm accepts isExternal prop — sets is_external flag, hides litter/parent pickers, shows banner jason 2026-03-11 00:56:51 -05:00
  • 22e85f0d7e fix: wire Add External Dog button to DogForm modal (removes broken /dogs/new?external=1 nav) jason 2026-03-11 00:55:51 -05:00
  • aa3b1b2404 feat(nav): add External Dogs nav link and route jason 2026-03-10 15:27:06 -05:00
  • 3275524ad0 feat(ui): add ExternalDogs page — full CRUD roster for external sires/dams jason 2026-03-10 15:26:21 -05:00
  • 9738b24db6 feat(api): add is_external support — GET /api/dogs filters kennel dogs; GET /api/dogs/external returns external roster jason 2026-03-10 15:24:50 -05:00
  • 0c84b83e75 feat(db): add is_external flag to dogs table with safe ALTER TABLE migration jason 2026-03-10 15:23:35 -05:00
  • 01a5db10c0 Merge pull request 'docs: update README with COI direct-relation fix (v0.6.1)' (#48) from fix/coi-direct-relation into master jason 2026-03-10 15:16:21 -05:00
  • df7d94ba9d docs: update README with COI direct-relation fix (v0.6.1) jason 2026-03-10 15:15:00 -05:00
  • af9398ec0f Merge pull request 'fix: COI correctly calculates parent×offspring and direct-relation pairings' (#47) from fix/coi-direct-relation into master jason 2026-03-10 15:09:45 -05:00
  • 389636ce6f fix: COI correctly calculates parent×offspring and direct-relation pairings jason 2026-03-10 15:08:33 -05:00
  • 2164b035a8 fix(backend): move named routes above /:id wildcard — Express route order bug causing 0% COI jason 2026-03-10 15:01:22 -05:00
  • 6431164d3b Merge pull request 'fix: COI direct-ancestor bug — correct Wright algorithm + frontend relation guard' (#45) from fix/pairing-coi-and-direct-relation-guard into master jason 2026-03-10 14:57:15 -05:00
  • 72c54f847f fix(frontend): block/warn direct parent-offspring selections in PairingSimulator jason 2026-03-10 14:56:09 -05:00
  • c949fe2502 fix(backend): rewrite COI with self-at-gen-0 Wright method + direct-relation detection endpoint jason 2026-03-10 14:54:59 -05:00
  • 1dacdc9fe7 Merge pull request 'fix: correct Wright COI algorithm — handle direct parent-offspring pairings' (#44) from fix/coi-direct-ancestor-logic into master jason 2026-03-10 14:48:04 -05:00
  • f5ee9837c6 fix: correct COI Wright path algorithm — include sire/dam as direct ancestors of each other jason 2026-03-10 14:44:27 -05:00
  • c7c0ec6530 Merge pull request 'fix: Trial Pairing Simulator — correct SQLite string quoting for sex filter' (#43) from fix/trial-pairing-sex-quote into master jason 2026-03-10 14:39:16 -05:00
  • 20fcc39a58 fix: use single quotes for sex string literals in trial-pairing SQL (SQLite double-quote = identifier) jason 2026-03-10 14:38:16 -05:00
  • d5bce0522b Merge pull request 'fix: Migration 003 - dynamic column restore to handle missing updated_at' (#42) from fix/migration-003-dynamic-columns into master jason 2026-03-10 14:32:36 -05:00
  • e17ce2be29 fix: Migration 003 - use dynamic column list to handle missing updated_at in old schema jason 2026-03-10 14:31:58 -05:00
  • d1b02cb735 Merge pull request 'fix: wire runMigrations() into startup before initDatabase()' (#41) from fix/wire-migrations-to-startup into master jason 2026-03-10 14:28:20 -05:00
  • e800cb91f2 fix: wire runMigrations() into startup before initDatabase() jason 2026-03-10 14:24:32 -05:00
  • 7d498962c8 Merge pull request 'fix: Remove old record_type CHECK constraint from health_records (Migration 003)' (#40) from fix/health-record-type-constraint into master jason 2026-03-10 13:08:07 -05:00
  • 031e344fcb fix: Migration 003 - remove old record_type CHECK constraint from health_records jason 2026-03-10 13:06:42 -05:00
  • b49b2b4281 Merge pull request 'feat/startup-log' (#39) from feat/startup-log into master jason 2026-03-10 12:59:20 -05:00
  • 6e8f747c8a docs: Add documentation for startup log utility jason 2026-03-10 12:57:32 -05:00
  • 326bf318a1 feat: Integrate startup log utility in server initialization jason 2026-03-10 12:56:54 -05:00
  • 799edcf3c4 feat: Add startup log utility with system info and ASCII banner jason 2026-03-10 12:56:26 -05:00
  • 4e5b695c22 Merge pull request 'fix(db): add vet_name, result, next_due to healthMigrations ALTER TABLE guards' (#38) from fix/health-records-missing-columns into master jason 2026-03-10 12:52:40 -05:00
  • 9b43bdab99 fix(db): add vet_name, result, next_due to healthMigrations ALTER TABLE guards jason 2026-03-10 12:52:04 -05:00
  • 9de792aa02 Merge pull request 'feat/phase-4b-health-genetics' (#36) from feat/phase-4b-health-genetics into master jason 2026-03-09 23:38:18 -05:00
  • e9588fa866 feat(ui): integrate ClearanceSummaryCard and HealthRecordForm into DogDetail jason 2026-03-09 23:32:41 -05:00
  • 56458340ea feat(ui): add HealthRecordForm modal with OFA and general record support jason 2026-03-09 23:31:26 -05:00
  • bc7f54b084 feat(ui): add ClearanceSummaryCard with OFA clearance chips and GRCA eligibility badge jason 2026-03-09 23:30:47 -05:00
  • 97efc937c0 feat(server): register /api/genetics route for Phase 4b jason 2026-03-09 23:25:15 -05:00
  • d9cd0bec58 feat(api): add genetics.js — DNA panel CRUD + pairing-risk endpoint jason 2026-03-09 23:23:46 -05:00
  • 8635483332 feat(api): rewrite health.js with OFA clearance fields, clearance-summary, chic-eligible endpoints jason 2026-03-09 23:22:55 -05:00
  • 91ad50655c feat(db): Phase 4b schema — OFA clearances, genetic_tests, cancer_history, eligibility fields jason 2026-03-09 23:21:44 -05:00
  • 286b9c9bd0 feat: expand Phase 4b roadmap with full health clearance & genetics system jason 2026-03-09 23:19:15 -05:00
  • cf2a5ba8d3 Merge pull request 'feat: delete dogs + PawPrint nav icon' (#35) from feat/dog-delete-nav-icon into master jason 2026-03-09 22:59:44 -05:00
  • aa63e4f388 feat(nav): swap Dogs icon from Users to PawPrint jason 2026-03-09 22:59:02 -05:00