Commit Graph

  • 7e139d91b8 docs(deploy): record go-live (D39) and correct the deploy references main Thomas Joise 2026-07-21 01:39:12 +0530
  • 8456e45206 fix(deploy): drop package-lock.json before container npm install Thomas Joise 2026-07-21 01:16:05 +0530
  • 12e95e7be4 docs: record known issues, blocked work and unverified areas; untrack agent scratch Thomas Joise 2026-07-21 01:03:16 +0530
  • 551c9e3d30 merge: readable linked payment/document chip + SMS alert loading/error state Thomas Joise 2026-07-21 00:57:01 +0530
  • a267cd07e6 merge: readable linked payment/document chip + SMS alert loading/error state Thomas Joise 2026-07-21 00:56:30 +0530
  • 23b0b64de2 merge: script DATABASE_URL docs + SQLite opt-in, always-stamp install/train dates, keep links on re-tick, backup resolves prod DB Thomas Joise 2026-07-21 00:54:39 +0530
  • 0adce5844b fix(backup): resolve the production database the way the server does Thomas Joise 2026-07-21 00:45:11 +0530
  • 4c1514c315 fix(milestones): stamp installed_on/trained_on on every tick, keep links on a re-tick Thomas Joise 2026-07-21 00:44:56 +0530
  • 77f135f0e2 fix(scripts): document the DATABASE_URL-prefixed invocation, make SQLite an explicit opt-in Thomas Joise 2026-07-21 00:44:41 +0530
  • 367fc0324e fix(dashboard): never report "all good" when the fetch failed Thomas Joise 2026-07-21 00:33:50 +0530
  • b32f7c32c8 fix(client-detail): make the linked payment/document reference legible Thomas Joise 2026-07-21 00:33:38 +0530
  • 1717900e02 merge: restore sticky table headers (bounded 70vh wrapper), dashboard loading state, ticket-type over-fetch Thomas Joise 2026-07-21 00:25:19 +0530
  • aa541270d6 fix(onboarding): APEX-imported projects were invisible on the stalled tile Thomas Joise 2026-07-21 00:22:53 +0530
  • 4de152a7f4 fix(ui): restore sticky table headers, dashboard loading flash, ticket-type over-fetch Thomas Joise 2026-07-21 00:20:00 +0530
  • 591d0e9b59 fix(onboarding-migration): idempotency check must ignore ad-hoc custom_* rows Thomas Joise 2026-07-21 00:16:01 +0530
  • ee0367dfb5 fix(db-pg): make requireDbUrlForEnv guard outcome-based, not NODE_ENV-gated Thomas Joise 2026-07-21 00:14:20 +0530
  • 6f50799d3c test(db-resolve): remove duplicated production password from test file Thomas Joise 2026-07-21 00:10:22 +0530
  • b1e1420b4c docs: refresh test count (528) Thomas Joise 2026-07-20 23:12:30 +0530
  • a0225b2ba3 merge: frontend audit fixes + UI completion (status-line links, tickets guards, dashboard error state) Thomas Joise 2026-07-20 23:10:36 +0530
  • f66bab122b fix(scripts): harden apply-ltd-numbers/apply-name-fixes/import-employees DB resolution Thomas Joise 2026-07-20 23:10:17 +0530
  • 0c3f6c2e3a fix(client-360): audit fixes for onboarding status line, tickets, dashboard Thomas Joise 2026-07-20 23:08:02 +0530
  • 9457b0f145 fix(milestones): fresh projects false-flagged as stalled, fallback modules stuck at quoted, bulk ops skipped status/link logic (FIX D, E, F) Thomas Joise 2026-07-20 23:02:59 +0530
  • e8baa1111e fix(onboarding-migration): deterministic survivor when two old ticks collapse onto one key (FIX C) Thomas Joise 2026-07-20 23:02:35 +0530
  • 04aef0aa36 fix(api): validate ?days= and guard the onboarding-project routes against a crash (FIX B) Thomas Joise 2026-07-20 23:02:20 +0530
  • 31335cd4ad fix(deploy): one shared DB-engine resolver so scripts can't silently target a throwaway SQLite file (FIX A) Thomas Joise 2026-07-20 23:02:02 +0530
  • 0bcbf8d410 fix(responsive): stop desktop tables and mobile rows from silently clipping content Thomas Joise 2026-07-20 22:54:07 +0530
  • b146de990f fix(scripts): audit + guard apply-onboarding-pipeline's setting writes Thomas Joise 2026-07-20 21:54:15 +0530
  • 4ee8f17b37 fix(onboarding-migration): preserve ad-hoc custom steps across the template swap Thomas Joise 2026-07-20 21:53:56 +0530
  • e8e2a202c1 fix(milestones): reject front/tail key collisions; dedupe on collision; stamp installed/trained dates Thomas Joise 2026-07-20 21:53:33 +0530
  • 7494f53e2f fix(client-detail): payment step gate matches shipped key payment_received Thomas Joise 2026-07-20 21:34:15 +0530
  • ac16d8c896 merge: frontend — quotation-step dialog, ticket types + deep-links, cleanup Thomas Joise 2026-07-20 21:19:10 +0530
  • 3ac4e2a47d merge: backend — quotation-step document link + ticket classification Thomas Joise 2026-07-20 21:19:09 +0530
  • 7838ced6c2 feat(client-detail): quotation-step document link + ticket classification (backend) Thomas Joise 2026-07-20 21:10:51 +0530
  • 357735e04d feat(client-detail): quotation step links a document; tickets get a type Thomas Joise 2026-07-20 21:08:15 +0530
  • 88a19f154e chore(client-detail): drop the dead .cdr-out .ofoot CSS rule Thomas Joise 2026-07-20 21:07:50 +0530
  • 83633c86ee feat(dashboard): add Onboarding stalled tile Thomas Joise 2026-07-20 20:52:37 +0530
  • d6faf0d5bd merge: Client Detail redesign (D38) — composed onboarding pipeline, status line, payments context, mobile fixes Thomas Joise 2026-07-20 20:46:25 +0530
  • 4e747427d2 feat(onboarding): owner editor for shared front + per-module tail templates Thomas Joise 2026-07-20 20:42:54 +0530
  • 45cfb83d03 chore(deploy): apply prod DB URL + onboarding-pipeline deploy script Thomas Joise 2026-07-20 20:05:35 +0530
  • 371cdb1c69 fix(ui): drop redundant table-scroll CSS, rely on existing app.css mechanism Thomas Joise 2026-07-20 04:28:29 +0530
  • db8ec9c546 feat(client-detail): prompt for module credentials on account_creation tick Thomas Joise 2026-07-20 04:22:21 +0530
  • 0050f73a70 fix(ui): stack record-header actions and scroll wide tables on mobile Thomas Joise 2026-07-20 04:16:28 +0530
  • 025b334b09 feat(client-detail): drop mandatory assign creds, add per-module status control, trim summary table Thomas Joise 2026-07-20 04:08:37 +0530
  • 78ed947422 feat(payments): outstanding panel + settled-to-document column Thomas Joise 2026-07-20 03:59:59 +0530
  • f1a7eac9dd feat(onboarding): composed milestone templates (shared front + per-module tail) Thomas Joise 2026-07-20 03:49:48 +0530
  • e8f00503a4 feat(client-detail): per-module documents list + bulk SMS purchase action Thomas Joise 2026-07-20 01:36:53 +0530
  • e5ed3517dc feat(client-detail): onboarding as horizontal status line with payment-step linking Thomas Joise 2026-07-20 00:34:46 +0530
  • 343fa94efd docs(client-detail): D38 redesign decision + STATUS in-progress note Thomas Joise 2026-07-20 00:28:23 +0530
  • 8c653eb41a fix(payments): exclude draft proformas from outstanding (owner decision) Thomas Joise 2026-07-20 00:22:32 +0530
  • a9e5aa79d9 docs: bring README/STATUS/CLAUDE/DECISIONS current (D34-D37) Thomas Joise 2026-07-20 00:13:46 +0530
  • 9d3087c1fe feat(client-detail): module details as 50/50 report with single edit per group feat/client-detail-redesign Thomas Joise 2026-07-20 00:15:39 +0530
  • d05c7ee31b docs: bring README/STATUS/CLAUDE/DECISIONS current (D34-D37) Thomas Joise 2026-07-20 00:13:46 +0530
  • 67f69fc999 style(client-detail): CSS for 50/50 sheet, status line, outstanding panel Thomas Joise 2026-07-20 00:04:57 +0530
  • 75fb41c366 feat(onboarding): stalled-project query for the dashboard/MIS tile Thomas Joise 2026-07-19 23:57:07 +0530
  • 195d821bef feat(sms): bulk SMS purchase proforma + document source tagging (renewal vs top-up) Thomas Joise 2026-07-19 23:46:04 +0530
  • fdf31b4dbd feat(payments): ledger exposes outstanding docs + per-payment allocations Thomas Joise 2026-07-19 23:34:19 +0530
  • 4b2e44c3ea test(onboarding-migration): add coverage for dropped ticked milestone keys Thomas Joise 2026-07-19 23:27:32 +0530
  • 6bce248c2e feat(onboarding): one-time migration swapping seeded modules to new templates (ticks preserved) Thomas Joise 2026-07-19 23:18:02 +0530
  • cd235b622b feat(onboarding): link advance/balance payment steps to real payments Thomas Joise 2026-07-19 23:08:13 +0530
  • b2c49832d5 feat(onboarding): status line auto-drives client_module.status (never downgrades) Thomas Joise 2026-07-19 22:59:17 +0530
  • 9ac2ce9d50 feat(onboarding): seed SMS/RTGS/MobileApp onboarding templates Thomas Joise 2026-07-19 22:51:29 +0530
  • 1e77792beb feat(onboarding): resolve milestone template per module (config over code) Thomas Joise 2026-07-19 22:43:04 +0530
  • 6bc92bace3 docs(client-detail): redesign spec + backend/frontend implementation plans Thomas Joise 2026-07-19 22:38:48 +0530
  • 9cb5127faf feat(d37): society category (Kerala co-op directory taxonomy) on clients Thomas Joise 2026-07-19 22:28:30 +0530
  • 1c375fdf01 chore(d35): script to append directory-sourced LTD numbers to client names Thomas Joise 2026-07-19 21:52:52 +0530
  • 809976fd8b feat(d36): login history (IP + device) + first-login change nudge Thomas Joise 2026-07-19 21:20:01 +0530
  • 47e17644de chore(d35): script to apply approved client-name corrections (audited) Thomas Joise 2026-07-19 21:00:41 +0530
  • a81034d4ed feat(d35): client type (PACS / Store), classified by name Thomas Joise 2026-07-19 20:46:55 +0530
  • e8e9db33ea feat(d34): import employee master + invited/pending-login flag Thomas Joise 2026-07-19 19:48:26 +0530
  • 6e3a79adb8 chore(nav): move Clients up to Overview (after Dashboard) Thomas Joise 2026-07-19 19:37:15 +0530
  • da67b8b393 feat(sms): live-only balance list, no full-row red, mandatory creds on assign Thomas Joise 2026-07-19 19:24:15 +0530
  • 1bf0e4ee45 fix(ui): password field in the service-data Edit form (Client 360 modules) Thomas Joise 2026-07-19 19:18:14 +0530
  • 7742b583c3 fix(ui): group each client module into its own collapsible coloured section Thomas Joise 2026-07-19 19:08:02 +0530
  • 6939115f6c fix(ui): pager alignment, one-line billing kinds, Fields explanation Thomas Joise 2026-07-19 19:00:40 +0530
  • 7f740a7e2e feat(ui): split module screen into Clients | Setup tabs + prominent Add-client Thomas Joise 2026-07-19 18:46:44 +0530
  • 6178e0a6a3 feat(ui): friendly Add-a-field form for module fields Thomas Joise 2026-07-19 18:41:24 +0530
  • 8485e69ff0 fix(ui): module page as master→detail screen (clear which module you're in) Thomas Joise 2026-07-19 18:21:31 +0530
  • 56686dd4d6 feat: show + download SMS logins; install details in Module data Thomas Joise 2026-07-19 18:17:41 +0530
  • 5679a94d3c feat(ui): click-to-sort on every DataTable (asc/desc/off), index-safe Thomas Joise 2026-07-19 18:11:21 +0530
  • f0bba301e9 feat(docs): require a reason when cancelling a document Thomas Joise 2026-07-19 18:02:38 +0530
  • d68fc257a2 fix(docs): summary line for legacy imports + tidy Record-payment panel Thomas Joise 2026-07-19 17:48:18 +0530
  • 11d45e805c chore: remove all 'Tecnostac' references — everything is SiMS Thomas Joise 2026-07-19 17:36:46 +0530
  • b065332f89 fix(ui): explicit Edit button per module row (inline form), separate from client roster Thomas Joise 2026-07-19 17:32:29 +0530
  • 432587c7a1 fix(ui): Client 360 shows documents + payments newest-first Thomas Joise 2026-07-19 17:02:48 +0530
  • 074e810415 fix(ui): edit-module details form + keyboard nav in New Document client picker Thomas Joise 2026-07-19 16:55:36 +0530
  • b09f545489 docs: bring README/STATUS/CLAUDE current (D20-D33) Thomas Joise 2026-07-19 14:26:20 +0530
  • 62eb937012 feat(d33): database backup script (pg_dump + rotation) Thomas Joise 2026-07-19 11:46:03 +0530
  • 583b663aa6 docs(d29,d30): log the cockpit/theming + Home-hub/nav decisions Thomas Joise 2026-07-19 11:43:52 +0530
  • 79717133b8 feat(d32): remove the key concept entirely + keyless legacy cleanup Thomas Joise 2026-07-19 03:39:10 +0530
  • 23089a9b1f feat(d30): clients-per-module count on Modules page + comment fix Thomas Joise 2026-07-19 03:37:55 +0530
  • 3e175b8da1 feat(d31): store credentials in the clear (owner decision) + one-time migration Thomas Joise 2026-07-19 03:23:29 +0530
  • 8ed56a97d5 feat(d30): Home as landing page + more sidebar counts Thomas Joise 2026-07-19 03:14:30 +0530
  • b8e2be628f feat(d30): trim Home hub to main sections + sidebar count badges Thomas Joise 2026-07-19 03:02:33 +0530
  • 90864b7067 test(d28): lock module directory + portals (fieldSpec, login-only, no secret leak) Thomas Joise 2026-07-19 02:56:23 +0530
  • 69c59815f0 feat(d28): Portals quick-list + global search (clients/docs/tickets) Thomas Joise 2026-07-19 02:42:41 +0530
  • 3f974e9d3d feat(d28): Module directory — every client on a module x its fields Thomas Joise 2026-07-19 02:06:04 +0530
  • 343cc6795d feat(d28): Settings → Operations (SMS gateway URL, low threshold, ticket SLA) Thomas Joise 2026-07-19 01:50:45 +0530
  • 24f52fad0a feat: theme palettes + Geist font + dashboard cockpit styles Thomas Joise 2026-07-19 01:37:17 +0530
  • fa15027f4d feat(d28): clickable 'Open ↗' link on module URL fields Thomas Joise 2026-07-19 01:31:53 +0530
  • f7e9443a56 harden(d28): SSRF guard + no credential-URL leak on SMS gateway fetch Thomas Joise 2026-07-19 01:09:12 +0530