18 Commits

Author SHA1 Message Date
b1d147373b Update orchestration defaults for current team (#146)
Co-authored-by: Codex Agent <codex@hermes.local>
Co-committed-by: Codex Agent <codex@hermes.local>
2026-04-04 22:43:53 +00:00
118ca5fcbd [orchestration] Harden the nervous system — full repo coverage, destructive PR guard, dedup
Changes:
1. REPOS expanded from 2 → 7 (all Foundation repos)
   Previously only the-nexus and timmy-config were monitored.
   timmy-home (37 open issues), the-door, turboquant, hermes-agent,
   and .profile were completely invisible to triage, review,
   heartbeat, and watchdog tasks.

2. Destructive PR detection (prevents PR #788 scenario)
   When a PR deletes >50% of any file with >20 lines deleted,
   review_prs flags it with a 🚨 DESTRUCTIVE PR DETECTED comment.
   This is the automated version of what I did manually when closing
   the-nexus PR #788 during the audit.

3. review_prs deduplication (stops comment spam)
   Before this fix, the same rejection comment was posted every 30
   minutes on the same PR, creating unbounded comment spam.
   Now checks list_comments first and skips already-reviewed PRs.

4. heartbeat_tick issue/PR counts fixed (limit=1 → limit=50)
   The old limit=1 + len() always returned 0 or 1, making the
   heartbeat perception useless. Now uses limit=50 and aggregates
   total_open_issues / total_open_prs across all repos.

5. Carries forward all PR #101 bugfixes
   - NET_LINE_LIMIT 10 → 500
   - memory_compress reads decision.get('actions')
   - good_morning_report reads yesterday's ticks

Tests: 11 new tests in tests/test_orchestration_hardening.py.
Full suite: 23/23 pass.

Signed-off-by: gemini <gemini@hermes.local>
2026-03-30 18:53:14 -04:00
34e01f0986 feat: add local-vs-cloud token and throughput metrics (#85) 2026-03-28 14:24:12 +00:00
Alexander Whitestone
7f912b7662 huey: stop triage comment spam 2026-03-27 22:19:19 -04:00
Alexander Whitestone
ea38041514 Fix Hermes archive runner environment 2026-03-27 18:48:36 -04:00
Alexander Whitestone
689a2331d5 feat: orchestrate private twitter archive learning loop 2026-03-27 18:09:28 -04:00
Alexander Whitestone
d72ae92189 Tighten Hermes cutover and export checks 2026-03-27 17:35:07 -04:00
Alexander Whitestone
3b34faeb17 config: update channel_directory.json,config.yaml,tasks.py 2026-03-27 16:00:29 -04:00
Alexander Whitestone
49020b34d9 config: update bin/timmy-dashboard,config.yaml,docs/local-model-integration-sketch.md,tasks.py 2026-03-26 17:00:22 -04:00
Alexander Whitestone
27c1fb940d vendor gitea_client.py, kill sovereign-orchestration dependency
- Copied gitea_client.py into timmy-config (zero-dependency, stdlib only)
- Removed sys.path hack pointing to sovereign-orchestration
- sovereign-orchestration repo deleted locally, already gone from Gitea
- Fixed list_comments calls (no limit param)
- Collision avoidance for shared-assigned issues

Timmy owns: timmy-config, the-nexus, .profile. Nothing else.
2026-03-26 08:22:53 -04:00
Alexander Whitestone
e66f97a761 feat: gemini + grok workers via Huey, cross-review PRs
- gemini_worker: picks assigned issues, runs aider, opens PR (every 20m)
- grok_worker: picks assigned issues, runs opencode, opens PR (every 20m)
- cross_review_prs: gemini reviews grok's PRs, grok reviews gemini's (every 30m)

No bash loops. All Huey. One consumer, one SQLite, full observability.
2026-03-26 07:15:54 -04:00
Alexander Whitestone
1ecaf4b94d feat: good morning report — daily letter to Alexander at 6AM
Gathers overnight heartbeat data, model health, DPO pipeline status,
Gitea pulse, smoke test results. Includes a personal note and one wish.
Filed as a Gitea issue assigned to Rockachopa.
2026-03-25 21:29:43 -04:00
Alexander Whitestone
1a16e0107b fix: REPOS list — only the-nexus and timmy-config remain 2026-03-25 20:56:46 -04:00
Alexander Whitestone
895f75fe23 feat: 6 new Huey tasks — full nervous system
New periodic tasks:
1. sync_config_up (hourly) — push ~/.hermes config to Gitea
2. session_export (every 4h) — extract DPO training pairs from sessions
3. model_health (every 5m) — check Ollama, API, inference
4. heartbeat_tick (every 10m) — Perceive/Reflect/Remember/Decide/Act/Learn
5. memory_compress (daily 8AM) — morning briefing from yesterday's ticks
6. repo_watchdog (every 20m) — poll Gitea for new issues/PRs

Also fixed: removed autolora from REPOS (not on Gitea), added
sovereign-orchestration and the-matrix.

All tasks verified working via manual trigger.
2026-03-25 19:26:51 -04:00
Alexander Whitestone
e2ac2626fe sync: live config from ~/.hermes 2026-03-25_19:25 2026-03-25 19:25:01 -04:00
Alexander Whitestone
ef4c94b9b5 fix: gitea_client import path — point to sovereign-orchestration/src
The hermes-agent tools/__init__.py pulls in firecrawl which isn't installed.
Direct import from sovereign-orchestration's zero-dependency client works.

TODO: gitea_client should be pip-installable or vendored, not a cross-repo path reach.
2026-03-25 19:05:29 -04:00
Perplexity
2bbaf8c7f3 fix: clean up tasks.py imports, correct hermes-agent path 2026-03-25 21:15:36 +00:00
Perplexity
6d76442d77 feat: Huey replaces sovereign-orchestration — 77 lines for 3,846
orchestration.py: SqliteHuey instance (6 lines)
tasks.py: triage, PR review, dispatch, 10-line enforcement (71 lines)
config.yaml: remove MCP server entry, point to Huey
README: document the change

pip install huey && huey_consumer.py tasks.huey -w 2 -k thread
2026-03-25 21:12:32 +00:00