Repository navigation
v6.16.1 — Testing 9.5 + Documentation 9.5 (production readiness 9.7/10)
Pure test + docs release. Zero runtime code changes. Closes 2 of the 3 remaining gaps to 10/10 production readiness.
Production readiness: 9.5 → 9.7
| Category | v6.16.0 | v6.16.1 |
|---|---|---|
| Testing | 8.5 | 9.5 |
| Documentation | 9 | 9.5 |
| Weighted total | 9.5 | ~9.7 |
Added — 86 new tests across 4 previously-untested services
Test suite: 757/51 → 843/55.
- permissions.test.js (28 tests) — RBAC filtering:
filterContainers,filterStacks,canAccessStack,canAccessContainer, grant/revoke CRUD, expired-grant cleanup. Security-critical. - settings.test.js (17 tests) — key-value CRUD + type coercion + update audit.
- security-alerts.test.js (26 tests) — threshold + windowed rule evaluation, cooldown, event recording, top-events query.
- event-notifier.test.js (15 tests) — dispatch with mocked
notificationChannels+workflows(tricky because eventNotifier dynamicallyrequire()s them inside method bodies).
Added — 3 feature reference docs in docs/features/
~3,500 words total. Every claim verified against source code.
prometheus-metrics.md(978 words) — Complete/api/metricsreference: every metric (name, type, labels, HELP), real sample output, 4 Grafana query examples, cardinality notes.platform-detection.md(1,184 words) — NAS + cloud + hypervisor detection: signatures, cache behavior, how to extend, known limitations.translations-tooling.md(1,381 words) — v6.11.x Translations tab: architecture, admin workflow, API reference, quota math.
README gains a Feature Reference subsection linking to docs/features/.
Residual gap to 10/10 (v7-scoped)
- Docker-in-Docker integration tests — structural CI change
- Redis-backed HA mode — BACKLOG F30, 4-5 days, changes product positioning (single-instance → multi-instance)
- External 3rd-party security audit — vendor + budget
Verification
- Tests: 843 passing / 4 skipped / 55 suites.
- Lint: 0 warnings / 0 errors.
- Zero source code modifications — only
src/__tests__/anddocs/additions + README counts.