Bug bash 3: fixes re-checked and state restored

Log
Published
Session
5 Oct 2026, 17:22 to 18:07 UTC
Project
agentic-journal-v2
Agent
Claude Code
Model
claude-opus-5-5
Tags

Value

2.3

■■□□ of 4

Time

45m

active

Elapsed

45m

wall-clock span

Commits

1

from this session

Cost

$13.31

model spend

Tokens

90k

uncached in, plus out

Tool calls

184

by the agent

Outcomes

14

8 left open

Summary

Written by the summariser

Exercise the live agentic-journal-v2 app and both public sites in the browser to re-check fixes made since bug bash 2, run a full publish cycle on both audiences, then restore the pre-bash state and log findings as backlog tasks without changing code.

The agent took a read-only pre-run snapshot of the Camden app database and watched backend logs while working through the browser checks. Most fixes landed since bug bash 2 held in the browser, including faster Inbox search, visible withdrawn articles and the publication-change preview, though the harness-context search exclusion only partly works. A work entry and a personal entry were each taken through approve, publish, withdraw, republish and a Review edit, with live public pages checked after every step, and personal redaction held apart from BrewMDM still appearing in some generated outputs. Zaraz was blocked in the first browser session; after Rob disabled his ad blocker it loaded on the convos site, but confirming arrival in GA Realtime is still with Rob. Both sites were restored and the final database matched the pre-run snapshot for entry text and publish times, apart from timestamp and paid-call residue. Eight findings were logged as backlog tasks, with no code changes.

What came out of it

  • Pre-run read-only SQLite snapshot of the Camden app DB taken; post-run diff showed entry text, approval and publish times unchanged, and rules, first approvals, dismissals, overrides and triage feedback unchanged.
  • convos index and llms.txt byte-identical to the pre-run state; tokens serves the same 4 articles as before.
  • Work entry (a client) approved, published, edited, re-approved, given an update via Accept update (word-level title diff shown), unpublished (404 and gone from index), then republished with original text and finally returned to withdrawn.
  • Personal entry (loop159) published with no commit SHAs, m7kni and tracker IDs kept and the serial removed; later removed and republished, then the personal site matched its pre-bash sitemap.
  • Publication plan preview for a template-only refresh showed New 1, Changed 0, Unchanged 4, Removed 0.
  • Export Index overrides download produced skip-overrides.json with 4 rows matching the DB (saved to the session scratchpad).
  • Inbox search re-tested via the API: common-word queries returned in 2.5 to 4.6 s with 200 responses.
  • Phone (390 px, headless) check of convos showed no horizontal scroll on any page and title before metadata.
  • Desktop sweep at 1496 and 1100 px with no overflow found at 1100 px on any app screen.
  • Rule 11 saved as disabled, then re-enabled at position 12.
  • Page views sent to convos at 18:46 to 18:47 and 19:01 to 19:02 BST for /, /projects and the photo-pipeline article; Zaraz i.js and s.js returned 200 and window.zaraz present once the ad blocker was off.
  • Findings logged as AJV-0147 to AJV-0154; session notes appended to AJV-0127; export-failure evidence added to AJV-0139.
  • Backlog commit [commit] reported as local, not yet pushed.
  • Theme switched to Light partway through without the agent touching the toggle; set back to Dark.

I ran a third bug bash on my agentic journal app this session. The aim was to check the fixes I've landed since the last bash against the live app in a browser, and to run a full publish cycle on both the work and personal audiences. The rule I set myself was that everything had to go back to how it was before. I didn't change any code.

Before starting, I took a read-only snapshot of the app's database so I could diff it afterwards, and I watched the backend logs while I worked. Most of the fixes from the last two bashes held up in the browser. Inbox search now returns common-word queries in a few seconds instead of timing out, withdrawn articles stay visible with a clear removal notice, and the publication preview correctly shows what a template-only refresh would change. The fix for keeping harness text out of search only partly works, because some system text still matches as though a person typed it.

For the full cycle, I took one work entry and one personal entry through approve, publish, withdraw, republish and a Review edit, and checked the live page after each step. The Accept update path in Review worked, including a word-level diff of the title. Personal redaction mostly holds: no commit hashes or internal hostnames in the personal articles, and the tracker IDs are kept as intended. A company name still appears in a few generated outputs, though, so that needs a decision from me.

The final database matches the snapshot for entry text and publish times. A few things can't be undone cleanly: timestamps on the withdrawal records, and some summaries and a redraft that the paid AI calls generated during the run. I've noted those. The analytics check is still open. Zaraz loads on the convos site once my ad blocker is off, and I generated some page views, but I still need to look in GA Realtime before I can call it confirmed.

The session produced eight findings, logged as backlog tasks. If I pick them up next loop, I'd start with the search snippets that show raw HTML entities and the Escape key leaving a search applied, then the harness-text filter and where action feedback appears on screen.

Left open

  • GA Realtime check for convos.rob-knight.com (AJV-0106 AC3) still needs Rob; AJV-0106 not closed and AJV-0127 first acceptance check not ticked.
  • tokens site was not checked at 390 px because it is behind Access; it was checked at 500 px in Chrome, the narrowest the window allows.
  • Review Dismiss on the second work entry was not clicked, so the undo-dismissal behaviour (AJV-0152) is unverified.
  • Decision on whether BrewMDM is redacted in personal articles (AJV-0149) is pending with Rob.
  • Residue not reversed: new timestamps on the a client and loop159 withdrawal records; a client's stored approved-tags list still includes label-migration until its next approval; last-publish records and loop159's published-text fingerprint changed.
  • Paid-call residue: 3 new summaries (a client, the backfill, one from the scheduler) with 17 tags added automatically, and the client draft replaced by its redraft.
  • Draft now feedback rendered off-screen from its button, so its result was not clearly observed in place.
  • Backlog commit [commit] is local and has not been pushed.