forked from Rockachopa/Timmy-time-dashboard
Co-authored-by: Kimi Agent <kimi@timmy.local> Co-committed-by: Kimi Agent <kimi@timmy.local>
104 lines
3.2 KiB
Markdown
104 lines
3.2 KiB
Markdown
# Daily Run Automations
|
|
|
|
Scripts that run periodically to keep the development loop operational.
|
|
|
|
## Scripts
|
|
|
|
| Script | Source | Purpose | Trigger |
|
|
|--------|--------|---------|---------|
|
|
| `cycle_retro.py` | `../../scripts/cycle_retro.py` | Log structured retrospective data | Post-cycle |
|
|
| `loop_guard.py` | `../../scripts/loop_guard.py` | Idle detection with exponential backoff | Pre-cycle |
|
|
| `triage_score.py` | `../../scripts/triage_score.py` | Mechanical issue scoring | Every 10 cycles |
|
|
| `orchestrator.py` | `orchestrator.py` | The 10-minute ritual — Daily Run agenda + review | Manual |
|
|
|
|
## Running
|
|
|
|
These scripts are invoked by the dev loop orchestrator (Hermes). Manual execution:
|
|
|
|
```bash
|
|
# After a successful cycle
|
|
python3 scripts/cycle_retro.py --cycle 42 --success --issue 123 --type bug
|
|
|
|
# Check if queue has work (exits 0 if ready, 1 if idle)
|
|
python3 scripts/loop_guard.py
|
|
|
|
# Score open issues
|
|
python3 scripts/triage_score.py
|
|
|
|
# Generate Daily Run agenda (10-minute ritual)
|
|
python3 timmy_automations/daily_run/orchestrator.py
|
|
|
|
# Generate agenda with day summary (review mode)
|
|
python3 timmy_automations/daily_run/orchestrator.py --review
|
|
|
|
# Output as JSON
|
|
python3 timmy_automations/daily_run/orchestrator.py --review --json
|
|
```
|
|
|
|
## Daily Run Orchestrator
|
|
|
|
The orchestrator script connects to local Gitea and:
|
|
|
|
1. **Fetches candidate issues** matching configured labels (default: `daily-run` + `size:XS`/`size:S`)
|
|
2. **Generates a concise agenda** with up to 3 items for approximately 10 minutes of work
|
|
3. **Review mode** (`--review`): Summarizes the last 24 hours — issues/PRs touched, items closed/merged, test failures
|
|
|
|
### Configuration
|
|
|
|
Edit `timmy_automations/config/daily_run.json` under the `orchestrator` section:
|
|
|
|
```json
|
|
{
|
|
"orchestrator": {
|
|
"candidate_labels": ["daily-run"],
|
|
"size_labels": ["size:XS", "size:S"],
|
|
"max_agenda_items": 3,
|
|
"lookback_hours": 24,
|
|
"agenda_time_minutes": 10
|
|
}
|
|
}
|
|
```
|
|
|
|
| Option | Description | Default |
|
|
|--------|-------------|---------|
|
|
| `candidate_labels` | Labels to identify Daily Run candidates | `["daily-run"]` |
|
|
| `size_labels` | Size labels to filter by | `["size:XS", "size:S"]` |
|
|
| `max_agenda_items` | Maximum items in agenda | `3` |
|
|
| `lookback_hours` | Hours to look back in review mode | `24` |
|
|
| `agenda_time_minutes` | Target time budget for agenda | `10` |
|
|
|
|
### Environment Variables
|
|
|
|
Override config via environment:
|
|
|
|
```bash
|
|
export TIMMY_GITEA_API="http://localhost:3000/api/v1"
|
|
export TIMMY_REPO_SLUG="rockachopa/Timmy-time-dashboard"
|
|
export TIMMY_GITEA_TOKEN="your-token-here" # Alternative to token file
|
|
```
|
|
|
|
### Output Format
|
|
|
|
**Standard mode:**
|
|
```
|
|
============================================================
|
|
📋 DAILY RUN AGENDA
|
|
============================================================
|
|
Generated: 2026-03-21T15:16:02+00:00
|
|
Time budget: 10 minutes
|
|
Candidates considered: 5
|
|
|
|
1. #123 [XS] [infra]
|
|
Title: Fix config loading bug
|
|
Action: FIX
|
|
URL: http://localhost:3000/rockachopa/Timmy-time-dashboard/issues/123
|
|
...
|
|
```
|
|
|
|
**Review mode (`--review`):**
|
|
Adds a day summary section showing issues touched, closed, PRs merged, and any test failures.
|
|
|
|
## Configuration
|
|
|
|
See `../config/automations.json` for automation manifests and `../config/daily_run.json` for scheduling and orchestrator settings.
|