Skip to content

Tag-alarms: write a memo's own id to a blank NFC tag from its sheet - #132

Merged
mapgie merged 1 commit into
mainfrom
claude/nfc-alarm-scheduling-0m9cre
Sep 11, 2026
Merged

Tag-alarms: write a memo's own id to a blank NFC tag from its sheet#132
mapgie merged 1 commit into
mainfrom
claude/nfc-alarm-scheduling-0m9cre

Conversation

@mapgie

@mapgie mapgie commented Sep 11, 2026

Copy link
Copy Markdown
Owner

What

A saved tag-alarm can now write its own id to a blank NFC tag from the Tag row ("Write this tag-alarm to a tag"), the same way a chore writes its tag. The tag carries chordash://memo?memo=<id>; a tap on it then sets the alarm from any screen or with the app closed.

Linking by scanning stays for cards that already carry an id (an office pass, say). Writing is the path for a blank bedside tag: the app mints the id, so the link never depends on what the tag happened to answer with before.

How

  • NfcHandler reads a ?memo= query parameter alongside ?tag=, so both URIs come back as a bare id and one id space serves chores and tag-alarms. writeUri is the shared write; writeTagId delegates to it. A new NfcWriteRequest(kind, id) names what is being written.
  • The manifest gains an NDEF_DISCOVERED filter for host memo, so a cold tap launches the app.
  • MainActivity holds the typed write request; DashNavGraph hands the Chores tab only chore writes and the Memos tab only memo writes, so neither pops the other's dialog.
  • RemindersListScreen shows the existing WriteTagDialog for a memo write. The sheet's Tag dropdown gains the write item, which saves the memo with its own id as the linked tag, closes, and starts the write. The hint under the Tag row now names both routes.

Changelog

changelog/unreleased/memo-write-tag.json, minor bump.

🤖 Generated with Claude Code

https://claude.ai/code/session_016rWgRBgBaGjrH7iWGmUeSv


Generated by Claude Code

Linking by scanning depends on the phone reading an id the tag already
carries. Writing is the other way round: the app stamps the memo's own id
on the tag as chordash://memo?memo=<id>, the same way a chore writes
chordash://tag?tag=<id>, and saves the memo with that id as its linked tag.
Both URIs read back as a bare id through NfcHandler, so arming, the
one-job check and the capture flow are unchanged; the manifest gains the
memo host so a cold tap still launches the app.

The write request now carries its kind, so the Chores tab only shows the
write dialog for a chore write and the Memos tab only for a memo write.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016rWgRBgBaGjrH7iWGmUeSv
@mapgie
mapgie marked this pull request as ready for review September 11, 2026 22:15
@mapgie
mapgie merged commit e4fe4af into main Sep 11, 2026
6 checks passed
@mapgie
mapgie deleted the claude/nfc-alarm-scheduling-0m9cre branch September 11, 2026 22:15
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.

2 participants