Skip to content

feat: Loom spine — LOOM_TASK_ID binding + pack --external (0.26.3)#51

Merged
Shahinyanm merged 3 commits into
mainfrom
feat/clean-pack
Jun 16, 2026
Merged

feat: Loom spine — LOOM_TASK_ID binding + pack --external (0.26.3)#51
Shahinyanm merged 3 commits into
mainfrom
feat/clean-pack

Conversation

@Shahinyanm

Copy link
Copy Markdown
Member

Summary

Two additive features that wire Task-Journal into the Loom board host.

  • LOOM_TASK_ID spine (tj-mcp): when the MCP runs inside a Loom task
    session (LOOM_TASK_ID env var set), task_create resolves or creates ONE
    journal keyed by an loom:<id> external reference — all task_create calls
    in the pipeline share the same journal, so the agent's reasoning lands on the
    board task's history. Without LOOM_TASK_ID behavior is unchanged.
  • pack --external (tj-cli): task-journal pack --external loom:t-abc
    renders a resume pack by external reference instead of tj id, so a consumer
    that only knows the board task id can fetch its journal.

Rebased from stale 0.25.1 base onto current main (0.26.2), bumped to 0.26.3.
Fixes: cargo fmt, clippy unnecessary_to_owned in db test.

Type of change

  • Feature (non-breaking)

Test plan

  • task_id_by_external_resolves_exact_token — db-level unit test
  • cargo fmt --all -- --check
  • cargo clippy --workspace --all-targets -- -D warnings
  • cargo test --workspace --all-targets (all green)
  • RUSTDOCFLAGS=-D warnings cargo doc --workspace --no-deps

CHANGELOG

  • Added ## [0.26.3] entry (Added)

Shahinyanm and others added 3 commits June 16, 2026 14:47
When the MCP runs inside a Loom task session (LOOM_TASK_ID set), task_create
resolves/creates ONE journal per board task, tagged with a 'loom:<id>' external
reference, so every task_create call (and the whole pipeline) shares the same
journal — the agent's reasoning lands on the board task's history. Adds
db::task_id_by_external for idempotent resolution. Env-gated: without
LOOM_TASK_ID, behavior is unchanged. Additive + tested (db + mcp suites green).
pack now accepts --external (e.g. loom:t-abc) to render a task's dossier by its
external reference instead of its tj id, so a consumer that only knows the board
task id can fetch its journal. task_id becomes optional; positional id still
works unchanged. Tested.
- rebased 2 Loom commits (LOOM_TASK_ID spine + pack --external) onto
  main 0.26.2 — dropped already-merged ask --json + clean-pack dupes
- cargo fmt on cli main.rs + mcp main.rs (long lines)
- fix clippy unnecessary_to_owned in db.rs test
- bump workspace 0.26.3, CHANGELOG added

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@Shahinyanm Shahinyanm merged commit 75f65e2 into main Jun 16, 2026
7 checks passed
@Shahinyanm Shahinyanm deleted the feat/clean-pack branch June 16, 2026 11:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant