@7365admin1/core 3.79.1-staging.353 → 3.79.1-staging.355

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,7 @@
1
+ ---
2
+ "@7365admin1/core": minor
3
+ ---
4
+
5
+ Robots: record faults and offline robots network-wide in a new `robot-faults` collection (one open record per robot and fault, enforced by a unique partial index; each occurrence notified once across every API instance). Adds a bounded background sweep (`useRobotFaultSweep`, `robotFaultSweepConfig`), `GET /robots/network/faults`, `GET /robots/network/states`, fault/offline counts and per-site lists on `/robots/network/summary`, and per-row fault/offline plus faults-only / offline-only / status filters on `/robots/network`.
6
+
7
+ The sweep also tells staff once when a robot has not reported for `ROBOT_OFFLINE_ALERT_MINUTES` (default 10) and once when it is back online; shorter blips alert nobody (claimed on the OFFLINE record's `offlineNotifiedAt` / `recoveryNotifiedAt`). Ounitech's manifest records pause/resume/cancel as `pendingCommands` (awaiting vendor confirmation; never offered).
@@ -0,0 +1,5 @@
1
+ ---
2
+ "@7365admin1/core": minor
3
+ ---
4
+
5
+ Robots (HERO site fleet): estate-scoped `useRobotSiteController` - `listSiteFleet` (every robot at the site, paged, with open fault / offline record and last seen; `pages` + `total`), `getSiteSummary` (total, faults, offline, live online / working / charging counts, and the site's and its client's names) and `getSiteStates` (live state of the robots on screen, each checked against its stored site; unreachable robots left out). All narrow by `appSlug`. Adds `getRobot` (one record, allow-listed projection) and `getPatrolRoutes` (security robots): the patrol route contract (`TRobotPatrolRoute`, `TRobotPatrolScheduleRow`, `normalisePatrolPlan`) behind an optional `TRobotAdapter.getPatrolRoutes`, implemented by the demo brand. Demo brand: robots derived from their serial with no code change per robot (`DEMO-C-###` cleaning, `DEMO-S-###` security patrolling named routes; ~1 in 8 fault once a day, ~1 in 10 offline; DEMO-0001..0003 unchanged), a pose stream on `/:id/track`, and Super Admin-only `addDemoRobots` / `removeDemoRobots` (demo brand only, serials allocated server-side, console-audited). Fleet states carry `model` and `planPosition`. Commands accept pause / resume / cancel / navigate / relocalize (refused for brands that do not declare them); a command drops the robot's 3 s state memo.