- Updated scripts/agent/debug_frontend.py to be more robust (timestamps, exit codes).
- Verified no frontend console errors on startup.
- Created task logs (started/completed).
Co-authored-by: PR0M3TH3AN <[email protected]>
- Added `npm run test:smoke` documentation to README.md and CONTRIBUTING.md
- Added `npm run audit` documentation to README.md and CONTRIBUTING.md
- Ran `npm run audit` to generate REMEDIATION_REPORT.md
- Created daily agent scheduler logs (started/completed)
Co-authored-by: PR0M3TH3AN <[email protected]>
- Update `CLAUDE.md` to include `FEATURE_TRUSTED_HIDE_CONTROLS` and `FEATURE_IMPROVED_COMMENT_FETCHING`.
- Update `docs/nostr-event-schemas.md` to include detailed schemas for NIP-17 and Gift Wrap kinds (1059, 13, 14, 15, 20001, 20002, 10050).
- Add task logs for docs-alignment-agent execution.
Co-authored-by: PR0M3TH3AN <[email protected]>
Agents were skipping the pre-flight curl/gh check for in-progress work,
causing duplicate task runs. Root causes:
1. Two-document indirection (meta prompt → scheduler) caused the pre-flight
instructions to get lost when the agent opened the second file
2. No proof-of-execution gate — agents could assert "no conflicts" without
actually running the commands
3. curl|jq pipeline silently fails when jq is unavailable
4. "Step 0" labeling felt like skippable preamble
Changes:
- Make the commands the literal first instruction ("run NOW, paste output")
- Use gh CLI as primary (authenticated, no jq needed), curl as fallback
- Require raw terminal output pasted before proceeding (output gate)
- Rename "Step 0" to "PRE-FLIGHT GATE" to signal it's not optional
- Eliminate duplication between meta prompt and scheduler files
- Add explicit "STOP HERE" checkpoint after command execution
- Add skip-ahead clause for agents arriving from meta prompt
https://claude.ai/code/session_01S7jaQb9ctJ4bzqRhEcm28Q
Replace shared CSV files (AGENT_TASK_LOG.csv, WEEKLY_AGENT_TASK_LOG.csv)
with per-entry files in docs/agents/task-logs/{daily,weekly}/. Each log
entry is now a separate file named YYYY-MM-DD_HH-MM-SS_<agent>_<status>.md,
eliminating git merge conflicts and race conditions when multiple agents
run concurrently.
Updated files:
- daily-scheduler.md: rewritten for directory-based log format
- weekly-scheduler.md: rewritten for directory-based log format
- META_PROMPTS.md: updated pre-flight scan and claiming instructions
- AGENTS.md: updated scheduler reference from CSV to directory-based
Migrated all existing CSV entries to individual files in the new
directory structure.
https://claude.ai/code/session_01P62EWUXwupgxPhpnRejUuz
- Move `CONTEXT.md`, `TODO.md`, `DECISIONS.md`, `TEST_LOG.md` to `context/`, `todo/`, `decisions/`, `test_logs/` directories with timestamps.
- Update `AGENTS.md` and `CLAUDE.md` to define the new workflow: agents must read the latest timestamped file and create a new one when updating.
- Update `daily-scheduler.md` and `weekly-scheduler.md` to initialize tasks using the new file structure.
- Update all daily agent prompts to reference the new directory structure.
- This change prevents merge conflicts on persistent state files by treating them as an append-only log of snapshots.
Co-authored-by: PR0M3TH3AN <[email protected]>
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`.
- Adds delegate getters/methods in `ProfileModalController` to maintain backward compatibility for tests.
- 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]>
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]>
- Inserts a `## TASK COMPLETION & SELF-CORRECTION` section into all daily and weekly agent prompts.
- Instructs agents to complete their task and commit upon success, rather than asking for next steps.
- Provides specific negative examples of questions to avoid.
- Places the instruction before `FINAL NOTE` or `BEGIN` markers to ensure visibility.
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