chore: regenerate schema from upstream spec - #34
Conversation
|
Please hold this one. The regeneration is faithful to the published spec, but the published spec now under-describes The defect is upstream, in the spec
EntityScheduleEntry: # used by EntityScheduleResponse.schedule
required: [date, type, openingTime, closingTime]
properties:
type: {type: string} # no enum
# no purchases
additionalProperties: true
PricedScheduleEntry: # used by ParkSchedule.schedule
required: [date, openingTime, closingTime, type]
properties:
type:
enum: [OPERATING, TICKETED_EVENT, PRIVATE_EVENT, EXTRA_HOURS, INFO]
purchases:
items: {$ref: SchedulePriceObject}
The loose one is wrong. Asking for a park's own schedule today: Identical content to what comes back nested under the destination, which the spec types precisely. What that costs consumersMerging as-is would, on
The third is the one I would call a bug rather than a downgrade: the type would assert non-null for a field that has been nullable. Everything else here is goodTo be clear about what is not the problem. The rest of the regeneration is an improvement and should land once the spec is fixed:
Verified locally on this branch: Suggested order
Separately: this PR can never turn green on its own
|
|
One more thing, and it moves this from "a downgrade" to "a revert".
So nullable The regenerated schema declares: price:
type: object
properties:
amount: {type: number}
required: [amount, currency]Merging would put That makes the spec fix in the upstream tracker a correctness item rather than a polish one. Same conclusion, more firmly: fix |
|
Checked the rest of the nullability, as suggested. One field is provably wrong against production right now; the others are fine.
Exactly the case the 7.1.0 CHANGELOG describes — a paid queue exists, the provider does not publish a price. The spec declares The other nullability changes are safe, checked across 5 parks:
So the scope is narrower than feared: one wrong field, not a systematic loss. Fix |
fa9e987 to
bf1a5d3
Compare
The drift job opened its PR with GITHUB_TOKEN. GitHub does not start workflow runs from GITHUB_TOKEN-raised events, so the required Test (Node ...) checks never reported and the PR was blocked on a report it could not receive. #34 has sat that way since 2026-09-02 while its body said 'build: success'. Fixed by minting a short-lived installation token from the tpw-drift app and handing it to create-pull-request. The push then comes from the app's identity rather than GITHUB_TOKEN, pull_request fires normally, and CI reports. The app holds contents:write and pull_requests:write on two repos and nothing else — notably not workflows:write, so it cannot alter CI. The create-an-issue steps keep GITHUB_TOKEN deliberately. They open issues on failure, an issue does not need to trigger anything, and there is no reason to widen the app's reach. Also corrects the comment left on ci.yml's workflow_dispatch trigger by the previous attempt. workflow_dispatch is genuinely a documented exception to the no-runs rule, and it does start a run — but that run's check runs do not satisfy branch protection. Measured, not assumed: on one PR, a dispatched run put three successful check runs with the exact required names on the head SHA and left it BLOCKED with an empty rollup for two minutes, while a push-event run on the next commit cleared it at once. The trigger is kept because re-running CI against a ref by hand is useful; the claim that it fixes drift is removed. Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
bf1a5d3 to
c00d9f5
Compare
Automated schema regeneration from the
api.themeparks.wikiOpenAPI spec.A build failure here means the upstream contract changed in a way
this client cannot absorb automatically. Do not merge until it is
green.