Skip to content

Tags: add tags[] to the composer with prefix autocomplete #28

Description

@Adron

Part of #27 — Tags: tagging posts, autocomplete, trending and tag-filtered feeds

  • Add a tag input to the composer and send tags[] on POST /api/messages.
  • Wire GET /api/tags/autocomplete for prefix suggestions as the user types (case-insensitive,
    literal prefix — do not fuzzy-match client-side and misrepresent the server's semantics).
  • Debounce, and cancel in-flight requests on each keystroke.
  • Show tags on the message card.

Tests: request carries tags; autocomplete debounce/cancel; card renders tags.


Filed from the parity review of feature/parity-wip @ 14d7795 against interlinedlist.com (OpenAPI /api/openapi.json, 233 paths) and the public help centre.

Activity

  1. added
    parityClosing a gap against interlinedlist.com
    P1Big hole in a shipped feature
    area:messagesSocial messages feed & composer
    on Sep 15, 2026
  2. Adron commented on Sep 16, 2026

    @Adron
    MemberAuthor

    Implemented in the PR above (branch issue/28-composer-tags). Closing here — review and any follow-up happens on the PR.

    Two contract corrections to this issue's assumptions:

    GET /api/tags/autocomplete takes q, not prefix — sending prefix returns 400 {"error":"Query parameter 'q' is required"}.

    Tags are not hashtag-shaped. Real tags on the live account include "life is short, o brave girl" and "light rail" — spaces and punctuation — so the input deliberately does not split on whitespace or rewrite anything.

    The debounce/cancellation requirement was treated as the load-bearing part and mutation-checked: removing the stale-query guard or the job cancellation each fails exactly the tests that cover them.

    Tag chips on the card are deliberately inert for now — #29 can attach a click handler to the existing test tag without touching the layout.

  3. added a commit that references this issue on Sep 16, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    P1Big hole in a shipped featurearea:messagesSocial messages feed & composerparityClosing a gap against interlinedlist.com

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions