Extracts all hashtag preference related logic into a new controller
`js/ui/profileModal/ProfileHashtagController.js` to reduce the size of `js/ui/profileModalController.js` and improve maintainability.
- Moves `normalizeHashtagTag`, `formatHashtagTag`, `getResolvedHashtagPreferences`, `setHashtagStatus`, `refreshHashtagBackgroundStatus`, `populateHashtagPreferences`, `renderHashtagList`, `sanitizeHashtagList`, `createHashtagListItem`, `persistHashtagPreferences`, `handleAddHashtagPreference`, `handleRemoveHashtagPreference`, `handleHashtagPreferencesChange`, `describeHashtagPreferencesError`.
- Updates `ProfileModalController` to delegate to `ProfileHashtagController`.
- Reduces `js/ui/profileModalController.js` by ~600 lines.
- Updates file size baseline in `scripts/check-file-size.mjs`.
Passes `npm run lint` and `npm run test:unit`.
Co-authored-by: PR0M3TH3AN <[email protected]>
Agents were repeatedly picking up content-audit-agent because:
1. CSV only updated after task completion — crashes left no trace
2. PR claim check (Step 1.5) was buried and easy to skip
3. No "started" status meant failed runs were invisible to rotation
4. Pre-flight scan was too narrow (checked one agent, not all)
Changes:
- Add Step 0 (mandatory pre-flight) that scans ALL open PRs and CSV
for in-progress work before selecting any task
- Introduce "started" CSV status logged immediately upon claiming,
before task execution begins — ensures rotation advances on crash
- Promote claim check from sub-step 1.5 to full Step 2 with explicit
MANDATORY warnings
- Add 24-hour stale claim timeout for abandoned "started" entries
- Add fallback: if gh is unavailable, CSV "started" rows still work
- Strengthen META_PROMPTS.md to front-load deduplication as Step 0
with explicit "this has happened before" warning language
- Add Quick Reference table summarizing all 5 deduplication layers
https://claude.ai/code/session_017QCJvunQJ7ATr6uZBHV5iA
When multiple agents (Claude Code, Codex, Jules) run schedulers concurrently,
they can pick up the same task because neither has committed yet. This adds a
"Draft PR Lock" protocol: agents must check for and create a draft PR before
starting work, acting as a distributed lock visible to all platforms.
Changes:
- AGENTS.md §12: new "Task Claiming Protocol" subsection with check/claim/race
handling steps
- daily-scheduler.md: new Step 1.5 with concrete gh CLI commands
- weekly-scheduler.md: same Step 1.5 addition
https://claude.ai/code/session_01Vnih5ZARbEmnh3EGTDQAXX
- Add missing FAILURE MODES, OUTPUTS PER RUN, and BEGIN sections to `docs/agents/prompts/weekly/bitvid-interop-agent.md`
- Add missing FAILURE MODES, PR & COMMIT CONVENTIONS, OUTPUTS PER RUN, and BEGIN sections to `docs/agents/prompts/weekly/bitvid-smoke-agent.md`
- Ensure consistency with other agent prompts in the repository
Co-authored-by: PR0M3TH3AN <[email protected]>
Add three supporting documents for prompt library maintenance:
- PROMPT_LIBRARY_STATUS.md: current health, inventory of all 36
prompts, changes this run, known remaining issues
- STYLE_GUIDE.md: canonical prompt template, naming conventions,
voice/tone guidance, anti-patterns to avoid
- RESEARCH_LOG.md: web research on prompt-engineering best practices
from Anthropic and OpenAI (2025-2026), with library impact analysis
https://claude.ai/code/session_01Nz6FJopPp2YHEscJrRAFNv
- Remove AI generation artifacts (:contentReference) from
docs-code-investigator (4 occurrences)
- Fix require() -> import in event-schema-agent example
(project uses ES modules)
- Clarify nonexistent script reference in const-refactor-agent
(scripts/find-numeric-literals.js must be created, not assumed)
- Close truncated code blocks and add TODO notices in interop-agent
and smoke-agent (both missing Failure Modes and Outputs sections)
No agent mission changes.
https://claude.ai/code/session_01Nz6FJopPp2YHEscJrRAFNv
Update `docs/agents/prompts/weekly-scheduler.md` to include 12 missing agents that were present in the `docs/agents/prompts/weekly` directory but absent from the scheduler list.
This ensures the weekly agent rotation includes all available weekly agents:
- bug-reproducer-agent
- dead-code-agent
- event-schema-agent
- fuzz-agent
- interop-agent
- perf-optimization-agent
- pr-review-agent
- refactor-agent
- smoke-agent
- telemetry-agent
- test-coverage-agent
- weekly-synthesis-agent
Verified that the daily scheduler list is already up-to-date.
Co-authored-by: PR0M3TH3AN <[email protected]>
Add a weekly race condition agent that systematically audits the codebase
for concurrency hazards, timing bugs, and initialization races. The agent
covers relay connection ordering, signer availability, playback fallback
negotiation, cache state consistency, and DOM-ready assumptions.
https://claude.ai/code/session_01AudwR75Y4Bi4WLSYEAJPVW
Add a new daily agent whose job is to keep the daily and weekly scheduler
rosters in sync with the actual prompt files on disk. It scans the prompt
directories, diffs against the roster tables, and applies additions,
removals, or filename corrections as needed.
- New file: docs/agents/prompts/daily/bitvid-scheduler-update-agent.md
- Updated daily-scheduler.md roster (20 -> 21 agents)
https://claude.ai/code/session_01KZQjoJKmPH74AK3QF1pzSq
- Add weekly-scheduler.md with rotation logic for 3 weekly agents
(changelog-agent, frontend-console-debug-agent, perf-deepdive-agent)
- Add separate WEEKLY_AGENT_TASK_LOG.csv to keep weekly and daily
rotations independent
- Mirrors the daily-scheduler.md structure with the same authority
hierarchy, error handling, and log format
https://claude.ai/code/session_017PuKrVuAUbo1seo7jBTbw6
Introduces a structured meta-workflow for AI agents that ensures
safe incremental changes, persistent state across context resets,
and a clear decision trail for multi-agent coordination.
Key additions:
- Work scoping (goal, success criteria, non-goals)
- External notes files (CONTEXT.md, TODO.md, DECISIONS.md, TEST_LOG.md)
- Locate → Implement → Verify → Update notes work loop
- Context recovery procedure for new agent sessions
- Quality bar principles
- Cross-references from CLAUDE.md to the new section
https://claude.ai/code/session_0159eSJrqKvKpgDiwYZ2iGxK