Commit Graph

11 Commits

Author SHA1 Message Date
caoqianming 093fc5035b docs: add next-steps plan after PlatformContext completion
Four remaining improvements for the dual-app split:
1. Migrate platform handlers (tag/page/source/point/equipment) to core
2. Add event namespace prefixes (platform.*/feeder.*/ops.*)
3. Register platform routes in ops app
4. Ops business logic (pending requirements)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-21 09:22:26 +08:00
caoqianming 6102ed712f refactor(web): remove legacy feeder/ops/core web files after split
Clean up old web module files that were superseded by the per-app
split architecture. Includes plan documentation for the migration.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-21 08:36:32 +08:00
caoqianming b651b6af66 refactor(core): move doc handler to core and split API.md per app
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-20 08:18:51 +08:00
caoqianming c472360061 docs(plan): add existing system implementation proposals 2026-04-14 15:56:06 +08:00
caoqianming 87450af171 docs(plan): add dual-app shared-core implementation plan 2026-04-14 15:49:08 +08:00
caoqianming e2a2d4a55e docs(architecture): add dual-app shared-core design 2026-04-14 15:34:24 +08:00
caoqianming 43bbc36106 docs: 一些文档修改 2026-04-01 08:22:34 +08:00
caoqianming 4ce91adf60 refactor(web): remove dead code and translate plan docs to Chinese
- ops.js: remove unused `formatValue` import
- logs.js: remove `export` from internal-only `appendLog`
- state.js: fix stale comment ({ valueEl, qualityEl } → { dotEl })
- docs: rewrite both plan docs in Chinese; update dual-view-web plan to
  reflect actual implementation (sigDotClass dots, loadAllEquipmentCards,
  syncEquipmentButtonsForUnit, batch auto buttons in startOps)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-26 08:57:29 +08:00
caoqianming 8c1b7b636d refactor(engine): replace 500ms ticker with per-unit event-driven tasks
- Engine now spawns one async task per enabled unit (supervised every 10s)
- wait_phase uses sleep_until + select! for precise timing; 500ms fault-tick
  runs inside each phase so fault/comm is still checked promptly
- WS UnitRuntimeChanged pushed only on state transitions, not every tick
- ControlRuntimeStore gains notify_unit/get_or_create_notify for instant
  wake-up when handlers change auto_enabled or fault_locked
- UnitRuntime: remove last_tick_at, current_run/stop/distributor_elapsed_sec;
  add display_acc_sec (snapshot at transition, avoids mid-cycle jitter)
- accumulated_run_sec now increments by exact run_time_sec*1000 per cycle
- unit.state_changed events no longer written to DB (too frequent)
- Frontend: show display_acc_sec instead of accumulated_run_sec
- styles: event-card flex-shrink:0 fixes text overlap under flex column

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-26 08:33:00 +08:00
caoqianming 884f6ba5f3 docs: update feature spec with current implementation status
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-25 08:27:09 +08:00
caoqianming 4e3d325437 feat(control): add unit and event foundation 2026-03-24 10:20:23 +08:00