14 Commits

Author SHA1 Message Date
Firehose Bot
7afe5c1fe8 test(microprints): make expand-switch test resilient to file changes
Remove hardcoded module names (FirehoseWeb.MicroprintsLive,
Firehose.Application) from the expand-switch test. Now verifies:
- Each file's source renders when expanded (generic defmodule check)
- Source content differs between files (catches stale content bug)
- Button states update correctly (collapse/expand)
2026-05-18 18:09:55 +01:00
Firehose Bot
7c06204ac2 fix(microprints): fix source viewer showing stale content when switching files
The source_viewer component used static DOM IDs (id='source-viewer')
with phx-update='ignore'. When switching expanded files, LiveView
reused the same DOM element but phx-update='ignore' prevented content
from being updated, showing the previous file's source.

- Override source_viewer/1 in MicroprintsLive with unique per-file IDs
  generated via :erlang.phash2(file_path)
- Add test verifying expand-switch shows correct source content
- Add test for highlight/expand coupling (collapse when highlighting
  a different file)
- All 160 tests pass
2026-05-18 18:04:47 +01:00
Firehose Bot
36bdc0610e fix(microprints): collapse expanded file when highlighting a different file
- Add test in microprints_live_test.exs that documents the uncoupled state bug
- Fix handle_event("highlight_line") to collapse expanded_path when
  highlighting a line in a different file
- All 159 tests pass
2026-05-18 17:28:30 +01:00
54651d2349 Add highlight.js syntax highlighting to source viewer
- Install highlight.js via npm with 8 language definitions
- SourceViewer hook applies syntax highlighting on mount/update
- Atom One Dark theme for dark mode, Atom One Light for light mode
- Add hooks directory, package.json, and package-lock.json
- Add demo document and screenshots
- Add rodney-docker.md documentation
- Ignore .rodney/ chrome data directory
2026-05-14 13:17:10 +01:00
fa4825d76d chromium in docker 2026-05-14 12:30:22 +01:00
237dcb48b2 Port DEMO skill from claude to pi
And particular for this project. I am now reading more markdown, making
smaller steps. So the installation instructions went to the README.

Hmm. having just written about init scripts, the installation may be
best moved to an init script in the skill directory.
2026-05-14 11:18:29 +01:00
Firehose Bot
1f0423841a chore: add yaks for LinkValidator simplifications 2026-05-07 12:48:40 +01:00
Firehose Bot
83eb8f7d50 chore: commit misc untracked files (llm-metrics, mise.toml, block-agent-idea.html) 2026-05-07 11:57:24 +01:00
a5acf21395 Remopve failed plan executor 2026-05-05 15:44:01 +01:00
8cc1524fec DEADEND: a work-the-plan agent that is too complicated
kept for reference -dead end
2026-05-05 14:43:44 +01:00
Firehose Bot
ec16342249 publish post 2026-04-30 09:16:59 +01:00
Firehose Bot
9c769959ad Add pi.dev tag to Pi-related engineering posts 2026-04-29 21:34:00 +01:00
Firehose Bot
a82dab0350 also write something about unit tests 2026-03-18 20:03:41 +00:00
Firehose Bot
f05dd00c55 test writer skill
Focuses on integration tests, but might be more reusable
2026-03-18 20:02:20 +00:00