mirror of
https://github.com/kuhyx/testsAndMisc.git
synced 2026-11-11 21:54:00 +01:00
Some checks failed
dependency freshness / dependencies on newest stable (push) Waiting to run
md-naming / markdown naming convention (push) Waiting to run
Pre-commit checks / pre-commit (${{ matrix.group }}) (mypy, mypy) (push) Waiting to run
Pre-commit checks / pre-commit (${{ matrix.group }}) (pylint, pylint) (push) Waiting to run
Pre-commit checks / pre-commit (${{ matrix.group }}) (rest, ) (push) Waiting to run
Pre-commit checks / pre-commit (${{ matrix.group }}) (shellcheck, shellcheck) (push) Waiting to run
Shell tests / shell-tests (push) Waiting to run
Shell tests / lib-tests (push) Waiting to run
Shell tests / arch-tests (push) Waiting to run
Python tests / test (push) Has been cancelled
[issue_dashboard] shows what the local issue dashboard (~/src/issue-dashboard) knows, from the status.json its server rewrites on every refresh: "📋 <to do> · ⚙ <agents working> · ✓ <ready to merge>", green when something is ready to merge, red with "· ✗ <n>" when an agent or a proof failed, grey "📋 dashboard" when the file is missing or stale (server not running). Zero forks on the hot path; a click opens issue-dashboard-desktop, which reuses or starts the server and opens its window. Behaviour + fork-count test in tests/test_i3blocks_issue_dashboard.sh. Prunes the oldest evidence artifact to stay at the 60-file cap. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01WXd5qap8DWqZCS9mjh3CzH
40 lines
2.7 KiB
JSON
40 lines
2.7 KiB
JSON
{
|
|
"intent": "Make the issue dashboard (~/src/issue-dashboard) one click away from the i3 bar: an [issue_dashboard] block shows issues to do, agents working and work ready to merge, turns red when an agent or a proof failed, and a click opens the dashboard window the same way [book_guard] opens book-guard.",
|
|
"scope": [
|
|
"linux_configuration/i3blocks/issue_dashboard.sh - new block script",
|
|
"linux_configuration/i3blocks/config - [issue_dashboard] entry after [book_guard], interval=30",
|
|
"linux_configuration/tests/test_i3blocks_issue_dashboard.sh - behaviour test",
|
|
"Non-goal: the dashboard itself (lives in ~/src/issue-dashboard, local repo); i3/i3blocks were not reloaded on the live session."
|
|
],
|
|
"changes": [
|
|
"issue_dashboard.sh reads the one-line status.json the dashboard server rewrites on every refresh (~/data/issue-dashboard/status.json): '📋 <to do> · ⚙ <working> · ✓ <ready>', white normally, green when something is ready to merge, red with '· ✗ <n>' when an agent or a proof failed, grey '📋 dashboard' when the file is missing, unreadable or older than 180 s (server not running). Zero forks on the hot path: one builtin read, bash regex, printf clock.",
|
|
"A click runs ~/.local/bin/issue-dashboard-desktop via setsid -f, which reuses the dashboard server or starts it detached and opens an app window.",
|
|
"~/.config/i3blocks/issue_dashboard.sh symlinked to the repo file, the way i3/install.sh links every i3blocks/* file."
|
|
],
|
|
"verification": [
|
|
{
|
|
"command": "bash linux_configuration/tests/test_i3blocks_issue_dashboard.sh",
|
|
"result": "pass",
|
|
"evidence": "fresh / ready / failed / stale / missing / broken / empty / click asserted; strace shows exactly one execve (bash) and no clone/fork on the hot path."
|
|
},
|
|
{
|
|
"command": "bash linux_configuration/tests/test_i3blocks_efficiency.sh",
|
|
"result": "pass",
|
|
"evidence": "All i3blocks efficiency regression tests passed."
|
|
},
|
|
{
|
|
"command": "~/.config/i3blocks/issue_dashboard.sh (live status.json from the real server)",
|
|
"result": "pass",
|
|
"evidence": "'📋 5 · ⚙ 0 · ✓ 0' #FFFFFF while the server ran against Sepci0/kado-no-akari; '📋 dashboard' #6272A4 before it had ever run; BLOCK_BUTTON=1 started the launcher, which opened the (stubbed) browser with --app=http://127.0.0.1:8765/."
|
|
}
|
|
],
|
|
"risks": [
|
|
"The block appears only after the next i3 reload; nothing was reloaded on the live session.",
|
|
"A click with issue-dashboard-desktop missing does nothing (errors are silenced so the bar never breaks)."
|
|
],
|
|
"rollback": [
|
|
"git revert this commit and remove ~/.config/i3blocks/issue_dashboard.sh; i3-msg reload.",
|
|
"Confirm the bar still renders [book_guard] and the other blocks."
|
|
]
|
|
}
|