Skip to content

docs: retire three-mode deployment model (local-or-cloud, cloud=AWS)#35

Open
andrei-hasna wants to merge 2 commits into
mainfrom
openloops/open-loops/0f4d93ed-2e92-409c-8b4e-7dca969e5209-91897dae
Open

docs: retire three-mode deployment model (local-or-cloud, cloud=AWS)#35
andrei-hasna wants to merge 2 commits into
mainfrom
openloops/open-loops/0f4d93ed-2e92-409c-8b4e-7dca969e5209-91897dae

Conversation

@andrei-hasna

Copy link
Copy Markdown
Contributor

Summary

  • Reconcile README.md, docs/DEPLOYMENT_MODES.md, and docs/USAGE.md with the binary local | cloud deployment model after @hasna/cloud retirement (cloud = AWS-backed Hasna control plane).
  • Remove self_hosted as a current deployment mode; reframe transitional loops self-hosted * CLI surfaces as cloud control-plane preview paths.
  • Epic: 56ed8b94 · docs-sweep: f909ebea · coordinates with storage-model design task 5ede7a57 for eventual code/enum alignment.

Changed files

  • README.md — two-mode deployment section, updated mode resolution, cloud-focused status commands
  • docs/DEPLOYMENT_MODES.md — modes table 3→2, mode resolution, sourceOfTruth, migration/sync, machine placement, package boundary
  • docs/USAGE.md — binary deployment framing, cloud sync section

Validation

grep -rnE 'self_hosted' README.md docs/DEPLOYMENT_MODES.md docs/USAGE.md  # zero hits

Docs-only; src/lib/mode.ts still exports three-mode enums intentionally until 5ede7a57 lands.

Test plan

  • grep -rnE 'self_hosted' on target files returns nothing
  • bun test src/lib/mode.test.ts passes (unchanged code)
  • Verifier: full bun test (worker saw 33 pre-existing env failures unrelated to docs)

…records the worker PR

The pr-handoff step runs as `bash -lc '<script>'` (a login shell). On the
no-artifact path the script ran `set -euo pipefail; ...; printf; exit 0`. When
the loops daemon runs under systemd with SHLVL=1, exiting a login shell sources
~/.bash_logout, whose `clear_console` fails without a controlling TTY; with
errexit still active during an explicit `exit`, bash hands that failure back as
the shell's status. The step surfaced exit 1, the workflow failed, and the
verifier (dependsOn pr-handoff) was skipped, stranding the source task
in_progress. Gate steps were unaffected because they end naturally rather than
calling `exit`.

Fix: route both branches of the artifact guard through bun heredocs and fall
through to the natural end of the `if` (matching the gate steps), so the
intended exit status is preserved. The no-artifact/direct-PR branch now also
detects the worker-opened PR (`gh pr list --head <branch> --state open`) and
records the same `openloops:pr-handoff=done` evidence the artifact path records,
so cursor-style workers that open their own PR complete with verifier PASS and
flow to the merge lane. Best-effort: a missing PR or gh/git/todos error is
tolerated (still exits 0). The artifact (codewith) path is unchanged.

Tests: neutralization-provable unit tests (reproduce the login-shell corruption
via a failing ~/.bash_logout with SHLVL unset; reverting to explicit `exit 0`
fails them) plus a workflow-runner integration test asserting the verifier still
runs after a no-artifact pr-handoff. Full suite green (619 tests).
Reconcile README and deployment docs with the binary local|cloud storage
model after @hasna/cloud retirement. Epic 56ed8b94, docs-sweep f909ebea.
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