What's New
Features
-
Backstage catalog options are now recognized — Drive the generated
catalog-info.yamlfrom model metadata.option backstage_owner("sales-team")sets Backstage'sspec.owner,option backstage_lifecycle("production")setsspec.lifecycle, andoption backstage_type("service")sets a Component/Resourcespec.type. Each takes one argument and is valid on any definition, matching the generator's behaviour of resolving each value by walking from a definition up through its parents. -
Confluence publishing options are now recognized — Pin the target Confluence space and ancestor page in the model itself, so the generated
publish.shimporter needs no extra flags:option confluence_space("DOCS")andoption confluence_parent("Systems"). Each takes one argument.Unlike the other generator options, these are registered against
Domainspecifically rather than being valid anywhere. The Confluence generator reads them from the domain only, so placing one on a context or entity is a mistake that would otherwise pass silently; it now produces a "not typically used on Context definitions (expected: Domain)" style warning. The "not recognized" warning is cleared everywhere regardless.
All five option names already parsed correctly but were absent from RecognizedOptions.registry, so any model using them collected a spurious StyleWarning — "Option 'backstage_owner' in Context 'Sales' is not a recognized RIDDL option". Matching KnownOption constants were added and are exported to JavaScript through KnownOptions.
These are additive changes only: no public API was removed and no signature changed. This release continues the work begun in 1.30.0, which registered the protocol, event_catalog_version, sql_dialect and sql_table options.