Skip to content

feat(arxiv-digest): post a 'no new papers' heartbeat on empty days#67

Closed
Jammy2211 wants to merge 1 commit into
mainfrom
arxiv-empty-heartbeat
Closed

feat(arxiv-digest): post a 'no new papers' heartbeat on empty days#67
Jammy2211 wants to merge 1 commit into
mainfrom
arxiv-empty-heartbeat

Conversation

@Jammy2211

Copy link
Copy Markdown
Collaborator

Why

Today (2026-07-13) the digest ran, found 0 strong-lensing papers, and — by the old "skip silently on empty" design — posted nothing. That makes a quiet #papers ambiguous: nothing found vs. broken/delayed run. Per user request, empty days should now always post a short notice.

Change

  • count == 0 → a dedicated step writes a No new strong-lensing papers today payload and posts it. No Claude call → zero subscription usage on empty days.
  • count > 0 but Claude drops all as off-topic → Claude now writes the same notice instead of writing nothing.
  • POST step → always runs now. A missing slack_payload.json no longer means "empty day" (that path writes the notice) — it means the Claude step failed silently (e.g. expired CLAUDE_CODE_OAUTH_TOKEN), so it now fails loudly instead of masquerading as a quiet day.

Net effect: #papers is never silent — every weekday you get either a digest or a one-line "nothing today", and a genuinely broken run turns the job red.

Follows on from #66 (earlier cron). Validated: workflow YAML parses; empty-notice payload builder dry-run produces valid Slack blocks.

🤖 Generated with Claude Code

Previously empty days were silent, so a quiet #papers was ambiguous —
nothing found vs. a broken/delayed run. Per user (2026-07-13), always
post:

- count==0: a dedicated step writes a 'No new strong-lensing papers
  today' notice (no Claude call, zero subscription usage).
- count>0 but Claude drops all as off-topic: Claude now writes the same
  notice instead of writing nothing.
- POST always runs; a missing payload now means the Claude step failed
  silently (e.g. expired OAuth token) and fails loudly instead of
  masquerading as an empty day.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@Jammy2211

Copy link
Copy Markdown
Collaborator Author

This PR is redundant — its feature is already on main

Picked this up as one of three conflicting PRs needing a rebase. It does not need one: it needs closing.

main already carries the heartbeat, via commit ad81228"feat(arxiv-digest): post a 'no new papers' heartbeat on empty days", the same title as this PR. But this branch's own commit (59ae5df) is not an ancestor of main, so the work landed by another route and left this PR behind.

What it still contributes: nothing. I merged origin/main into the branch locally, resolved the one conflict, and diffed the result against main:

$ git diff origin/main --stat
(empty)

The trap worth recording. The only thing this branch still held was the older text of one comment line:

  • this branch: # CURATED — 1–3 AI-chosen highlights with short summaries, then a compact list.
  • main (newer, via arxiv digest: author bylines + longer highlight summaries #77 "add author bylines and longer highlight summaries"): # CURATED — 1–3 AI-chosen highlights, each with an author byline and a 4–5 sentence summary, then a compact list of the rest.

That is the entire conflict. A mechanical "resolve and merge" that took this branch's side would have silently reverted #77's improvement while appearing to ship a feature that already exists. Resolving the other way produces an empty no-op PR.

I have pushed nothing — the branch is untouched at 59ae5df.

Recommendation: close this PR unmerged and delete arxiv-empty-heartbeat. The feature is live; there is nothing here to salvage. Flagging rather than closing it myself, since closing is a human call.

(Related: #80 also edits this workflow and is currently MERGEABLE/CLEAN. It is unaffected by this — it already contains the heartbeat, inherited from main.)

@Jammy2211

Copy link
Copy Markdown
Collaborator Author

Closing unmerged, per the analysis above and human direction.

The 'no new papers' heartbeat this PR proposed is already live on main (commit ad81228) — so nothing is lost by closing. This branch's net diff against main is empty; its only remaining content was a stale copy of one comment line that #77 has since improved.

No code was pushed to the branch. arxiv-empty-heartbeat is left at 59ae5df for now.

@Jammy2211 Jammy2211 closed this Jul 15, 2026
@Jammy2211 Jammy2211 deleted the arxiv-empty-heartbeat branch July 15, 2026 08:28
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