Skip to content

Simplify Bell and fix security and runtime issues - #26

Merged
shriyatheunicorn merged 6 commits into
mainfrom
amel/bell-oss-cleanup
Oct 26, 2026
Merged

shriyatheunicorn merged 6 commits into
mainfrom
amel/bell-oss-cleanup

Conversation

@supremeboxlogos

@supremeboxlogos supremeboxlogos commented Oct 25, 2026 •

Copy link
Copy Markdown
Member

Bell still carried a second application and agent after dependency flattening, while its retained runtime had authentication, credential-exposure, recovery, and storage bugs. This removes the standalone application and fixes Bell while preserving its existing integrations. No new product features or dependencies are added.

This PR targets main directly and includes the cleanup in #25. It supersedes that PR; it does not depend on Steve's branch.

Cleanup and preserved functionality

  • Remove the standalone application, second agent, orphan submodule, unused UI dependencies, duplicate conversation state, and all current Browsie references. Preserve the original MIT terms in the root license.
  • Keep Bell's browser tools, saved Contexts, web and Linq conversations, human handoff, Baselayer merchant access, Link OAuth and purchase workflows, and 1Password SDK desktop/service-account access.
  • Keep existing encrypted local vaults readable without restoring their administration UI or write APIs. Restore CLI access through explicit BELL_ONEPASSWORD_BACKEND=cli, with a configured account or service token; SDK failures never silently switch accounts or backends.
  • Preserve the planned 1Password OAuth start/callback routes and configuration. Grant storage and connection to vault tools are still unfinished; a verified exchange now returns an explicit HTTP 501 explanation instead of falsely claiming the account was connected.
  • Preserve safe Link purchase/history fields, including line items, totals, payment/refund outcomes, and activity links. Keep the existing protected Baselayer demo defaults.

Fixes

  • Enforce browser-origin and localhost authentication checks, and restore browser Basic login challenges.
  • Disable hosted browser network logging and recording; replace unsafe resumed sessions and restrict credential filling to approved HTTPS hosts and main-page selectors.
  • Keep payment credentials out of model-visible responses, validate request IDs, sanitize provider errors, and use the requested human checkout handoff. Preserve recurring-request and verification instructions.
  • Fix CAPTCHA recovery, Context write races and cleanup retries, stale screenshots, and screenshot image delivery.
  • Validate retained local vault files, keep credentials and website mappings in the same read, and preserve password login when an optional OTP is unavailable.

Migration and remaining boundaries

Environment names change to BELL_*, default local storage moves to .bell, and browser state uses a new namespace. Finish/reset existing conversations and verify their browsers are released before deploying; start new conversations afterward. Move existing Context/vault files or configure their explicit paths, retain the vault master key, and explicitly select CLI mode for CLI setups. See migration and credential setup.

Context metadata remains scoped to one trusted operator and one process. Legacy local-vault website mappings are trusted operator configuration outside the encrypted payload. CLI output may omit autofill policies; the default SDK is required to enforce those policies. Per-user 1Password OAuth is preserved work in progress, not a completed account connection.

Validation

  • pnpm check: 319 tests passed, 7 opt-in live-provider tests skipped; TypeScript, ESLint, Eve build, and Next production build passed. Persistence tests used disposable local Postgres.
  • Regression coverage includes native-vault compatibility/OTP, explicit CLI identity selection, truthful OAuth callback results, retained payment history, nested secret filtering, and the earlier security/runtime fixes.
  • Independent removal audits traced callers, routes, configuration, and tests for both PRs. A final independent review found no additional issue in the restorations.
  • No current tracked/new-file legacy-name matches, broken local documentation links, or whitespace errors. No live provider calls were made.

This PR does not rewrite repository history or change visibility. Historical demo contact information still needs owner review before publication.

@supremeboxlogos
supremeboxlogos requested a review from a team as a code owner October 25, 2026 20:33
@shriyatheunicorn
shriyatheunicorn merged commit 65cb33b into main Oct 26, 2026
5 checks passed
@browserbase browserbase deleted a comment from vercel Bot Oct 27, 2026
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.

2 participants