Skip to content

chore(schema): add field descriptions for firefox_ios_derived#9692

Merged
phil-lee70 merged 10 commits into
mainfrom
auto/schema-descriptions-firefox_ios_derived-20260710-130319
Jul 22, 2026
Merged

chore(schema): add field descriptions for firefox_ios_derived#9692
phil-lee70 merged 10 commits into
mainfrom
auto/schema-descriptions-firefox_ios_derived-20260710-130319

Conversation

@phil-lee70

@phil-lee70 phil-lee70 commented Jul 10, 2026

Copy link
Copy Markdown
Contributor

Schema Update: moz-fx-data-shared-prod.firefox_ios_derived

Generated by the metadata agent pipeline on 2026-07-10.

Summary

Tables updated 0
Fields described 0
Probe-matched 0 / 0
Contradictions flagged 0

Fields Updated by Table

Table Fields Described Probe Matches

Contradictions Found

None

Checklist

  • Descriptions reviewed for accuracy
  • Contradictions investigated before merging

@scholtzan

This comment has been minimized.

@phil-lee70
phil-lee70 marked this pull request as ready for review July 21, 2026 12:21

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This PR adds field descriptions to three firefox_ios_derived table schema.yaml files (baseline_clients_yearly_v1, feature_usage_events_v1, ltv_ios_aggregates_v1) and introduces a new dataset-level firefox_ios_derived.yaml base schema, generated by a metadata agent pipeline.

The bulk of the descriptions are clear and consistent, and YAML structure/field names look valid with no duplicates. My comments focus on a couple of descriptions whose accuracy I could verify against the queries and the repo's canonical wording, plus a note on how the new dataset-level file relates to the inlined descriptions. Since the PR's own checklist notes descriptions still need an accuracy review, the maintainers should give the _users/event-count and autofill descriptions a domain pass as well — I only flagged the ones I could confirm.

type: BOOLEAN
mode: NULLABLE
description: Indicates whether this is the client's first year of activity. True if the client's first_seen_date
falls within the current year window.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

issue: This description of is_new_profile is inaccurate. is_new_profile is a passthrough from firefox_ios.baseline_clients_daily and marks whether the profile was newly created (the canonical description used elsewhere in this repo is "Indicates whether the Firefox profile associated with the client was newly created. True means the profile was created recently"). It has nothing to do with a "first year of activity" or a "current year window" — that interpretation appears to be inferred from the table name. Replace it with the profile-creation meaning. The same incorrect text is duplicated in firefox_ios_derived.yaml (line 98) and should be fixed there too.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

updated these to correct definition

- name: retained_week_2
type: BOOLEAN
description: Whether the client was retained at week 2 (i.e., sent a ping in the second week after first seen). Null in the current sample,
likely populated for older cohorts.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

issue: Schema descriptions should document a field's durable semantics, not a transient observation of the current data or a guess. "Null in the current sample, likely populated for older cohorts" states an assumption ("likely") about data that isn't part of the field definition and will become stale/misleading. paid_vs_organic_gclid (line 168) has the same problem with "Null for all clients in this sample." Describe what the field represents and, if the null behavior is a real invariant, state the actual reason rather than an observation about the sample.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

'null' language removed from descriptions

@@ -0,0 +1,206 @@
fields:

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

suggestion: This new dataset-level base schema is added, but the per-table schema.yaml files in this PR inline their descriptions directly rather than referencing it. The established pattern for these <dataset>_derived.yaml files (e.g. messaging_system_derived.yaml) is for the table schema.yaml files to pull canonical text via !include-field-description with a file: path (see docs/reference/schema_includes.md). As written, the same descriptions now live in two places and can drift. Consider either referencing the shared file from the table schemas via !include-field-description, or dropping the shared file if inline descriptions are the intended source of truth.

@phil-lee70 phil-lee70 Jul 21, 2026

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

implemented changes so that repeated field descriptions are replaced with the base schema definitions

also, the upstream fix to the agent is applied in the PR: https://github.com/mozilla/data-shared-llm-agents/pull/157/changes

…escriptions

- Replace duplicated inline field descriptions with !include-field-description
  references to firefox_ios_derived.yaml (baseline_clients_yearly_v1,
  feature_usage_events_v1).
- Correct is_new_profile to describe profile creation, not yearly activity.
- Remove transient sample observations from retained_week_2 and
  paid_vs_organic_gclid descriptions.

Addresses review feedback on PR #9692.
@scholtzan

This comment has been minimized.

@scholtzan

Copy link
Copy Markdown
Collaborator

Integration report

@phil-lee70
phil-lee70 added this pull request to the merge queue Jul 22, 2026
Merged via the queue into main with commit 1455221 Jul 22, 2026
30 checks passed
@phil-lee70
phil-lee70 deleted the auto/schema-descriptions-firefox_ios_derived-20260710-130319 branch July 22, 2026 15:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants