Skip to content

Watchtower /review/<id> 500 for vendored consumers: dispatch_pause import path wrong #16

Closed

Description

@DimitriGeelen

Context

  • Framework version: dev
  • Project: project (shared-tooling mode)
  • Reported: 2026-06-13T22:34:06Z

Description

All per-task review pages (/review/T-XXX) return HTTP 500 for vendored consumers.

Root cause:
web/blueprints/review.py:17 -> sys.path.insert(0, str(PROJECT_ROOT / 'lib'))
web/blueprints/review.py:25 -> from dispatch_pause import format_age, list_paused_dispatches_for_task, truncate

For a vendored consumer, PROJECT_ROOT is the consumer project root (e.g. /mame/project), whose lib/ does not exist. The module actually lives in the framework lib at /.agentic-framework/lib/dispatch_pause.py. The import raises ModuleNotFoundError: No module named 'dispatch_pause', and _load_paused_for_task() (called from review() at line 190) 500s the whole page. /approvals is unaffected (does not call _load_paused_for_task).

Impact: every /review/ deep link (including the QR/review-marker links printed by 'fw task update --status work-completed') is unreachable on vendored installs.

Suggested fix: also add the framework lib to sys.path (relative to file: parents[2]/lib) and guard the optional paused-dispatch import so a missing module degrades to an empty panel instead of 500ing the page.


Reported via fw upstream report from field installation

Activity

  1. DimitriGeelen commented on Oct 12, 2026

    @DimitriGeelen
    OwnerAuthor

    [AEF intake] Closed: fixed — 2026-10-12

    Fixed under T-2645 in commit 6e2957c (on the bleeding-edge branch; it ships in the next release).

    These status updates are automated, but Dimitri personally looks at every issue and decides what happens to it. Replies on this issue are read.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions