Skip to content

feat(agent): add kanban-comment note channel, separate from user /steer - #85988

Open
steveonjava wants to merge 1 commit into
NousResearch:mainfrom
steveonjava:fix/kanban-comment-steer-trust-boundary
Open

steveonjava wants to merge 1 commit into
NousResearch:mainfrom
steveonjava:fix/kanban-comment-steer-trust-boundary

Conversation

@steveonjava

@steveonjava steveonjava commented Aug 14, 2026

Copy link
Copy Markdown
Contributor

Kanban comments injected mid-turn currently use the same STEER_MARKER envelope as a genuine user /steer. That gives task-thread comments user-level authority they do not have.

This adds a sibling Kanban-comment envelope while leaving the existing STEER_MARKER mechanism byte-for-byte unchanged for prompt-cache stability. Kanban comments now use their own kanban_note() and _drain_pending_kanban_note() path. Comment injection uses unknown when the source has no author rather than calling it an operator.

The branch is rebased on current main. The conflict in agent/agent_runtime_helpers.py was resolved by keeping the current socket-shutdown refactor and placing the Kanban-note delivery helper beside the current /steer helper.

Verification on this head:

  • scripts/run_tests.sh tests/tools/test_kanban_comment_injection.py tests/agent/test_steer.py -q: 43 passed
  • Current turn-finalizer guard coverage: 25 passed
  • ruff check on all touched Python files, py_compile, and git diff --check: passed

No internal file paths, incident references, or forensic narrative are included here or in the commit message.

@alt-glitch alt-glitch added type/feature New feature or request P3 Low — cosmetic, nice to have comp/agent Core agent runtime: loop, agent_init, prompt builder, context-compression, responses endpoint comp/cron Cron scheduler and job management needs-decision Awaiting maintainer decision before any implementation labels Aug 14, 2026
@steveonjava
steveonjava force-pushed the fix/kanban-comment-steer-trust-boundary branch from 5c08c71 to 3415370 Compare August 22, 2026 12:39
@steveonjava
steveonjava marked this pull request as ready for review August 22, 2026 12:45
@steveonjava

Copy link
Copy Markdown
Contributor Author

Both red checks are fixed:

  • Check contributors / check-attribution: the third commit had picked up an Independent Verifier <verifier@users.noreply.local> author/committer identity (unmapped email, tripped the attribution guard). Amended it to my own identity (steveonjava@gmail.com, already in AUTHOR_MAP) and force-pushed with lease.
  • Python tests / Run tests slice 1/12: unrelated flake — test_concurrent_package_builders_commit_one_delta in tests/hermes_cli/test_relay_shared_metrics.py hit sqlite3.OperationalError: database is locked under thread-barrier concurrency. That file isn't touched by this diff; re-running CI cleared it.

All checks green, mergeStateStatus is CLEAN. Marking ready for review.

@steveonjava
steveonjava force-pushed the fix/kanban-comment-steer-trust-boundary branch from 3415370 to a5be3d5 Compare August 24, 2026 12:28
@steveonjava
steveonjava force-pushed the fix/kanban-comment-steer-trust-boundary branch from a5be3d5 to cf0159e Compare September 2, 2026 05:47
@steveonjava
steveonjava force-pushed the fix/kanban-comment-steer-trust-boundary branch 3 times, most recently from 1b407f2 to f6694c8 Compare September 15, 2026 08:35
@steveonjava
steveonjava force-pushed the fix/kanban-comment-steer-trust-boundary branch from f6694c8 to 711f3c6 Compare September 20, 2026 04:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

comp/agent Core agent runtime: loop, agent_init, prompt builder, context-compression, responses endpoint comp/cron Cron scheduler and job management needs-decision Awaiting maintainer decision before any implementation P3 Low — cosmetic, nice to have type/feature New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants