Skip to content

Wire UI consumer for hooks.json catalog #17

@samkeen

Description

@samkeen

Sub-issue of #10. Tracking the UI consumer for catalog/hooks.json.

State today

  • ✅ Sync: scripts/sync-hooks.js runs on the weekly cron, writes catalog/hooks.json (lifecycle table + handler-fields tables + per-event input/output schemas + commonInput).
  • ✅ Backend: round-trips through read_catalog as hooks on the wire (loaded as serde_json::Value so the new keys flow through transparently).
  • ❌ Frontend: nothing reads it. Declared as hooks: unknown in src/lib/catalog.ts.

Likely shape

The natural cross-reference is the inspector's hooks.<EventName> rows. Roadmap Next-up candidates already calls this out as the highest-value next drawer cross-reference. Two natural surfaces:

  1. Drawer cross-reference — extend the existing drawer plan to include a collapsible "event detail" section for hooks.<EventName> rows (handler signature, common inputs, per-event input/output fields, JSON example).
  2. Top-level Hooks reference panel — a topbar-pill takeover modeled on HelpView / ErrorPanel / EnvVarsPanel, browsable independently of any row.

The catalog supports both — pick based on UX value.

Related

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions