Ctrl K
ComunidadGuías…

ROADMAP.md

Rama main · réplica de lectura del repositorio original.

Archivo original ↗Preguntar a KiBot
# Roadmap

OpenLicensd is on a path toward a stable **v1.0.0** release. v1.0 is a promise of API stability and production operability — not just a feature checklist.

Work is organized into five release phases, plus a post-1.0 backlog. Track progress on GitHub:

| Phase | Milestone | Tracking issue | Focus |
|-------|-----------|----------------|-------|
| **v0.6.0** | [v0.6.0](https://github.com/alvarorg14/openlicensd/milestone/1) | [#67](https://github.com/alvarorg14/openlicensd/issues/67) | Fix the foundations — module paths, version hygiene, API completeness, UI correctness |
| **v0.7.0** | [v0.7.0](https://github.com/alvarorg14/openlicensd/milestone/2) | [#68](https://github.com/alvarorg14/openlicensd/issues/68) | Make it operable — observability, scaling docs, Helm hardening |
| **v0.8.0** | [v0.8.0](https://github.com/alvarorg14/openlicensd/milestone/3) | [#69](https://github.com/alvarorg14/openlicensd/issues/69) | Make it adoptable — API tokens, audit log, CI supply chain, docs site |
| **v0.9.0** | [v0.9.0](https://github.com/alvarorg14/openlicensd/milestone/6) | [#248](https://github.com/alvarorg14/openlicensd/issues/248) | Harden the contract — API shape, safety guards, schema, discrete DB config |
| **v1.0.0** | [v1.0.0](https://github.com/alvarorg14/openlicensd/milestone/4) | [#70](https://github.com/alvarorg14/openlicensd/issues/70) | Commit to stability — deprecation policy, support window, release |
| **Post-1.0** | [Post-1.0](https://github.com/alvarorg14/openlicensd/milestone/5) | [#71](https://github.com/alvarorg14/openlicensd/issues/71) | Roadmap features — offline licenses, entitlements, webhooks, more SDKs |

Each milestone has a tracking issue with linked sub-issues. See the [Issues](https://github.com/alvarorg14/openlicensd/issues) page filtered by milestone.

---

## v0.6.0 — Fix the foundations

Correctness and consistency before adding scope: a working embedded UI from a fresh clone, a canonical Go module path, normalized release tags, consolidated password policy, and small API gaps (`GET /licenses/{id}`, admin password reset in the UI).

## v0.7.0 — Make it operable

Production readiness: structured logging, Prometheus metrics, database pool tuning, request deadlines, distributed or documented rate limiting, meaningful health checks, and Helm templates for PDB, HPA, NetworkPolicy, and ServiceMonitor. Operational runbooks for backup, upgrade, scaling, and troubleshooting.

## v0.8.0 — Make it adoptable

Adoption blockers: scoped API tokens for automation, an append-only audit log, README polish (screenshot, positioning), a published docs site, supply-chain CI (CodeQL, Trivy, SBOM, cosign), UI smoke tests, and SDK v1.0 prep (`doc.go`, documentation parity, test gaps).

## v0.9.0 — Harden the contract

Pre-freeze hardening before the v1.0 stability promise: true partial PATCH semantics, consistent API response shapes (`/auth/me`, timestamps), safety guards (last-admin protection, session revocation on password reset), schema fixes (bootstrap idempotency, audit retention, cleanup indexes), discrete database connection variables (replacing `OPENLICENSD_DATABASE_URL`), UI/SDK freeze prep (expanded E2E), OpenAPI contract tests, and operator docs (security hardening, production checklist). UI `nuxt typecheck` in CI is deferred — see Post-1.0 and [#114](https://github.com/alvarorg14/openlicensd/issues/114).

## v1.0.0 — Commit to stability

API stability ([COMPATIBILITY.md](COMPATIBILITY.md)), support window ([SECURITY.md](SECURITY.md), [SUPPORT.md](SUPPORT.md)), and platform scope ([docs/deployment.md](docs/deployment.md#platforms)) are documented in-tree. Publish `v1.0.0` and `sdk/go/v1.0.0` from Release Drafter drafts on GitHub (retarget the draft tag/title before publishing — do not `git tag` locally).

## Post-1.0

Features that expand the product surface without blocking the stability promise: offline signed licenses, entitlements and metadata, webhooks, client-side machine deactivation, bulk import/export, key rotation, expiring-soon notifications, and additional client SDKs (TypeScript/Node first).

UI `nuxt typecheck` in CI ([#114](https://github.com/alvarorg14/openlicensd/issues/114)) waits on `vue-tsc` support for TypeScript 7's programmatic compiler API (or TS 7.1). Until then, `nuxt typecheck` fails against plain `typescript@7` (`ERR_PACKAGE_PATH_NOT_EXPORTED` for `typescript/lib/tsc`). Upstream: [vuejs/language-tools#6124](https://github.com/vuejs/language-tools/issues/6124), [vuejs/language-tools#5381](https://github.com/vuejs/language-tools/issues/5381).

---

Contributions welcome. Pick an issue labeled [`good first issue`](https://github.com/alvarorg14/openlicensd/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22) or ask in [Discussions](https://github.com/alvarorg14/openlicensd/discussions) (enable Discussions on the repo if not yet active).