Skip to content

feat(tools): MQTT bridge and Pixlet editor, ported onto the api_v3 split - #554

Open
ChuckBuilds wants to merge 1 commit into
refactor/api-v3-blueprint-splitfrom
feat/tools-mqtt-bridge-pixlet-editor-on-split
Open

feat(tools): MQTT bridge and Pixlet editor, ported onto the api_v3 split#554
ChuckBuilds wants to merge 1 commit into
refactor/api-v3-blueprint-splitfrom
feat/tools-mqtt-bridge-pixlet-editor-on-split

Conversation

@ChuckBuilds

Copy link
Copy Markdown
Owner

Stacked on #553. Base is refactor/api-v3-blueprint-split, so the diff here shows only the port. GitHub retargets this to main automatically 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.py against its merge base, then each of the 26 new top-level items routed to its home:

destination contents
__init__.py 2 imports (contextlib, signal), 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, install_mqtt_bridge.sh, pixlet_config_editor.sh, the JS tests — applied unchanged.

Verification

  • 117 routes = 111 from the split + these 6, all six present and correctly pathed.
  • test/fixtures/api_v3_url_map.json regenerated. 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.
  • Full Python suite: 4,278 passed, 68 skipped, 0 failed.

Not verified

test/js/dom/test_tools_sections.jsnode 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-editor to 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

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
@coderabbitai

coderabbitai Bot commented Sep 9, 2026

Copy link
Copy Markdown
Contributor

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Advanced

Run ID: e5d1cc79-29d0-4528-b05e-5af15de96c22

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@codacy-production

Copy link
Copy Markdown

Not up to standards ⛔

🔴 Issues 9 high

Alerts:
⚠ 9 issues (≤ 0 issues of at least minor severity)

Results:
9 new issues

Category Results
ErrorProne 9 high

View in Codacy

🟢 Metrics 106 complexity · 0 duplication

Metric Results
Complexity 106
Duplication 0

View in Codacy

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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant