amal66 wants confidential download links to expire

The proposal would limit how long a leaked document link can remain useful, without immediately breaking older links in chat histories.

securityworkflow

amal66 proposed putting a 30-day lifetime on newly issued signed download links for confidential documents. That matters because a link can surface in browser history, forwarded messages, chat logs or referral data, turning an indefinitely valid URL into a lasting route to a file.

The proposed policy would:

  • give every new link a required expiry date;
  • reject links whose expiry is missing, altered, malformed or past;
  • keep previously issued, correctly signed links working during a transition, so historical chat links do not suddenly fail.

It also proposed a safer way to verify the signature protecting each link. This was a considered attempt to balance tighter access control with continuity for existing users, but the pull request was closed without being merged.

So what Legal teams handling sensitive uploads should care because it addresses a small-looking link-setting that can determine how long an accidental disclosure remains accessible.

View this fork on GitHub →

Spotted something wrong? Or know the PR text has fresher detail than the writeup above?

Commits in this thread

1 commit from amal66/mike, oldest first. Source extracted verbatim from the harvested git log.

SHA Subject Author Date
112a9a53 fix(chapter-14): give download tokens an expiration time Amal 2026-05-24 ↗ GitHub
commit body
Chapter: 14 - Secret lifetime.

Plain-English map:
Add a 30-day expiration to signed download tokens while keeping old tokens
backward compatible.

Why it matters:
A signed link should not be useful forever. Shorter lifetimes reduce the
damage if a link is copied, leaked, or found later.

Principle:
Secrets and bearer tokens should expire.

Precedent borrowed:
Upstream PR #77.

Upstream base: willchen96/mike@d39f580.
Original local commit: e6bfeb1.

Capture this thread into my fork

Download a single Markdown prompt that tells Claude how to port every commit above into your working tree — adapting paths and structure to match your repo. Run it via claude -p < capture-thread-1398.md from inside the repo you want the changes in.

⬇ Download capture-thread-1398.md