Surface aging brain/raw/ pending notes instead of relying on someone remembering to check #82

Open
opened 2026-07-15 09:45:35 +00:00 by mathias · 0 comments
Owner

Context

Follow-up to #81 (adds the mechanism to promote/reject a pending note —
this issue is about the missing trigger to actually look). Even with
brain_reject shipped, nothing prompts a review; the queue only gets checked
if someone happens to call brain_pending manually. That's exactly how the
4 real items sitting since 2026-04-23 went unnoticed for 3 months — the tool
existed the whole time, nobody had a reason to call it.

Same shape as brain-gardener#121 (surface resolved review issues via comment,
don't auto-close — the human still decides, but the system should be the one
that remembers to ask). Same principle applies one stage earlier here: the
system should prompt "these are aging," not require someone to remember the
queue exists.

Proposal

Options (pick one, don't over-build):

  1. ntfy digest, threshold-gated. A periodic (daily/weekly) check: any
    brain/raw/*.md older than N days (e.g. 14) fires an ntfy notification
    listing filenames + age, same pattern as brain-audit's existing severity-gated
    digest (fires only when something crosses the threshold, not every run —
    avoids confirmation-fatigue).
  2. Surface via brain_context. If a session's brain_context call already
    returns "prior decisions/corrections" for a project, cheaply also note "N
    pending brain/raw/ items, oldest Xd" so it surfaces in-session without a new
    scheduled job.
  3. Both — ntfy for the out-of-band nudge, brain_context for the in-session one.

Whichever: never auto-reject on age. Aging is a trigger to ask a human, not
a verdict — an old note might still be exactly right to promote once someone
looks. Mirrors the exact reasoning issue-status-derived-surfaced-not-closed
already settled for the tracker (2026-06-30, referenced in brain-gardener#121).

Acceptance

An aging pending note (>threshold days) is surfaced to Mathias without him
having to think to call brain_pending. No note is ever auto-rejected or
auto-promoted by this mechanism.

Related

  • #81 (parent — the reject capability this surfacing feeds into)
  • brain-gardener#121 (same surfaced-not-decided pattern, one layer over)
## Context Follow-up to #81 (adds the *mechanism* to promote/reject a pending note — this issue is about the missing *trigger* to actually look). Even with `brain_reject` shipped, nothing prompts a review; the queue only gets checked if someone happens to call `brain_pending` manually. That's exactly how the 4 real items sitting since 2026-04-23 went unnoticed for 3 months — the tool existed the whole time, nobody had a reason to call it. Same shape as brain-gardener#121 (surface resolved review issues via comment, don't auto-close — the human still decides, but the *system* should be the one that remembers to ask). Same principle applies one stage earlier here: the system should prompt "these are aging," not require someone to remember the queue exists. ## Proposal Options (pick one, don't over-build): 1. **ntfy digest, threshold-gated.** A periodic (daily/weekly) check: any `brain/raw/*.md` older than N days (e.g. 14) fires an ntfy notification listing filenames + age, same pattern as brain-audit's existing severity-gated digest (fires only when something crosses the threshold, not every run — avoids confirmation-fatigue). 2. **Surface via `brain_context`.** If a session's `brain_context` call already returns "prior decisions/corrections" for a project, cheaply also note "N pending brain/raw/ items, oldest Xd" so it surfaces in-session without a new scheduled job. 3. **Both** — ntfy for the out-of-band nudge, `brain_context` for the in-session one. Whichever: never auto-reject on age. Aging is a trigger to *ask a human*, not a verdict — an old note might still be exactly right to promote once someone looks. Mirrors the exact reasoning `issue-status-derived-surfaced-not-closed` already settled for the tracker (2026-06-30, referenced in brain-gardener#121). ## Acceptance An aging pending note (>threshold days) is surfaced to Mathias without him having to think to call `brain_pending`. No note is ever auto-rejected or auto-promoted by this mechanism. ## Related - #81 (parent — the reject capability this surfacing feeds into) - brain-gardener#121 (same surfaced-not-decided pattern, one layer over)
Sign in to join this conversation.
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: mathias/hyperguild#82