TownReporter 0.6.25 — sections and page watching
The paper's sections are now owner-configurable: add, rename, reorder, hide and retire them, with reporting briefs, accepted-source assignments and scan instructions. A preview shows the impact before applying changes. Retirement preserves article addresses and explicitly reassigns stories; late writes resolve retired section keys in the correct newsroom. Queued scans keep the section guidance and source selection they were given.
Dark Desk now has a distinct Watch a page workflow. It keeps dated captures, reports first reads and changes, and distinguishes blocked, failed and unreadable checks. Pause/resume/stop preserve history. The editor can download captured text, attach it to an investigation, dismiss a change, or explicitly create an unverified lead in a selected section. Checks do not automatically create leads or publish. Attached-file links open, scroll to and focus the actual file, including on narrow screens.
Migrations0045 and0046 implement sections and watched-page history. README, manuals, setup instructions, Dark Desk guide, landing page and version fields describe the new workflows; refreshed screenshots are labelled local development examples.
Source: 777077aa5f098ef26b4b1d91fd3cfa675324a685 (PR #9). Exact-main CI34102981794 passed all 14 jobs, including real Postgres and browser workflows. Source tests: 1,288 passed, 35 skipped, 0 failed. Script tests: 329 passed, 4 skipped, 0 failed. Typecheck and build passed; lint has zero errors and 12 inherited warnings.
Validation includes sensitive PGLite/mocked regressions, scoped editor/reader journeys and narrow/Large checks. Final full-suite counts belong to the exact merged commit. Earlier scan-fixture and schema-parity fixture failures were diagnosed and corrected without weakening their assertions.
This is a GitHub source release. Promotion and real-data acceptance require the separate Halo-local operator. No production database, backup, staging or promotion action was performed from this machine. Legal removal and investigative settings continue in the next bounded unit.