Skip to main content

Epic 5, Story 9, Task 07: Docusaurus site search (FR-071)

Task ID: E5:S09:T07
Status: COMPLETE
Priority: LOW
Estimated Effort: Medium
Created: 2026-03-30
Last updated: 2026-03-30 — v0.5.9.7+1 (RW E5:S09:T07 — FR-071)
Code: E5S09T07

Feature Request: FR-071 – Site search


Summary

Implement FR-071: add Algolia DocSearch (or self-serve) or local/offline search plugin; document indexing/setup; verify on production URL (FR-070).


Input


Deliverable

  • Search plugin/theme configuration in Docusaurus
  • Maintainer-facing setup notes in portal/README.md
  • Smoke-test queries documented

Acceptance Criteria

  • Per FR-071 ACs.

Specification (executable — FR-071)

IDSourceStatement
S1R01Search UI enabled: @easyops-cn/docusaurus-search-local theme registers navbar search (config + dependency in repo).
S2R02 / AC1portal/README.md lists ≥3 smoke-test queries with expected hits vs the deployed site (FR-070 canonical URL).
S3R03 / AC2README documents local provider, index updates on each static build/deploy, no CI secrets for search.
S4NF01README Privacy subsection: offline index only; no third-party search API.
S5NF02README notes build time with local search (observed or CI reference).
S6AC3package.json build script remains docusaurus build --no-minify; FR-069 workflow unchanged in intent.

Tests: tests/test_portal_fr071_search.py

Provider decision: Local / offline search (@easyops-cn/docusaurus-search-local) — no Algolia DocSearch queue, index ships with build/, fits GitHub Pages and NF01.


Version Anchor

Forensic marker: ✅ COMPLETE (v0.5.9.7+1)RW E5:S09:T07.


Evidence


Dependencies

  • E5:S09:T06 (FR-070) for production verification.