Skip to content

feat(kanban): stamp originating ACP session_id on tasks (#23208)#28447

Merged
teknium1 merged 1 commit into
mainfrom
hermes/hermes-de55f5dd
May 19, 2026
Merged

feat(kanban): stamp originating ACP session_id on tasks (#23208)#28447
teknium1 merged 1 commit into
mainfrom
hermes/hermes-de55f5dd

Conversation

@teknium1

Copy link
Copy Markdown
Contributor

Salvages #23208 by @awizemann.

Tracks which chat session created a kanban task so clients can render a per-session board without falling back to tenant + time-window heuristics.

  • Schematasks gains nullable session_id TEXT column with index. Additive migration in _migrate_add_optional_columns.
  • ACP propagationacp_adapter/server.py exposes originating session id via HERMES_SESSION_ID with proper save/restore around the agent loop.
  • Toolkanban_create reads HERMES_SESSION_ID (explicit session_id arg can override).
  • CLIhermes kanban list --session <id> filter; JSON output exposes session_id.

Resolved 3 conflicts (acp_adapter previous_session_id alongside main's edit_approval_token, kanban_db migration block alongside main's model_override, create_task signature alongside main's initial_status). Authorship preserved via rebase merge.

Validation

  • 5 session_id-related tests pass.

Salvages #23208 by @awizemann. Tracks which chat session created a
kanban task so clients can render a per-session board without falling
back to tenant + time-window heuristics.

- Schema: tasks gains nullable session_id TEXT column with index
  (additive migration in _migrate_add_optional_columns).
- ACP: server.py exposes the originating session id via HERMES_SESSION_ID
  with save/restore around the agent loop.
- Tool: kanban_create reads HERMES_SESSION_ID (with explicit override).
- CLI: 'hermes kanban list --session <id>' filter; JSON output exposes
  session_id.
@teknium1 teknium1 merged commit 31fe229 into main May 19, 2026
@teknium1 teknium1 deleted the hermes/hermes-de55f5dd branch May 19, 2026 04:15
@github-actions

Copy link
Copy Markdown
Contributor

🔎 Lint report: hermes/hermes-de55f5dd vs origin/main

ruff

Total: 0 on HEAD, 0 on base (➖ 0)

🆕 New issues: none

✅ Fixed issues: none

Unchanged: 0 pre-existing issues carried over.

ty (type checker)

Total: 8844 on HEAD, 8840 on base (🆕 +4)

🆕 New issues (1):

Rule Count
unresolved-attribute 1
First entries
tests/tools/test_kanban_tools.py:835: [unresolved-attribute] unresolved-attribute: Attribute `session_id` is not defined on `None` in union `Task | None`

✅ Fixed issues: none

Unchanged: 4637 pre-existing issues carried over.

Diagnostics are surfaced as warnings — this check never fails the build.

@alt-glitch alt-glitch added type/feature New feature or request P3 Low — cosmetic, nice to have comp/cli CLI entry point, hermes_cli/, setup wizard comp/acp Agent Communication Protocol adapter comp/plugins Plugin system and bundled plugins labels May 19, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

comp/acp Agent Communication Protocol adapter comp/cli CLI entry point, hermes_cli/, setup wizard comp/plugins Plugin system and bundled plugins 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.

3 participants