Restructure solution layout by module
This commit is contained in:
@@ -41,9 +41,9 @@ Net result: partners and internal teams integrate quickly without reverse‑engi
|
||||
|
||||
### 3.1 Source of truth and layout
|
||||
|
||||
* Each service owns a **module-scoped OAS** file: `src/StellaOps.Api.OpenApi/<service>/openapi.yaml`.
|
||||
* Authority authentication/token surface now lives at `src/StellaOps.Api.OpenApi/authority/openapi.yaml`, covering `/token`, `/introspect`, `/revoke`, and `/jwks` flows with examples and scope catalog metadata.
|
||||
* An aggregate spec `src/StellaOps.Api.OpenApi/stella.yaml` is produced by build tooling that composes per-service specs, resolves `$ref`s, and validates cross-service schemas.
|
||||
* Each service owns a **module-scoped OAS** file: `src/Api/StellaOps.Api.OpenApi/<service>/openapi.yaml`.
|
||||
* Authority authentication/token surface now lives at `src/Api/StellaOps.Api.OpenApi/authority/openapi.yaml`, covering `/token`, `/introspect`, `/revoke`, and `/jwks` flows with examples and scope catalog metadata.
|
||||
* An aggregate spec `src/Api/StellaOps.Api.OpenApi/stella.yaml` is produced by build tooling that composes per-service specs, resolves `$ref`s, and validates cross-service schemas.
|
||||
* JSON Schema dialect: 2020‑12 (OpenAPI 3.1). No vendor‑specific features for core models.
|
||||
* Every response and error has at least one **validated example**.
|
||||
|
||||
@@ -138,13 +138,13 @@ Net result: partners and internal teams integrate quickly without reverse‑engi
|
||||
|
||||
### 4.1 New modules
|
||||
|
||||
* `src/StellaOps.Api.OpenApi/*` per service and aggregate composer
|
||||
* `src/StellaOps.Api.Governance` OAS linter rules and compatibility checker
|
||||
* `src/StellaOps.Sdk.Generator` codegen drivers, post‑processing templates, smoke tests
|
||||
* `src/StellaOps.Sdk.Release` packaging, signing, publishing
|
||||
* `src/StellaOps.DevPortal.Site` static generator and assets
|
||||
* `src/Api/StellaOps.Api.OpenApi/*` per service and aggregate composer
|
||||
* `src/Api/StellaOps.Api.Governance` OAS linter rules and compatibility checker
|
||||
* `src/Sdk/StellaOps.Sdk.Generator` codegen drivers, post‑processing templates, smoke tests
|
||||
* `src/Sdk/StellaOps.Sdk.Release` packaging, signing, publishing
|
||||
* `src/DevPortal/StellaOps.DevPortal.Site` static generator and assets
|
||||
* `test/contract` mock server config, golden examples
|
||||
* `src/StellaOps.ExportCenter.DevPortalOffline` bundler
|
||||
* `src/ExportCenter/StellaOps.ExportCenter.DevPortalOffline` bundler
|
||||
|
||||
### 4.2 Build flow
|
||||
|
||||
@@ -254,7 +254,7 @@ Add the banner at the top of each page:
|
||||
|
||||
**OAS & governance**
|
||||
|
||||
* [ ] Create `src/StellaOps.Api.OpenApi/<service>/openapi.yaml` for all services with minimal paths and shared components.
|
||||
* [ ] Create `src/Api/StellaOps.Api.OpenApi/<service>/openapi.yaml` for all services with minimal paths and shared components.
|
||||
* [ ] Implement aggregate composer and `$ref` resolver.
|
||||
* [ ] Add CI job: lint, validate, compatibility diff; block merges on failure.
|
||||
* [ ] Migrate all endpoints to standard error envelope and provide examples.
|
||||
|
||||
Reference in New Issue
Block a user