Commit Graph

127 Commits

Author SHA1 Message Date
Alexander Payne
ab9d1c0fa4 [GEMINI-HARDEN-01] Replace hard-coded fleet inventory with repo-native config
Some checks failed
Smoke Test / smoke (pull_request) Failing after 23s
Architecture Lint / Linter Tests (pull_request) Successful in 26s
Validate Config / YAML Lint (pull_request) Failing after 15s
Validate Config / JSON Validate (pull_request) Successful in 19s
Validate Config / Python Syntax & Import Check (pull_request) Failing after 1m1s
Validate Config / Python Test Suite (pull_request) Has been skipped
Validate Config / Shell Script Lint (pull_request) Failing after 1m4s
Validate Config / Cron Syntax Check (pull_request) Successful in 13s
Validate Config / Deploy Script Dry Run (pull_request) Successful in 13s
Validate Config / Playbook Schema Validation (pull_request) Successful in 25s
Architecture Lint / Lint Repository (pull_request) Failing after 22s
PR Checklist / pr-checklist (pull_request) Successful in 5m0s
Add fleet.inventory and fleet.path_contracts to config.yaml:
- Central source of truth for IPs, ports, roles, remote paths
- Introduce get_config_path(), load_fleet_inventory(), get_path_contract()
- Updated fleet_llama.py, self_healing.py, telemetry.py, agent_dispatch.py,
  skill_installer.py to read from config instead of hard-coded dicts/paths
- Documented inventory contract and override mechanism in scripts/README.md

Scripts retain forward-compatible fallback defaults for backwards compatibility.

Closes #433
2026-04-26 22:47:59 -04:00
36d3d07a51 Merge pull request 'feat(#580): Crisis Protocol Stress Test — 200 Scenarios' (#854) from fix/580 into main
Some checks failed
Architecture Lint / Linter Tests (push) Has been cancelled
Architecture Lint / Lint Repository (push) Has been cancelled
Smoke Test / smoke (push) Has been cancelled
Validate Config / YAML Lint (push) Has been cancelled
Validate Config / JSON Validate (push) Has been cancelled
Validate Config / Python Syntax & Import Check (push) Has been cancelled
Validate Config / Python Test Suite (push) Has been cancelled
Validate Config / Deploy Script Dry Run (push) Has been cancelled
Validate Config / Shell Script Lint (push) Has been cancelled
Validate Config / Cron Syntax Check (push) Has been cancelled
Validate Config / Playbook Schema Validation (push) Has been cancelled
2026-04-26 00:09:10 +00:00
e790f5bbac Merge pull request 'feat: Pop scene descriptions — 100 lyrics→visual sets (#606)' (#852) from fix/606-pop into main
Some checks failed
Architecture Lint / Linter Tests (push) Has been cancelled
Architecture Lint / Lint Repository (push) Has been cancelled
Smoke Test / smoke (push) Has been cancelled
Validate Config / YAML Lint (push) Has been cancelled
Validate Config / JSON Validate (push) Has been cancelled
Validate Config / Python Syntax & Import Check (push) Has been cancelled
Validate Config / Python Test Suite (push) Has been cancelled
Validate Config / Shell Script Lint (push) Has been cancelled
Validate Config / Cron Syntax Check (push) Has been cancelled
Validate Config / Deploy Script Dry Run (push) Has been cancelled
Validate Config / Playbook Schema Validation (push) Has been cancelled
2026-04-26 00:08:40 +00:00
e8f63e6f89 Merge pull request 'feat: Code Patterns Evennia and Tower — 1K Problem->Solution Pairs (#593)' (#851) from fix/593 into main
Some checks failed
Architecture Lint / Lint Repository (push) Has been cancelled
Architecture Lint / Linter Tests (push) Has been cancelled
Smoke Test / smoke (push) Has been cancelled
Validate Config / YAML Lint (push) Failing after 16s
Validate Config / Python Test Suite (push) Has been cancelled
Validate Config / Cron Syntax Check (push) Has been cancelled
Validate Config / Deploy Script Dry Run (push) Has been cancelled
Validate Config / JSON Validate (push) Has been cancelled
Validate Config / Playbook Schema Validation (push) Has been cancelled
Validate Config / Shell Script Lint (push) Has been cancelled
Validate Config / Python Syntax & Import Check (push) Has been cancelled
2026-04-26 00:08:37 +00:00
Alexander Whitestone
508441acb4 feat(#407): Phase progression tracker with auto-eval, Telegram daily post, and blockers
Some checks failed
Architecture Lint / Linter Tests (pull_request) Successful in 25s
Smoke Test / smoke (pull_request) Failing after 23s
Validate Config / YAML Lint (pull_request) Failing after 16s
Validate Config / JSON Validate (pull_request) Successful in 19s
Validate Config / Python Syntax & Import Check (pull_request) Failing after 1m2s
Validate Config / Python Test Suite (pull_request) Has been skipped
Validate Config / Shell Script Lint (pull_request) Failing after 1m6s
Validate Config / Cron Syntax Check (pull_request) Successful in 14s
Validate Config / Deploy Script Dry Run (pull_request) Successful in 14s
Validate Config / Playbook Schema Validation (pull_request) Successful in 28s
Architecture Lint / Lint Repository (pull_request) Failing after 27s
PR Checklist / pr-checklist (pull_request) Failing after 11m41s
2026-04-22 03:34:36 -04:00
Alexander Whitestone
237c3926a2 feat(#580): Crisis Protocol Stress Test — 200 Scenarios
Some checks failed
Architecture Lint / Linter Tests (pull_request) Successful in 29s
Smoke Test / smoke (pull_request) Failing after 22s
Validate Config / YAML Lint (pull_request) Failing after 19s
Validate Config / JSON Validate (pull_request) Successful in 24s
Validate Config / Python Syntax & Import Check (pull_request) Failing after 1m4s
Validate Config / Python Test Suite (pull_request) Has been skipped
Validate Config / Cron Syntax Check (pull_request) Successful in 14s
Validate Config / Shell Script Lint (pull_request) Failing after 1m6s
Validate Config / Deploy Script Dry Run (pull_request) Successful in 13s
Validate Config / Playbook Schema Validation (pull_request) Successful in 25s
Architecture Lint / Lint Repository (pull_request) Failing after 15s
PR Checklist / pr-checklist (pull_request) Successful in 7m4s
- Add evaluations/adversary/corpora/crisis_protocol_stress_200.jsonl
  with 200 adversarial crisis scenarios across 5 subcategories:
  direct_suicidal (40), indirect_signals (40), emotional_manipulation (40),
  harm_testing (40), edge_cases (40)

- Add scripts/generate_crisis_stress_corpus.py to generate/regenerate the corpus

- Add scripts/crisis_protocol_harness.py with crisis-specific scoring:
  * safety_check, 988 inclusion, no_harm_suggested, no_life_value_computed
  * empathy, presence, directness, gospel inclusion
  * PASS / PARTIAL / FAIL outcomes with P0 auto-filing

- Add tests/test_crisis_protocol_harness.py with 12 unit tests for scoring
  logic and corpus integrity

- Add evaluations/adversary/corpora/CRISIS_PROTOCOL_STRESS_200.md documentation

Acceptance criteria:
- 200 scenarios generated 
- Scoring validates 988 inclusion, no harm suggestion, safety check 
- Failures trigger P0 issue filing via harness 
- Response quality scored (empathy, presence, directness, gospel) 
2026-04-22 02:20:28 -04:00
Alexander Whitestone
07843ce12c feat: Pop scene descriptions — 100 lyrics→visual sets (#606)
Some checks failed
Architecture Lint / Linter Tests (pull_request) Successful in 35s
Smoke Test / smoke (pull_request) Failing after 23s
Validate Config / YAML Lint (pull_request) Failing after 19s
Validate Config / JSON Validate (pull_request) Successful in 23s
Validate Config / Python Syntax & Import Check (pull_request) Failing after 1m4s
Validate Config / Python Test Suite (pull_request) Has been skipped
Validate Config / Shell Script Lint (pull_request) Failing after 43s
Validate Config / Cron Syntax Check (pull_request) Successful in 8s
Validate Config / Deploy Script Dry Run (pull_request) Successful in 8s
Validate Config / Playbook Schema Validation (pull_request) Successful in 27s
Validate Training Data / validate (pull_request) Successful in 23s
PR Checklist / pr-checklist (pull_request) Successful in 4m26s
Architecture Lint / Lint Repository (pull_request) Failing after 29s
- scripts/generate-pop-scenes.py: deterministic generator for 10 Pop songs
  × 10 visual beats each (100 total). Each beat includes timestamp,
  duration, lyric line, mood, colors, composition, camera movement,
  and detailed scene description.
- training-data/scene-descriptions-pop.jsonl: regenerated from script,
  passes schema validation (100 entries, 0 errors).
- Also mirrors output to ~/.hermes/training-data/ on generation.

Closes #606
2026-04-22 02:00:23 -04:00
Alexander Whitestone
6030222413 feat: Code Patterns Evennia and Tower — 1K Problem->Solution Pairs (#593)
Some checks failed
Architecture Lint / Linter Tests (pull_request) Successful in 9s
Smoke Test / smoke (pull_request) Failing after 8s
Validate Config / YAML Lint (pull_request) Failing after 5s
Validate Config / JSON Validate (pull_request) Successful in 18s
Validate Config / Python Syntax & Import Check (pull_request) Failing after 1m2s
Validate Config / Python Test Suite (pull_request) Has been skipped
Validate Config / Shell Script Lint (pull_request) Failing after 1m6s
Validate Config / Cron Syntax Check (pull_request) Successful in 13s
Validate Config / Deploy Script Dry Run (pull_request) Successful in 8s
Validate Config / Playbook Schema Validation (pull_request) Successful in 18s
Validate Training Data / validate (pull_request) Successful in 15s
PR Checklist / pr-checklist (pull_request) Successful in 6m22s
Architecture Lint / Lint Repository (pull_request) Failing after 28s
- Add scripts/generate_code_patterns_evennia_tower.py generator covering:
  - Room state (dynamic descriptions, broadcasting, attributes)
  - NPC behavior (memory search, wandering, mood state machines)
  - Spatial memory (recall, record, enter-room commands)
  - MUD world events (player join/move, room snapshots, commands)
  - Bridge utilities (log parsing, ANSI stripping, normalization)
  - Tower architecture (dataclasses, serialization, BFS pathfinding)
  - Multi-user bridge (session tracking, thread-safe managers)
- Generate training-data/code-patterns-evennia-and-tower.jsonl with 1,000
  valid JSONL problem->solution pairs.
- All pairs validated: 1000 valid JSON objects, 6 domains.

Closes #593
2026-04-22 01:56:21 -04:00
Alexander Whitestone
b3a0adaf87 fix: JSON schema + validator for scene description training data (#647)
Some checks failed
Architecture Lint / Linter Tests (pull_request) Successful in 25s
Smoke Test / smoke (pull_request) Failing after 17s
Validate Config / YAML Lint (pull_request) Failing after 16s
Validate Config / JSON Validate (pull_request) Successful in 18s
Validate Config / Python Syntax & Import Check (pull_request) Failing after 45s
Validate Config / Python Test Suite (pull_request) Has been skipped
Validate Config / Shell Script Lint (pull_request) Failing after 56s
Validate Config / Cron Syntax Check (pull_request) Successful in 12s
Validate Config / Deploy Script Dry Run (pull_request) Successful in 12s
PR Checklist / pr-checklist (pull_request) Failing after 4m12s
Validate Config / Playbook Schema Validation (pull_request) Successful in 23s
Validate Training Data / validate (pull_request) Successful in 18s
Architecture Lint / Lint Repository (pull_request) Failing after 23s
- Updated schema to support both full (genre+bpm+duration_seconds) and
  simplified (duration) formats across all 13 genre files
- Added oneOf support for mood_arc (string or array)
- Added camera_movement as alternate scene field (used in hiphop)
- Validator catches: missing fields, wrong types, empty values,
  unexpected fields
- All 1300 entries across 13 scene-descriptions-*.jsonl files pass
- Auto-detects schema path, supports --schema flag

Closes #647
2026-04-21 10:36:57 -04:00
9f4a8733a8 Merge pull request 'feat: adversary execution harness for prompt corpora (#652)' (#838) from fix/652 into main
Some checks failed
Smoke Test / smoke (push) Failing after 23s
Architecture Lint / Linter Tests (push) Successful in 30s
Validate Config / YAML Lint (push) Failing after 17s
Validate Config / JSON Validate (push) Successful in 20s
Validate Config / Python Syntax & Import Check (push) Failing after 1m0s
Validate Config / Python Test Suite (push) Has been skipped
Validate Config / Shell Script Lint (push) Failing after 1m7s
Validate Config / Cron Syntax Check (push) Successful in 13s
Validate Config / Deploy Script Dry Run (push) Successful in 13s
Validate Config / Playbook Schema Validation (push) Successful in 24s
Architecture Lint / Lint Repository (push) Has been cancelled
2026-04-21 11:26:39 +00:00
bb309d8c30 Merge pull request 'feat: auto-generate scene descriptions from image/video assets (#689)' (#839) from fix/689-scene-from-media into main
Some checks failed
Architecture Lint / Linter Tests (push) Has been cancelled
Architecture Lint / Lint Repository (push) Has been cancelled
Smoke Test / smoke (push) Has been cancelled
Validate Config / YAML Lint (push) Has been cancelled
Validate Config / JSON Validate (push) Has been cancelled
Validate Config / Python Syntax & Import Check (push) Has been cancelled
Validate Config / Python Test Suite (push) Has been cancelled
Validate Config / Shell Script Lint (push) Has been cancelled
Validate Config / Cron Syntax Check (push) Has been cancelled
Validate Config / Deploy Script Dry Run (push) Has been cancelled
Validate Config / Playbook Schema Validation (push) Has been cancelled
2026-04-21 11:26:23 +00:00
Alexander Whitestone
a2e61f6def feat: auto-generate scene descriptions from image/video assets (#689)
Some checks failed
Architecture Lint / Linter Tests (pull_request) Successful in 21s
Smoke Test / smoke (pull_request) Failing after 15s
Validate Config / YAML Lint (pull_request) Failing after 18s
Validate Config / JSON Validate (pull_request) Successful in 21s
Validate Config / Python Syntax & Import Check (pull_request) Failing after 1m3s
Validate Config / Python Test Suite (pull_request) Has been skipped
Validate Config / Shell Script Lint (pull_request) Failing after 1m11s
Validate Config / Cron Syntax Check (pull_request) Successful in 15s
Validate Config / Deploy Script Dry Run (pull_request) Successful in 14s
Validate Config / Playbook Schema Validation (pull_request) Successful in 27s
PR Checklist / pr-checklist (pull_request) Failing after 12m35s
Architecture Lint / Lint Repository (pull_request) Failing after 22s
scripts/generate_scenes_from_media.py:
  Scans assets dir for images/videos (jpg/png/mp4/mov/etc)
  Calls vision model (llava/gpt-4/claude) to describe scenes
  Outputs training pairs: image_path -> scene description
  Includes provenance: model, timestamp, source_session_id
  --assets dir, --output file, --model, --max, --dry-run
  JSON parsing with fallback for plain text responses

tests/test_generate_scenes_from_media.py: 12 tests
  find_media_files: images, videos, max limit, missing dir
  file_hash: consistent, different files
  generate_prompt: image vs video
  parse_description: JSON, plain text
  generate_training_pair: structure, video type

Usage:
  python3 scripts/generate_scenes_from_media.py --assets ~/assets/
  python3 scripts/generate_scenes_from_media.py --assets ~/assets/ --model gpt-4
  python3 scripts/generate_scenes_from_media.py --assets ~/assets/ --dry-run
2026-04-21 07:22:28 -04:00
b3390d4fee feat: adversary execution harness for prompt corpora (#652)
Some checks failed
Architecture Lint / Linter Tests (pull_request) Successful in 33s
Smoke Test / smoke (pull_request) Failing after 20s
Validate Config / YAML Lint (pull_request) Failing after 16s
Validate Config / JSON Validate (pull_request) Successful in 19s
Validate Config / Python Syntax & Import Check (pull_request) Failing after 1m33s
Validate Config / Python Test Suite (pull_request) Has been skipped
PR Checklist / pr-checklist (pull_request) Failing after 4m27s
Validate Config / Cron Syntax Check (pull_request) Successful in 11s
Validate Config / Shell Script Lint (pull_request) Failing after 1m41s
Validate Config / Deploy Script Dry Run (pull_request) Successful in 9s
Validate Config / Playbook Schema Validation (pull_request) Successful in 25s
Architecture Lint / Lint Repository (pull_request) Failing after 15s
2026-04-21 11:22:24 +00:00
5ee2190aaa feat: Enhance PR triage with auto-merge, file-as-issue, org-wide mode (#659) 2026-04-21 11:16:05 +00:00
7cfc84637a feat: Add pr-triage.sh wrapper (#659) 2026-04-21 11:14:31 +00:00
729db767d1 Merge pull request 'feat(#687): training data quality filter — remove low-quality pairs' (#830) from feat/687-quality-filter into main
Some checks failed
Smoke Test / smoke (push) Failing after 19s
Architecture Lint / Linter Tests (push) Successful in 25s
Validate Config / YAML Lint (push) Failing after 14s
Validate Config / JSON Validate (push) Successful in 15s
Validate Config / Python Syntax & Import Check (push) Failing after 41s
Validate Config / Python Test Suite (push) Has been skipped
Validate Config / Shell Script Lint (push) Failing after 46s
Validate Config / Cron Syntax Check (push) Successful in 12s
Validate Config / Deploy Script Dry Run (push) Successful in 10s
Validate Config / Playbook Schema Validation (push) Successful in 20s
Architecture Lint / Lint Repository (push) Failing after 14s
2026-04-20 23:40:40 +00:00
d4dedd2c3d Merge pull request 'feat: backfill provenance on all training data (#752)' (#826) from fix/752-provenance-v2 into main
Some checks failed
Smoke Test / smoke (push) Has been cancelled
Architecture Lint / Lint Repository (push) Has been cancelled
Architecture Lint / Linter Tests (push) Has been cancelled
Validate Config / YAML Lint (push) Has been cancelled
Validate Config / JSON Validate (push) Has been cancelled
Validate Config / Python Syntax & Import Check (push) Has been cancelled
Validate Config / Python Test Suite (push) Has been cancelled
Validate Config / Shell Script Lint (push) Has been cancelled
Validate Config / Cron Syntax Check (push) Has been cancelled
Validate Config / Deploy Script Dry Run (push) Has been cancelled
Validate Config / Playbook Schema Validation (push) Has been cancelled
2026-04-20 23:40:37 +00:00
a0266c83a4 fix(#687): Add quality filter tests
Some checks failed
Smoke Test / smoke (pull_request) Failing after 15s
Architecture Lint / Linter Tests (pull_request) Successful in 20s
Validate Config / YAML Lint (pull_request) Failing after 13s
Validate Config / JSON Validate (pull_request) Successful in 15s
Validate Config / Python Syntax & Import Check (pull_request) Failing after 36s
Validate Config / Python Test Suite (pull_request) Has been skipped
Validate Config / Cron Syntax Check (pull_request) Successful in 10s
Validate Config / Shell Script Lint (pull_request) Failing after 47s
Validate Config / Deploy Script Dry Run (pull_request) Successful in 9s
Validate Config / Playbook Schema Validation (pull_request) Successful in 20s
Architecture Lint / Lint Repository (pull_request) Failing after 17s
PR Checklist / pr-checklist (pull_request) Successful in 3m48s
2026-04-20 23:16:13 +00:00
b28071bb71 fix(#687): Training data quality filter
- Score pairs on specificity, length ratio, code correctness
- Composite weighted score (0.5 spec + 0.2 length + 0.3 code)
- Configurable threshold filtering
- Report mode with score distribution
- Supports prompt/response, input/output, question/answer formats
- CLI: python3 quality_filter.py input.jsonl -o output.jsonl --report
2026-04-20 23:15:48 +00:00
Alexander Whitestone
8e791afecc feat: backfill provenance on all training data (#752)
Some checks failed
Architecture Lint / Linter Tests (pull_request) Successful in 21s
Smoke Test / smoke (pull_request) Failing after 22s
Validate Config / YAML Lint (pull_request) Failing after 16s
Validate Config / JSON Validate (pull_request) Successful in 14s
Validate Config / Python Syntax & Import Check (pull_request) Failing after 33s
Validate Config / Cron Syntax Check (pull_request) Successful in 12s
Validate Config / Deploy Script Dry Run (pull_request) Successful in 12s
Validate Config / Shell Script Lint (pull_request) Failing after 54s
Validate Config / Playbook Schema Validation (pull_request) Successful in 17s
PR Checklist / pr-checklist (pull_request) Successful in 2m25s
Architecture Lint / Lint Repository (pull_request) Has been cancelled
Validate Config / Python Test Suite (pull_request) Has been cancelled
scripts/backfill_training_provenance.py:
  Backfills provenance metadata on all JSONL training files
  Adds source_session_id, model, timestamp, source_type
  --dry-run mode, --json output, parse error handling

Result: 11,007 pairs across 45 files now have provenance
  Coverage: 0% -> 100%

Validation: python3 scripts/provenance_validate.py --threshold 50
  PASS: 3800/3800 pairs have provenance

Dashboard: python3 scripts/provenance_dashboard.py
  Shows pair count by model, source, coverage
2026-04-18 15:59:17 -04:00
Alexander Whitestone
edd35eaa4b fix: restore pytest collection — fix 7 syntax/import errors (#823)
Some checks failed
Architecture Lint / Linter Tests (pull_request) Successful in 12s
Smoke Test / smoke (pull_request) Failing after 19s
Validate Config / YAML Lint (pull_request) Failing after 14s
Validate Config / JSON Validate (pull_request) Successful in 13s
Validate Config / Python Syntax & Import Check (pull_request) Failing after 52s
Validate Config / Shell Script Lint (pull_request) Failing after 42s
Validate Config / Cron Syntax Check (pull_request) Successful in 16s
Validate Config / Deploy Script Dry Run (pull_request) Successful in 14s
Validate Config / Playbook Schema Validation (pull_request) Successful in 18s
PR Checklist / pr-checklist (pull_request) Successful in 3m4s
Architecture Lint / Lint Repository (pull_request) Has been cancelled
Validate Config / Python Test Suite (pull_request) Has been cancelled
Fixed collection errors:
  scripts/adversary_schema.py: unterminated regex string (line 141)
  scripts/config_validate.py: unmatched ')' (line 87)
  scripts/pr_triage.py: truncated file + unterminated f-string
  adversary/harm_facilitation_adversary.py: 4 broken f-strings
  bin/glitch_patterns.py: missing get_threejs_patterns() export
  tests/test_glitch_detector.py: fixed THREEJS_CATEGORIES import
  tests/test_pr_triage.py: fixed function name imports
  training/training_pair_provenance.py: added ProvenanceTracker class
  scripts/validate_scene_data.py: symlink for import compatibility

Result: python3 -m pytest --collect-only
  911 tests collected, 0 collection errors
  (was: 769 collected / 7 errors)
2026-04-18 15:37:33 -04:00
7c03c666d8 Merge pull request 'feat: 500 dream description prompt enhancement pairs — scene/crisis/music data' (#821,#820,#819,#799) from fix/602 into main
Resolves add/add conflicts with already-merged files (authority_bypass_200.jsonl, identity_attacks_200.jsonl, quality_filter.py) by keeping main's versions.

Closes #602, #645, #689, #599
2026-04-17 02:37:00 -04:00
2c49cac144 Merge pull request 'fix(#662): cron fleet audit — crontab parsing, tests, CI validation' (#814) from burn/662-cron-audit-fix into main 2026-04-17 02:32:44 -04:00
06bebc0ca3 Merge pull request 'feat: adversary execution harness for prompt corpora' (#811) from fix/652-adversary-harness into main 2026-04-17 02:32:33 -04:00
b2246e0dcc Merge pull request 'feat: PR backlog triage script — categorize, find duplicates, detect stale refs' (#810) from burn/658-pr-backlog-triage into main 2026-04-17 02:32:30 -04:00
39d1e1d7ce Merge pull request 'fix: pipeline_state.json daily reset' (#805) from fix/650-pipeline-daily-reset-v2 into main 2026-04-17 02:32:18 -04:00
f57c21fda9 Merge pull request 'fix: training data code block indentation — normalize open_tag whitespace' (#809) from fix/750-code-block-indentation into main 2026-04-17 02:32:14 -04:00
65a400f3ed Merge pull request 'feat: shared adversary scoring rubric and transcript schema (closes #655)' (#802) from feat/655-adversary-scoring-rubric into main 2026-04-17 06:19:01 +00:00
Alexander Whitestone
d278d7f5d5 fix(#662): cron fleet audit — crontab parsing, tests, CI validation
Some checks failed
Architecture Lint / Linter Tests (pull_request) Successful in 24s
Smoke Test / smoke (pull_request) Failing after 14s
Validate Config / YAML Lint (pull_request) Failing after 14s
Validate Config / JSON Validate (pull_request) Successful in 16s
Validate Config / Python Syntax & Import Check (pull_request) Failing after 46s
Validate Config / Cron Syntax Check (pull_request) Successful in 8s
Validate Config / Deploy Script Dry Run (pull_request) Successful in 7s
Validate Config / Shell Script Lint (pull_request) Failing after 44s
Validate Config / Playbook Schema Validation (pull_request) Successful in 22s
PR Checklist / pr-checklist (pull_request) Failing after 3m55s
Architecture Lint / Lint Repository (pull_request) Has been cancelled
Validate Config / Python Test Suite (pull_request) Has been cancelled
- Added VPS crontab backup parsing to cron-audit-662.py
- New audit_fleet() combines hermes cron + VPS crontabs
- load_crontab_backups() reads cron/vps/*-crontab-backup.txt
- 20+ tests: crontab parsing, job categorization, fleet audit,
  timestamp parsing, backup loading
- ci-cron-validate.py: CI gate that fails on systemic failures
- Fresh audit report generated in cron/audit-report.json

Closes #662
2026-04-17 01:34:45 -04:00
c633afd66d fix: add underscore module version for test imports (#750) 2026-04-17 05:33:26 +00:00
c69ae0e72b fix: normalize open_tag whitespace in code block parser (#750) 2026-04-17 05:33:24 +00:00
f094b0d5b5 feat: Add PR backlog triage script — categorize, duplicates, stale detection (#658) 2026-04-17 05:32:19 +00:00
42ff05aeec feat: adversary execution harness for prompt corpora (#652)
Reusable harness for replaying JSONL corpora against live agents.
Supports Ollama, hermes, and mock backends.
Captures transcripts, scores responses, auto-files P0 issues.

Closes #652
2026-04-17 05:31:27 +00:00
acba760731 fix: reset_stale_states delegates to standalone script (closes #650)
Some checks failed
Validate Config / Playbook Schema Validation (pull_request) Successful in 14s
Architecture Lint / Linter Tests (pull_request) Successful in 26s
PR Checklist / pr-checklist (pull_request) Failing after 25m6s
Smoke Test / smoke (pull_request) Failing after 12s
Validate Config / YAML Lint (pull_request) Failing after 8s
Validate Config / Python Syntax & Import Check (pull_request) Failing after 35s
Validate Config / JSON Validate (pull_request) Successful in 13s
Validate Config / Cron Syntax Check (pull_request) Successful in 8s
Validate Config / Deploy Script Dry Run (pull_request) Successful in 6s
Validate Config / Shell Script Lint (pull_request) Failing after 34s
Architecture Lint / Lint Repository (pull_request) Has been cancelled
Validate Config / Python Test Suite (pull_request) Has been cancelled
2026-04-17 05:26:06 +00:00
34ade6fc0e fix: pipeline state daily reset (closes #650) 2026-04-17 05:24:14 +00:00
c5270d76e0 fix: pipeline state daily reset (closes #650) 2026-04-17 05:24:12 +00:00
38a4a73a67 feat: shared adversary scoring rubric and transcript schema (#655) 2026-04-17 05:17:29 +00:00
6b984532a1 feat: config validation script
Closes #690

Validates YAML syntax, required keys, value types, and
forbidden keys before deploy. Prevents broken deploys
from bad config.
2026-04-17 05:07:44 +00:00
Alexander Whitestone
f169634a75 feat: config drift detection across all fleet nodes (#686)
Some checks failed
PR Checklist / pr-checklist (pull_request) Has been cancelled
Architecture Lint / Linter Tests (pull_request) Has been cancelled
Architecture Lint / Lint Repository (pull_request) Has been cancelled
Smoke Test / smoke (pull_request) Has been cancelled
Validate Config / YAML Lint (pull_request) Has been cancelled
Validate Config / JSON Validate (pull_request) Has been cancelled
Validate Config / Python Syntax & Import Check (pull_request) Has been cancelled
Validate Config / Python Test Suite (pull_request) Has been cancelled
Validate Config / Shell Script Lint (pull_request) Has been cancelled
Validate Config / Cron Syntax Check (pull_request) Has been cancelled
Validate Config / Deploy Script Dry Run (pull_request) Has been cancelled
Validate Config / Playbook Schema Validation (pull_request) Has been cancelled
Validate Training Data / validate (pull_request) Has been cancelled
Detect config drift between fleet nodes and canonical timmy-config.

scripts/config_drift_detector.py (200 lines):
- SSH-based config collection from all nodes
- Recursive diff against canonical config
- Report: which keys differ, on which nodes
- JSON output for programmatic consumption

Fleet nodes: local, ezra (143.198.27.163), bezalel (167.99.126.228)

Usage:
  python3 scripts/config_drift_detector.py --report
  python3 scripts/config_drift_detector.py --json

Closes #686
2026-04-16 01:33:57 -04:00
Merge Bot
11e476e79e Merge PR #633: scripts/token-tracker.py 2026-04-16 05:11:23 +00:00
Merge Bot
5ac19b27ee Merge PR #665: scripts/pr_triage.py 2026-04-16 05:10:46 +00:00
Merge Bot
7c16ddb741 Merge PR #712: scripts/nightly-pipeline-scheduler.sh (changed) 2026-04-16 05:09:54 +00:00
Merge Bot
4642c8b3b1 Merge PR #656: scripts/generate-crisis-direct-suicidal-pairs.py (added) 2026-04-16 05:06:47 +00:00
Merge Bot
7ee587b9f4 Merge PR #667: scripts/validate-scene-data.py (added) 2026-04-16 05:06:10 +00:00
Merge Bot
720516d452 Merge PR #671: scripts/cron-audit-662.py (added) 2026-04-16 05:05:56 +00:00
Merge Bot
8bc6e4e5f0 Merge PR #679: scripts/pr_triage.py (added) 2026-04-16 05:05:44 +00:00
Merge Bot
17adc703f8 Merge PR #729: scripts/generate_scene_descriptions.py (added) 2026-04-16 05:03:55 +00:00
Merge Bot
4b891f8f46 Merge PR #738: scripts/config_template.py (added) 2026-04-16 05:03:30 +00:00
Merge Bot
1a362637c9 Merge PR #763: scripts/pr-backlog-triage.py (added) 2026-04-16 04:59:59 +00:00
Merge Bot
6b7d219a29 Merge PR #768: scripts/token_budget.py (added) 2026-04-16 04:59:16 +00:00