@@ -19,22 +19,32 @@ Hidden, internal, diagnostic, and test-support routes are included for inventory
1919completeness. They are unstable and unsupported for customer integrations. Use the public
2020product documentation—not this catalog—for stable SDK learning tutorials.
2121
22+ The pinned repository does not ship a static published OpenAPI document to compare. The
23+ manifest's ` customer-facing ` surface classification means the route has public source annotations
24+ and is eligible for generated OpenAPI; it does not claim independently verified publication.
25+ ` source-only ` identifies hidden, internal, diagnostic, or test-support routes. Neither label is a
26+ promise of API stability.
27+
2228## What Is Included
2329
2430The generated catalog currently derives these values from the pinned source rather than
2531from an approximate route scan:
2632
2733| Contract | RC1 coverage |
2834| --- | ---: |
29- | Normalized HTTP operations | 1,748 |
35+ | HTTP-annotated Java methods | 1,748 |
36+ | Concrete normalized operations | 1,985 |
3037| Generated ` create*.py ` models | 112 |
38+ | Response fixtures | 319 (187 JSON Schema, 106 Java result-list, 2 scalar, 24 shape-only) |
3139| Explicitly verified Python SDK mappings | 32 |
32- | Deterministic REST renderers | 1,716 |
40+ | Deterministic REST renderers | 1,953 |
3341
3442- [ Operation matrix] ( docs/generated/operations.md ) : verb, normalized path, Java method,
3543 visibility, authentication, safety, SDK or REST interface, scenarios, and source line.
3644- [ Asset and fixture matrix] ( docs/generated/assets.md ) : every generated create-model class,
3745 source schema, validation boundary, scenarios, and deterministic request body.
46+ - [ Response fixture matrix] ( docs/generated/responses.md ) : every extracted response model,
47+ fixture body, matching schema where available, and explicit shape-only boundaries.
3848- [ Scenario catalog] ( docs/generated/scenarios.md ) : scenario purpose, operation count,
3949 visibility mix, barriers, command, and expected output.
4050- [ Coverage summary] ( docs/generated/README.md ) : generator-derived totals and model-validation
@@ -98,8 +108,8 @@ Expected summary:
98108{
99109 "dryRunOnly" : true ,
100110 "errorStatus" : null ,
101- "operations" : 437 ,
102- "recordedRequests" : 437 ,
111+ "operations" : 497 ,
112+ "recordedRequests" : 497 ,
103113 "scenario" : " core-catalog-assets"
104114}
105115```
@@ -118,8 +128,9 @@ Confirm that every normalized operation belongs to at least one scenario:
118128.venv/bin/python -m openmetadata_demo_api coverage
119129```
120130
121- A complete catalog reports an empty ` missingOperations ` list and matching source and
122- scenario operation totals.
131+ A complete catalog reports an empty ` missingOperations ` list. ` sourceOperations ` counts
132+ annotated Java methods before inheritance; ` normalizedOperations ` and ` scenarioOperations `
133+ count the concrete routes after inherited methods are bound to each resource.
123134
124135## Dependency Ordering
125136
@@ -128,27 +139,31 @@ parents:
128139
129140``` mermaid
130141flowchart LR
131- service["Services"] --> parent["Parent assets"]
142+ service["Service creation"] --> status["Service validation and status"]
143+ status --> parent["Parent assets"]
132144 parent --> child["Child assets"]
133145 child --> leaf["Leaf assets"]
134146 leaf --> enrichment["Lineage, profiles, sample data, usage, and status"]
135147 enrichment --> platform["Relationships and supporting platform records"]
136- platform --> teardown["Delete and restore lifecycle requests"]
148+ platform --> teardown["Destructive lifecycle requests"]
149+ teardown --> restore["Restore requests"]
137150```
138151
139152The planner topologically sorts every scenario, rejects missing dependencies, rejects
140153cycles and duplicate step IDs, and records service requests before dependent assets.
141154
142155## SDK and REST Classification
143156
144- An operation receives an SDK mapping only when the named interface exists and is callable
145- in ` openmetadata-ingestion==2.0.0.0rc1 ` . All other operations use an explicit REST request
146- renderer. ` REST only ` does not mean that a route is recommended or stable; consult its
147- visibility and safety columns first.
157+ An operation receives an SDK mapping only when the named interface exists in
158+ ` openmetadata-ingestion==2.0.0.0rc1 ` and every required parameter has a deterministic binding.
159+ The generated call descriptor is checked against the installed method signature. All other
160+ operations use an explicit REST request renderer. ` REST only ` does not mean that a route is
161+ recommended or stable; consult its visibility and safety columns first.
148162
149163The recording boundary treats both classifications identically: neither can open a network
150- connection. Success, validation failure, unauthorized, forbidden, not found, conflict, and
151- unsupported-operation fixtures are deterministic where applicable.
164+ connection. Source-declared error responses are recorded separately from validation,
165+ authorization, lookup, conflict, and server-boundary simulations. The operation matrix labels
166+ that provenance instead of implying that every simulated response is declared by the Java API.
152167
153168## Reproduce the Catalog
154169
@@ -181,9 +196,12 @@ The package proves that:
181196- every operation renders without unresolved path parameters or network access;
182197- every operation has authentication, visibility, safety, response, and applicable error
183198 classifications;
199+ - every extracted response model has either a pinned-schema-valid fixture or an explicit
200+ shape-only boundary;
184201- every generated create-model has a deterministic fixture and scenario;
185202- dependency graphs are acyclic and order parent records before dependent records; and
186- - verified SDK mappings resolve to callable RC1 interfaces.
203+ - verified SDK mappings resolve to callable RC1 interfaces with complete required-argument
204+ bindings.
187205
188206It does not prove server acceptance, authorization-policy behavior, persistence, deployment,
189207or compatibility with another OpenMetadata release. After 2.0 GA, regenerate from the GA
0 commit comments