This project evolves quickly during active FLOW development. We keep the changelog intentionally short and treat the code + docs as the primary source of truth.
- Checks:
check:linksтеперь автономно валидирует локальные markdown-ссылки (только tracked.md) черезscripts/check-markdown-links.js.
- Codebase hygiene: удалён мёртвый код (inbound=0) и неиспользуемые экспорты в client/extension/packages (по результатам
ts-prune+ ручной проверки).
- Project Manager: для cold-open history добавлен watchdog-ретрай — зависший первый
dialog:historyзапрос (cursor=0) автоматически сбрасывается и повторяется forced-route без участия пользователя. - Project Manager: устранён интермиттирующий кейс
No messages yetпри открытии Workspace, когда история появлялась только после повторного клика по session/stage в левом tree.
- Tests:
dialog-session-snapshot-replay.test.tsрасширен проверками watchdog-инварианта (pending timeout -> forced retry).
- Project Manager: устранена гонка первого открытия dialog-mode —
dialog:history:resultбольше не теряется междуdialog:list:resultи обновлением session identity. - Project Manager: при cold-open workspace история stage-диалога (JSONL) подтягивается сразу, без повторного клика по
Virtual Simulation/другому workflow шагу.
- Tests: добавлен guard
dialog-session-snapshot-replay.test.tsна порядокbind sessionRef -> requestDialogHistory.
- Project Manager: устранён workflow navigation desync между Toolbar, левым tree (stage/session/artifact) и auto-select; активный шаг синхронизируется через единый
activeStageroute. - Project Manager: убраны stage-specific исключения (
skipSession) в stage activation semantics, поэтому выбор шага стабильно открывает согласованную dialog-session.
- Project Manager: правый header унифицирован для всех workflow-шагов (
<Step Name> + Artifacts/Help), режимArtifacts/Helpтеперь работает кросс-этапно. - Project Manager: добавлены help-панели для non-description этапов (
Virtual Simulation,Diagram Modules,Diagram Facades). - Tests: добавлен guard
workflow-navigation.test.ts, предотвращающий регрессию рассинхрона stage selection.
- Session UI: token usage now hydrates correctly for dialog-mode sessions resumed from continuity (fixes Codex showing
0 tokens / 100%).
- Rebuild of the stable workflow baseline from
v1.1.706as the new main release line (no workflow approval markers).
- Virtual Simulation is now prompt-only (no artifact template shipped); the agent writes
virtual-simulation.mdfromFinal_Description.md.
- Workflow: aligned Virtual Simulation prompt-only status and gating checks for downstream stages.
- Description runtime/core: removed reviewer auto-runtime branch and fixed description session persistence to collector-only mode for active flow.
- Project Manager UI: removed reviewer auto-focus/visibility branches from runtime session view and workspace-tree resume paths for
description. - Workflow templates:
descriptionbundle now uses only single-session collector wording; reviewer terminology removed fromdescription-collector-prompt.md.
- Workspace activate/runtime resume: reviewer session slots are ignored for active delivery, preventing accidental reopen into legacy reviewer path.
- Template sync: legacy files
~/.codeai-hub/templates/description/reviewer-prompt.mdandreviewer-template.mdare removed during sync.
- Workflow templates: simplified the Description questionnaire from 16 to 10 sections with plain-language names and inline examples for non-programmers.
- Workflow templates: aligned
description-template.md,description-collector-prompt.md,reviewer-prompt.md, andreviewer-template.mdwith the new questionnaire structure. - Reviewer Agent prompt: removed artificial 3-question limit; agent now discusses module/cluster composition as a first approximation.
- Description Agent prompt: when
modules_draftis empty, agent proposes its own decomposition based on described scenarios and capabilities. - Code: simplified
buildDefaults()indescription-questionnaire-utils.tsto only setmeta.title; removed deadformatDate()andresolveAuthorName().
- Workflow docs:
WorkflowSteps_Overview.md— SSOT for all six workflow steps (Description → Virtual Simulation → Diagram Modules → Diagram Facades → Module Specifications → TODO Plan), including philosophy, artifacts, feedback loop, and adaptive templates concept. - Workflow docs:
QuestionnaireTemplate_Draft.md— intermediate draft used during the questionnaire redesign discussion. - Docs index: added Workflow Overview section linking to
WorkflowSteps_Overview.md.
- Project Manager: refactored duplicated stage artifact panel state rendering into shared components (
StageArtifactStateView,StageArtifactPendingLayout) to keep duplication checks under the pre-push threshold.
- Release pipeline:
pre-pushduplication gate now passes again after the panel deduplication (jscpdback under 3%).
- Project Manager: toolbar stage highlight is now workspace-scoped, so switching workspaces always reflects that workspace's last active step (
Description,Virtual Simulation,Diagram Modules, orDiagram Facades). - Project Manager: dialog open resume now checks runtime session presence in
workspace:snapshotand triggerssession:createwhen the dialog session is missing after restart. - Virtual Simulation cold-start recovery: stale running lock and reset
totaltimer are normalized/restored from snapshot + persisted timer state.
- Project Manager: when opening a stage dialog after Core restart and
dialog:listhas nolatestSessionId, the UI now triggerssession:createresume so workspace snapshots include the stage session again. - Virtual Simulation: reopen after restart no longer remains stuck in default
runninglock while waiting for user input. - Session timers:
totalrestores after restart because the resumed stage session receivestaskTimer.totalSecondsviaworkspace:snapshot.
- Project Manager: layout-level
workspace-scope-syncnow stores incomingworkspace:snapshotpayloads inworkspaceSnapshotStoreindependently from runtime session view mount timing. - Project Manager: Virtual Simulation no longer gets stuck with
Agent is working...on late tab open after reload when the turn is already idle and waiting for user input. - Session UI:
totaltimer is restored on late mount because the latest snapshot is retained even whenworkspace:snapshotarrived before the tab subscribed.
- Project Manager: on runtime hydrate, the UI now reapplies the latest stored
workspace:snapshotfromworkspaceSnapshotStore, preventing stale defaultrunninglock when snapshot arrives beforecore:state. - Project Manager: Virtual Simulation restart/reopen path now keeps input unlocked and task timer state aligned with the latest snapshot after reconnect/reload.
- Core: cold-start recovery now normalizes stale
runningruntime sessions toidleon workspace selection when turn completion is already known and no bootstrap continuity lock is active. - Core: persisted task timer totals are restored even when runtime sessions hydrate before the first
workspace selectcall. - Docs (SSOT): synchronized input lock and task timer contracts for the
Virtual Simulationcold-start recovery rules.
- Project Manager: Session EmptyState no longer tells users to start from “buttons above”; it now explains the actual Description flow (
Artifactsquestionnaire →Submit questionnaire→ provider picker). - Project Manager: Description questionnaire CTA labels are now English (
Submit questionnaire,Close) to match PM UI terminology. - Project Manager: stage panel “Fix with agent” callbacks are type-aligned with
WorkflowStepStartService, restoring greennpm run typecheck:webview.
- Project Manager: false "Creating session…" spinner no longer appears when a stale dialog intent is restored from
localStorage(e.g. on the Description tab in a fresh workspace). The pending indicator is now driven exclusively by thependingSessionCreateflag (emptyStatePending), not by the mere presence of a dialog intent.
- Project Manager: all side-effects for gated toolbar buttons (Virtual Simulation, Diagram Modules, Diagram Facades) —
setActiveTool,setPendingSessionCreate,dispatchStageActivated,pm:dialog:open— are now deferred until the async gating check passes. Clicking these buttons when the upstream artifact is missing produces zero UI changes.
- Project Manager: new Diagram Modules workflow step — toolbar click launches an agent session that produces
modules-diagram.mmd; artifact panel with mermaid validation (%% Modules Diagramheader +subgraph) and "Fix with agent" recovery. - Project Manager: new Diagram Facades workflow step — toolbar click launches an agent session that produces
facades-graph.mmd; artifact panel with mermaid validation (%% Facades Graphheader + edge syntax) and "Fix with agent" recovery. - Project Manager: artifact availability polling hooks for both diagram stages (10 s interval,
maxBytes: "1"probe). - Project Manager: Workspace tree branch nodes for Diagram Modules / Facades (session child + artifact child), with gated progression (Diagram Modules requires VS done; Diagram Facades requires Diagram Modules done).
- Project Manager: table-driven toolbar handler (
DIAGRAM_STAGE_MAP) for diagram clicks;renderStagePanel()helper eliminates duplicate workspace-check pattern inmain-area.tsx.
- Implementation of Diagram Modules & Diagram Facades workflow steps (code only; see
1.1.682for the doc-synced release).
- Project Manager: every click that says "I want stage X" (toolbar buttons, tree parent labels, tree child nodes) now syncs both artifact and session panels together via
resolveStageSyncPayload()and thepm:stage:activatedevent. - Project Manager: auto-select the latest workflow step (Virtual Simulation or Description) when opening a workspace.
- Project Manager: clear stale artifact when the VS session has no artifact file yet.
- Core: task timer storage is now per-workspace (stored in
<workspaceRoot>/.codeai-hub/state/task-timers.json); legacy global file is cleaned up on startup.
- Project Manager: remove the confusing Back button from the artifact viewer.
- Project Manager: show
virtual-simulation.mdin the Workspace tree only after the artifact exists (avoids 404 when clicking).
- Project Manager: Virtual Simulation reuses the provider selected for Description (prevents accidental provider switches).
- Session UI: workflow tabs use stage labels for non-description stages (e.g.,
Virtual Simulation) instead of showingReviewer. - Project Manager: Workspace tree now shows the
virtual-simulation.mdartifact as a child node under Virtual Simulation.
- Project Manager: Virtual Simulation now immediately switches the Sessions panel into a pending state and auto-opens the stage dialog once it becomes available.
- Project Manager: Workspace tree shows the Virtual Simulation session (collapsible stage node with a session child).
- Project Manager: Virtual Simulation toolbar now opens the stage session (and reveals the hint panel) instead of acting like a dead click.
- Project Manager: bridge config derives missing
httpUrlfromwsUrl(prevents workflow API calls from silently failing).
- Workflow: new
Virtual Simulationstep with bundled prompt+template (file-first fromFinal_Description.md). - Project Manager: start Virtual Simulation from the toolbar, show a hint panel until the artifact exists, and offer “Fix with agent” when validation fails.
- Workflow state: record watcher events and compute deterministic gating +
OUTDATEDpropagation.
- Reviewer sessions: Stop → Play no longer resets task timer total (BUG-2026-02-24-04).
- Project Manager (one-shot Description): after ↻ Restart attempt, auto-focus the newly created session (no manual click in the tree) (BUG-2026-02-24-03).
- Rebuild of
1.1.666to avoid the666version number; no functional differences.
- One-shot Description: ↻ Restart attempt confirmation now uses an inline Apply/Cancel bar (Session UI +
questionnaire.mdheader), instead of a 2-step arm/confirm click.
- Standalone Project Manager (CEF): avoid crash when confirming ↻ Restart attempt in one-shot Description (replaced native
window.confirmwith a 2-step arm/confirm UX).
- Session UI: ↻ Restart icon is now 1.6× larger.
- One-shot Description: ↻ Restart attempt recovery to re-submit the questionnaire and start a fresh attempt when the original attempt hangs mid-turn.
- Session UI: Stop (■) icon is now ~10% smaller for better visual balance.
- Standalone Project Manager (CEF): after Stop (■), the next Enter/▶ now starts Core again via the Launcher bridge (instead of getting stuck with Core stopped).
- Session UI: ■ now reliably stops Core by calling the shutdown endpoint (
POST /api/v1/shutdown) and no longer leaves the “Agent is working…” placeholder visible after Stop.
- Session UI: the input Play/Stop button now stops Core on ■ (instead of a quick restart), then resumes on the next send (▶ / Enter starts Core and submits after reconnect).
- Session UI: refined the Stop icon visuals (larger ■, clearer red background, better vertical alignment).
- Session UI: added a Play/Stop button next to the input (▶ sends like Enter; ■ restarts Core to abort the active turn and immediately unlock input for a new request).
- Session UI: locked input “please wait” placeholders now pulse opacity from 20% to 40% every 1000ms (provider color).
- Session UI: locked input “please wait” placeholders now pulse opacity from 5% to 50% every 1000ms (provider color).
- Session UI: locked input “please wait” placeholders now actually pulse opacity from 5% to 80% every 500ms (provider color).
- Session UI: locked input “please wait” placeholders now pulse opacity from 5% to 80% every 500ms (provider color).
- Session UI: locked input “please wait” placeholders now use the provider wait color (matching the live turn timer) at 80% opacity.
- Session timers: one-shot Description sessions (
resumeMode="no_resume") now show the live turn timer while running, without accumulating total time.
- Session timers: moved SSOT to Core and deliver via workspace snapshots so totals stay consistent across multi-workspace/multi-tab Project Manager usage and Project Manager reloads.
- Session UI: aligned footer
total:label typography with timer digits (same font-size/family) for consistent visual weight. - Session UI: aligned turn/total timers to a shared right anchor so upper and lower values are horizontally aligned.
- Session UI: total timer in footer is now static during lock/working state (always gray), then updates by jump when the turn completes; footer copy now shows
total: 00h 00m 00s. - Session UI: live turn timer in the input area is shown without background badge/pill (plain overlay text on the input field).
- Session UI: task timers now match the contract semantics — total is always visible in the footer while input is locked; per-turn timer resets each new turn.
- Session UI: removed legacy manual force unlock toggle (no longer needed after continuity lock fixes).
- Session UI: timer display format is now text-only
00h 00m 00s(no flip animation).
- Session UI: persistent task execution timer (HH:MM:SS) with 3D flip digits — shows live time while the agent is working and keeps an accumulated total per workflow-agent across continuity rollovers and Core restarts.
- Project Manager / Session UI (BUG-2026-02-22-01): avoid stuck “resuming/blocked” on cold start — unlock input when
workspace:snapshotreportsturnState=idleandcontinuityLockActive=false, even ifcontinuityLockReasonis missing. - Core / Workspace snapshots: normalize idle resume-in-place sessions to emit an explicit unlock hint
continuityLockReason="no_rollover_needed"(defense-in-depth; reason is never a hard unlock gate). - Crash/restart resilience: after Core restarts mid-turn, input unblocks automatically when the snapshot is
idle/unlocked; sending “Продолжай” continues the interrupted turn.
- Docs: update release notes (
README.md,CHANGELOG.md) before packaging. - Note:
1.1.647is a doc-synced rebuild of1.1.646artifacts (no additional code changes).
- Project Manager / Session UI (BUG-2026-02-22-01): avoid stuck “resuming/blocked” on cold start — unlock input when
workspace:snapshotreportsturnState=idleandcontinuityLockActive=false, even ifcontinuityLockReasonis missing. - Core / Workspace snapshots: normalize idle resume-in-place sessions to emit an explicit unlock hint
continuityLockReason="no_rollover_needed"(defense-in-depth; reason is never a hard unlock gate). - Crash/restart resilience: after Core restarts mid-turn, input unblocks automatically when the snapshot is
idle/unlocked; sending “Продолжай” continues the interrupted turn.
- Release notes:
1.1.646artifacts were packaged before the docs were updated; use1.1.647for the doc-synced release.
- Claude / Recovery hints: corrected provider-home auth command in user-facing errors to
HOME=~/.codeai-hub/providers/claude/home claude /login.
- Release maintenance rebuild: regenerated unified local artifacts (providers/core/UI/launcher) and VSIX for clean install validation.
- Core / Codex Session Continuity: prevent duplicate rollover / double session separators when report generation is slow (no timeout-based retries; ignore rollover triggers from stale continuity segments).
- Extension / UI: fix UI bundle installation (extract tarballs without an extra top-level folder) so VS Code Settings and Launcher UI can load from
~/.codeai-hub/packages/ui/*/current/*withoutERR_FILE_NOT_FOUND.
- UI / Sessions: show “resuming session…” placeholder during continuity rollover locks (avoid misleading “agent working” copy while switching/bootstraping a new workflow session).
- UI / Sessions: show “resuming session…” placeholder during session binding (avoid misleading “agent working” copy while switching/hydrating a new workflow session).
- Core / Templates: bundle and install
reviewer-template.md, and pass its absolute path into Reviewer instructions (so the agent uses the template instead of searching for a missing file).
- Claude / Session Continuity: compute context remaining % from the real
/contextsnapshot (provider JSONL) and avoid incorrect rollovers caused bymodelUsage/cache token totals.
- Project Manager / Dialog sessions: prevent stuck-locked input by replaying the latest
workspace:snapshotafter dialog session hydration / rollover.
- Core / Workspace snapshots: preserve session lock fields during partial updates (fixes missed unlock after continuity rollover).
- Project Manager / Session UI: token usage now refreshes reliably after turns (including dialog sessions that hydrate snapshots after stream events).
- Project Manager: auto-open the
Reviewerdialog after liveDescription → Reviewerhandoff (mirrors workflow tree click viapm:dialog:open).
- Project Manager: fix live
Description → Reviewerauto-handoff by resolving the reviewer runtime session deterministically (prevents hiding the reviewer before binding is ready).
- Project Manager: live auto-handoff now focuses
Reviewersession after one-shotDescriptioncompletes (without manual click in workflow tree). - Guardrail: reviewer auto-focus is scoped to
description/collectortransition to avoid stealing focus from unrelated active sessions.
- Project Manager / Session UI: show a spinner in the left session area while a workflow session is being created (so the UI does not look frozen).
- SolidWorks-Flow: archive non-contract drafts, clarify SSOT boundaries, and normalize doc statuses/metadata.
- Knowledge base: model selection/aliases are documented as SSOT-in-code (see
src/types/*-model-registry.ts).
Earlier releases in the 1.1.57x–1.1.62x series focused on SSOT routing (dialog vs runtime), snapshot-first lock/usage authority, and continuity/resume reliability across providers. For the full history, use git log / tags.