Public Access
Let a tag play several albums in order
An assignment is now an ordered list of albums (e.g. one vinyl compiling two EPs that are separate releases in the library). Albums move to their own table, with a migration for existing databases. The scan and lookup responses return an albums list instead of the single artist/album/uri fields. The tag page lists its albums with up, down and remove, and search results get an Add button. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
+7
-6
@@ -5,11 +5,11 @@ A small service that tells Home Assistant which album to play for a scanned RFID
|
||||
## Language
|
||||
|
||||
**Tag**:
|
||||
A physical RFID card, identified by the ID the reader reports (e.g. `53-13-0B-2A-34-00-01`). Nothing is ever written to it.
|
||||
_Avoid_: card (in code), NFC tag
|
||||
An RFID sticker on a vinyl record, identified by the ID the reader reports (e.g. `53-13-0B-2A-34-00-01`). Nothing is ever written to it.
|
||||
_Avoid_: card, NFC tag
|
||||
|
||||
**Assignment**:
|
||||
The link from one **Tag** to one album (artist + album) in the music library.
|
||||
The link from one **Tag** to an ordered list of one or more albums (artist + album) in the music library, played one after the other. Usually one album; more when one physical record holds several digital releases (e.g. a vinyl compiling two EPs).
|
||||
_Avoid_: encoding, mapping, tag map
|
||||
|
||||
**Unassigned tag**:
|
||||
@@ -22,14 +22,15 @@ One report that a **Tag** was placed on a reader, as relayed by Home Assistant.
|
||||
## Relationships
|
||||
|
||||
- A **Tag** has zero or one **Assignment**
|
||||
- An **Assignment** points to exactly one album
|
||||
- An **Assignment** holds one or more albums, in play order
|
||||
- Every **Scan** is of exactly one **Tag**; the first **Scan** of an unseen **Tag** creates it as an **Unassigned tag**
|
||||
|
||||
## Example dialogue
|
||||
|
||||
> **Dev:** "Someone put a new card on the reader — do we need to encode it?"
|
||||
> **Domain expert:** "It's an **Unassigned tag** now; open the page and give it an **Assignment**. Nothing gets written to the card."
|
||||
> **Dev:** "I stuck a tag on a new record and put it on the reader. Do we need to encode it?"
|
||||
> **Domain expert:** "It's an **Unassigned tag** now; open the page and give it an **Assignment**. Nothing gets written to the tag."
|
||||
|
||||
## Flagged ambiguities
|
||||
|
||||
- "Album" in an **Assignment** means a release in the digital library (album or EP), not the physical record: one record can map to several.
|
||||
- "Encode the tags" meant assigning an album to a **Tag**, not writing data onto it. Resolved: **Assignment**.
|
||||
|
||||
Reference in New Issue
Block a user