Summary
Add a hydrated resource view that materializes merged spec + computed status, and provide faithful YAML export from the CLI with Markdown preserved in block scalar form.
In Scope
- Define hydrated persistence model in ScyllaDB for catalog resources (
spec, status, metadata)
- Persist Markdown body as
spec.content during parse/hydration
- Materialize status fields produced by controller logic into hydrated records
- Implement CLI
-o yaml export path that reassembles Kubernetes-style resource output from hydrated storage
- Render
spec.content as YAML block scalar (|) to preserve Markdown formatting
- Add round-trip fidelity tests for import -> hydrate -> export
Out of Scope
- Markdown rendering/sanitization rules in UI
- Mutating admission behavior
- Query language redesign
Acceptance Criteria
Implementation Notes
Hydration separates author intent (spec) from machine observations (status) while keeping both queryable. YAML export must be user-trustworthy: if Markdown formatting is rewritten or folded unexpectedly, authoring workflows degrade and diff noise increases. Preserving spec.content with block scalars keeps Git history legible and aligns with declarative UX expectations.
Dependencies
Summary
Add a hydrated resource view that materializes merged
spec+ computedstatus, and provide faithful YAML export from the CLI with Markdown preserved in block scalar form.In Scope
spec,status, metadata)spec.contentduring parse/hydration-o yamlexport path that reassembles Kubernetes-style resource output from hydrated storagespec.contentas YAML block scalar (|) to preserve Markdown formattingOut of Scope
Acceptance Criteria
specandstatusin ScyllaDB with documented schemaspec.contentis populated from Markdown body for applicable resource kindsImplementation Notes
Hydration separates author intent (
spec) from machine observations (status) while keeping both queryable. YAML export must be user-trustworthy: if Markdown formatting is rewritten or folded unexpectedly, authoring workflows degrade and diff noise increases. Preservingspec.contentwith block scalars keeps Git history legible and aligns with declarative UX expectations.Dependencies