Skip to content

feat(usage-hub): #1116 remainder items 4+5 — stewardship stale-feed finding + collector-stop acceptance verification #2990

Open

Description

@dezren39

Remainder of #1116 (usage-hub self-monitoring), split from queue task 3010 after item (3) landed via PR #2973 (merged, merge commit 04cd4e741393d230ffb8c643811752072afd32b3).

Item (4) — stewardship stale-feed finding. Stewardship's hourly cycle must name a stale fleet feed as a finding. Verified absent 2026-10-31: grep -ri 'stale.*feed|feed.*stale' ~/workspace/custom-skills/stewardship returned no matches. Add it if still absent when worked (name the feed, its age, and the threshold), or verify against live cycle output if it has since landed.

Item (5) — end-to-end acceptance verification. Demonstrate the #1116 acceptance test against the landed pieces: with the collector stopped in a test, the dashboard/health view visibly reports the feed as stale within one collector interval; silence must never read as healthy. Fix any feed-age prominence gap found in the page footer as part of this work.

Acceptance

Baseline note (2026-10-31): the aggregator suite on clean main (b4db14b7e) has 7 pre-existing page-manifest failures (536 pass / 7 fail); the PR #2973 branch showed the identical 7 (543 pass, all checkout-drift tests green). Do not chase those here — they are a separate baseline problem.

Acceptance criteria

Activity

  1. added
    queue/queuedHas a queued task in the Supabase agent queue
    source/queue-workerFiled or worked by the queue/worker pilot
    priority/normalOrdinary priority (the default)
    effort/mMedium: expected under 1 day of work
    meta/enrichedIntake review done: acceptance criteria, links, and normalized labels added
    on Oct 31, 2026
  2. dezren39 commented on Oct 31, 2026

    @dezren39
    MemberAuthor

    Intake review

    🤖 Agent note · filed

    Related: #1116 (parent; items 1–3 landed, item 3 via PR #2973 merged 04cd4e7). This issue is the split remainder (items 4+5); a live fix task (4298) is already queued, so no new enqueue was needed.
    Notes: The body already carried an inline Acceptance list; it is preserved verbatim and now also exists as a formal ## Acceptance criteria section. Still live — verified no merged PR resolves items 4+5 (the stewardship stale-feed grep came back empty when the issue was filed this morning).
    Risks: Item 5's collector-stop test needs a controlled collector stop; schedule it so a real stale-feed alert is not mistaken for the test.
    Suggested approach: add the stale-feed finding to the stewardship cycle instruction first (item 4), then run the collector-stop demonstration against it (item 5) and post the verdict on #1116.

  3. dezren39 commented on Oct 31, 2026

    @dezren39
    MemberAuthor

    🤖 Agent note · picked up

  4. added
    work/assignedQueue worker lifecycle state
    queue/claimedQueue worker lifecycle state
    and removed
    queue/queuedHas a queued task in the Supabase agent queue
    queue/claimedQueue worker lifecycle state
    on Oct 31, 2026
  5. 5 remaining items

  6. dezren39 commented on Oct 31, 2026

    @dezren39
    MemberAuthor

    🤖 Agent note · picked up

  7. added
    queue/blockedQueue or user escalation state
    status/blockedQueue or user escalation state
    and removed
    queue/claimedQueue worker lifecycle state
    work/assignedQueue worker lifecycle state
    on Oct 31, 2026
  8. dezren39 commented on Oct 31, 2026

    @dezren39
    MemberAuthor

    🤖 Agent note · blocked

    • Agent: OpenChamber scheduled lane
    • Session / ID: queue task 4298, ses_e5e6d98aeccffezI6Qb749O0hj
    • Found via: resumed task investigation
    • Task: stewardship stale-feed finding and collector-stop acceptance
    • Blocker: Access to the live Muse stewardship checkout or its authorized deployment path is needed to implement and verify item 4. The isolated real collector-stop-to-HTTP test remains unverified.
    • Resume: preserve and review the seven uncommitted files in /home/user/git/fleet/4298, branch queue/4298-2990-stale-feed. A five-minute stale cutoff has no scheduling grace and may false-alarm; a 60-second polling interval can exceed the strict five-minute deadline. Set PATH=/run/current-system/sw/bin to restore python3 for the prior drill.
    • Links: feat(usage-hub): self-monitoring — feed staleness + fixture-fallback alarm #1116; queue task 4298
  9. added a commit that references this issue on Nov 3, 2026
  10. dezren39 commented on Nov 3, 2026

    @dezren39
    MemberAuthor

    🤖 Agent note · stale-feed threshold slice landed (task 7491)

    The preserved-branch work for this issue's collector-stop acceptance is now on main:

    • PR fix(aggregator): stale-feed threshold at the collector's 5-minute cadence (#2990) #4914 — fix(aggregator): stale-feed threshold at the collector's 5-minute cadence — MERGED at 2026-11-03T13:43:57Z, merge commit 5bc74ff4622cf65948e9d96830534528bbe9f6e8.
    • What it changes: FEED_STALE_MS = 5 * 60_000 is now the single exported bound in src/feed.ts; health.ts and sources/live.ts import it and use >=; WATCHDOG_FEED_STALE_MS = FEED_STALE_MS; the kill-collector drill uses STALE_MS=300000 and records the 5-minute threshold in its result JSON; health.test.ts gains "a stopped collector is visible on the health page by the next five-minute interval".
    • Tests: aggregator health/watchdog/feed suites 97 pass; full suite 1321 pass / 1 pre-existing nav.test.ts failure reproduced on clean main.

    This does not close the issue: the stewardship stale-feed finding (item 4), the live collector-stop evidence (item 5), and the #1116 criterion verdict are still outstanding. It removes the threshold change from the remaining work.

  11. added
    task/triageQueue packet kind: verify, reproduce, and route this item
    on Nov 3, 2026
  12. developing-today commented on Nov 3, 2026

    @developing-today
    Contributor

    agent-note:v1
    state: reviewed (coverage loop-back)
    Coverage pass 2026-11-03, loop-back review: this issue was re-reviewed (drift / overlap / already-handled / stale / blockers / ordering) so every open issue in the four repos is reviewed and in the system. Verdict: still live; in the system as task 4298 (small_fix, blocked, priority 40) in repo-health-code-pilot. Labels audited and synced. If it is already handled at current main, its triage closes it with evidence; if oversized, the triage files the split; blockers belong on this issue.
    Found via: coverage loop-back 2026-11-03

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

Metadata

Metadata

Assignees

Labels

effort/mMedium: expected under 1 day of workkind/enhancementmeta/enrichedIntake review done: acceptance criteria, links, and normalized labels addedpriority/normalOrdinary priority (the default)queue/blockedQueue or user escalation statequeue/queuedHas a queued task in the Supabase agent queuesource/queue-workerFiled or worked by the queue/worker pilotstatus/blockedQueue or user escalation statetask/triageQueue packet kind: verify, reproduce, and route this item

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions