Merge branch 'main' into agents/daily/perf-agent-run-6774989560835046882

This commit is contained in:
thePR0M3TH3AN authored and GitHub committed 2026-02-25 10:44:17 -05:00
commit dbbacc9b00
158 files changed
+28045 -3284

No files matched your search

@@ -0,0 +1,22 @@
---
agent: torch-garbage-collection-agent
cadence: daily
run-start: 2026-02-25T01:09:35Z
---
# Context
Prompt: src/prompts/daily/torch-garbage-collection-agent.md
## Goal
Clean up stale log files and ephemeral memory updates from the repository root to maintain hygiene.
## Scope
- Files in the repository root matching `*.log`, `*.log.*`, `*.out.log`.
- Files in `memory-updates/` matching `*.md`.
- Only files older than 14 days.
## Constraints
- Must not delete files outside the repository root.
- Must not delete files that do not match the specified patterns.
- Must not delete files younger than 14 days.
- Must verify candidates before deletion.
@@ -0,0 +1,23 @@
---
agent: onboarding-audit-agent
cadence: daily
run-start: 2026-02-23T12:00:00Z
---
# Context — onboarding-audit-agent
## Goal
Ensure fresh developer onboarding works from a clean checkout by validating README onboarding steps, documenting failures with full logs, and landing small docs fixes.
## Scope
- Validate onboarding from a clean environment.
- Execute onboarding commands exactly as documented.
- Capture complete failure logs and root-cause notes.
- Patch README.md/CONTRIBUTING.md if needed.
## Constraints
- Follow the docs first.
- Verify scripts exist.
- No secrets.
- Minimal churn.
- Executed prompt: src/prompts/daily/onboarding-audit-agent.md
@@ -0,0 +1,20 @@
---
agent: perf-agent
cadence: daily
run-start: 2026-02-23T18:18:24Z
---
# Context: Perf Agent Run
## Goal
Daily measurable improvement of app responsiveness by finding and fixing background CPU/network work.
## Scope
- Search for performance patterns.
- Analyze hits.
- Report findings.
- Fix low-hanging fruit (if any).
## Constraints
- Safe, incremental changes.
- Verify work.
@@ -0,0 +1,18 @@
# Context: Onboarding Audit Agent
- Agent: onboarding-audit-agent
- Cadence: daily
- Run Start: 2026-02-24T00:28:14Z
- Prompt: src/prompts/daily/onboarding-audit-agent.md
## Goal
Ensure fresh developer onboarding works from a clean checkout by validating README onboarding steps.
## Scope
- Validating onboarding from a clean environment.
- Executing `npm install`, `npm run build`, `npm test`, `npm run lint`.
- Documenting failures.
## Constraints
- Follow docs first.
- Minimal churn.
@@ -0,0 +1,21 @@
---
agent: perf-agent
cadence: daily
run-start: 2026-02-24T01:10:54Z
---
# Context
Executed prompt: src/prompts/daily/perf-agent.md
## Goal
Daily, measurable improvement of app responsiveness by finding and fixing background CPU/network work that degrades UX.
## Scope
- `src/` directory for performance patterns.
- `dashboard/` for UI responsiveness.
## Constraints
- Never invent files or APIs.
- Keep changes small and incremental.
- Verify changes with tests.
@@ -0,0 +1,13 @@
---
agent: test-coverage-agent
cadence: weekly
run-start: 2026-02-24T06:00:00Z
---
Executed prompt: src/prompts/weekly/test-coverage-agent.md
**Goal:** Improve unit test coverage for `src/lock-utils.mjs`.
**Scope:** `src/lock-utils.mjs` and related test files.
**Constraints:** Do not break existing tests. Mock external dependencies.
@@ -0,0 +1 @@
Not needed
@@ -0,0 +1,18 @@
---
agent: style-agent
cadence: daily
run-start: 2026-02-24T18:18:09Z
---
# Context
**Goal:** Keep code style consistent by running the repo’s configured formatters/linters.
**Scope:**
- Run `npm run format` (eslint --fix)
- Run `npm run lint` (eslint)
- Run `npm run lint:inline-styles`
**Constraints:**
- No refactors, behavior changes, renames, “cleanup”, or stylistic rewrites.
- Only safe auto-fixes.
- Do not bypass policy checks.
@@ -0,0 +1,18 @@
---
agent: todo-triage-agent
cadence: daily
run-start: 2026-02-24T21:04:05Z
---
# Context
Prompt: src/prompts/daily/todo-triage-agent.md
## Goal
Scan codebase for TODO/FIXME/XXX markers and triage them.
## Scope
- Source files
- Docs
## Constraints
- Only fix trivial items.
@@ -0,0 +1,22 @@
---
agent: torch-garbage-collection-agent
cadence: daily
run-start: 2026-02-24T22:17:46Z
---
Prompt: src/prompts/daily/torch-garbage-collection-agent.md
# Context
## Goal
Clean up stale log files and memory updates older than 14 days to keep the repository tidy.
## Scope
- Log files (`*.log`, `*.log.*`, `*.out.log`) in the repository root.
- Memory updates (`memory-updates/*.md`) in the repository root.
- Files older than 14 days.
## Constraints
- Do not delete files outside the repository root.
- Do not delete non-log/non-memory files.
- Do not broaden scope if deletion fails.
@@ -0,0 +1,21 @@
---
agent: audit-agent
cadence: daily
run-start: 2026-02-24T23:22:51Z
---
# Context: Daily Audit Run
**Goal:** Run static audit scripts to identify regressions in file size, innerHTML usage, and lint errors.
**Scope:**
- `check-file-size.mjs`
- `check-innerhtml.mjs`
- `npm run lint`
**Constraints:**
- Do not modify source files.
- Report only.
- Redact secrets.
**Prompt:** src/prompts/daily/audit-agent.md
@@ -0,0 +1,22 @@
---
agent: todo-triage-agent
cadence: daily
run-start: 2026-02-25T00:30:00Z
---
# Context — 2026-02-25T00:30:00Z
**Prompt:** src/prompts/daily/todo-triage-agent.md
## Goal
Scan the codebase for TODO/FIXME/XXX markers, inventory them, and triage them by fixing trivial items or creating issues for larger ones.
## Scope
- Scan `src/` and `dashboard/` directories.
- Ignore `node_modules`, `task-logs`, and `artifacts`.
- Create inventory in `artifacts/todos.txt`.
## Constraints
- Only fix trivial, safe items (< 1 hour, low risk).
- Do not modify sensitive areas.
- Create issues (documented in TODO artifact) for non-trivial items.
@@ -0,0 +1,12 @@
---
agent: audit-agent
cadence: daily
run-start: 2026-02-25T02:31:57Z
---
# Context
- **Goal**: Run daily audit scripts.
- **Scope**: Repository wide.
- **Constraints**: Read-only, no code changes.
- **Prompt**: /app/src/prompts/daily/audit-agent.md
@@ -0,0 +1,7 @@
---
agent: torch-garbage-collection-agent
cadence: daily
run-start: 2026-02-25T01:09:35Z
---
Prompt: src/prompts/daily/torch-garbage-collection-agent.md
not needed
@@ -0,0 +1,13 @@
---
agent: onboarding-audit-agent
cadence: daily
run-start: 2026-02-23T12:00:00Z
---
# Decisions — onboarding-audit-agent
## Decision
No changes to onboarding documentation required.
## Rationale
All documented onboarding steps (npm install, npm run build, npm test, npm run lint) passed successfully on a clean checkout (simulated).
@@ -0,0 +1,9 @@
---
agent: perf-agent
cadence: daily
run-start: 2026-02-23T18:18:24Z
---
# Decisions
- **No Action**: If no critical P0/P1 issues are found, no code changes will be made to preserve stability.
@@ -0,0 +1,12 @@
---
agent: perf-agent
cadence: daily
run-start: 2026-02-24T01:10:54Z
---
# Decisions
Executed prompt: src/prompts/daily/perf-agent.md
## Decision: Debounce renderLocks in dashboard/app.js
**Rationale:** The `renderLocks` function is called synchronously on every WebSocket message. During high traffic or initial load, this can freeze the UI. Using `requestAnimationFrame` and checking `document.hidden` ensures we only render when necessary and efficient.
@@ -0,0 +1 @@
Not needed
@@ -0,0 +1,14 @@
---
agent: todo-triage-agent
cadence: daily
run-start: 2026-02-24T21:04:05Z
---
# Decisions
Prompt: src/prompts/daily/todo-triage-agent.md
## Decision
No changes made.
## Rationale
Codebase is clean of actionable TODO comments in source files.
@@ -0,0 +1,15 @@
---
agent: torch-garbage-collection-agent
cadence: daily
run-start: 2026-02-24T22:17:46Z
---
Prompt: src/prompts/daily/torch-garbage-collection-agent.md
# Decisions
## Decision
No files deleted.
## Rationale
The candidate list generated by `find` was empty, meaning no files older than 14 days matching the patterns were found.
@@ -0,0 +1,12 @@
---
agent: audit-agent
cadence: daily
run-start: 2026-02-24T23:22:51Z
---
# Decisions: Daily Audit Run
**Decision:** Run audit scripts in report mode.
**Rationale:** To identify regressions and track metrics without modifying the codebase.
**Prompt:** src/prompts/daily/audit-agent.md
@@ -0,0 +1,15 @@
---
agent: todo-triage-agent
cadence: daily
run-start: 2026-02-25T00:30:00Z
---
# Decisions (2026-02-25T00:30:00Z)
**Prompt:** src/prompts/daily/todo-triage-agent.md
## Decision
- No changes made to codebase.
## Rationale
- No actionable TODO markers were found in the source code. The grep scan returned references only in documentation files (BACKLOG.md).
@@ -0,0 +1,11 @@
---
agent: audit-agent
cadence: daily
run-start: 2026-02-25T02:31:57Z
---
# Decisions
- **Decision**: Execute audit scripts.
- **Rationale**: Scheduled daily task.
- **Prompt**: /app/src/prompts/daily/audit-agent.md
+1
View File
@@ -0,0 +1 @@
not needed
-1
View File
@@ -61,7 +61,6 @@ function filterActiveLocks(locks) {
return locks.filter((lock) => !lock.expiresAt || lock.expiresAt > now);
}
/**
* Queries relays for active lock events matching the criteria.
* Uses a tiered approach: tries primary relays first, then falls back to others if needed.
+2 -7
View File
@@ -6,8 +6,9 @@ import {
getRelayFallbacks,
getMinActiveRelayPool,
} from './torch-config.mjs';
import { mergeRelayList, secureRandom, withTimeout } from './lock-utils.mjs';
import { defaultHealthManager, buildRelayHealthConfig } from './relay-health-manager.mjs';
import { mergeRelayList, withTimeout, relayListLabel } from './lock-utils.mjs';
import { relayListLabel } from './utils.mjs';
const PUBLISH_ERROR_CODES = {
TIMEOUT: 'publish_timeout',
@@ -100,12 +101,6 @@ function isTransientPublishCategory(category) {
].includes(category);
}
const MAX_RANDOM = 281474976710655; // 2**48 - 1
export function secureRandom() {
return randomInt(0, MAX_RANDOM) / MAX_RANDOM;
}
function calculateBackoffDelayMs(attemptNumber, baseMs, capMs, randomFn = secureRandom) {
const maxDelay = Math.min(capMs, baseMs * (2 ** Math.max(0, attemptNumber - 1)));
return Math.floor(randomFn() * maxDelay);
+19 -16
View File
@@ -3,7 +3,7 @@ import path from 'node:path';
import { randomInt } from 'node:crypto';
import { todayDateStr, getIsoWeekStr } from './utils.mjs';
export { relayListLabel } from './utils.mjs';
export { relayListLabel, mergeRelayList } from './utils.mjs';
/**
* Scans the local log directory to identify agents that have already completed their task
@@ -14,6 +14,24 @@ export { relayListLabel } from './utils.mjs';
* @param {Object} deps - Dependency injection for testing
* @returns {Promise<Set<string>>} - Set of agent names that have completed their task
*/
/**
* Promisified timeout wrapper.
*
* @param {Promise} promise - The promise to wrap.
* @param {number} timeoutMs - Timeout in milliseconds.
* @param {string} timeoutMessage - Error message on timeout.
* @returns {Promise} - The result of the promise or a timeout error.
*/
export function withTimeout(promise, timeoutMs, timeoutMessage) {
let timeoutHandle;
const timeoutPromise = new Promise((_, reject) => {
timeoutHandle = setTimeout(() => reject(new Error(timeoutMessage)), timeoutMs);
});
return Promise.race([promise, timeoutPromise]).finally(() => {
if (timeoutHandle) clearTimeout(timeoutHandle);
});
}
export async function getCompletedAgents(cadence, logDir, deps) {
const { readdir = fs.readdir, getDateStr = todayDateStr, getIsoWeek = getIsoWeekStr } = deps;
const completed = new Set();
@@ -51,21 +69,6 @@ export async function getCompletedAgents(cadence, logDir, deps) {
return completed;
}
export function withTimeout(promise, timeoutMs, timeoutMessage = 'Operation timed out') {
let timer;
const timeoutPromise = new Promise((_, reject) => {
timer = setTimeout(() => reject(new Error(timeoutMessage)), timeoutMs);
});
return Promise.race([
promise.finally(() => clearTimeout(timer)),
timeoutPromise,
]);
}
export function mergeRelayList(primaryRelays, fallbackRelays) {
return [...new Set([...primaryRelays, ...fallbackRelays])];
}
const MAX_RANDOM = 281474976710655; // 2**48 - 1
export function secureRandom() {
+1 -1
View File
@@ -50,4 +50,4 @@
"ui-ux-agent",
"weekly-synthesis-agent"
]
}
}
+1 -1
View File
@@ -4,7 +4,7 @@ import WebSocket from 'ws';
import { finalizeEvent, generateSecretKey, getPublicKey } from 'nostr-tools/pure';
import { getNamespace, getRelays } from './torch-config.mjs';
import { MS_PER_SECOND } from './constants.mjs';
import { withTimeout } from './lock-utils.mjs';
import { withTimeout } from './utils.mjs';
const PROBE_KIND = 27235;
+3
View File
@@ -355,6 +355,9 @@ export async function rollbackPrompt(target, hashOrStrategy = 'latest') {
// Fallback to Git
try {
const commit = hashOrStrategy === 'latest' ? 'HEAD' : hashOrStrategy;
if (commit.startsWith('-')) {
throw new Error(`Invalid commit/strategy: ${commit} (cannot start with '-')`);
}
execFileSync('git', ['checkout', commit, '--', target]);
return { success: true, source: 'git', restored: commit };
} catch (e) {
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
@@ -0,0 +1,10 @@
---
agent: perf-agent
cadence: daily
run-start: 2026-02-23T18:18:24Z
---
# Test Log
**Command:** `grep -rE "setInterval|setTimeout|requestAnimationFrame|requestIdleCallback|Promise\.allSettled|Promise\.all|Promise\.any|Promise\.race|new Worker|Worker\(|postMessage\(|getDmDecryptWorkerQueueSize|decryptDmInWorker|new WebTorrent|WebTorrent|torrent|magnet|torrentHash|magnetValidators|integrationClient\.pool|publishEventToRelays|pool\.list|queueSignEvent|relayManager|authService|hydrateFromStorage|document\.hidden|visibilitychange" src/`
**Result:** Analysis pending.
@@ -0,0 +1,297 @@
# Test Log: Onboarding Audit Agent
- Agent: onboarding-audit-agent
- Cadence: daily
- Run Start: 2026-02-24T00:28:14Z
- Prompt: src/prompts/daily/onboarding-audit-agent.md
## Execution Log
**Command:** `npm install`
```
npm warn deprecated [email protected]: Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting [email protected]
added 155 packages, and audited 156 packages in 3s
38 packages are looking for funding
run `npm fund` for details
4 vulnerabilities (1 moderate, 3 high)
To address all issues, run:
npm audit fix
Run `npm audit` for details.
```
**Result:** Exit Code 0
**Command:** `npm run build`
```
> [email protected] build
> node build.mjs
Generating npm package tarball...
npm notice
npm notice 📦 [email protected]
npm notice Tarball Contents
npm notice 1.1kB LICENSE
npm notice 11.7kB README.md
npm notice 26.0kB TORCH.md
npm notice 1.1kB assets/favicon.svg
npm notice 1.1kB assets/logo.svg
npm notice 90B bin/torch-lock.mjs
npm notice 25.1kB dashboard/app.js
npm notice 870B dashboard/domUtils.js
npm notice 10.3kB dashboard/index.html
npm notice 11.0kB dashboard/styles.css
npm notice 2.0kB migrations/create_memories_table.sql
npm notice 3.5kB package.json
npm notice 3.0kB scripts/check-file-size.mjs
npm notice 3.1kB scripts/check-innerhtml.mjs
npm notice 4.1kB scripts/memory/retrieve.mjs
npm notice 4.3kB scripts/memory/store.mjs
npm notice 2.8kB scripts/test-audit/run-flaky-check.mjs
npm notice 2.2kB scripts/test-audit/run-static-analysis.mjs
npm notice 778B skills/README.md
npm notice 1.4kB skills/torch-basics.md
npm notice 6.2kB src/cli-parser.mjs
npm notice 3.3kB src/cmd-backup.mjs
npm notice 3.6kB src/cmd-check.mjs
npm notice 4.2kB src/cmd-complete.mjs
npm notice 2.9kB src/cmd-list.mjs
npm notice 3.1kB src/cmd-proposal.mjs
npm notice 8.0kB src/cmd-remove.mjs
npm notice 964B src/cmd-rollback.mjs
npm notice 3.7kB src/constants.mjs
npm notice 9.4kB src/dashboard.mjs
npm notice 190B src/errors.mjs
npm notice 15.3kB src/lib.mjs
npm notice 2.9kB src/lock-error-classifier.mjs
npm notice 5.6kB src/lock-ops.mjs
npm notice 16.0kB src/lock-publisher.mjs
npm notice 2.4kB src/lock-utils.mjs
npm notice 26.4kB src/ops.mjs
npm notice 1.9kB src/prompts/daily-scheduler.md
npm notice 15.5kB src/prompts/daily/audit-agent.md
npm notice 10.7kB src/prompts/daily/ci-health-agent.md
npm notice 16.1kB src/prompts/daily/const-refactor-agent.md
npm notice 4.0kB src/prompts/daily/content-audit-agent.md
npm notice 14.0kB src/prompts/daily/decompose-agent.md
npm notice 15.2kB src/prompts/daily/deps-security-agent.md
npm notice 12.1kB src/prompts/daily/design-system-audit-agent.md
npm notice 10.4kB src/prompts/daily/docs-agent.md
npm notice 10.5kB src/prompts/daily/docs-alignment-agent.md
npm notice 12.6kB src/prompts/daily/docs-code-investigator.md
npm notice 4.5kB src/prompts/daily/governance-agent.md
npm notice 14.3kB src/prompts/daily/innerhtml-migration-agent.md
npm notice 11.9kB src/prompts/daily/known-issues-agent.md
npm notice 11.1kB src/prompts/daily/load-test-agent.md
npm notice 5.6kB src/prompts/daily/log-fixer-agent.md
npm notice 10.5kB src/prompts/daily/onboarding-audit-agent.md
npm notice 13.9kB src/prompts/daily/perf-agent.md
npm notice 3.1kB src/prompts/daily/protocol-research-agent.md
npm notice 11.6kB src/prompts/daily/scheduler-update-agent.md
npm notice 7.9kB src/prompts/daily/style-agent.md
npm notice 3.1kB src/prompts/daily/test-audit-agent.md
npm notice 10.9kB src/prompts/daily/todo-triage-agent.md
npm notice 3.8kB src/prompts/daily/torch-garbage-collection-agent.md
npm notice 287B src/prompts/memory/condense_prompt.txt
npm notice 263B src/prompts/memory/prune_prompt.txt
npm notice 324B src/prompts/memory/score_prompt.txt
npm notice 475B src/prompts/memory/summarize_prompt.txt
npm notice 10.6kB src/prompts/META_PROMPTS.md
npm notice 1.3kB src/prompts/roster.json
npm notice 16.5kB src/prompts/scheduler-flow.md
npm notice 2.5kB src/prompts/weekly-scheduler.md
npm notice 10.5kB src/prompts/weekly/bug-reproducer-agent.md
npm notice 6.6kB src/prompts/weekly/builder-agent.md
npm notice 9.3kB src/prompts/weekly/changelog-agent.md
npm notice 13.8kB src/prompts/weekly/dead-code-agent.md
npm notice 3.5kB src/prompts/weekly/feature-proposer-agent.md
npm notice 9.9kB src/prompts/weekly/frontend-console-debug-agent.md
npm notice 11.6kB src/prompts/weekly/fuzz-agent.md
npm notice 12.1kB src/prompts/weekly/perf-deepdive-agent.md
npm notice 11.5kB src/prompts/weekly/perf-optimization-agent.md
npm notice 5.6kB src/prompts/weekly/plan-agent.md
npm notice 3.3kB src/prompts/weekly/pr-review-agent.md
npm notice 4.8kB src/prompts/weekly/prompt-fixer-agent.md
npm notice 5.7kB src/prompts/weekly/prompt-gap-analysis-agent.md
npm notice 5.6kB src/prompts/weekly/prompt-maintenance-agent.md
npm notice 6.5kB src/prompts/weekly/prompt-safety-agent.md
npm notice 5.6kB src/prompts/weekly/proposal-triage-agent.md
npm notice 14.6kB src/prompts/weekly/race-condition-agent.md
npm notice 9.4kB src/prompts/weekly/refactor-agent.md
npm notice 2.9kB src/prompts/weekly/repo-fit-agent.md
npm notice 3.3kB src/prompts/weekly/smoke-agent.md
npm notice 15.3kB src/prompts/weekly/telemetry-agent.md
npm notice 13.3kB src/prompts/weekly/test-coverage-agent.md
npm notice 6.2kB src/prompts/weekly/ui-ux-agent.md
npm notice 10.8kB src/prompts/weekly/weekly-synthesis-agent.md
npm notice 10.4kB src/relay-health-manager.mjs
npm notice 8.8kB src/relay-health.mjs
npm notice 3.9kB src/roster.mjs
npm notice 11.8kB src/services/governance/index.js
npm notice 7.2kB src/services/memory/cache.js
npm notice 4.8kB src/services/memory/embedder.js
npm notice 2.0kB src/services/memory/feature-flags.js
npm notice 5.9kB src/services/memory/formatter.js
npm notice 22.2kB src/services/memory/index.js
npm notice 11.0kB src/services/memory/ingestor.js
npm notice 11.2kB src/services/memory/pruner.js
npm notice 8.4kB src/services/memory/retriever.js
npm notice 9.3kB src/services/memory/scheduler.js
npm notice 5.6kB src/services/memory/schema.js
npm notice 5.0kB src/services/memory/summarizer.js
npm notice 10.1kB src/torch-config.mjs
npm notice 2.2kB src/utils.mjs
npm notice 2.7kB torch-config.example.json
npm notice Tarball Details
npm notice name: torch-lock
npm notice version: 0.1.0
npm notice filename: torch-lock-0.1.0.tgz
npm notice package size: 218.9 kB
npm notice unpacked size: 841.3 kB
npm notice shasum: 107a5bf459b3c214d30190058455558e5136f94b
npm notice integrity: sha512-K9IdugSD+kC4p(omitted)bojK4VAU1xz7g==
npm notice total files: 111
npm notice
torch-lock-0.1.0.tgz
Moved torch-lock-0.1.0.tgz to dist/
Build complete! Output directory: dist/
```
**Result:** Exit Code 0
**Command:** `npm test`
```
> [email protected] test
> npm run validate:scheduler && npm run test:integration:e2e && node --test --test-timeout=30000 test/*.test.mjs test/*.test.js
> [email protected] validate:scheduler
> node scripts/validate-scheduler-roster.mjs && node scripts/validate-prompt-contract.mjs && node scripts/validate-scheduler-flow-parity.mjs && npm run validate:scheduler-failure-schema
Scheduler tables, roster, and prompt filenames are in sync.
Prompt contract validated for all daily/weekly prompts.
Scheduler flow parity validated for prompts and scheduler implementation.
> [email protected] validate:scheduler-failure-schema
> node --test test/scheduler-lock-failure-schema.contract.test.mjs
TAP version 13
# Subtest: scheduler lock backend failure artifact matches required frontmatter schema
ok 1 - scheduler lock backend failure artifact matches required frontmatter schema
---
duration_ms: 143.606388
type: 'test'
...
# Subtest: schema contract catches missing required lock-backend field
ok 2 - schema contract catches missing required lock-backend field
---
duration_ms: 2.131142
type: 'test'
...
# Subtest: schema contract catches misnamed lock-backend key
ok 3 - schema contract catches misnamed lock-backend key
---
duration_ms: 0.585991
type: 'test'
...
1..3
# tests 3
# suites 0
# pass 3
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 232.751907
> [email protected] test:integration:e2e
> node --test test/scheduler-preflight-lock.e2e.test.mjs
TAP version 13
# Subtest: lock preflight e2e: successful lock writes completed status snapshot
not ok 1 - lock preflight e2e: successful lock writes completed status snapshot
---
duration_ms: 470.884913
type: 'test'
location: '/app/test/scheduler-preflight-lock.e2e.test.mjs:135:1'
failureType: 'testCodeFailure'
error: |-
Expected values to be strictly deep-equal:
+ actual - expected
{
agent: 'agent-a',
cadence: 'daily',
+ platform: 'linux',
- platform: 'jules',
status: 'completed'
}
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected:
cadence: 'daily'
agent: 'agent-a'
status: 'completed'
platform: 'jules'
actual:
cadence: 'daily'
agent: 'agent-a'
status: 'completed'
platform: 'linux'
operator: 'deepStrictEqual'
stack: |-
TestContext.<anonymous> (file:///app/test/scheduler-preflight-lock.e2e.test.mjs:145:10)
async Test.run (node:internal/test_runner/test:1054:7)
async startSubtestAfterBootstrap (node:internal/test_runner/harness:296:3)
...
# Subtest: lock preflight e2e: exit code 2 quorum failure persists failed backend status and prompt-not-started marker
ok 2 - lock preflight e2e: exit code 2 quorum failure persists failed backend status and prompt-not-started marker
---
duration_ms: 103.183704
type: 'test'
...
# Subtest: lock preflight e2e: non-lock failure exits failed without prompt parse/schema classification
ok 3 - lock preflight e2e: non-lock failure exits failed without prompt parse/schema classification
---
duration_ms: 99.586401
type: 'test'
...
1..3
# tests 3
# suites 0
# pass 2
# fail 1
# cancelled 0
# skipped 0
# todo 0
# duration_ms 759.119664
```
**Result:** Exit Code 1
**Command:** `npm run lint`
```
> [email protected] lint
> eslint .
```
**Result:** Exit Code 0
## Failure Analysis
Active Known Issue: KNOWN-ISSUE-scheduler-preflight-platform
Linked Issue: [KNOWN-ISSUE-scheduler-preflight-platform]
@@ -0,0 +1,13 @@
---
agent: perf-agent
cadence: daily
run-start: 2026-02-24T01:10:54Z
---
# Test Log
Executed prompt: src/prompts/daily/perf-agent.md
## Search Patterns
**Command:** `grep -rE 'setInterval|Promise.all' src/`
**Result:** (Will be populated in next steps)
@@ -0,0 +1,14 @@
---
agent: test-coverage-agent
cadence: weekly
run-start: 2026-02-24T06:00:00Z
---
**Command:** npm run test:unit:lock-backend
**Result:** Passed
**Command:** node --test test/lock-utils.test.mjs
**Result:** Passed
**Command:** npm run lint
**Result:** Passed
@@ -0,0 +1,17 @@
# Test Log for Scheduler Update Agent
**Date:** 2026-02-24
**Agent:** scheduler-update-agent
**Cadence:** daily
## Verification Results
### Roster Check
- Daily roster matches prompt directory: YES
- Weekly roster matches prompt directory: YES
### Lint Check
- `npm run lint`: PASSED
## Changes applied
- None. Rosters are already in sync.
@@ -0,0 +1,11 @@
---
agent: style-agent
cadence: daily
run-start: 2026-02-24T18:18:09Z
---
# Test Log
**Command:** `npm run format && npm run lint && npm run lint:inline-styles`
**Result:**
(Commands executed successfully. No output means no errors.)
@@ -0,0 +1,12 @@
---
agent: todo-triage-agent
cadence: daily
run-start: 2026-02-24T21:04:05Z
---
# Test Log
Prompt: src/prompts/daily/todo-triage-agent.md
**Command:** None
**Result:** No code changes made.
@@ -0,0 +1,19 @@
---
agent: torch-garbage-collection-agent
cadence: daily
run-start: 2026-02-24T22:17:46Z
---
Prompt: src/prompts/daily/torch-garbage-collection-agent.md
# Test Log
**Command:** `find . -type f \( -name "*.log" -o -name "*.log.*" -o -name "*.out.log" -o -path "./memory-updates/*.md" \) -mtime +14 | sort`
**Result:**
(empty output) - No stale files found.
**Command:** `npm run lint`
**Result:**
Passed (exit code 0).
@@ -0,0 +1,67 @@
---
agent: audit-agent
cadence: daily
run-start: 2026-02-24T23:22:51Z
---
# Test Log: Daily Audit Run
**Prompt:** src/prompts/daily/audit-agent.md
## Command: check-file-size
**Command:** `node scripts/check-file-size.mjs --report`
**Result:**
```
README.md: 302 lines (excess: 2)
TORCH.md: 593 lines (excess: 293)
dashboard/app.js: 835 lines (excess: 535)
dashboard/styles.css: 372 lines (excess: 72)
docs/proposals/node-based-prompt-editor.md: 307 lines (excess: 7)
docs/proposals/plan-agent-architecture.md: 543 lines (excess: 243)
landing/index.html: 1567 lines (excess: 1267)
perf/constants-refactor/candidates.json: 1668 lines (excess: 1368)
reports/test-audit/flakiness-matrix.json: 766 lines (excess: 466)
scripts/agent/load-test.mjs: 641 lines (excess: 341)
scripts/agent/run-scheduler-cycle.mjs: 1355 lines (excess: 1055)
scripts/agent/scheduler-utils.mjs: 322 lines (excess: 22)
scripts/agent/verify-run-artifacts.mjs: 375 lines (excess: 75)
src/lib.mjs: 436 lines (excess: 136)
src/lock-publisher.mjs: 440 lines (excess: 140)
src/ops.mjs: 717 lines (excess: 417)
src/services/governance/index.js: 364 lines (excess: 64)
src/services/memory/index.js: 566 lines (excess: 266)
src/services/memory/pruner.js: 320 lines (excess: 20)
src/services/memory/scheduler.js: 318 lines (excess: 18)
src/torch-config.mjs: 312 lines (excess: 12)
test/governance.test.mjs: 375 lines (excess: 75)
test/lib.test.mjs: 434 lines (excess: 134)
test/lock-ops.test.mjs: 433 lines (excess: 133)
test/memory-formatter.test.mjs: 441 lines (excess: 141)
test/run-scheduler-cycle-memory-policy.test.mjs: 724 lines (excess: 424)
test/scheduler-time-window.test.mjs: 311 lines (excess: 11)
```
## Command: check-innerhtml
**Command:** `node scripts/check-innerhtml.mjs --report`
**Result:**
```
dashboard/app.js: 1 assignments
landing/index.html: 1 assignments
Total assignments: 2
```
## Command: lint
**Command:** `npm run lint`
**Result:**
```
> [email protected] lint
> eslint .
```
@@ -0,0 +1,14 @@
---
agent: todo-triage-agent
cadence: daily
run-start: 2026-02-25T00:30:00Z
---
# Test Logs (2026-02-25T00:30:00Z)
**Prompt:** src/prompts/daily/todo-triage-agent.md
## Test Log
**Command:** None
**Result:** None (No changes to test)
@@ -0,0 +1,56 @@
---
agent: audit-agent
cadence: daily
run-start: 2026-02-25T02:31:57Z
---
# Test Log
Prompt: /app/src/prompts/daily/audit-agent.md
- Command: node scripts/check-file-size.mjs --report
- Result:
```
README.md: 302 lines (excess: 2)
TORCH.md: 593 lines (excess: 293)
dashboard/app.js: 835 lines (excess: 535)
dashboard/styles.css: 372 lines (excess: 72)
docs/proposals/node-based-prompt-editor.md: 307 lines (excess: 7)
docs/proposals/plan-agent-architecture.md: 543 lines (excess: 243)
landing/index.html: 1567 lines (excess: 1267)
perf/constants-refactor/candidates.json: 1668 lines (excess: 1368)
reports/test-audit/flakiness-matrix.json: 766 lines (excess: 466)
scripts/agent/load-test.mjs: 641 lines (excess: 341)
scripts/agent/run-scheduler-cycle.mjs: 1355 lines (excess: 1055)
scripts/agent/scheduler-utils.mjs: 322 lines (excess: 22)
scripts/agent/verify-run-artifacts.mjs: 375 lines (excess: 75)
src/lib.mjs: 436 lines (excess: 136)
src/lock-publisher.mjs: 440 lines (excess: 140)
src/ops.mjs: 717 lines (excess: 417)
src/services/governance/index.js: 364 lines (excess: 64)
src/services/memory/index.js: 566 lines (excess: 266)
src/services/memory/pruner.js: 320 lines (excess: 20)
src/serv... (truncated)
```
Exit Code: 0
- Command: node scripts/check-innerhtml.mjs --report
- Result:
```
dashboard/app.js: 1 assignments
landing/index.html: 1 assignments
Total assignments: 2
... (truncated)
```
Exit Code: 0
- Command: npm run lint
- Result:
```
> [email protected] lint
> eslint .
... (truncated)
```
Exit Code: 0
@@ -0,0 +1,7 @@
---
agent: torch-garbage-collection-agent
cadence: daily
run-start: 2026-02-25T01:09:35Z
---
Prompt: src/prompts/daily/torch-garbage-collection-agent.md
not needed
+1
View File
@@ -0,0 +1 @@
not needed
+13
View File
@@ -0,0 +1,13 @@
---
agent: onboarding-audit-agent
cadence: daily
run-start: 2026-02-23T12:00:00Z
---
# Todo — onboarding-audit-agent
## Pending
- None
## Completed
- Validated onboarding from clean checkout.
+11
View File
@@ -0,0 +1,11 @@
---
agent: perf-agent
cadence: daily
run-start: 2026-02-23T18:18:24Z
---
# Todo
- [ ] Search for perf patterns
- [ ] Generate report
- [ ] Fix identified issues
+18
View File
@@ -0,0 +1,18 @@
---
agent: perf-agent
cadence: daily
run-start: 2026-02-24T01:10:54Z
---
# Todo
Executed prompt: src/prompts/daily/perf-agent.md
## Pending
- [ ] Run search patterns for performance issues.
- [ ] Analyze `dashboard/app.js` for synchronous rendering issues.
- [ ] Fix `renderLocks` in `dashboard/app.js` to use `requestAnimationFrame` and visibility check.
- [ ] Generate performance report.
## Completed
- [x] Create artifacts.
+1
View File
@@ -0,0 +1 @@
Not needed
+11
View File
@@ -0,0 +1,11 @@
---
agent: todo-triage-agent
cadence: daily
run-start: 2026-02-24T21:04:05Z
---
# TODOs
Prompt: src/prompts/daily/todo-triage-agent.md
## Completed Tasks
- [x] Scan codebase (found 0 actionable code TODOs)
+19
View File
@@ -0,0 +1,19 @@
---
agent: torch-garbage-collection-agent
cadence: daily
run-start: 2026-02-24T22:17:46Z
---
Prompt: src/prompts/daily/torch-garbage-collection-agent.md
# Todo
- [x] Verify environment.
- [x] Generate candidate list.
- [x] Validate candidate list.
- [x] Delete stale files (if any).
- [x] Verify deletion.
- [x] Report results.
## Completed
- All tasks verified and completed.
+16
View File
@@ -0,0 +1,16 @@
---
agent: audit-agent
cadence: daily
run-start: 2026-02-24T23:22:51Z
---
# Todo: Daily Audit Run
- [ ] Create `reports/audit/` directory.
- [ ] Run `node scripts/check-file-size.mjs --report`.
- [ ] Run `node scripts/check-innerhtml.mjs --report`.
- [ ] Run `npm run lint`.
- [ ] Parse logs and generate report.
- [ ] Verify logs and report.
**Prompt:** src/prompts/daily/audit-agent.md
+16
View File
@@ -0,0 +1,16 @@
---
agent: todo-triage-agent
cadence: daily
run-start: 2026-02-25T00:30:00Z
---
# TODO (2026-02-25T00:30:00Z)
**Prompt:** src/prompts/daily/todo-triage-agent.md
## Completed
- [x] Scan codebase for TODO/FIXME/XXX markers.
- [x] Triage findings (none found in source code).
## Pending
- No actionable TODO markers found in source code.
+11
View File
@@ -0,0 +1,11 @@
---
agent: audit-agent
cadence: daily
run-start: 2026-02-25T02:31:57Z
---
# Todo
- [x] Run audit scripts
- [ ] Review audit report (Pending)
- **Prompt**: /app/src/prompts/daily/audit-agent.md