feat(tools): MQTT bridge and Pixlet editor, ported onto the api_v3 split - #554
Conversation
PR #544's change, ported onto the api_v3 package split (#553). Identical behaviour; only the placement of the new code differs. The original added 508 lines to web_interface/blueprints/api_v3.py, which #553 deletes, so every hunk of it would conflict irreconcilably. Ported by AST: 26 new top-level items sorted to where the split puts each kind -- __init__.py 2 imports, 11 constants, 7 helpers starlark.py 4 routes (/starlark/editor/{apps,status,start,stop}) misc.py 2 routes (/integrations/mqtt-bridge{,/config}) Everything outside api_v3.py -- the Tools partial, the installer scripts, the JS tests -- applied unchanged. Routes: 111 from the split plus these 6 = 117, and the url-map snapshot is regenerated to match, which is exactly what test_api_v3_url_map.py is designed to make you do when routes are added. Full Python suite: 4,278 passed, 68 skipped, 0 failed. The JS tests this PR ships could not be run here -- node is not installed on this machine -- so test/js/dom/test_tools_sections.js is unverified. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014RRtqXDCnvnY6EQwhT5CV9
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Advanced Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Thanks 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 |
Not up to standards ⛔🔴 Issues
|
| Category | Results |
|---|---|
| ErrorProne | 9 high |
🟢 Metrics 106 complexity · 0 duplication
Metric Results Complexity 106 Duplication 0
NEW Get contextual insights on your PRs based on Codacy's metrics, along with PR and Jira context, without leaving GitHub. Enable AI reviewer
TIP This summary will be updated as you push new changes.
Stacked on #553. Base is
refactor/api-v3-blueprint-split, so the diff here shows only the port. GitHub retargets this tomainautomatically when #553 merges.This is #544's change, unmodified in behaviour, moved to where the split puts each kind of code.
Why it needed porting
#544 adds 508 lines to
web_interface/blueprints/api_v3.py— the file #553 deletes. Every hunk would conflict, and git cannot auto-resolve any of it, because the target no longer exists.How
AST diff of #544's
api_v3.pyagainst its merge base, then each of the 26 new top-level items routed to its home:__init__.pycontextlib,signal), 11 constants, 7 helpersstarlark.py/starlark/editor/{apps,status,start,stop}misc.py/integrations/mqtt-bridge{,/config}Everything outside
api_v3.py— the Tools partial,install_mqtt_bridge.sh,pixlet_config_editor.sh, the JS tests — applied unchanged.Verification
test/fixtures/api_v3_url_map.jsonregenerated. That is the intended workflow: the snapshot test fails when routes are added, and adding them to the snapshot is how you confirm the addition was deliberate.Not verified
test/js/dom/test_tools_sections.js— node is not installed on the machine this was ported on, so #544's JS tests did not run. They are unchanged from #544, but please run them before merging.What to do with #544
#544 itself is untouched. Once #553 lands, either merge this and close #544, or force-push this branch's content onto
feat/tools-mqtt-bridge-pixlet-editorto update #544 in place — I did not do that unprompted, since it rewrites a branch you own.🤖 Generated with Claude Code
https://claude.ai/code/session_014RRtqXDCnvnY6EQwhT5CV9