Skip to content

v0.6.0 — Inline Result Viewer, Step Narratives, Release Audit

Choose a tag to compare

@bluzir bluzir released this 04 Apr 12:34
· 1 commit to main since this release

What's New

Inline Result Viewer

Click on report.md (or any result file) in the verdict card to open a full markdown-rendered preview — no need to leave the app. Includes syntax highlighting, scrollable content, and an "Open file" button for external editors.

Step Narrative System

Each step now shows its own narrative message in the chat timeline with tool usage digests, branch tracking for parallel workflows, and real-time status updates. Replaces the old progress blob with granular per-step visibility.

Skill Detail Viewer

New skill content viewer with markdown rendering, YAML frontmatter display, and safety analysis alerts. Reusable ContentDocViewer dialog component.

Multi-Run Thread Improvements

  • Past run completions now render as compact one-liners instead of full verdict cards
  • "Use in new flow" correctly attaches artifacts even after app restart
  • Run boundary separators between sequential runs in the same thread

Artifact Pipeline

  • Artifact resolver with contract matching for data-flow between nodes
  • Input assembler for threading chat run history into follow-up prompts
  • Routing runner for structured intent dispatch

Bug Fixes (14)

  • Result file not clickable in verdict card — now opens inline viewer
  • "Use in new flow" artifacts empty after restart — fallback to persisted chat.artifactPool
  • Two full verdict cards in multi-run threads — past runs collapsed to compact form
  • Sidebar toggle overlapping dialogs — z-index corrected (z-40 below dialog z-50)
  • text-body-lg invalid token — replaced with text-body-md across 6 components
  • Raw Tailwind text-[11px] — replaced with ui-meta-text design token
  • Unsafe array access edgesToActivate[0].type — added optional chaining
  • Chat creation fire-and-forget — added error handling
  • Silent failure in chat load loop — per-chat try-catch prevents one corrupted file from breaking sidebar
  • retriesUsed! non-null assertion — replaced with nullish coalescing
  • Routing handle double-delete race condition — single cleanup path
  • Broken FlowResultCard import — inlined rendering in ChatFilesDialog
  • Phantom props on ChatStepsList — removed non-existent prop references
  • Missing export assembleInputWithAttachments from workflow-runner package

Stats

  • 55 files changed, 5,841 insertions, 274 deletions
  • 1,578 tests passing, 241 test files
  • TypeScript, ESLint, Canon vocabulary — all clean