feat: 기능 추가 과정중

This commit is contained in:
donghyeon-ka
2026-07-30 15:58:20 +09:00
parent d3ef801fe6
commit 6c52cdb916
648 changed files with 126325 additions and 6680 deletions
+37 -19
View File
@@ -18,17 +18,18 @@ flowchart LR
Contracts --> Presentation
```
The intended dependency rule points inward: presentation calls application use
The enforced dependency rule points inward: presentation calls application use
cases, adapters implement application ports, and only the composition root
selects concrete adapters. Contract registries are the intended named source
for routes, API operations, environment values, storage keys, errors, queries,
telemetry, and release tokens. The platform review below records where the
current runtime still bypasses that target or duplicates registry metadata.
selects concrete adapters. Contract registries are the named source for routes,
API operations, environment values, storage keys, errors, queries, telemetry,
and release tokens. Installed feature contributions extend those registries
without making the generic application or router import a concrete feature
implementation.
In ports-and-adapters terms, `presentation` is the current inbound adapter and
`adapters` contains the current outbound implementations. The target design
makes this role explicit, introduces application input ports, and prevents the
React tree from receiving raw outbound dependencies:
`adapters` contains the current outbound implementations. The production
composition exposes an application input API to React while keeping concrete
output ports inside application closures:
```mermaid
flowchart LR
@@ -41,21 +42,38 @@ flowchart LR
Bootstrap2 -. selects and injects .-> Outbound
```
The current executable route tree is mounted only after runtime configuration
and release-manifest coherence pass. It receives the composed query client,
credential-opaque session port, storage port, telemetry port, and immutable
build ID. Generic starter pages do not depend on the removable reference
feature.
The executable route tree is mounted only after runtime configuration and
release-manifest coherence pass. `ApplicationProvider` receives the composed
application API; concrete session, storage, telemetry, diagnostics, and release
ports are not returned to feature pages. TanStack Query is isolated behind the
presentation query adapter, while its provider remains React infrastructure.
The module-augmented feature registry gives each installed feature a closed ID
and exact input type.
This describes the current starter composition, not the completed target. The
capability review found that raw outbound capabilities still reach the React
tree, the composed application facade is not yet its entry point, and several
route, HTTP, recovery, telemetry, and reference-feature removal contracts are only
partially connected. Use the following documents for the evidence and migration
plan:
Route contracts/codecs, the route-input provider, and lazy runtime modules are
separate modules so feature pages do not import the router that loads them.
Expected application failures use the shared `Result`/`AppFailure` contract.
The architecture gate analyzes TS/TSX imports independently of
dependency-cruiser, rejects local JavaScript-family specifiers and executable
JavaScript-family files, and fails on unresolved imports, parse failures,
forbidden layer edges, or cycles. The remaining project-owned work includes
selecting and verifying real hosting, identity, telemetry, vulnerability and
signing providers, plus backend/provider/browser/operations evidence for each
selected optional capability; the repository does not fabricate that evidence.
Use the following
documents for implementation details and project integration work:
- [Frontend platform capability review](./frontend-platform-capability-review.md)
- [Frontend ports, adapters, and boundaries](./frontend-ports-adapters-and-boundaries.md)
- [API contract, Schema, Mapper, and Server State](./api-contract-schema-mapper-and-server-state.md)
- [Protobuf browser transports and REST Gateway](./protobuf-browser-transport-and-rest-gateway.md)
- [Backend API and Server State handoff contract](./backend-api-and-server-state-contract.md)
- [TypeScript, state, and data flow](./typescript-state-and-data-flow.md)
- [Routing, pages, and patterns](./routing-pages-and-patterns.md)
- [Browser data capability completion ledger](./browser-data-capability-completion-ledger.md)
- [Browser file and origin storage](./browser-file-and-origin-storage.md)
- [Client cache and storage](./client-cache-and-storage.md)
- [Realtime events, Web Push, and bounded polling](./realtime-events-web-push-and-bounded-polling.md)
- [Presigned transfer and Image CDN](./presigned-transfer-and-image-cdn.md)
- [Server file capability infrastructure](./server-file-capability-infrastructure.md)
- [Frontend platform implementation roadmap](./frontend-platform-implementation-roadmap.md)