Skip to content

Ask about undeposited notes weekly, not only when metadata changes - #48

Merged
lmoresi merged 2 commits into
mainfrom
docs/deposit-ready-schedule
Sep 2, 2026
Merged

lmoresi merged 2 commits into
mainfrom
docs/deposit-ready-schedule

Conversation

@lmoresi

@lmoresi lmoresi commented Sep 2, 2026

Copy link
Copy Markdown
Contributor

The push trigger fires on a metadata change. The condition it cares about is
a state: archival, published, holding no record. A note that reached that
state before this workflow existed — or whose metadata has simply not moved
since — is never asked about at all.

Retrofitting boundary-conditions-on-non-planar-boundaries is what showed it.
Nothing in the repository would have offered that note a DOI; it had to be asked
for by hand, and the only reason it was ever offered before that was an
unrelated backfill that happened to touch its metadata.

So the same question is asked weekly, an hour before the outstanding report,
so a request opened on Monday appears in that week's issue rather than waiting
for the next.

Why this is safe now and would not have been before

A repeating trigger without the guard from #46 would mint a fresh DOI every week
for every request left waiting, abandoning the draft behind it. With the guard,
an open request counts as asked.

Verified against the live API before adding this: after the first run reserved
10.6084/m9.figshare.33420637 and opened #47, two further runs both reported
already asked: boundary-conditions-on-non-planar-boundariesto ask about: none, created no draft and opened nothing.

What a weekly run does

For each archival note with no record and no open request: reserve a DOI and
open one request. Nothing else — it never publishes, and on a quiet week it does
nothing and says nothing. The judgement in it is that a DOI gets reserved
without a push having prompted it; reserved DOIs are private, resolve nowhere,
and an unmerged one appears in the weekly report where --delete-draft clears
it.

Underworld development team with AI support from Claude Code

The push trigger fires on a metadata CHANGE, and the condition it cares
about is a STATE: archival, published, holding no record. A note that
reached that state before this workflow existed -- or whose metadata has
simply not moved since -- is never asked about at all.

Retrofitting the boundary-conditions note is what showed it. Nothing in
the repository would have offered it a DOI; it had to be asked for by
hand, and the only reason it was ever offered before that was an
unrelated backfill that happened to touch its metadata.

So the same question is asked weekly. That is only safe because of the
guard merged in #46: a request already open counts as asked, so a note
waiting on a decision is not asked again and does not accumulate drafts.
Verified before adding this -- two further runs against the live API
reported "already asked" and created nothing.

Scheduled an hour before the `outstanding` report, so a request opened on
Monday appears in that week's issue rather than waiting for the next.

Underworld development team with AI support from Claude Code
pyyaml is not in the test environment, and the triggers are a flat block
at the top of the file. I pushed this test failing: the pipe into `tail`
masked pytest exit status, so the chain that committed it carried on.

Underworld development team with AI support from Claude Code
@lmoresi
lmoresi merged commit 17edb87 into main Sep 2, 2026
2 checks passed
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