zwitschi
33b6296c5e
Refactor load testing scripts to support Bash and PowerShell
...
CI / test (push) Successful in 2m50s
CI / docker (push) Successful in 5m12s
- Updated README.md to reflect changes in load testing commands and added usage examples for Bash scripts.
- Converted PowerShell load testing scripts to Bash equivalents for better cross-platform compatibility.
- Added new Bash scripts: run-loadtests.sh, summarize-artillery.sh, and summarize-k6.sh to mirror existing PowerShell functionality.
- Updated admin-api.js and ws-chat.yml for consistency and improved performance metrics reporting.
- Enhanced error handling and output formatting in summary scripts for better readability.
2026-09-02 19:47:34 +02:00
zwitschi
9f60087a4c
feat(docs): add Coolify deployment guide and integrate into setup documentation
...
CI / test (push) Successful in 1m39s
CI / docker (push) Successful in 5m25s
feat(scripts): add environment verification scripts for deployment checks
2026-08-30 20:00:28 +02:00
zwitschi
4fe09a0a3d
fix(auth): set SameSite=None for viewer session cookie over HTTPS and update docs
2026-08-16 09:45:58 +02:00
zwitschi
5585a6ecc3
fix(frontend): prefix auth API requests with VITE_PUBLIC_APP_URL for cross-origin Workers hosting
CI / test (push) Successful in 1m32s
CI / docker (push) Successful in 54s
2026-08-16 09:26:35 +02:00
zwitschi
9e56ff7859
feat(ops): replace Cloudflare Pages with Workers for frontend hosting
CI / test (push) Successful in 2m55s
CI / docker (push) Successful in 46s
2026-08-16 08:17:23 +02:00
zwitschi
6950bba85d
feat(playout): replace time-based R2 retention with run-count and size caps
CI / test (push) Successful in 1m33s
CI / docker (push) Successful in 51s
2026-08-15 18:59:26 +02:00
zwitschi
cef002862e
feat(chat): add transient presence flash and 5s reconnect grace period
CI / test (push) Successful in 1m33s
CI / docker (push) Successful in 2m10s
2026-08-13 20:45:52 +02:00
zwitschi
121fdbacdc
feat: runtime config, Matomo analytics, chat accounts, DM history/search, and Prometheus retention
2026-08-13 13:12:35 +02:00
zwitschi
06ab5b4655
feat: add automatic media normalization, R2 retention cleanup, and seamless playout loops
2026-08-13 11:59:46 +02:00
zwitschi
044851a43e
Add Grafana dashboards for monitoring various services
...
- Created a new dashboard for NGINX monitoring with panels for status, active connections, request rates, and connection drop ratio.
- Added a Node dashboard to monitor CPU usage, memory usage, disk I/O, and network traffic.
- Introduced a Playout dashboard to track service status, mode, FFmpeg restarts, and scrape duration.
- Implemented a PostgreSQL dashboard featuring active connections, database size, transaction rates, and cache hit ratio.
- Developed a Prometheus dashboard to visualize scrape duration, targets status, and rule evaluation metrics.
- Established a Redis dashboard to monitor connected clients, memory usage, command latency, and keyspace statistics.
2026-08-12 13:55:23 +02:00
zwitschi
528a7fffc0
chore: remove obsolete DEVELOPMENT.md and consolidate task tracking docs
2026-08-11 15:54:00 +02:00
zwitschi
3742859489
docs: align CD env vars with deployment guide and add gitea secrets reference
CI / test (push) Successful in 1m38s
CI / docker (push) Successful in 25s
2026-08-11 15:01:55 +02:00
zwitschi
1019972e25
docs: fix filename typo and add Cloudflare Pages deploy details across docs
2026-08-11 11:10:33 +02:00
zwitschi
7be66a703c
docs: update gitea-cloudflare pages deploy snippet to inline manifest as form arg
CI / test (push) Successful in 1m31s
CI / docker (push) Successful in 20s
2026-08-10 21:35:37 +02:00
zwitschi
4aac5f9009
fix: remove explicit multipart content-type header from Cloudflare Pages deploy step
CI / test (push) Successful in 1m49s
CI / docker (push) Successful in 23s
2026-08-10 21:18:03 +02:00
zwitschi
af2e94aa46
fix: switch Cloudflare Pages deploy from tar+octet-stream to multipart+manifest API
CI / test (push) Successful in 1m49s
CI / docker (push) Successful in 21s
2026-08-10 21:11:00 +02:00
zwitschi
187d288e2e
chore: fix Cloudflare Pages project name and add troubleshooting doc + loadtest readme link
CI / test (push) Successful in 1m41s
CI / docker (push) Successful in 22s
2026-08-10 21:03:16 +02:00
zwitschi
377dc69859
chore: fix Cloudflare project name to linearvoid-frontend in deploy workflow
CI / test (push) Successful in 1m42s
CI / docker (push) Successful in 51s
2026-08-10 19:50:16 +02:00
zwitschi
5eb5edcac4
chore: bump Node.js version to 22 across CI, docs, and package manifest
CI / test (push) Successful in 1m59s
CI / docker (push) Successful in 1m16s
2026-08-10 18:03:11 +02:00
zwitschi
f6ca89747e
docs: add agent tracking files, update task management and dev checklist to .github folder
Deploy to Cloudflare Pages / deploy (push) Successful in 11s
CD / deploy (push) Successful in 46s
CI / test (push) Successful in 1m40s
CI / docker (push) Successful in 21s
2026-08-10 17:04:18 +02:00
zwitschi
98fafcd93c
docs: adding more details for monitoring and operations
2026-08-10 16:53:52 +02:00
zwitschi
80f4d9f198
docs: add cloudflare pages, cache rules docs and fix relative links
2026-08-10 12:44:46 +02:00
zwitschi
31882f6b73
docs: add Cloudflare Pages deploy workflow and update pipeline documentation
Deploy to Cloudflare Pages / deploy (push) Failing after 12s
CD / deploy (push) Successful in 52s
CI / test (push) Successful in 1m43s
CI / docker (push) Successful in 43s
2026-08-10 11:31:52 +02:00
zwitschi
f9aba11b90
feat: add metrics, observability, test fixtures, and scaling playbook artifacts
CD / deploy (push) Successful in 57s
CI / test (push) Failing after 1m29s
CI / docker (push) Skipped
2026-08-10 00:23:50 +02:00
zwitschi
926a663c23
Add comprehensive documentation for Linear Void project
...
- Created README.md in docs folder outlining project structure and documentation links.
- Added SECURITY.md detailing the security model, threat model, authentication, transport security, network isolation, and incident response procedures.
- Introduced SETUP.md providing a detailed setup guide for local and production environments, including prerequisites, environment setup, and Gitea integration.
- Added STREAMING.md outlining the streaming pipeline, including production flow, source-media contract, playout and HLS packaging, cache contract, player behavior, and monitoring.
- Updated architecture documentation to include links to new SETUP.md and STREAMING.md files for better navigation.
2026-08-08 14:52:19 +02:00
zwitschi
6632df0bc7
test(frontend): add vitest test suite and apply code formatting
2026-08-07 16:05:02 +02:00
zwitschi
b3a10ba3ef
refactor: modularize chat backend, update docs for .m4s segments
2026-08-07 13:16:44 +02:00
zwitschi
46e878bef6
chore: update URL to linearvoid.tv
2026-08-07 09:42:39 +02:00
zwitschi
2ed89760d6
docs: align CI/CD and release policy wording
CI / test (push) Successful in 51s
CD / deploy (push) Successful in 58s
CI / docker (push) Successful in 21s
2026-08-07 09:14:32 +02:00
zwitschi
4c02ab9d55
fix: parallel CD trigger, remove env blocker, cleanup release pipeline
CD / deploy (push) Failing after 10s
CI / test (push) Successful in 52s
CI / docker (push) Successful in 21s
Release / release (push) Successful in 26s
2026-08-06 22:01:29 +02:00
zwitschi
db3bf96847
docs: complete API error codes, deploy troubleshooting, monitoring/security rewrite, L2+L3 building blocks
2026-08-06 20:00:45 +02:00
zwitschi
0f81a81029
feat: monitoring exporters, alerting, rate limiting, backups, incident runbook
...
CI / test (push) Successful in 58s
CI / docker (push) Successful in 2m22s
CI / release (push) Skipped
- Add 4 Prometheus exporters: nginx (9113), redis (9121), postgres (9187), node (9100)
- Create 8 alerting rules in monitoring/prometheus/alerts.yml
- Update prometheus.yml with all scrape targets + rule_files
- WS connection rate limiting: max 5/IP/60s (Redis INCR)
- Admin login rate limiting: max 5/IP/5min (Redis INCR)
- 3 backup scripts: daily to R2 (14d), weekly full (8w), verify with restore test
- docs/incident-runbook.md with 5-tier triage + escalation
- Update CD workflow: full prometheus config + alerts seeding
2026-08-06 19:31:40 +02:00
zwitschi
5b5cdc4cd8
chore: release v1.0.7
...
CI / test (push) Successful in 9m11s
CI / docker (push) Failing after 2m39s
CI / release (push) Skipped
Release / release (push) Canceled after 2m11s
Playout: slate fallback, strict ffprobe validation, Prometheus metrics
Chat: history on join, DM offline delivery, env-config rate limits,
Redis auto-reconnect, heartbeat, ban/mute enforcement, DM metrics
Viewer: presence indicators, schedule overlay, public /api/schedule
Admin: playlist drag-reorder, schedule overrides CRUD, user actions,
inline mod buttons, CSV export, config editor, restart buttons,
upload normalization gate, analytics time range
nginx: CORS preflight, JSON health, stub_status
Docs: test-lab vs production distinction across all configs/docs
Infra: Redis maxmemory, CD health IP-agnostic, slate volume mount
2026-08-06 17:41:52 +02:00
zwitschi
f650a3a94e
docs: enhance architecture documentation with detailed sections on requirements, quality goals, context, and scaling strategy
2026-08-05 10:20:33 +02:00
zwitschi
c10d98f3b4
Refactor code structure for improved readability and maintainability
CI / test (push) Successful in 3m51s
CI / docker (push) Successful in 6m16s
CI / release (push) Skipped
2026-08-04 21:19:49 +02:00
zwitschi
207401b5fb
docs: expand architecture documentation with scaling strategy, API surface reference, and video normalization spec
2026-08-04 20:57:33 +02:00
zwitschi
2c06265d11
feat: implement resumable chunked media upload with progress indicators in admin UI
CI / test (push) Successful in 1m38s
CI / docker (push) Successful in 3m11s
CI / release (push) Skipped
2026-08-04 20:21:53 +02:00
zwitschi
7cfddfc7ef
feat: enhance media management with CRUD operations and runtime tracking in admin UI
CI / test (push) Successful in 1m39s
CI / docker (push) Successful in 3m9s
CI / release (push) Skipped
2026-08-04 19:28:23 +02:00
zwitschi
fcb68cfd8d
fix: add curl to chat runtime image for healthcheck
CI / test (push) Successful in 1m39s
CI / docker (push) Successful in 3m9s
CI / release (push) Skipped
2026-08-04 11:00:49 +02:00
zwitschi
c484b463e3
add brand research documentation for "Linear Void" trademark and SEO strategy
2026-08-03 14:09:02 +02:00
zwitschi
80c1f4acce
update CI/CD workflows, fix YAML formatting, and enhance documentation with ADR references
CI / test (push) Canceled after 0s
CI / docker (push) Canceled after 0s
CI / release (push) Canceled after 0s
CD / deploy (push) Canceled after 0s
2026-08-02 18:17:08 +02:00
zwitschi
15a2aaa1a1
Add complete playout service, chat backend, frontend with HLS player and live chat, Docker integration with health checks, updated CHANGELOG and architecture docs
2026-08-02 16:43:12 +02:00
zwitschi
0785260689
Add Docker setup, .env.example, updated .gitignore/CHANGELOG and ADRs 004-007 + arc42 template
2026-08-02 16:05:18 +02:00
zwitschi
dafcec1303
Initial commit: Project scaffolding + architecture documentation
...
- arc42 template fully populated in docs/architecture/README.md with Mermaid diagrams, quality goals, deployment view, cross-cutting concepts, risks and glossary
- Consolidated ADR-001 (merged all previous root ADR drafts)
- ADR-002: Module/folder structure decision and rationale
- ADR-003: Technology stack, language choices per module (TypeScript, Go, Bash/Python), Docker-first approach, and explicit implicit assumptions
- Updated root README.md with comprehensive Project Structure section and links to all ADRs
- Created .github/instructions/TODO.md with detailed tracking (architecture phase marked complete)
- Folder structure created matching ADR-002 (frontend/, backend/playout/, backend/chat/, backend/shared/, infrastructure/, scripts/, monitoring/)
- Git repository initialized with main branch
This establishes the foundation defined in the arc42 documentation and the three ADRs.
2026-08-02 15:31:33 +02:00