#540: collaborative tags #620
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "fix-540"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Per the design note on #540 (build on approval-by-silence).
internal/tagspackage: path → tags map beside recents/favorites (tags.json, statestore pattern). Normalization mirrored client-side (pure:tag-norm): lowercase, trimmed, single-spaced, letters/digits/dash/space, ≤40 chars. Caps: 20 tags/item, 5000 tagged items.GET/PUT /api/v1/tags?path=andGET /api/v1/tags/find?tag=— Stat gate through the caller's scoped store on every path, including each find result (recents pattern: invisible/vanished paths drop off silently).menuGates(...).mutate; hidden entirely on read-only items without tags.tag:fooin the search box lists everything carrying that tag (feat.tagsboot probe, curly-quoted view title,noTagResultsempty state). i18n ×4.Deliberate v1 edges (documented on the issue): tags survive the trash round-trip by staying path-keyed; a purge leaves a stale entry that the Stat gate hides and the path cap bounds.
Red witnessed on both sides, then green: go vet, go test ./..., extract fence, full web suite.