From a72e86bcb11d379289e02d868065f4dc86d0f23e Mon Sep 17 00:00:00 2001 From: Agando Date: Mon, 26 Oct 2026 13:03:11 +0100 Subject: feat(feedback): review dashboard, public guide, terminal commands (v4.6.94) Dashboard (/admin/feedback.html, admin-gated) - User-feedback tab over the live :8908 API: list, filter, search, publish reply, archive/reopen. Reply is what the reporter sees in /stear -> Your reports & replies. - Agent-items tab: 3 plans parked at autonomy:review + 19 defect reports, one click each. - Snapshot age line + stale warning (>30 min), and the last apply outcome with failures. - Existing /admin/ tab relabelled "Client error log" (it renders feedback_log.json, not the feedback store) and now links to the review dashboard. Decision path - admin/api/feedback-decide.php: exact-match nginx location + auth_request, Origin check, item_id allowlist, append-only decisions.jsonl with fwrite+fsync verification. - scripts/newos4-feedback-apply.py (darkbot): last decision per item wins, superseded rows recorded, reject reverts safe->review, per-item try/except, ledger saved per mutation, realpath containment, exact standalone-line marker flip, file mode preserved, queue rotation at 1 MB. Steering directives now carry the report title. - scripts/newos4-feedback-collect.py: snapshot for the dashboard, 40-line plan head, steering shape assert (-1 = unknown), recent_apply outcomes. - newos4-feedback-sync.sh: flock -n so overlapping runs cannot double-apply. Guide + terminal - feedback-guide.html: which channel (terminal feedback / /stear / automatic reports), expectations, exact payload per channel, how to write a report that gets fixed. Linked from /stear, index.html footer and help.html. - newOS4: feedback list|read|reply|archive|reopen|stats|dashboard|help (+ feedback-admin alias), admin-token derived per call, argument-validated dispatch so a sentence like "feedback list is broken on mobile" is still a message, "feedback -- " forces it. - help.html: 8 rows, coverage 362/362. Review: glm-5.3 REWORK -> 15 findings fixed, 5 refuted with evidence, 2 doc-only. Guide corrected (invented "60 MB per batch" replaced by the real 512 KB/5-per-10-min limits). --- help.html | 12 +- main.html | 6 +- modules/core/core-bundle.js | 159 ++++++++++++++++++++++++- modules/core/module-debug-supervisor.js | 159 ++++++++++++++++++++++++- modules/core/module-loader.js | 2 +- scripts/newos4-feedback-apply.py | 203 ++++++++++++++++++++++++++++++++ scripts/newos4-feedback-collect.py | 147 +++++++++++++++++++++++ 7 files changed, 681 insertions(+), 7 deletions(-) create mode 100755 scripts/newos4-feedback-apply.py create mode 100755 scripts/newos4-feedback-collect.py diff --git a/help.html b/help.html index 4eec9ef..9a06399 100644 --- a/help.html +++ b/help.html @@ -483,7 +483,9 @@ diff a.txt b.txt
-

πŸ“– Full Command Reference

+

πŸ“– New to feedback? How feedback works β€” which channel to use, what gets sent, and when to expect an answer.

+ +

πŸ“– Full Command Reference

⚠️ There is no shell. The terminal splits your line into argv and hands it to @@ -557,6 +559,14 @@ diff a.txt b.txt debug-trendsError frequency over time, grouped by day and typedebug-trends 7 debug-fixSuggest and optionally auto-apply fix for an errordebug-fix a1b2c3d4 debug-healthCheck DebugSupervisorModule health statusdebug-health + feedback <message>Send a message to the operator agent (alias hermes); feedback -- <text> forces a messagefeedback download link 403s on mobile + feedback list [status]List stored /stear reports β€” status new, read or archived (admin)feedback list new + feedback read <id>Show one report in full, including any reply (admin)feedback read 12 + feedback reply <id> <text>Publish a reply β€” the reporter sees it in /stear β†’ My reports; status becomes read (admin)feedback reply 12 shipped in v4.6.92 + feedback archive|reopen <id>Move a report between archived and new (admin)feedback archive 12 + feedback statsCounts per status plus the dashboard URL (admin)feedback stats + feedback dashboardOpen /admin/feedback.html in a new tab (admin)feedback dashboard + feedback-admin <sub>Admin alias for the feedback subcommands (list|read|reply|archive|reopen|stats|dashboard)feedback-admin stats
diff --git a/main.html b/main.html index 921c8a8..a44540d 100644 --- a/main.html +++ b/main.html @@ -1349,13 +1349,13 @@ - + - + - +