From b3ac5454898781859dcd26b03a93a315d420dea2 Mon Sep 17 00:00:00 2001 From: Jose Celano Date: Wed, 24 Jun 2026 17:25:21 +0100 Subject: [PATCH] chore(issues): archive closed issue #1930 spec to docs/issues/closed --- .../1930-1669-si-33-rest-api-contract-first-architecture.md | 6 +++--- docs/issues/open/1669-overhaul-packages/EPIC.md | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) rename docs/issues/{open => closed}/1930-1669-si-33-rest-api-contract-first-architecture.md (99%) diff --git a/docs/issues/open/1930-1669-si-33-rest-api-contract-first-architecture.md b/docs/issues/closed/1930-1669-si-33-rest-api-contract-first-architecture.md similarity index 99% rename from docs/issues/open/1930-1669-si-33-rest-api-contract-first-architecture.md rename to docs/issues/closed/1930-1669-si-33-rest-api-contract-first-architecture.md index a122fbfa4..b5ab0b8be 100644 --- a/docs/issues/open/1930-1669-si-33-rest-api-contract-first-architecture.md +++ b/docs/issues/closed/1930-1669-si-33-rest-api-contract-first-architecture.md @@ -1,12 +1,12 @@ --- doc-type: spec issue-type: task -status: open +status: done priority: p1 epic: 1669 github-issue: 1930 -spec-path: docs/issues/open/1930-1669-si-33-rest-api-contract-first-architecture.md -last-updated-utc: 2026-06-22 +spec-path: docs/issues/closed/1930-1669-si-33-rest-api-contract-first-architecture.md +last-updated-utc: 2026-06-24 semantic-links: skill-links: - create-issue diff --git a/docs/issues/open/1669-overhaul-packages/EPIC.md b/docs/issues/open/1669-overhaul-packages/EPIC.md index 13bdc6db2..df547e62a 100644 --- a/docs/issues/open/1669-overhaul-packages/EPIC.md +++ b/docs/issues/open/1669-overhaul-packages/EPIC.md @@ -615,7 +615,7 @@ Status: TODO unless noted. - [x] [#1924](https://github.com/torrust/torrust-tracker/issues/1924) SI-30: Extract UDP trait abstractions for REST API _(Rule M; core → server dep kept; interface segregation only)_ - [x] [#1925](https://github.com/torrust/torrust-tracker/issues/1925) SI-31: Configure `cargo deny` for workspace layer boundary enforcement _(tooling; create deny.toml with bans for all forbidden edges)_ - [ ] [#1926](https://github.com/torrust/torrust-tracker/issues/1926) SI-32: Define package versioning strategy _(policy; all packages version independently)_ -- [ ] [#1930](https://github.com/torrust/torrust-tracker/issues/1930) SI-33: Define REST API contract-first package architecture _(policy reminder; PoC-first and dedicated API EPIC before migration/extraction)_ +- [x] [#1930](https://github.com/torrust/torrust-tracker/issues/1930) SI-33: Define REST API contract-first package architecture _(policy reminder; PoC-first and dedicated API EPIC before migration/extraction)_ - [x] [#1856](https://github.com/torrust/torrust-tracker/issues/1856) Analyse configuration package coupling and evaluate splitting strategies _(research; no blockers; informs "build-your-own tracker" goal and versioning strategy)_ Details: @@ -645,7 +645,7 @@ Details: | UDP trait abstractions | [#1924](https://github.com/torrust/torrust-tracker/issues/1924) SI-30: Extract UDP trait abstractions for REST API (`BanningStats`, `UdpCoreStatsRepository`, `UdpServerStatsRepository`) | [docs/issues/closed/1924-1669-si-30-decouple-rest-api-core-from-udp-internals.md](../../closed/1924-1669-si-30-decouple-rest-api-core-from-udp-internals.md) | DONE | UDP-side only; REST-side wiring deferred to #1930; MAX_CONNECTION_ID_ERRORS_PER_IP → config option | | Cargo deny enforcement | [#1925](https://github.com/torrust/torrust-tracker/issues/1925) SI-31: Configure `cargo deny` for workspace layer boundary enforcement | [docs/issues/closed/1925-1669-si-31-configure-cargo-deny-for-layer-boundary-enforcement.md](../../closed/1925-1669-si-31-configure-cargo-deny-for-layer-boundary-enforcement.md) | DONE | Tooling; create deny.toml with bans for all forbidden edges; add to CI and hooks | | Versioning policy | [#1926](https://github.com/torrust/torrust-tracker/issues/1926) SI-32: Define package versioning strategy | [docs/issues/open/1926-1669-si-32-define-package-versioning-strategy.md](../../open/1926-1669-si-32-define-package-versioning-strategy.md) | TODO | Policy; all packages version independently; path deps make linked versions unnecessary | -| REST API architecture | [#1930](https://github.com/torrust/torrust-tracker/issues/1930) SI-33: Define REST API contract-first package architecture | [docs/issues/open/1930-1669-si-33-rest-api-contract-first-architecture.md](../../open/1930-1669-si-33-rest-api-contract-first-architecture.md) | TODO | Policy reminder only in this EPIC; validate via PoC, then execute migration in a dedicated API EPIC; defer API package extraction/publication | +| REST API architecture | [#1930](https://github.com/torrust/torrust-tracker/issues/1930) SI-33: Define REST API contract-first package architecture | [docs/issues/closed/1930-1669-si-33-rest-api-contract-first-architecture.md](../../closed/1930-1669-si-33-rest-api-contract-first-architecture.md) | DONE | Policy reminder only in this EPIC; validate via PoC, then execute migration in a dedicated API EPIC; defer API package extraction/publication | | Configuration coupling | [#1856](https://github.com/torrust/torrust-tracker/issues/1856) — Analyse configuration package coupling and evaluate splitting strategies | [docs/issues/open/1856-1669-analyse-configuration-package-coupling/ISSUE.md](../../open/1856-1669-analyse-configuration-package-coupling/ISSUE.md) | DONE | DEC-07: keep single package; move TrackerPolicy/TORRENT_PEERS_LIMIT/PrivateMode to primitives (FU-1); see DECISIONS.md | | Move domain primitives | [#1859](https://github.com/torrust/torrust-tracker/issues/1859) — Move `TrackerPolicy`, `TORRENT_PEERS_LIMIT`, and `PrivateMode` to `torrust-tracker-primitives` | [docs/issues/open/1859-1669-move-tracker-policy-and-private-mode-to-primitives/ISSUE.md](../../open/1859-1669-move-tracker-policy-and-private-mode-to-primitives/ISSUE.md) | TODO | Rule M; FU-1 from #1856; removes `swarm-coordination-registry` and `torrent-repository-benchmarking` config dep | | TslConfig evaluation | [#1860](https://github.com/torrust/torrust-tracker/issues/1860) — Evaluate moving `TslConfig` from `torrust-tracker-configuration` into `torrust-tracker-axum-server` | [docs/issues/open/1860-1669-evaluate-tslconfig-move-to-axum-server/ISSUE.md](../../open/1860-1669-evaluate-tslconfig-move-to-axum-server/ISSUE.md) | TODO | Rule M candidate; FU-2 from #1856; may enable `axum-server` → `torrust-axum-server` reclassification | @@ -672,7 +672,7 @@ After SI-14, there is a proposal to evaluate a dedicated repository for protocol - [docs/issues/closed/1925-1669-si-31-configure-cargo-deny-for-layer-boundary-enforcement.md](../../closed/1925-1669-si-31-configure-cargo-deny-for-layer-boundary-enforcement.md) - [docs/issues/open/1926-1669-si-32-define-package-versioning-strategy.md](../../open/1926-1669-si-32-define-package-versioning-strategy.md) - [docs/issues/drafts/1669-extract-torrust-tracker-client-to-standalone-repo.md](../../drafts/1669-extract-torrust-tracker-client-to-standalone-repo.md) -- [docs/issues/open/1930-1669-si-33-rest-api-contract-first-architecture.md](../../open/1930-1669-si-33-rest-api-contract-first-architecture.md) +- [docs/issues/closed/1930-1669-si-33-rest-api-contract-first-architecture.md](../../closed/1930-1669-si-33-rest-api-contract-first-architecture.md) - [docs/issues/closed/1910-1669-si-29-rename-udp-and-http-core-protocol-crates-to-remove-redundant-tracker.md](../../closed/1910-1669-si-29-rename-udp-and-http-core-protocol-crates-to-remove-redundant-tracker.md) > New subissues are created as analysis reveals the next improvement. The EPIC is never > fully planned up front.