文件最后提交记录最后更新时间
feat(always-on): add zh-CN prompt localization for all 5 phases Add Chinese translations for discovery, workspace, execution, report, and apply prompts. Language is driven by alwaysOn.language in pilotdeck.yaml and auto-synced when the Web UI language changes. Co-authored-by: Cursor <cursoragent@cursor.com> 12 天前
feat(always-on): map chat sessionIds to short aliases in discovery prompt Complex sessionIds like web:s_ffdcc108 are error-prone for LLMs to reproduce in tool calls. Replace them with chat_1, chat_2, ... in the prompt and resolve back via aliasMap in the chat history tool. Co-authored-by: Cursor <cursoragent@cursor.com> 12 天前
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(always-on): introduce Work Cycle as first-class entity for Apply/Archive Workspace ownership moves from individual plans to Work Cycles. Apply and Archive now operate at the cycle level, aligning the product model with the underlying single-workspace-per-project constraint. Key changes: - New WorkCycleRecord type and WorkCycleStore (CRUD + lazy migration) - DiscoveryFire: ensureAlwaysOnWorkspace → ensureActiveWorkCycle - Gateway/CLI: applyPlan → applyCycle (workCycleId replaces planId) - Web service: per-plan apply/archive replaced by cycle-level methods - UI: plans grouped under cycle headers with cycle-level action buttons - Tests updated across all affected modules (141 pass, 0 fail) Co-authored-by: Cursor <cursoragent@cursor.com> 12 天前
refactor(always-on): remove legacy web execution path, rewire retry through DiscoveryFire The old web-driven Always-On path (discovery trigger → auto-poll → web chat execution) raced with the DiscoveryFire pipeline, causing duplicate plan executions. This commit removes the entire legacy path: - Add alwaysOnRerunPlan gateway RPC so the UI retry button triggers DiscoveryFire phases 2-4 (workspace → execution → report) directly - Remove MainContent auto-poll, discovery trigger handler, execution lifecycle tracking, and all associated refs/callbacks/useEffects - Delete queueExecution, updateExecution, buildExecutionPrompt from DiscoveryPlanService and the PATCH execution REST endpoint - Unregister /ao slash command; delete alwaysOnSlashActions.ts - Delete discovery-trigger-client.js and its WS handler in index.js - Delete old web discovery prompt and utility files - Remove approvalMode field from WebPlanRecord, UI types, i18n, tests Co-authored-by: Cursor <cursoragent@cursor.com> 7 天前
refactor(always-on): introduce Work Cycle as first-class entity for Apply/Archive Workspace ownership moves from individual plans to Work Cycles. Apply and Archive now operate at the cycle level, aligning the product model with the underlying single-workspace-per-project constraint. Key changes: - New WorkCycleRecord type and WorkCycleStore (CRUD + lazy migration) - DiscoveryFire: ensureAlwaysOnWorkspace → ensureActiveWorkCycle - Gateway/CLI: applyPlan → applyCycle (workCycleId replaces planId) - Web service: per-plan apply/archive replaced by cycle-level methods - UI: plans grouped under cycle headers with cycle-level action buttons - Tests updated across all affected modules (141 pass, 0 fail) Co-authored-by: Cursor <cursoragent@cursor.com> 12 天前
refactor(always-on): introduce Work Cycle as first-class entity for Apply/Archive Workspace ownership moves from individual plans to Work Cycles. Apply and Archive now operate at the cycle level, aligning the product model with the underlying single-workspace-per-project constraint. Key changes: - New WorkCycleRecord type and WorkCycleStore (CRUD + lazy migration) - DiscoveryFire: ensureAlwaysOnWorkspace → ensureActiveWorkCycle - Gateway/CLI: applyPlan → applyCycle (workCycleId replaces planId) - Web service: per-plan apply/archive replaced by cycle-level methods - UI: plans grouped under cycle headers with cycle-level action buttons - Tests updated across all affected modules (141 pass, 0 fail) Co-authored-by: Cursor <cursoragent@cursor.com> 12 天前
fix: disable always-on discovery memory context Co-authored-by: Cursor <cursoragent@cursor.com> 6 天前
fix(security): Windows permission compatibility - Add Windows dangerous command deny patterns: Remove-Item -Recurse, del /s, rd /s, Format-Volume, iex+iwr, Start-Process RunAs, Set-ExecutionPolicy, Stop-Process -Force - Add Windows safe-read patterns: Get-ChildItem, Get-Content, dir, type, etc. - Block Windows device paths: CON, NUL, COM, LPT, PhysicalDrive, \\.\, \\?\ - Platform-aware quick-block shortcuts in permissions settings UI - SnapshotCopyProvider: use PowerShell for directory size on Windows Co-authored-by: tp <tp@t14-windows> Co-authored-by: Cursor <cursoragent@cursor.com> 9 天前
refactor(always-on): introduce Work Cycle as first-class entity for Apply/Archive Workspace ownership moves from individual plans to Work Cycles. Apply and Archive now operate at the cycle level, aligning the product model with the underlying single-workspace-per-project constraint. Key changes: - New WorkCycleRecord type and WorkCycleStore (CRUD + lazy migration) - DiscoveryFire: ensureAlwaysOnWorkspace → ensureActiveWorkCycle - Gateway/CLI: applyPlan → applyCycle (workCycleId replaces planId) - Web service: per-plan apply/archive replaced by cycle-level methods - UI: plans grouped under cycle headers with cycle-level action buttons - Tests updated across all affected modules (141 pass, 0 fail) Co-authored-by: Cursor <cursoragent@cursor.com> 12 天前