Files
annotations/_docs/02_document/components/06_platform/description.md
T
Oleksandr Bezdieniezhnykh d7d1c0ed6a [AZ-PENDING-1] [AZ-PENDING-2] Step 4 close-out: verification + docs
Phase 6 smoke (Docker, _docs/04_refactoring/01-testability-refactoring/
smoke-compose.yml):
  - Annotations app boots clean under ASPNETCORE_ENVIRONMENT=E2ETest.
  - /health 200 OK; /annotations with bearer returns 401 with the
    JWT library's own malformed-token rejection.
  - 0 IDX20108 occurrences in logs (C01 verified).
  - 0 IPAddress.Parse FormatException occurrences; FailsafeProducer
    reaches the broker via Docker DNS (C02 verified).
  - Full smoke report in verification.md.

Phase 7 docs:
  - architecture.md: retire Open Risks §6 (testability blocker
    resolved). Update the constraints block to describe the
    ASPNETCORE_ENVIRONMENT-gated RequireHttps behavior.
  - components/06_platform/description.md: one-liner on JwtExtensions
    JWKS gating.
  - components/02_annotations-realtime-sync/description.md: one-liner
    on FailsafeProducer host resolution accepting literal IP or DNS.
  - tests/test-data.md: refresh the JWKS URL configuration section to
    point at the resolved implementation instead of the open risk.

Task housekeeping:
  - _docs/02_tasks/todo/01_*.md -> done/
  - _docs/02_tasks/todo/02_*.md -> done/
  - _docs/_autodev_state.md: advance to Step 5 (Refactor Backlog Triage).

Tracker IDs remain placeholders pending Atlassian MCP availability —
real IDs to be assigned per
_docs/_process_leftovers/2026-05-14_testability-tracker.md.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-14 20:38:14 +03:00

1.2 KiB

Platform foundation

1. High-Level Overview

Purpose: Wire enums, PostgreSQL schema/mapping, cross-cutting HTTP error handling, path resolution, JWT policies + token refresh, and application bootstrap — no standalone product feature; enables all other components.

Architectural pattern: Shared kernel / infrastructure.

Upstream dependencies: None (root).

Downstream consumers: All feature components.

2. Internal interfaces

  • src/Enums/*
  • src/Database/* (AppDataConnection, DatabaseMigrator, entities)
  • ErrorHandlingMiddleware, PathResolver, PaginatedResponse, ErrorResponse, GlobalUsings.cs
  • JwtExtensions (JWKS verifier; HttpDocumentRetriever.RequireHttps is gated on ASPNETCORE_ENVIRONMENT — HTTPS-required for every value except E2ETest), ConfigurationResolver, CorsConfigurationValidator
  • Program.cs

3. External API

/health (AllowAnonymous); Swagger in development configuration. Token refresh is no longer hosted here — callers refresh against admin's POST /token/refresh.

4. Modules included

wire-enums, database-layer, common-infrastructure, auth-identity, composition-program.