gigafibre-fsm/apps
louispaulb 7d1a5b067f feat(dispatch): persistent URGENT flag per job (SLA/commercial)
Like the omnichannel inbox urgent flag, but for jobs — a 🚩 that
persists and drives the optimizer.

- hub: durable job-flags store (data/job-flags.json) mirroring
  job-levels — getJobFlags/setJobFlag + POST /roster/job-flag {name,
  urgent}; buildUnassigned sets j.urgent; invalidatePool on write.
- SPA: 🚩 chip on each review entry (replaces the session ). Optimistic
  local toggle + persists via roster.setJobFlag; reflects j.urgent from
  the pool. Flagged jobs → priority_boost (never dropped) + urgent_weight
  (served early). Bumped urgent early-weight 6→10.

Verified: flag round-trips (set→urgent, revert→cleared) through the pool;
chips render (🚩/AM/PM).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-02 15:16:13 -04:00
..
client security: harden payments/hub auth + remove leaked ERPNext token from source 2026-06-16 06:17:17 -04:00
field-tech feat(field-tech): app Capacitor native (geofence Transistorsoft + scan MLKit) + CI 2026-06-08 19:47:27 -04:00
ops feat(dispatch): persistent URGENT flag per job (SLA/commercial) 2026-07-02 15:16:13 -04:00
portal fix(portal): deploy Vue SPA to portal.gigafibre.ca, retire client.gigafibre.ca 2026-04-22 15:02:31 -04:00
website Site: texte Actualités révisé + template courriel gift natif (FR) 2026-06-03 16:42:52 -04:00