Skip to content

fix(console): read the column vocabulary from the engine - #707

Merged
catinspace-au merged 3 commits into
mainfrom
fix/schema-vocabulary-from-engine
Nov 11, 2026
Merged

catinspace-au merged 3 commits into
mainfrom
fix/schema-vocabulary-from-engine

Conversation

@catinspace-au

@catinspace-au catinspace-au commented Nov 11, 2026 •

Copy link
Copy Markdown
Contributor

The schema form had separate lists of primitives, use cases, attributes and override types. The derived schema picker had another use case list. They offered retired use cases and missed map, vector and key_search.

  • Primitives, use cases, attributes, cardinalities and override types come from GET /api/v1/schemas/vocabulary.
  • Override inputs use engine-declared parameters instead of switching on the type name.
  • A Cardinality select sits beside Attributes and writes the column's cardinality. A column with the retired lowcardinality attribute shows as Low.
  • The selects say Loading... while the vocabulary loads. Index use cases are filtered by the column's type.
  • The retention form takes its maximum from the engine: 36500 days instead of the hard coded 365. Edit reports when defaults fail to load.
  • The client no longer substitutes its own retention and header version.

Needs the dfe-engine PR and dfe-schemas 0.2.28 or later.

similarity_search is not in the column picker. It needs a dimension count, and the picker has nowhere to type one.

The generated engine types add only this route and maximum. The sync job brings the rest of the engine's spec.

The schema form had local lists of primitives, use cases, attributes and override types. The derived schema picker had another use case list. These lists offered retired use cases and missed map, vector and key_search.

- Primitives, use cases, attributes and override types come from GET /api/v1/schemas/vocabulary.
- Override inputs use engine-declared parameters instead of switching on the type name.
- A failed system defaults fetch shows the error. The client no longer supplies its own retention and header version.
- The retention form takes its maximum from the engine: 36500 days instead of the hard-coded 365.
A column made in the console could never be `cardinality: low`, so it had no LowCardinality wrap and exact_match fell back to a bloom filter.

- A Cardinality select sits beside Attributes and writes the column's `cardinality`. It shows the engine's default until a value is picked.
- A column with the retired `lowcardinality` attribute shows as Cardinality Low. The attribute is dropped because the engine rejects conflicting cardinality declarations.
- The type, index and attribute selects show Loading... instead of No data while the vocabulary loads.
- Index use cases are filtered by the column's type. Both the schema form and the derived schema picker show the label with the question as the hint.
- Edit on the system defaults card reports a defaults loading failure instead of doing nothing.
- CSV import keeps a `cardinality` column. The v1 low cardinality types map to cardinality low.
- The source columns tab, review step and schema detail table show a Cardinality column.
- Changing a column's type clears an index use case the new type cannot take.
- A stored retired use case name shows as its replacement.
- The system defaults card shows Loading... and the edit form's error notice on failure. It previously showed zero values and an empty engine.
- The Cardinality column is wide enough for Unknown.
@catinspace-au
catinspace-au marked this pull request as ready for review November 11, 2026 08:39
@catinspace-au
catinspace-au merged commit 33df50e into main Nov 11, 2026
18 checks passed
@catinspace-au
catinspace-au deleted the fix/schema-vocabulary-from-engine branch November 11, 2026 08:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant