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
AIPass
7c42c3fd9f
Merge pull request #230 from AIOSAI/system/devpulse-add-oss-health-badge-to-readme
...
feat(system): Add OSS Health badge to README
2026-04-10 10:57:18 -07:00
AIOSAI and @devpulse
14d1c9b297
feat(system): Add OSS Health badge to README
...
Co-Authored-By: @devpulse <devpulse@aipass>
2026-04-10 10:56:49 -07:00
AIPass
b4159d2bc4
Merge pull request #229 from AIOSAI/system/devpulse-s85-drone-git-fixsyncsmart-sync-merge-on-divergenc
...
feat(system): S85: Drone git fix/sync/smart-sync — merge on divergence instead of rebase + STATUS update
2026-04-10 10:54:51 -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
2ebf576e9b
Merge pull request #227 from AIOSAI/AIOSAI-patch-1
...
Delete .gitleaks.toml
2026-04-10 10:02:27 -07:00
AIPass
81c46a92cb
Delete .gitleaks.toml
2026-04-10 10:02:08 -07:00
AIPass
a4878a177f
Merge pull request #224 from AIOSAI/security/api-key-leak-prevention
...
feat(security): Add gitleaks secret scanning to prevent API key leaks
2026-04-10 09:47:54 -07:00
AIOSAI and Claude Opus 4.6
fc2e9daccc
feat(security): Add gitleaks secret scanning to prevent API key leaks
...
After a real API key leaked through test files with realistic hex patterns,
this adds automated secret detection: .gitleaks.toml with custom rules for
OpenRouter/OpenAI/Anthropic/Google keys, and .pre-commit-config.yaml wiring
gitleaks as a pre-commit hook. Test keys locally updated to use FAKE-/NOTREAL
conventions that pass the allowlist.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-10 04:16:50 -07:00
AIOSAI and @devpulse
aba5cc32bd
feat(system): SECURITY: Remove api/ from public repo — contains key handling test patterns
...
Co-Authored-By: @devpulse <devpulse@aipass>
2026-04-10 03:46:42 -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
AIPass
434b2a5a12
Merge pull request #216 from AIOSAI/trigger/s84-atomic-writes
...
fix(trigger): S84 atomic JSON writes
2026-04-10 03:28:05 -07:00
AIPass
e1c49bd743
Merge pull request #215 from AIOSAI/citizen/flow
...
feat(flow): feat(flow): S84 fix FPLAN-only hardcoding — support all plan type prefixes
2026-04-10 03:27:54 -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
AIPass
4ca66aa22e
Merge pull request #214 from AIOSAI/system/devpulse-s84-api-branch-added-to-repo-global-prompt-patrick
...
feat(system): S84: API branch added to repo + global prompt patrick-file protection rule
2026-04-10 01:17:33 -07:00
AIOSAI and @devpulse
d343affe06
feat(system): S84: API branch added to repo + global prompt patrick-file protection rule
...
Co-Authored-By: @devpulse <devpulse@aipass>
2026-04-10 00:40:36 -07:00
AIPass
ece8452abc
Merge pull request #213 from AIOSAI/citizen/devpulse
...
feat(devpulse): API branch reinstate.
2026-04-10 00:40:21 -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
AIPass
5c096a984e
Merge pull request #211 from AIOSAI/system/devpulse-s83-api-reinstated-11-agents-hook-sounds-plugin-al
...
feat(system): S83: API reinstated (11 agents), hook-sounds plugin, all 11 APLANs updated with adversarial audit findings
2026-04-10 00:18:50 -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
ace01ae5f2
Merge pull request #208 from AIOSAI/system/devpulse-featsystem-s82-core-10-cleanup-agentsgemini-prompt
...
feat(system): feat(system): S82: core 10 cleanup — AGENTS/GEMINI prompts, STATUS.local, sandbox + vision docs, branch fixes
2026-04-09 23:46:43 -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
AIOSAI and @devpulse
260e7e2fae
feat(system): feat(system): S82: core 10 cleanup — AGENTS/GEMINI prompts, STATUS.local, sandbox + vision docs, branch fixes
...
Co-Authored-By: @devpulse <devpulse@aipass>
2026-04-09 21:03:37 -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
AIPass
a5ad4ceb3c
Merge pull request #205 from AIOSAI/system/devpulse-s81-aipass-init-v2-real-templates-spawn-routing-re
...
feat(system): S81: aipass init v2 — real templates, spawn routing, README Quick Start
2026-04-09 00:22:53 -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
AIPass
366978e341
Merge pull request #203 from AIOSAI/system/devpulse-s80-14-branch-state-audit-readme-round-7-flowmemor
...
feat(system): S80: 14-branch state audit + README Round 7 (flow/memory lifecycle, transparency) + dist/ gitignore
2026-04-08 01:42:01 -07:00