AIOSAI and Claude Opus 4.6
0c290a95d1
fix(trigger): DPLAN-0112 Option C — strip dispatch from error_logged, route through Medic v2
...
error_logged.py handler stripped to monitor-only (log event, no email/dispatch).
Centralized watcher (watchers/log_watcher.py) now calls registry_report() +
fires error_detected for ERROR-level lines, routing through full Medic v2
pipeline (count threshold, circuit breaker, fingerprint backoff). Falls back
to error_logged (monitor-only) if registry unavailable. 370 tests passing.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-10 14:28:11 -07:00
AIOSAI and @devpulse
64c74a5a2f
feat(system): S86: docs accuracy — HERALD S83-S86 milestones, STATUS counts, demo/devpulse.py fixes
...
Co-Authored-By: @devpulse <devpulse@aipass>
2026-04-10 14:19:38 -07:00
AIOSAI and @devpulse
16b33a6d36
feat(system): S86: APLAN fix sweep — 11 CRITICALs resolved, 35+ BUGs fixed, catch-all loggers, README update
...
Co-Authored-By: @devpulse <devpulse@aipass>
2026-04-10 14:06:52 -07:00
AIOSAI and @flow
119aaea9de
feat(flow): feat(flow): S84 multi-type support — fix FPLAN-only hardcoding in dashboards, aggregate, restore, append, get_closed, lock race
...
Co-Authored-By: @flow <flow@aipass>
2026-04-10 13:55:02 -07:00
AIOSAI and Claude Opus 4.6
0c9a57f912
feat(system): S85: Trigger self-healing live + drone error handler + watchdog v1.1 snapshot + STATUS
...
Fix 6 bugs from DPLAN-0111 audit + cleanup:
- Bug #3 : memory_threshold_exceeded.py handler→modules import path
- Bug #5 : startup catch-up fires error_detected (Medic v2) not error_logged
- Bug #7 : circuit_breaker_record_error at detection time, not dispatch time
- Bug #8 : add encoding=utf-8 to 5 open() calls missing it
- Bug #9 : core.py _fire_to_handlers copies data dict before mutation
- Cleanup: local prompt 12→14 events, remove stale branch prefixes
(backup, The_Commons, aipass_os, aipass_business), add spawn/devpulse
370 tests passing.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-10 13:54:29 -07:00
AIOSAI and @devpulse
f564996a8f
feat(system): S85: Trigger self-healing live + drone error handler + watchdog v1.1 snapshot + STATUS
...
Co-Authored-By: @devpulse <devpulse@aipass>
2026-04-10 13:19:06 -07:00
AIOSAI and Claude Opus 4.6
5e119c293b
fix(trigger): fire error_detected event on every occurrence, not just count 1 and 2
...
report_error() and log_watcher primary path both had a gate that only fired
error_detected at count==1 (new) and count==2 (exact match). After count
passed 2, the event never fired again, so the handler's backoff logic never
got a chance to re-dispatch. Fix: always fire the event and let the
error_detected handler's Medic v2 gating (circuit breaker, backoff, rate
limiting) decide. 370 tests passing.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-10 12:53:49 -07:00
AIOSAI and Claude Opus 4.6
30cb50b2e0
fix(trigger): remove dedup gate that blocked error count from reaching dispatch threshold
...
The fallback path in log_watcher._process_log_line() used _is_duplicate_error()
to skip repeated errors entirely. This prevented registry count from incrementing
past 1, so dispatch (which requires count>=2) never fired. Fix: retry lazy
registry import in fallback path; if truly unavailable, track count locally
and fire event with count so error_detected handler can apply threshold.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-10 12:35:33 -07:00
AIOSAI and Claude Opus 4.6
c8d299ec8d
feat(trigger): add wake_branch() to error dispatch for autonomous handling
...
After delivering error notification email, now calls wake_branch() to spawn
an agent in the target branch immediately. Changes reply_to from @trigger
to @devpulse so resolution reports go to devpulse. 370 tests passing.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-10 12:12:23 -07:00
AIOSAI and @devpulse
600dfbccd4
feat(system): S85: Drone git fix/sync/smart-sync — merge on divergence instead of rebase + STATUS update
...
Co-Authored-By: @devpulse <devpulse@aipass>
2026-04-10 10:53:49 -07:00
AIPass and @devpulse
040611d098
feat(system): S85: Restore api branch + gitleaks config (merge sync) ( #228 )
...
* feat(system): SECURITY: gitleaks config + pre-commit for API key leak prevention
Co-Authored-By: @devpulse <devpulse@aipass>
* feat(system): S84: Restore api branch to repo — normal branch, gitleaks protection, no real keys outside .secrets
Co-Authored-By: @devpulse <devpulse@aipass>
---------
Co-authored-by: @devpulse <devpulse@aipass>
2026-04-10 10:22:28 -07:00
AIPass and @devpulse
2918960dd1
feat(system): SECURITY: Remove api/ from public repo — key handling test patterns ( #223 )
...
Co-authored-by: @devpulse <devpulse@aipass>
2026-04-10 03:43:38 -07:00
AIPass
6db9b11f6a
Merge pull request #221 from AIOSAI/system/devpulse-s84-drone-bug-fixes-version-dead-imports-interacti
...
feat(system): S84: drone BUG fixes (version, dead imports, interactive constants) + spawn BUG fixes (passport path, hash length)
2026-04-10 03:28:59 -07:00
AIPass
e68496bd40
Merge pull request #220 from AIOSAI/fix/api-s84-security-fixes
...
fix(api): S84 CRITICAL security fixes
2026-04-10 03:28:49 -07:00
AIPass
b6ac45ca57
Merge pull request #219 from AIOSAI/system/devpulse-s84-devpulse-stale-cleanup-plugins-readme-daemon-r
...
feat(system): S84: devpulse stale cleanup — plugins README daemon ref removed
2026-04-10 03:28:39 -07:00
AIPass
ca57f9dd34
Merge pull request #218 from AIOSAI/system/devpulse-s84-ground-truth-corrections-tests-3500-prs-185-de
...
feat(system): S84: Ground truth corrections (tests 3500+, PRs 185+) + devpulse README 15→11 + local prompt fixes
2026-04-10 03:28:29 -07:00
AIPass
9676b8e58e
Merge pull request #217 from AIOSAI/system/devpulse-s84-critical-fixes-memory-pathsecurity-aimail-lock
...
feat(system): S84: CRITICAL fixes — memory (path+security), ai_mail (locking), prax (thread safety), global prompt patrick-file rule
2026-04-10 03:28:17 -07:00
AIOSAI and @devpulse
5700c21797
feat(system): S84: drone BUG fixes (version, dead imports, interactive constants) + spawn BUG fixes (passport path, hash length)
...
Co-Authored-By: @devpulse <devpulse@aipass>
2026-04-10 02:15:38 -07:00
AIOSAI and @api
2fdbf62568
fix(api): S84 CRITICAL security fixes — credential exposure, file permissions, validation alignment
...
3 CRITICAL security fixes: (1) get_cache_stats() no longer exposes raw API keys, (2) .env created with 0o600 perms + dir with 0o700, (3) google_creds.json same restricted permissions. 3 BUG fixes: validation rules aligned between keys.py and provider.py, cleanup return type (0 is success not failure), show_stats() now aggregates across all callers vs show_session() for current session. 290/290 tests pass, seedgo 99%.
Co-Authored-By: @api <api@aipass>
2026-04-10 02:04:56 -07:00
AIOSAI and @devpulse
576304dea3
feat(system): S84: devpulse stale cleanup — plugins README daemon ref removed
...
Co-Authored-By: @devpulse <devpulse@aipass>
2026-04-10 01:55:43 -07:00
AIOSAI and @devpulse
a99988d99c
feat(system): S84: Ground truth corrections (tests 3500+, PRs 185+) + devpulse README 15→11 + local prompt fixes
...
Co-Authored-By: @devpulse <devpulse@aipass>
2026-04-10 01:52:25 -07:00
AIOSAI and @devpulse
d4aa8330dc
feat(system): S84: CRITICAL fixes — memory (path+security), ai_mail (locking), prax (thread safety), global prompt patrick-file rule
...
Co-Authored-By: @devpulse <devpulse@aipass>
2026-04-10 01:47:59 -07:00
AIOSAI and @flow
0baa3a01a7
feat(flow): feat(flow): S84 fix FPLAN-only hardcoding — support all plan type prefixes
...
Co-Authored-By: @flow <flow@aipass>
2026-04-10 01:47:49 -07:00
AIOSAI and Claude Opus 4.6
538d3cb7e9
fix(trigger): atomic JSON writes to prevent mid-write corruption
...
All 11 JSON write locations across 7 files now use write-to-tmp + os.replace
pattern via shared atomic_write_json() in config.py. Prevents file corruption
if the process crashes mid-write. Updated 8 test files to provide the real
atomic_write_json on mocked config modules. 370 tests passing.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-10 01:32:52 -07:00
AIOSAI and @flow
083bdceec0
feat(flow): feat(flow): S84 fix FPLAN-only hardcoding — support all plan type prefixes
...
Co-Authored-By: @flow <flow@aipass>
2026-04-10 01:20:18 -07:00
AIOSAI and @devpulse
0536c55f04
feat(devpulse): API branch reinstate.
...
Co-Authored-By: @devpulse <devpulse@aipass>
2026-04-10 00:40:01 -07:00
AIOSAI and @devpulse
316345a130
feat(devpulse): API branch reinstate.
...
Co-Authored-By: @devpulse <devpulse@aipass>
2026-04-10 00:39:01 -07:00
AIOSAI and @devpulse
0d4541db06
feat(system): S83: API reinstated (11 agents), hook-sounds plugin, all 11 APLANs updated with adversarial audit findings
...
Co-Authored-By: @devpulse <devpulse@aipass>
2026-04-09 23:53:39 -07:00
AIPass and @devpulse
e42f4ddeaf
feat(system): feat(system): S82: all branch audit fixes + prax 100% + drone backup removed + seedgo --help + ai_mail cascade fix + memory rollover + spawn template_owners + flow fixes + Medic investigation ( #210 )
...
* feat(system): feat(system): S82: core 10 cleanup — AGENTS/GEMINI prompts, STATUS.local, sandbox + vision docs, branch fixes
Co-Authored-By: @devpulse <devpulse@aipass>
* feat(system): feat(system): S82: all branch audit fixes + prax 100% + drone backup removed + seedgo --help + ai_mail cascade fix + memory rollover + spawn template_owners + flow fixes + Medic investigation
Co-Authored-By: @devpulse <devpulse@aipass>
---------
Co-authored-by: @devpulse <devpulse@aipass>
2026-04-09 21:57:57 -07:00
AIPass and @devpulse
8471c4c732
feat(system): feat(system): S82: core 10 split — remove daemon/commons/skills, README 10 agents, Herald updated, spawn CWD-aware sync ( #207 )
...
Co-authored-by: @devpulse <devpulse@aipass>
2026-04-09 18:34:13 -07:00
AIPass and @devpulse
7974cf6174
feat(system): feat(system): S81: aipass init v2 — real templates, spawn routing, README Quick Start ( #206 )
...
Co-authored-by: @devpulse <devpulse@aipass>
2026-04-09 18:15:36 -07:00
AIOSAI and @devpulse
f92e4a06ca
feat(system): S81: aipass init v2 — real templates, spawn routing, README Quick Start
...
Co-Authored-By: @devpulse <devpulse@aipass>
2026-04-08 23:17:21 -07:00
AIOSAI and @devpulse
1252bf5b9d
feat(system): S80: CLI init double-prefix fix + watchdog auto-start prompt
...
Co-Authored-By: @devpulse <devpulse@aipass>
2026-04-08 21:38:19 -07:00
AIOSAI and @devpulse
9b5b7f1cc8
feat(system): S80: 14-branch state audit + README Round 7 (flow/memory lifecycle, transparency) + dist/ gitignore
...
Co-Authored-By: @devpulse <devpulse@aipass>
2026-04-08 01:32:40 -07:00
AIOSAI and @devpulse
4957447146
feat(system): S79: README overhaul — single-agent-first narrative, anti-chaos mechanisms, breadcrumb architecture, grouped agent table, Codex CLI flag fix, memory central_writer path bug fix
...
Co-Authored-By: @devpulse <devpulse@aipass>
2026-04-07 00:58:58 -07:00
AIOSAI and @devpulse
a6e47759fc
feat(system): 📝 docs(aipass): add .gitignore guidance to global prompt, update system status with latest sync and
...
milestones
Co-Authored-By: @devpulse <devpulse@aipass>
2026-04-06 22:27:48 -07:00
AIOSAI and @devpulse
c17d2a1575
feat(system): feat(system): DPLAN-0104 external project infrastructure — seedgo CWD-first registry, drone module routing fallback, spawn external project agent creation, devpulse branch prompt update
...
Co-Authored-By: @devpulse <devpulse@aipass>
2026-04-06 19:41:42 -07:00
AIOSAI and @devpulse
289c0df5ff
feat(system): Nav links across 15 branch READMEs, CONTRIBUTING.md, devpulse branch prompt update
...
Co-Authored-By: @devpulse <devpulse@aipass>
2026-04-06 14:52:06 -07:00
AIPass and @devpulse
3b4126b0bb
feat(system): Issue templates: simplified bug report + new feedback form ( #196 )
...
Co-authored-by: @devpulse <devpulse@aipass>
2026-04-06 11:37:39 -07:00
AIPass and @devpulse
65db0d96a6
feat(system): Cross-platform support docs, README accuracy audit, CLI autonomy research ( #195 )
...
Co-authored-by: @devpulse <devpulse@aipass>
2026-04-06 00:02:34 -07:00
AIPass and @devpulse
ac7b04e11d
feat(system): AGENTS.md/GEMINI.md startup instructions + prax Codex branch detection from CWD ( #192 )
...
Co-authored-by: @devpulse <devpulse@aipass>
2026-04-05 22:55:35 -07:00
AIOSAI and @devpulse
d5eb0dad3d
feat(system): Prax: Codex+Gemini log adapters, model tags in monitor, inotify errno-specific messages
...
Co-Authored-By: @devpulse <devpulse@aipass>
2026-04-05 22:19:11 -07:00
AIPass and Claude Opus 4.6
867dad0997
feat(system): install hardening + multi-CLI Docker + legacy path cleanup ( #188 )
...
Remove hardcoded /home/patrick/ paths from 8 files, remove hooks from
repo-level settings.json (setup.sh generates these), fix memory_bank→memory
rename, add Dockerfile.multi-cli for Codex+Gemini testing, clean legacy
/home/aipass/ references from EXTRACTION_NOTE files and seedgo standards.
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-05 16:32:21 -07:00
AIPass and @devpulse
38026271ef
feat(system): add S73 test coverage files for 12 branches ( #184 )
...
* feat(system): feat(system): FPLAN-0164 dispatch safety net + morning briefing timeout fix
Co-Authored-By: @devpulse <devpulse@aipass>
* feat(system): fix(drone+backup): resolver BranchNotFoundError handling + backup snapshot quick-check
Co-Authored-By: @devpulse <devpulse@aipass>
* feat(system): fix(ai_mail): test fix for JSONL-based startup detection in dispatch_monitor
Co-Authored-By: @devpulse <devpulse@aipass>
* feat(system): feat(daemon): expand test coverage from 12% — 74 new tests for scheduler_cron and actions
Co-Authored-By: @devpulse <devpulse@aipass>
* feat(system): S73 night shift: test coverage push to 100% + seedgo test depth fixes
Co-Authored-By: @devpulse <devpulse@aipass>
* feat(system): README overhaul + HERALD update + S73 test files
Co-Authored-By: @devpulse <devpulse@aipass>
* feat(system): S73 night shift: 51 new test files across 12 branches
Co-Authored-By: @devpulse <devpulse@aipass>
---------
Co-authored-by: @devpulse <devpulse@aipass>
2026-04-05 11:56:18 -07:00
AIPass and @devpulse
6194c751dc
feat(system): README overhaul + HERALD update + S73 test files ( #182 )
...
* feat(system): feat(system): FPLAN-0164 dispatch safety net + morning briefing timeout fix
Co-Authored-By: @devpulse <devpulse@aipass>
* feat(system): fix(drone+backup): resolver BranchNotFoundError handling + backup snapshot quick-check
Co-Authored-By: @devpulse <devpulse@aipass>
* feat(system): fix(ai_mail): test fix for JSONL-based startup detection in dispatch_monitor
Co-Authored-By: @devpulse <devpulse@aipass>
* feat(system): feat(daemon): expand test coverage from 12% — 74 new tests for scheduler_cron and actions
Co-Authored-By: @devpulse <devpulse@aipass>
* feat(system): S73 night shift: test coverage push to 100% + seedgo test depth fixes
Co-Authored-By: @devpulse <devpulse@aipass>
* feat(system): README overhaul + HERALD update + S73 test files
Co-Authored-By: @devpulse <devpulse@aipass>
---------
Co-authored-by: @devpulse <devpulse@aipass>
2026-04-05 11:36:21 -07:00
AIPass and @devpulse
eacf65ae6c
feat(system): S71: memory README date, backup conftest fixture, morning_briefing tool ( #174 )
...
Co-authored-by: @devpulse <devpulse@aipass>
2026-04-02 02:19:10 -07:00
AIPass and @devpulse
c1f69c51c5
feat(system): S71: fix prax monitoring filter case-sensitivity, STATUS sync ( #173 )
...
Co-authored-by: @devpulse <devpulse@aipass>
2026-04-02 01:07:13 -07:00
4c76040371
feat(system): S69: stale reference cleanup, scanner ignores, direct fixes (memory shebang, purge.py paths, commons function, backup bypasses) ( #171 )
...
* 📝 docs(STATUS): update last sync timestamp
- update last sync timestamp to reflect recent status synchronization
* feat(trigger): audit cleanup — fix timestamp parsing, CLI formatting, bypass entries
- Fix log_watcher timestamp parsing: log warning once after all formats fail,
not on each format attempt (was generating hundreds of warnings per scan)
- Standardize rich formatting in branch_log_events and log_events print_help()
to match medic.py/errors.py Panel+rule style
- Add bypass entries for intentional silent catches (timestamp loop, error display)
- Remove unused Path imports
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
* feat(memory): audit cleanup — handler tests + rollover timeout handling
- Add 32 handler-layer tests (extractor, line_counter, normalize) in test_handlers.py
- Add rollover run timeout message + try/except for graceful error handling
- Fix commons welcome_ops.py missing _get_unwelcomed_branches function
264 tests pass, 100% seedgo compliance.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
* feat(system): audit cleanup: spawn
Co-Authored-By: @devpulse <devpulse@aipass>
* feat(system): audit cleanup: drone — fix ANSI escape corruption, add --rebase to git sync
Co-Authored-By: @devpulse <devpulse@aipass>
* feat(api): audit cleanup — critical path tests + cleanup constants
- Add 19 critical path tests (test_critical_paths.py): get_api_key, validate_key, get_response, extract_response
- Tests: 207/207 passing, seedgo 100%
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
* feat(system): S69: stale reference cleanup, scanner ignores, direct fixes (memory shebang, purge.py paths, commons function, backup bypasses)
Co-Authored-By: @devpulse <devpulse@aipass>
---------
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
Co-authored-by: @devpulse <devpulse@aipass>
2026-04-01 01:00:21 -07:00
efd0dc20c4
audit cleanup: api ( #170 )
...
* 📝 docs(STATUS): update last sync timestamp
- update last sync timestamp to reflect recent status synchronization
* feat(trigger): audit cleanup — fix timestamp parsing, CLI formatting, bypass entries
- Fix log_watcher timestamp parsing: log warning once after all formats fail,
not on each format attempt (was generating hundreds of warnings per scan)
- Standardize rich formatting in branch_log_events and log_events print_help()
to match medic.py/errors.py Panel+rule style
- Add bypass entries for intentional silent catches (timestamp loop, error display)
- Remove unused Path imports
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
* feat(memory): audit cleanup — handler tests + rollover timeout handling
- Add 32 handler-layer tests (extractor, line_counter, normalize) in test_handlers.py
- Add rollover run timeout message + try/except for graceful error handling
- Fix commons welcome_ops.py missing _get_unwelcomed_branches function
264 tests pass, 100% seedgo compliance.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
* feat(system): audit cleanup: spawn
Co-Authored-By: @devpulse <devpulse@aipass>
* feat(system): audit cleanup: drone — fix ANSI escape corruption, add --rebase to git sync
Co-Authored-By: @devpulse <devpulse@aipass>
* feat(api): audit cleanup — critical path tests + cleanup constants
- Add 19 critical path tests (test_critical_paths.py): get_api_key, validate_key, get_response, extract_response
- Tests: 207/207 passing, seedgo 100%
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
---------
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
Co-authored-by: @devpulse <devpulse@aipass>
2026-04-01 01:00:04 -07:00
c8ad266175
feat(system): audit cleanup: drone — fix ANSI escape corruption, add --rebase to git sync ( #169 )
...
* 📝 docs(STATUS): update last sync timestamp
- update last sync timestamp to reflect recent status synchronization
* feat(trigger): audit cleanup — fix timestamp parsing, CLI formatting, bypass entries
- Fix log_watcher timestamp parsing: log warning once after all formats fail,
not on each format attempt (was generating hundreds of warnings per scan)
- Standardize rich formatting in branch_log_events and log_events print_help()
to match medic.py/errors.py Panel+rule style
- Add bypass entries for intentional silent catches (timestamp loop, error display)
- Remove unused Path imports
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
* feat(memory): audit cleanup — handler tests + rollover timeout handling
- Add 32 handler-layer tests (extractor, line_counter, normalize) in test_handlers.py
- Add rollover run timeout message + try/except for graceful error handling
- Fix commons welcome_ops.py missing _get_unwelcomed_branches function
264 tests pass, 100% seedgo compliance.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
* feat(system): audit cleanup: spawn
Co-Authored-By: @devpulse <devpulse@aipass>
* feat(system): audit cleanup: drone — fix ANSI escape corruption, add --rebase to git sync
Co-Authored-By: @devpulse <devpulse@aipass>
---------
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
Co-authored-by: @devpulse <devpulse@aipass>
2026-04-01 00:59:49 -07:00