feat(catalog): preserve and display dataset value scores
Deploy production / deploy (push) Successful in 51s

This commit is contained in:
yuxuanhui
2026-09-09 11:51:59 +08:00
parent f31dda78b4
commit 4debca7dbd
7 changed files with 49 additions and 2 deletions
+2 -1
View File
@@ -37,7 +37,7 @@ class CatalogFilters(Scope):
field_type: str | None = None
coverage_min: float | None = Field(default=None, ge=0, le=1)
sort: Literal[
"id", "name", "category", "field_count", "coverage", "user_count", "alpha_count", "field_type"
"id", "name", "category", "field_count", "coverage", "user_count", "alpha_count", "field_type", "value_score"
] = "name"
direction: Literal["asc", "desc"] = "asc"
limit: int = Field(default=25, ge=1, le=100)
@@ -80,6 +80,7 @@ class EntryOutput(BaseModel):
category: str | None
subcategory: str | None
field_type: str | None
value_score: float | None = None
coverage: float | None
user_count: int | None
alpha_count: int | None
+1
View File
@@ -55,6 +55,7 @@ def normalize(raw, dataset_id):
subcategory=label(raw.get("subcategory")),
field_type=label(raw.get("type")) if dataset_id else None,
coverage=coverage,
value_score=number(raw.get("valueScore")) if not dataset_id else None,
user_count=number(raw.get("userCount"), True),
alpha_count=number(raw.get("alphaCount"), True),
field_count=number(raw.get("fieldCount"), True),
+1
View File
@@ -357,6 +357,7 @@ class CatalogEntry(Base):
subcategory: Mapped[str | None] = mapped_column(String(200))
field_type: Mapped[str | None] = mapped_column(String(100))
coverage: Mapped[float | None] = mapped_column(Float)
value_score: Mapped[float | None] = mapped_column(Float)
user_count: Mapped[int | None] = mapped_column(Integer)
alpha_count: Mapped[int | None] = mapped_column(Integer)
field_count: Mapped[int | None] = mapped_column(Integer)