Files
spaces-startos/TODO.md
T
spacesopsandCursor b1d4890320 Update to @start9labs/start-sdk 2.0.9
Targets StartOS 0.4.0-beta.10 (was beta.9). Four breaking changes applied:

- Service interfaces moved onto their binding: sdk.serviceInterface.getOwn is
  gone, so nacho's EXPO_PUBLIC_API_BASE_URL now walks the subs-api interface off
  its host with sdk.host.getOwn, using the map selector so .const() re-runs only
  when that interface's address changes.
- SubContainer.of is lazy and synchronous — dropped the awaits.
- Task input split into accept/set; the Bitcoin RPC task accepts the credentials
  it sets, matching its previous behavior.
- The manifest alerts field was removed (ours was all null).

Also adopts the build plumbing the SDK now ships instead of vendoring it: the
Makefile includes node_modules/@start9labs/start-sdk/s9pk.mk, tsconfig extends
the SDK's base (ES2022, bundler resolution), and TypeScript moves to 6.0.

Verified by installing on a StartOS box: all daemons come up, nacho logs a
derived API base URL rather than the loopback fallback, and the sync health
check's space-cli exec runs on cadence against the shared subcontainer.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-30 11:48:09 -04:00

1.7 KiB

TODO — bring Spaces from beta.9 to beta.10

Consult the packaging guide as you go (start-technologies/projects/start-sdk/docs/src/recipes.md is the intent index). Remove items as you finish them, and add items when you defer work.

The service

  • Rename startos/versions/v0.2.1.0.ts to startos/versions/current.ts (the guide keeps the latest version there; a dated file is only for a released version that carries a migration).

Docs

  • Write README.md (per start-technologies/projects/start-sdk/docs/src/writing-readmes.md).
  • Write instructions.md (per start-technologies/projects/start-sdk/docs/src/writing-instructions.md).
  • Fill in UPDATING.md (upstream-version tracking).

Build, test, ship

  • Build for arm (ARCHES := x86 arm in the Makefile). All four images declare aarch64 in the manifest and every tag publishes an arm64 variant, so the package currently advertises support it never ships. Needs an arm box to verify.

  • First test build: make (or start-cli s9pk pack); fix any tsc / pack errors.

  • Install on a StartOS box and verify the service runs (and is reachable, once it exposes an interface). Under SDK 2.0 pay particular attention to nacho's EXPO_PUBLIC_API_BASE_URL (now resolved by walking the subs-api host) and to the Bitcoin RPC task raised on first install (accept/set input).

  • npx prettier --write startos — 9 files predate the current prettier config and fail --check (untouched by the SDK bump, so left out of that diff).

  • Backup / restore sanity check.

  • Review the README and instructions one more time against actual behavior.