fix: assert the scheduler record's skill_id, not the retired owner - #614
Conversation
|
Important Draft PR not reviewedDraft PRs are not automatically reviewed by default.
To automatically review draft PRs, update your CodeRabbit configuration: reviews:
auto_review:
drafts: trueThanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
I've done the heavy lifting! Here are the check results. 🏋️♂️I've aggregated the results of the automated checks for this PR below. 📋 Repo HealthChecking for any potential repo regressions. 🔄 ✅ All required files present. Latest Version: ✅ ⚖️ License CheckEnsuring our EULA (if any) is still valid. 📑 ✅ No license violations found. Policy: Apache 2.0 (universal donor). StrongCopyleft / NetworkCopyleft / WeakCopyleft / Other / Error categories fail. MPL allowed. 🔒 Security (pip-audit)Ensuring our encryption is top-notch. 🔐 ✅ No known vulnerabilities found (72 packages scanned). 📡 Channel Compat — testingThe automated report has been generated. 🖨️ 🚧 Channel unresolvable with this checkout — the repo's dependency floors exceed what the channel pins (fleet finding; see the install log). Constraints: https://raw.githubusercontent.com/OpenVoiceOS/OpenVoiceOS/main/constraints-testing.txt 🔨 Build TestsThe build bots have finished their assembly. 🤖 ✅ All versions pass
Beep boop. See you in the next PR! 👋 |
devis red on all five Pythons. One assertion reads a scheduler-record field thatovos-bus-clientrenamed.What is red
devlast passed CI on 2026-09-06 at87334ee. Re-running that same unchanged commit today gives FAILURE (run34044535288), so nothing indevchanged: a dependency moved under it.ovos-bus-client 2.11.14a2published on 2026-09-07.Why the test is wrong, not the emitter
The record no longer carries
owner. Printed from the live object built by this very test:The rename is deliberate and carries its own compatibility shim for records already on disk, in
ovos_bus_client/util/scheduled_events/schedules.py:179-190:That shim covers a stored record. A record built fresh in memory, which is what this test inspects, is
skill_idfrom the start.The clincher is in the same file: lines 293 and 301 already assert
record["skill_id"]. Line 196 was simply missed when the rest of the file was moved to the new name.The change
One line,
record["owner"]→record["skill_id"].grepfor"owner"acrossovos_workshop/andtest/returns that line and nothing else.Verification
test_scheduler_delegation.pytest/unittestsBefore this change the same tree is
701 passed, 1 failed.Unblocks #612 and #613, which are red on this and on nothing else.