Skip to content

Simplify Pixelbot API failure paths - #5

Merged
pierrebrunelle merged 1 commit into
mainfrom
codex/pixelbot-simplify-api
Sep 13, 2026
Merged

pierrebrunelle merged 1 commit into
mainfrom
codex/pixelbot-simplify-api

Conversation

@pierrebrunelle

Copy link
Copy Markdown
Collaborator

Pixelbot still carried duplicate exception wrappers, notification transports, and unused REST endpoints after the Pixeltable 0.7.7 upgrade. This follow-up removes those paths so the app has one sanitized failure boundary, one notification implementation, and a smaller supported API.

Changes:

  • remove seven unused file/history/TTS/database endpoints and their orphaned models/types
  • let unexpected route failures reach the application-level sanitized 500 handler while preserving explicit validation and not-found responses
  • restrict transient retries to synchronous read-only operations so writes, provider calls, and notifications are not repeated after partial success
  • share typed Slack, Discord, and webhook delivery across HTTP and Pixeltable tools; log only redacted destination origins
  • reuse one isolated Pixeltable test catalog and stop its PostgreSQL process after the pytest session
  • document why Torch and Transformers remain required by the core CLIP image/video indexes

Validation:

  • uv run ruff format --check pixelbot tests
  • uv run ruff check pixelbot tests
  • uv run mypy pixelbot
  • uv run pytest -q twice: 15 passed on both runs, with no test PostgreSQL process left running
  • frontend lint, 5 Node tests, and production build; initial chunk 271.64 kB
  • uv lock --check and uv build
  • pxt schema check pixelbot/app.py
  • schema diff against an applied isolated catalog: 19 unchanged, zero operations
  • real pxt service update smoke test: health, memory, context info, and notification log returned 200; removed endpoints returned 404; service stopped cleanly

Provider calls were mocked; no paid provider or hosted deployment was run.

@pierrebrunelle
pierrebrunelle merged commit 920a608 into main Sep 13, 2026
7 checks passed
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