feat: extract sovereign work from hermes-agent fork into sidecar
Extracted 52 files from Timmy_Foundation/hermes-agent (gitea/main) into
hermes-sovereign/ directory to restore clean upstream tracking.
Layout:
docs/ 19 files — deploy guides, performance reports, security docs, research
security/ 5 files — audit workflows, PR checklists, validation scripts
wizard-bootstrap/ 7 files — wizard environment, dependency checking, auditing
notebooks/ 2 files — Jupyter health monitoring notebooks
scripts/ 5 files — forge health, smoke tests, syntax guard, deploy validation
ci/ 2 files — Gitea CI workflow definitions
githooks/ 3 files — pre-commit hooks and config
devkit/ 8 files — developer toolkit (Gitea client, health, notebook runner)
README.md 1 file — directory overview
Addresses: #337, #338
2026-04-07 10:11:20 -04:00
|
|
|
name: Notebook CI
|
|
|
|
|
|
|
|
|
|
on:
|
|
|
|
|
push:
|
|
|
|
|
paths:
|
|
|
|
|
- 'notebooks/**'
|
|
|
|
|
pull_request:
|
|
|
|
|
paths:
|
|
|
|
|
- 'notebooks/**'
|
|
|
|
|
|
|
|
|
|
jobs:
|
|
|
|
|
notebook-smoke:
|
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
|
steps:
|
|
|
|
|
- name: Checkout
|
|
|
|
|
uses: actions/checkout@v4
|
|
|
|
|
|
|
|
|
|
- name: Setup Python
|
|
|
|
|
uses: actions/setup-python@v5
|
|
|
|
|
with:
|
|
|
|
|
python-version: '3.12'
|
|
|
|
|
|
|
|
|
|
- name: Install dependencies
|
|
|
|
|
run: |
|
2026-04-13 21:29:05 +00:00
|
|
|
pip install papermill jupytext nbformat ipykernel
|
feat: extract sovereign work from hermes-agent fork into sidecar
Extracted 52 files from Timmy_Foundation/hermes-agent (gitea/main) into
hermes-sovereign/ directory to restore clean upstream tracking.
Layout:
docs/ 19 files — deploy guides, performance reports, security docs, research
security/ 5 files — audit workflows, PR checklists, validation scripts
wizard-bootstrap/ 7 files — wizard environment, dependency checking, auditing
notebooks/ 2 files — Jupyter health monitoring notebooks
scripts/ 5 files — forge health, smoke tests, syntax guard, deploy validation
ci/ 2 files — Gitea CI workflow definitions
githooks/ 3 files — pre-commit hooks and config
devkit/ 8 files — developer toolkit (Gitea client, health, notebook runner)
README.md 1 file — directory overview
Addresses: #337, #338
2026-04-07 10:11:20 -04:00
|
|
|
python -m ipykernel install --user --name python3
|
|
|
|
|
|
|
|
|
|
- name: Execute system health notebook
|
|
|
|
|
run: |
|
|
|
|
|
papermill notebooks/agent_task_system_health.ipynb /tmp/output.ipynb \
|
|
|
|
|
-p threshold 0.5 \
|
|
|
|
|
-p hostname ci-runner
|
|
|
|
|
|
|
|
|
|
- name: Verify output has results
|
|
|
|
|
run: |
|
|
|
|
|
python -c "
|
|
|
|
|
import json
|
|
|
|
|
nb = json.load(open('/tmp/output.ipynb'))
|
|
|
|
|
code_cells = [c for c in nb['cells'] if c['cell_type'] == 'code']
|
|
|
|
|
outputs = [c.get('outputs', []) for c in code_cells]
|
|
|
|
|
total_outputs = sum(len(o) for o in outputs)
|
|
|
|
|
assert total_outputs > 0, 'Notebook produced no outputs'
|
|
|
|
|
print(f'Notebook executed successfully with {total_outputs} output(s)')
|
|
|
|
|
"
|