Repository navigation
misc(ci): add weekly ARD conformance script sync check - #17171
Conversation
965daa8 to
13ff0a4
Compare
13ff0a4 to
f4f56a7
Compare
f4f56a7 to
ec0f7f4
Compare
ec0f7f4 to
68ba41f
Compare
68ba41f to
cf26cf9
Compare
cf26cf9 to
5216378
Compare
|
minor: doesnt seem like this is "weekly" ... its just part of the update-deps flow. |
|
Stacked PRs are new to GitHub. I don't know if merging the stack will take the PR's title over the commit message. So: please rewrite the incorrect commit message to match the title. It's also not related to ci. I'll update with the expected message. |
3082738 to
c7648ac
Compare
c7648ac to
5df4f45
Compare
5df4f45 to
95fa7df
Compare
95fa7df to
dcdeae0
Compare
dcdeae0 to
6d3b590
Compare
6d3b590 to
9d269d8
Compare
9d269d8 to
ebaeb0e
Compare
lusayaa
left a comment
There was a problem hiding this comment.
I'm wondering if it makes sense to include this as part of its own weekly workflow instead of inside upgrade-deps.sh.
The main reason we need to regularly check the ARD repo is to stay in sync with the ai catalog schema and conformance tests so that we can get notified to update things accordingly on our end. Since updating the JS conformance validator is a manual port from Python, it requires human attention.
As is, the script will just print a diff to the terminal that gets lost in upgrade-deps logs, not really alert anyone that we need to update something. It silently updates the schema and bumps the pinned SHA in README.md without verifying if ard.js needs code changes.
Ideally, the flow goes something like
- weekly cron run: If schema/conformance test changes in ARD repo compared to our pinned SHA -> CI check fails (or opens an issue/alerts us). If nothing changed -> green, nothing happens.
- when alerted: engineer runs yarn update:ard-spec to update the spec, reviews the diff, follows specific instructions on how to update ard.js and tests to match, and bumps the pinned SHA
Open to other approaches too, as long as we do get an actionable notification.
Having a weekly cron check was actually my initial thought for this PR, so I agree with that path. We can remove this from upgrade-deps.sh and add an up-to-date-with-ard-spec job to cron-weekly.yml that runs something like update-ard-spec.js --check that would fail whenever upstream is ahead of our pinned SHA. When alerted, we can just run yarn update:ard-spec, which will download the latest schema, bump the pinned SHA, print the upstream conformance-test diff in the terminal, and then update ard.js in the third-party/. What do you think about the workflow? |
|
The PR description doesn't match what the PR does anymore. Please make sure the first comment is always accurate. I wouldn't remove the update-deps part. That's what is sure to get seen every release cycle. Doing a weekly cron is nice in theory but it's something we can forget to look at. |
Adds automated weekly CI monitoring and an update helper script to keep Lighthouse's Agentic Resource Discovery (ARD) schema and conformance validator in sync with upstream
ards-project/ard-spec.