文件最后提交记录最后更新时间
refactor: rename Polit/PolitDeck to Pilot/PilotDeck across entire codebase Automated global rename covering all case variants: - PolitDeck → PilotDeck, politdeck → pilotdeck, POLITDECK → PILOTDECK - Polit → Pilot, polit → pilot, POLIT → PILOT, politDeck → pilotDeck Includes: - 648 content replacements across 200+ source files - 24 file renames + 3 directory renames (src/polit→pilot, tests/polit→pilot, docs/polit-config→pilot-config) - package.json name, bin, env vars updated - package-lock.json regenerated - "Politely" in server-manager.ts preserved via placeholder mechanism - All 587 unit tests pass, tsc --noEmit clean - E2E tests verified against real OpenRouter API (model, tool-use, context, lifecycle hooks) Co-authored-by: Cursor <cursoragent@cursor.com> 24 天前
refactor: move cron/always-on business logic from ui/server/ to src/ Enforce backend-bug-locality rule: ui/server/ is a thin protocol adapter and must not host business logic. This commit extracts ~1600 lines of algorithms into src/always-on/web/ and src/cron/, slimming ui/server/ files to delegation-only wrappers. - Discovery plan status machine, lifecycle, and context aggregation → src/always-on/web/{DiscoveryPlanStatus,Service,Context}.ts - Run-history event merging and transcript recovery algorithms → src/always-on/web/AlwaysOnRunHistoryService.ts - Unified "run cron now" via Gateway RPC (cronRunNow) replacing the dual sendCronDaemonRequest / gateway.cronCreate paths - mapCronRunOutcome centralised in src/cron/protocol/types.ts - Deleted dead code: cron-daemon-client-lease.js, cron-session-bridge.js - 42 new unit tests covering all extracted modules Co-authored-by: Cursor <cursoragent@cursor.com> 19 天前
fix(cron): hide tools and reject task creation when cron is disabled CronRuntime.getTools() now returns an empty array when config.enabled is false, preventing the agent from seeing cron tools. createTask() also throws an explicit error as a defensive guard for CLI/API callers. Co-authored-by: Cursor <cursoragent@cursor.com> 18 天前
refactor: rename Polit/PolitDeck to Pilot/PilotDeck across entire codebase Automated global rename covering all case variants: - PolitDeck → PilotDeck, politdeck → pilotdeck, POLITDECK → PILOTDECK - Polit → Pilot, polit → pilot, POLIT → PILOT, politDeck → pilotDeck Includes: - 648 content replacements across 200+ source files - 24 file renames + 3 directory renames (src/polit→pilot, tests/polit→pilot, docs/polit-config→pilot-config) - package.json name, bin, env vars updated - package-lock.json regenerated - "Politely" in server-manager.ts preserved via placeholder mechanism - All 587 unit tests pass, tsc --noEmit clean - E2E tests verified against real OpenRouter API (model, tool-use, context, lifecycle hooks) Co-authored-by: Cursor <cursoragent@cursor.com> 24 天前
feat(cron): expose scheduled runs as dedicated chat sessions Give each cron task its own stable cron: session so scheduled work no longer pollutes the originating conversation and can appear in the Web UI like a normal chat. Co-authored-by: Cursor <cursoragent@cursor.com> 19 天前
feat(always-on): add Dashboard sub-tab with cross-workspace event timeline Emit phase-level events (discovery/plan/execution/report) from DiscoveryFire and CronFire into a per-project events.jsonl, aggregate them via a new GET /api/always-on/events endpoint, and render a Dashboard tab inside the Always-On view showing stats cards and a chronological event feed across all workspaces. Co-authored-by: Cursor <cursoragent@cursor.com> 19 天前