Commit Graph
808 Commits
Author SHA1 Message Date
google-labs-jules[bot]andPR0M3TH3AN 0927372c82 feat(perf): establish baseline and identify async patterns
- Scanned codebase for `setInterval`, `Promise.all`, and other async patterns.
- Generated `reports/performance/hits-2026-02-20.json`.
- Identified potential unbounded concurrency in `src/services/memory`.
- Created daily performance report.
- Updated run artifacts and memory.

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-02-20 19:36:55 +00:00
thePR0M3TH3AN 2b8a0c3d0d update 2026-02-20 12:51:17 -05:00
thePR0M3TH3AN 03b6725cfc Merge pull request #367 from PR0M3TH3AN/agents/daily/load-test-agent-5461809690050295930
Execute daily load-test-agent run
2026-02-20 12:43:19 -05:00
google-labs-jules[bot]andPR0M3TH3AN a9255718cc feat(agent): execute load-test-agent daily run
- Executed load-test-agent in dry-run mode
- Generated load test reports
- Completed memory retrieval and storage workflow
- Verified artifacts and linting
- Published completion lock and task log

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-02-20 17:14:41 +00:00
thePR0M3TH3ANandClaude Sonnet 4.6 a8ee3d39ea fix(dashboard): return timingSafeEqual result instead of discarding it
The unequal-length branch of timingSafeCompare called
crypto.timingSafeEqual(paddedA, paddedB) but did not capture the return
value, unconditionally returning false and leaving the timing-safe
comparison as dead code.

Adds a regression test covering shorter, longer, and exact-match
credential lengths to lock in the correct behaviour.

Co-Authored-By: Claude Sonnet 4.6 <[email protected]>
2026-02-20 11:53:05 -05:00
thePR0M3TH3ANandClaude Sonnet 4.6 a5f08ff082 feat(scheduler): add local time-window guard to prevent within-window re-runs
Adds a cadence-aware time-window check that runs after the Nostr relay lock
check to exclude agents that already ran within the current window (24h daily,
7d weekly). This closes the cross-midnight edge case where the relay's
date-scoped d-tag rolls over but the agent ran minutes ago.

Changes:
- scheduler-utils.mjs: export log-parsing helpers (parseDateValue,
  parseTimestampFromFilename, parseAgentFromFilename, isStrictSchedulerLogFilename,
  parseFrontmatterCreatedAt, parseFrontmatterAgent, parseFrontmatterValue) plus
  CADENCE_WINDOW_MS constant and buildRecentlyRunExclusionSet(). Helpers are
  exported so they can be unit-tested independently. Adds 'node:path' import.
- run-scheduler-cycle.mjs: import the moved helpers from utils (removes ~45 lines
  of duplicate definitions), call buildRecentlyRunExclusionSet after excludedSet
  is built from relay data, merge results, log newly-excluded agents. Adds cycle
  saturation detection: when all roster agents are covered by the time-window
  guard, exit 0 with a clear "Cycle complete" message instead of a failure.
- test/scheduler-time-window.test.mjs: 30 new scenario-first unit tests covering
  SCN-TWG-01..11 (in-window exclusion, out-of-window pass-through, cross-midnight,
  frontmatter precedence, weekly threshold, empty dir, missing dir, deferred
  log passthrough, mixed rosters, anti-cheat for non-log files).

All 30 new tests pass. Existing scheduler-ratchet tests (7) still pass.

Co-Authored-By: Claude Sonnet 4.6 <[email protected]>
2026-02-20 11:05:52 -05:00
thePR0M3TH3ANandClaude Sonnet 4.6 8a9080e7c3 fix(memory): close the content gap so agents can actually write and retrieve learnings
- run-selected-prompt.mjs: set SCHEDULER_MEMORY_FILE env var before spawning each agent so
  store.mjs has a well-known path to read from (memory-updates/<ts>__<agent>.md)
- retrieve.mjs: format memories.md using m.summary + date/tags in readable markdown sections
  instead of raw m.content blobs; agents can now scan injected context at a glance
- store.mjs: remove semantically-empty fallback placeholder events that polluted the store
  and degraded retrieval quality; also fix default cadence 'weekly' -> 'daily' to match retrieve
- scheduler-flow.md: replace vague "write insights" instruction with a concrete three-section
  template (Key findings / Patterns / Warnings) and clarify that $SCHEDULER_MEMORY_FILE is
  set by the scheduler automatically

Co-Authored-By: Claude Sonnet 4.6 <[email protected]>
2026-02-20 10:51:03 -05:00
thePR0M3TH3AN 87d6b3ef0c Merge pull request #366 from PR0M3TH3AN/fix-agent-landing-rendering-6487772667608425328
Fix agent description rendering on landing page
2026-02-20 08:58:33 -05:00
google-labs-jules[bot]andPR0M3TH3AN 566b1af383 fix(landing): verify and ensure agent prompts and modals render correctly
Co-authored-by: PR0M3TH3AN <[email protected]>
2026-02-20 13:33:52 +00:00
google-labs-jules[bot]andPR0M3TH3AN 82e29f3f89 fix(landing): improve agent metadata extraction regex and standardize test-audit-agent header
Co-authored-by: PR0M3TH3AN <[email protected]>
2026-02-20 13:07:23 +00:00
thePR0M3TH3AN 13e8089ab0 Update README.md 2026-02-20 07:53:04 -05:00
thePR0M3TH3AN 206146b78e Merge pull request #365 from PR0M3TH3AN/agents/weekly/prompt-safety-agent-1954565905191419761
feat: Weekly Prompt Safety Audit
2026-02-20 07:48:05 -05:00
thePR0M3TH3AN 9614358017 Merge pull request #364 from PR0M3TH3AN/landing-meta-prompts-fix-5183825928176553704
Fix Scheduler Meta Prompts rendering on landing page
2026-02-20 07:47:42 -05:00
thePR0M3TH3AN 45c0e5bbd7 Merge pull request #363 from PR0M3TH3AN/print-scheduler-summary-6512839814829601974
Print Final Run Summary in Scheduler Cycle
2026-02-20 07:47:07 -05:00
google-labs-jules[bot]andPR0M3TH3AN b23b9e4982 feat: Weekly Prompt Safety Audit
Co-authored-by: PR0M3TH3AN <[email protected]>
2026-02-20 05:10:15 +00:00
google-labs-jules[bot]andPR0M3TH3AN 3d66cd885f Fix meta prompts rendering on landing page
Updated the regex used to parse `META_PROMPTS.md` in `landing/index.html` to be more robust against variations in newline and language identifier formatting. Added error handling to display "Prompt format mismatch" instead of leaving the element in a "Loading..." state if parsing fails. This ensures users can access the scheduler prompts even if minor formatting differences occur.

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-02-20 04:56:22 +00:00
google-labs-jules[bot]andPR0M3TH3AN 9278dadab0 Print final run summary in scheduler cycle and prompts
Co-authored-by: PR0M3TH3AN <[email protected]>
2026-02-20 04:50:26 +00:00
thePR0M3TH3AN f9dd9ea361 Merge pull request #362 from PR0M3TH3AN/feat/diagnostic-utility-12390884464961920296
feat: add diagnostic utility script
2026-02-19 23:50:03 -05:00
google-labs-jules[bot]andPR0M3TH3AN d479519067 feat: add diagnostic utility script
Added features/diagnostic.mjs to help users verify their local TORCH environment.
Includes checks for Node.js version, dependencies, configuration, and connectivity.

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-02-20 04:48:29 +00:00
thePR0M3TH3AN a7a7679223 update 2026-02-19 23:36:01 -05:00
thePR0M3TH3AN 9bb95896e7 Merge pull request #361 from PR0M3TH3AN/opencode-active-4489682856002365014
Enable OpenCode agent and add agent website links
2026-02-19 23:19:18 -05:00
google-labs-jules[bot]andPR0M3TH3AN 6106fd3dea Enable OpenCode agent and add agent website links
- Activated OpenCode agent card in landing page.
- Added OpenCode to dashboard platform colors (using teal).
- Added 'Learn more' links to all agent cards in landing page.
- Updated OpenCode installation prompt in landing page script.
- Added teal color utilities to dashboard/styles.css.

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-02-20 04:18:42 +00:00
thePR0M3TH3AN 78a79faf3f update 2026-02-19 23:15:56 -05:00
thePR0M3TH3AN f5d52bd13c Merge pull request #360 from PR0M3TH3AN/add-dashboard-home-button-16801596229675926990
Add Home button to dashboard linking to landing page
2026-02-19 23:11:21 -05:00
thePR0M3TH3AN 2b706f6085 Merge pull request #359 from PR0M3TH3AN/fix/torch-init-gitignore-13639849350884611583
Ensure torch init adds .gitignore with node_modules
2026-02-19 23:10:56 -05:00
google-labs-jules[bot]andPR0M3TH3AN babdd4af5d Add Home button to dashboard linking to landing page
Co-authored-by: PR0M3TH3AN <[email protected]>
2026-02-20 04:04:28 +00:00
google-labs-jules[bot]andPR0M3TH3AN c36735dbde fix: ensure torch init adds .gitignore with node_modules
Co-authored-by: PR0M3TH3AN <[email protected]>
2026-02-20 04:01:39 +00:00
thePR0M3TH3AN 0831727d02 Merge pull request #358 from PR0M3TH3AN/enhance-landing-hero-animations-3534963304295251671
Enhance Landing Page Hero Animations
2026-02-19 23:01:00 -05:00
google-labs-jules[bot]andPR0M3TH3AN 3cdd204585 feat: enhance landing page hero with animated gradient and background glow
- Updated `.hero h1` with a multi-stop animated gradient background.
- Added `@keyframes textShine` for the text gradient animation.
- Enhanced the background SVG with a `heroGlow` radial gradient and a large animated circle to provide a subtle ambient glow behind the hero section.

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-02-20 04:00:16 +00:00
thePR0M3TH3AN fdf1cf7084 Merge pull request #352 from PR0M3TH3AN/init-output-summary-11038938146603193612
Enhance torch init output with configuration summary and dashboard link
2026-02-19 22:54:52 -05:00
thePR0M3TH3AN a8c9b1a4d9 Merge pull request #357 from PR0M3TH3AN/docs-alignment-script-updates-3776218186763643644
Update Documentation for Scheduler and Lock Management Commands
2026-02-19 22:54:45 -05:00
google-labs-jules[bot]andPR0M3TH3AN 439e08042c docs: update README.md and TORCH.md with scheduler and lock commands
- Added `scheduler:daily` and `scheduler:weekly` usage examples to README.md and TORCH.md.
- Added `lock:complete` and `lock:check:daily` usage examples to README.md and TORCH.md.
- Updated TODO list to reflect completion of documentation alignment.
- Verified script presence and syntax.

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-02-20 03:52:47 +00:00
thePR0M3TH3AN be849ceae8 Merge pull request #356 from PR0M3TH3AN/perf-lexical-search-index-1433868811411746305
⚡ Performance Optimization: Inverted Index for Lexical Search
2026-02-19 22:52:33 -05:00
google-labs-jules[bot]andPR0M3TH3AN 9e6d99eb1e ⚡ optimize lexical search with inverted index
- Implemented LexicalIndex class in src/services/memory/retriever.js.
- Added WeakMap caching for indices based on memory array references.
- Improved memory array stability in src/services/memory/index.js using a storeVersion counter.
- Achieved ~2x speedup for 10k memories and ~9x speedup for 100k memories in benchmarks.
- Maintains compatibility with existing textMatchSimilarity scoring.

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-02-20 03:51:34 +00:00
thePR0M3TH3AN a35286f17d Merge pull request #355 from PR0M3TH3AN/refactor-governance-target-validation-5425533680072569362
🧹 refactor(governance): extract duplicated target validation logic
2026-02-19 22:51:13 -05:00
google-labs-jules[bot]andPR0M3TH3AN cd744982a1 refactor(governance): extract duplicated target validation logic
Extracted duplicated target path resolution and allowlist validation logic
into a shared `resolveAndValidateTarget` helper function in
`src/services/governance/index.js`.

Updated `createProposal`, `validateProposal`, `applyProposal`, and
`rollbackPrompt` to use the new helper, ensuring consistent validation
and path handling across the service.

Added `test/governance-health.test.mjs` to verify validation logic.

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-02-20 03:50:36 +00:00
thePR0M3TH3AN a4ffa537f6 Merge pull request #354 from PR0M3TH3AN/add-exiterror-tests-11501687712657376665
🧪 [testing improvement] Add tests for ExitError class and improve its implementation
2026-02-19 22:50:17 -05:00
google-labs-jules[bot]andPR0M3TH3AN 8d4ae0d616 feat(testing): add unit tests for ExitError and improve class definition
- Added `test/errors.test.mjs` with comprehensive tests for the `ExitError` class.
- Updated `src/errors.mjs` to set `this.name = 'ExitError'` in the constructor for better error reporting.
- Verified that all new tests pass and no regressions were introduced to the existing test suite.

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-02-20 03:49:34 +00:00
thePR0M3TH3AN 04adbd632e Merge pull request #353 from PR0M3TH3AN/fix-governance-command-injection-2246140485437553728
🔒 Fix Command Injection in Governance Service
2026-02-19 22:48:40 -05:00
google-labs-jules[bot]andPR0M3TH3AN 1e4d9720e8 fix(security): prevent command injection in governance service
Replaced `execSync` with `execFileSync` in `src/services/governance/index.js` to avoid shell interpretation of variable-derived inputs (such as agent IDs and file targets). This mitigates command injection risks in `createProposal`, `applyProposal`, and `rollbackPrompt`.

- Used `execFileSync` for all git operations.
- Updated logic to correctly handle `git diff` exit code 1.
- Removed unused `execSync` import.

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-02-20 03:46:36 +00:00
google-labs-jules[bot]andPR0M3TH3AN 08d8407a7d feat(cli): enhance init output with config summary and dashboard link
- Updates `cmdInit` to output the Nostr hashtag, namespace, and a direct dashboard URL upon completion.
- Refactors `createDashboardLinkFile` to return the generated URL for console output.
- Ensures the initialization process provides clear next steps for both human users and agents.

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-02-20 03:39:00 +00:00
thePR0M3TH3AN 5783f995d7 update 2026-02-19 22:22:45 -05:00
thePR0M3TH3AN 1a534fc746 Merge pull request #351 from PR0M3TH3AN/add-qwen-coder-landing-4500751862979356017
Add Qwen Coder to landing page and platform detection
2026-02-19 22:13:20 -05:00
google-labs-jules[bot]andPR0M3TH3AN a61079b505 Add Qwen Coder to landing page and platform detection
- Added Qwen Coder CLI to `landing/index.html` agent selector.
- Updated `src/utils.mjs` to detect `QWEN_API_KEY` or `QWEN_SESSION_ID` as 'qwen' platform.
- Updated `dashboard/app.js` to render Qwen tasks with appropriate badge styling.
- Added tests for Qwen platform detection in `test/utils.test.mjs`.

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-02-20 02:42:08 +00:00
thePR0M3TH3AN 38100ea9ae Merge pull request #350 from PR0M3TH3AN/claude/prompt-versioning-backup-tYH8t
Add prompt versioning, governance workflow, and state backup
2026-02-19 21:38:14 -05:00
thePR0M3TH3AN 1d85aef71f Merge pull request #349 from PR0M3TH3AN/agents/daily/docs-alignment-agent-2026-02-20-3286300579692442075
docs: align README and TORCH.md with package.json scripts
2026-02-19 21:38:05 -05:00
Claude 63ed863e1a docs: surface prompt versioning and backup in README and TORCH.md
- README.md: add "Prompt Governance & Versioning CLI" and "State Backup
  CLI" sections under Usage with full command examples and link to
  docs/prompt-versioning.md
- TORCH.md: add "Prompt Versioning & State Backup" section with
  proposal→apply→rollback cycle, backup command reference, and link to
  docs/prompt-versioning.md

https://claude.ai/code/session_01Ndq2D72Kp77BYo4owD63uY
2026-02-20 02:36:22 +00:00
google-labs-jules[bot]andPR0M3TH3AN 0b9dfa60ce docs: align README and TORCH.md with package.json scripts
- Added `npm run scheduler:daily` to docs
- Added `npm run scheduler:weekly` to docs
- Added `npm run lock:complete` to docs
- Generated task log and artifacts for docs-alignment-agent run

Co-authored-by: PR0M3TH3AN <[email protected]>
2026-02-20 02:35:34 +00:00
Claude 54818a624c chore: add .torch/ to .gitignore (runtime prompt-history and backups)
.torch/ is created at runtime by torch-lock backup and proposal apply.
It holds prompt version archives and state snapshots — operational data
that should not be tracked in source control.

https://claude.ai/code/session_01Ndq2D72Kp77BYo4owD63uY
2026-02-20 02:29:15 +00:00
thePR0M3TH3AN d3ab513295 Merge pull request #348 from PR0M3TH3AN/landing-add-codex-opencode-4896672905093668448
Add Codex CLI and OpenCode CLI to landing page
2026-02-19 21:28:48 -05:00