Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Convert one changed historic-SQL table usage bucket into typed table usage evidence for deterministic _schema projection.
| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-08 | ✗→✓ | ▲ Improved | 46% | 0% |
| case-18 | ✗→✓ | ▲ Improved | 5% | 0% |
| case-21 | ✗→✓ | ▲ Improved | 78% | 0% |
| case-11 | ✓→✗ | ▼ Worse | 482% | 0% |
| case-13 | ✓→✓ | = Same ✓ | 42% | 0% |
Use this skill when the WorkUnit raw file is one tables/<schema>.<name>.json file from the historic-sql adapter.
read_raw_file for the single tables/<schema>.<name>.json raw file.manifest.json only if the table JSON omits the dialect or the WorkUnit notes are unclear.emit_historic_sql_evidence exactly once with kind: "table_usage".Before writing a wiki page or SL source on any topic:
discover_data({query: "<topic>"}) - see what wikis, SL sources, and rawtables already exist. Prefer updating existing pages over creating new ones.
Before emitting any schema.table or schema.table.column into a wiki body, SL source, tables: frontmatter, sl_refs, or emit_unmapped_fallback:
entity_details({connectionId, targets: [{display: "<identifier>"}]}) -confirm the identifier resolves; inspect native types, FK/PK, and sampleValues.
check whether they appear in entity_details sampleValues for the relevant column. If sampleValues is short or the sample may have missed real values, run a sql_execution probe with the same warehouse connection id: sql_execution({connectionId, sql: "SELECT DISTINCT <col> FROM <ref> LIMIT 50"}).
sql_execution({connectionId, sql: "SELECT 1 FROM <ref> LIMIT 0"}).If it errors, the identifier is fictional.
[unverified - from <rawPath>] in the wiki body,citing the exact raw path that mentioned it.
emit_unmapped_fallback with no_physical_table, includethe failing probe error in clarification.
<schema>.<table> placeholder strings from these instructionsinto output.
Call emit_historic_sql_evidence with this shape:
json{ "kind": "table_usage", "table": "public.orders", "usage": { "narrative": "Orders are repeatedly queried for paid/refunded lifecycle analysis and customer-level rollups.", "frequencyTier": "high", "commonFilters": ["status", "created_at"], "commonGroupBys": ["status"], "commonJoins": [{ "table": "public.customers", "on": ["customer_id"] }], "staleSince": null } }
The usage object must match tableUsageOutputSchema.
columnsByClause.where as common filters.columnsByClause.groupBy as common group-bys.observedJoins as common joins.stats.executionsBucket, stats.distinctUsersBucket, and stats.recencyBucket to choose frequencyTier.frequencyTier: "high" only when executions and distinct users are both broad.frequencyTier: "mid" for repeated team usage that is not broad enough for high.frequencyTier: "low" for low-volume but present usage.frequencyTier: "unused" only when the table input explicitly says the table is stale or has no recent templates.narrative short and concrete.Other measured skills in the registry, with their headline benchmark lift.