Skip to content

[feat] Workflow panel — pipeline (lifecycle) view #75

Description

@Sph3ricalPeter

Priority: Low — audit / onboarding lens on top of the inventory
Effort: ~1–2 days
Engine: None — fixed per-harness lifecycle template + classification of detected units
Depends on: #74 (detect + inventory)
Part of: the v2.1.0 agentic-workflow surfaces

Second view mode on the Workflow panel: arrange the same detected units on the harness's real session lifecycle, so you see what takes effect at what stage and — the main point — what is advisory context vs. an enforced hook.

The lifecycle (Claude Code; grounded in docs)

Fixed template; detected units are classified onto it:

  1. Session start (context, once): managed / user / project CLAUDE.md + unscoped rules + MEMORY.md; MCP connect; skills registered.
  2. Agentic loop — repeats per turn:
    • Prompt submitted: UserPromptSubmit hooks; skills surface by relevance.
    • Reading / editing files: path-scoped rules + subdir CLAUDE.md activate lazily, by glob — not at start.
    • Tool call: PreToolUse (can block) → PostToolUse.
  3. Finish / commit: Stop hooks; pre-commit (git) hooks.
  4. Session end: SessionEnd; auto-memory write-back.

Refs: https://code.claude.com/docs/en/memory · https://code.claude.com/docs/en/hooks

Classification (no engine)

  • paths: frontmatter → "reading / editing files" stage (path-scoped).
  • hook event name → its lifecycle stage (PreToolUse → tool call; Stop / pre-commit → finish).
  • skill → "prompt submitted".
  • plain CLAUDE.md / rules / memory → "session start".

Presentation

  • Color-code context (advisory — may be ignored) vs path-scoped vs hook (enforced — can block). This advisory-vs-enforced split is the primary value.
  • Bracket the repeating agentic-loop stages.
  • Per-harness selector — Codex / opencode share the shape, different event names.
  • Honest framing in the UI copy: a timeline of trigger points, not a data-transform pipeline; the harness owns final assembly.

Stretch / future (own issue if pursued)

  • "Precedence" view — the assembly / override stack (managed → user → project → cwd → local → imports → memory); flag two units fighting over the same behavior ("Claude resolves arbitrarily").

Acceptance criteria

  • Pipeline tab renders detected units on the fixed lifecycle, classified by trigger
  • Advisory / path-scoped / enforced are visually distinct, with a legend
  • Agentic-loop stages are marked as repeating
  • Harness selector switches the lifecycle template
  • No engine — pure classification + presentation

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions