Traced the origin of the-custodian issues #1-5 (opened 2026-07-08, all reviewed and closed 2026-07-20): this ActivityDefinition's matched rule always produces a TaskSpec (rules/actions.py::_task_spec_for_rule), and RunActivityWorkflow unconditionally routes TaskSpecs through emit_tasks -> the deployment-wide IssueSink (ISSUE_SINK_TYPE=rest -> issue-core -> Forgejo). It is the fleet's only consumer of the task_template rule action -- confirmed via grep across activity-definitions/. Per current policy (Forgejo issue tracking is not the fleet coordination mechanism), paused rather than left to recreate the same sidetrack daily: enabled: false, status: paused, re-enable path documented in the file (needs a new activity-core report-sink authoring a kind: intake work record instead of an IssueSink task spec). Added as item 6 to CUST-WP-0060's stage-3 successor seed, including the reminder to grep the fleet for any other task_template consumer before stage 3 ships. This is the ADR-001 file-level fix; the live activity-core DB row and Temporal schedule pick it up on the next Railiance-deployed 'make sync-activity-definitions' run -- not something I have credentials or standing to trigger directly from this session. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
3.1 KiB
| id | name | type | version | enabled | owner | governance | status | created | updated | trigger | context_sources | report_sinks | ||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| b8e4f1a2-3c6d-4e9f-a1b2-7d8e9f0a1b2c | Daily TODO.md Stale Review | activity-definition | 1.1 | false | custodian | custodian | paused | 2026-07-08 | 2026-07-20 |
|
|
|
Daily TODO.md Stale Review
Paused 2026-07-20. The matched rule below always produces a
TaskSpec(rules/actions.py::_task_spec_for_rule), whichRunActivityWorkflowunconditionally routes throughemit_tasks→ the deployment-wideIssueSink(ISSUE_SINK_TYPE, defaultrest→ issue-core → Forgejo). There is no per-activity sink override in the current schema, and this activity is the fleet's only consumer oftask_template— it was the sole source of 5 stale-review Forgejo issues (the-custodian#1–#5, opened 2026-07-08, all reviewed and closed 2026-07-20). Per current policy, Forgejo issue tracking is not the fleet coordination mechanism (binky-control housekeeping session, 2026-07-20) — so this activity is disabled (enabled: false) rather than left to recreate the same sidetrack daily.Re-enable path: redirect the rule's output onto the work-record backbone (
work-record-types_v0.1.md,kind: intake— "a stale TODO.md is exactly a finding/directive") instead ofIssueSink. This needs either a new report-sink type in activity-core (file-based intake-item authoring in the target repo, mirroringstate-hub-progress) or routing through the stage-3 promotion tooling seeded inCUST-WP-0060's closure review (item 6, added 2026-07-20). Do not re-enable withenabled: truealone; that only restores the Forgejo-issue behavior.This file change is the ADR-001 source of truth; the live activity-core DB row picks it up on the next
make sync-activity-definitionsrun (Railiance-deployed, not run from this edit).
Runs daily at 08:30 Europe/Berlin (after WSJF triage at 07:20). Scans
registered workstation repos for TODO.md files that have not changed in
6+ days and emits a review task per stale repo.
Policy: TODO.md is a pragmatic interruption buffer only. Stale files should be reviewed — archive done items, delete noise, or promote durable work into a workplan via ADR-001.
id: flag-stale-todo-md
for_each: context.todo_staleness.repos
bind_as: repo
condition: 'context.repo.age_days >= 6'
action:
task_template: 'Review stale TODO.md — {context.repo.repo_slug}'
description: >-
TODO.md unchanged for {context.repo.age_days} days (mtime {context.repo.mtime}).
Review open items: archive done work, delete noise, or promote valuable
topics to a workplan file and run statehub fix-consistency.
target_repo: context.repo.repo_slug
priority: low
labels: ["todo-md", "stale-review", "automated"]