a05aaf8d71
fix(diagrams): replace par/and/end with group in seq-polling
...
Build and Push Docker Image / build (push) Successful in 22s
CI / Security audit (push) Successful in 1m4s
CI / Tests & coverage (push) Has been cancelled
Render PlantUML Diagrams / Render .puml → .png (push) Successful in 1m2s
par keyword is not supported in the PlantUML version on the Gitea runner.
Replace with a group block (universally supported) and a spanning note
to convey the parallelism.
2026-05-17 10:28:46 +01:00
9751dbf98d
docs(diagrams): review + fix all .puml files; touch all to trigger render
...
Build and Push Docker Image / build (push) Successful in 31s
CI / Security audit (push) Successful in 51s
CI / Tests & coverage (push) Successful in 1m6s
Render PlantUML Diagrams / Render .puml → .png (push) Failing after 47s
seq-auth:
- startAutoRefresh() -> startSSE(), stopAutoRefresh() -> stopSSE()
- Cookie secure flag: 'secure (prod)' -> 'secure (if TRUST_PROXY)'
component:
- Fix typo creatApp -> createApp
- Add GET /csrf, POST /logout to browser->auth arrow
- Add GET /stream (SSE) to browser->dashboard arrow
class-server:
- Add subscribers Set, onPollComplete(), offPollComplete() to Poller class
class-data:
- Add SSE Event /stream shape alongside API Response /user-downloads
- Add sser *-- dl relationship
state-ui:
- Fix invalid multi-line transition labels with raw Unicode arrows
(broke PlantUML parser); replace with valid \n escapes on single line
seq-dashboard, seq-polling, state-poller, activity-matching:
- Whitespace touch to trigger render-diagrams CI workflow
2026-05-17 10:20:52 +01:00
dcf613446e
docs: final 1.0.0 documentation pass
...
Build and Push Docker Image / build (push) Successful in 28s
CI / Security audit (push) Successful in 50s
CI / Tests & coverage (push) Successful in 1m3s
README.md:
- Node prerequisite: v12+ → v22+
- Real-Time Updates: describe SSE push, remove polling/refresh-selector wording
- On-demand mode: update for SSE connect triggering poll
- API Endpoints: add /stream, /me, /csrf, /user-summary, /status, /cover-art
- Remove stale /api/qbittorrent proxy entry
- Docker tags: update to 1.0.x
SECURITY.md:
- Supported versions: add 1.0.x, retire 0.2.x
- CSP header: add style-src-attr 'unsafe-inline'
- Nginx example: add proxy_buffering off / proxy_read_timeout for SSE
Diagrams:
- seq-dashboard.puml: rewrite as SSE stream sequence (connect,
initial payload, pushed updates, heartbeat, disconnect)
- seq-polling.puml: add SSE subscriber notification step after
cache population
- state-ui.puml: replace Refresh Rate sub-state with SSE Connection
state machine; update splash loading and logout transitions
- state-poller.puml: add Notifying SSE subscribers step in Polling state
package.json: bump to 1.0.0
2026-05-17 09:19:35 +01:00
e97bd3c67b
docs: comprehensive architecture documentation with PlantUML diagrams
...
- docs/ARCHITECTURE.md: full system overview, technology stack, directory
structure, component architecture, data flow, auth, polling/caching,
download matching pipeline, API reference, frontend architecture,
configuration, deployment guide
- docs/diagrams/component.puml: system component diagram
- docs/diagrams/seq-auth.puml: authentication sequence diagram
- docs/diagrams/seq-dashboard.puml: dashboard request sequence diagram
- docs/diagrams/seq-polling.puml: background polling cycle sequence
- docs/diagrams/class-server.puml: server-side class/module diagram
- docs/diagrams/class-data.puml: data model / entity diagram
- docs/diagrams/state-ui.puml: frontend UI state diagram
- docs/diagrams/state-poller.puml: poller state diagram
- docs/diagrams/activity-matching.puml: download matching activity diagram
2026-05-16 00:32:16 +01:00