π

Stars-894

| Entity | Fields | |--------|--------| | TagSuggestion | articleId (uuid), term (string), taxonomyId (uuid), confidence (float), suggestedAt (timestamp) | | TagSuggestionEvent | eventId (uuid), articleId, taxonomyId, action (enum: ACCEPT/DISMISS), eventTime |

  • Keyboard – Arrow‑up/down to navigate, Enter to accept, Esc to dismiss.
  • Persisted State – Accepted tags are added to the article’s tag list instantly; dismissed suggestions disappear only for that session (they may re‑appear if the article is edited later).
  • | Phase | Timeframe | Major Milestones | |-------|-----------|-------------------| | A – Concept | Jan 2022 – Jun 2022 | Mission Concept Review (MCR) completed. | | B – Preliminary Design | Jul 2022 – Dec 2023 | Preliminary Design Review (PDR). | | C – Detailed Design | Jan 2024 – Dec 2025 | Critical Design Review (CDR); Procurement contracts signed. | | D – Fabrication & I&T | Jan 2026 – Dec 2027 | Subsystem qualification; Environmental tests (vibe, thermal vacuum). | | E – Launch & Early Ops | Q1 2028 | Launch; 30‑day commissioning; First Light. | | F – Full Science Operations | Q2 2028 – Q4 2033 | Routine observations, data release, end‑of‑mission de‑orbit. |

    Key Critical Path: Detector module assembly → Integration → Environmental test → Launch. STARS-894

    Schedule Buffer: 6 months allocated for launch‑vehicle integration and early‑orbit checkout.


    | Sprint | Tasks | |--------|-------| | Sprint 1 (2 weeks) | - Create TagSuggestionDropdown React component
    - Set up debounced request flow
    - Draft API spec and add OpenAPI definitions | | Sprint 2 (2 weeks) | - Implement Node.js suggestion service (validation, taxonomy lookup)
    - Deploy placeholder NLP micro‑service (simple keyword extractor) | | Sprint 3 (2 weeks) | - Integrate fine‑tuned transformer model
    - Add snippet generation logic
    - Write unit & integration tests for backend | | Sprint 4 (2 weeks) | - Implement analytics endpoint & logging
    - Add accessibility improvements & keyboard shortcuts
    - Conduct performance testing & optimize latency | | Sprint 5 (1 week) | - Conduct UI/UX usability testing with 3 authors
    - Fix any discovered bugs
    - Prepare rollout documentation | | Sprint 6 (1 week) | - Feature flag rollout to 10 % of users (canary)
    - Monitor error rates & acceptance metrics
    - Full production enablement if no regressions | | Entity | Fields | |--------|--------| | TagSuggestion


    | Dependent Ticket | Description | |------------------|-------------| | STARS‑872 | Refactor taxonomy search endpoint to support fuzzy matching (required for mapping candidate terms). | | STARS‑931 | Deploy the new analytics pipeline to capture custom event types. | | STARS‑960 | UI redesign of the tag input field (to accommodate the dropdown). |


    | In‑Scope | Out‑Of‑Scope | |----------|--------------| | Real‑time tag suggestions while typing title, abstract, or body | Full automatic tag assignment without author review | | Integration with existing taxonomy service (GET /api/taxonomy) | Creation of new taxonomy entries (handled in a separate ticket) | | UI component for suggestion list (dropdown, keyboard navigation) | Machine‑learning model training pipeline (use pre‑trained model) | | Ability to accept/reject individual suggestions | Bulk tag‑apply across multiple articles in one action | | Logging of accepted/rejected suggestions for analytics | Multi‑language support (initially only English) | Keyboard – Arrow‑up/down to navigate, Enter to accept,


    | Method | Endpoint | Request | Response | |--------|----------|---------|----------| | POST | /api/tags/suggest | articleId: string, title: string, excerpt: string, existingTags: [string] | 200 OK suggestions: [ taxonomyId, label, confidence, snippet ] | | POST | /api/analytics/tag-suggestion | articleId, taxonomyId, action, timestamp | 202 Accepted{} | | GET | /api/taxonomy/search?q=:term | – | results: [ taxonomyId, label ] |