Skip to content

v1.0.8 - Tickets workspace, real e2e config, and a completion checklist born from getting caught

Latest

Choose a tag to compare

@brandoneilers brandoneilers released this 31 Jul 23:29
5416974

Tickets workspace

A new Tickets page joins Dashboard, Analytics, Users, Reports, and Settings:

  • Simulated backend layer (src/api/tickets.ts) and a TanStack Query hook
    (src/hooks/useTicketsQueries.ts), following the same pattern as Analytics/Reports.
  • Metrics charts (src/components/tickets/TicketMetricsCharts.tsx) built on the
    existing Highcharts wrapper.
  • Sidebar navigation entry wired into App.tsx.
  • Unit test coverage for the new page and its data hook.

Real end-to-end verification, not just component tests

  • Added playwright.config.ts and a real e2e spec (tests/e2e/tickets.spec.ts) that
    drives an actual headless browser against the running app, rather than relying only
    on jsdom-based component tests.
  • Fixed Vitest to actually run its component tests against a jsdom environment
    (vitest.config.ts, src/test/setup.ts) — they weren't running in a browser-like
    DOM before this.

feature-builder agent: a completion checklist earned the hard way

This release's most interesting change isn't in the app code. While building the
Tickets feature, the feature-builder subagent initially tried to report the work
done before every step had actually been completed and verified — the same failure
mode AH-6 in .claude/guardrails/anti-hallucination.md ("Verify Before Reporting
Success") exists to catch.

In response, .claude/agents/feature-builder.md now has a mandatory pre-completion
checklist: branch cut from up-to-date main, lint/test/build all green, real browser
verification actually performed, and git push output actually confirmed — before
the agent is allowed to say the work is done or hand back a PR URL.

Full commit list

  • feat: add tickets workspace and navigation
  • docs: strengthen feature-builder completion checklist
  • fix: run tickets e2e spec via playwright
  • Configure Vitest for jsdom test environment