Files
start-os/core
Matt Hill e3b7277ccd fix: correct false breakage detection for flavored packages and confi… (#3149)
fix: correct false breakage detection for flavored packages and config changes

Two bugs caused the UI to incorrectly warn about dependency breakages:

1. dryUpdate (version path): Flavored package versions (e.g. #knots:27.0.0:0)
   failed exver.satisfies() against flavorless ranges (e.g. >=26.0.0) due to
   flavor mismatch. Now checks the manifest's `satisfies` declarations,
   matching the pattern already used in DepErrorService. Added `satisfies`
   field to PackageVersionInfo so it's available from registry data.

2. checkConflicts (config path): fast-json-patch's compare() treated missing
   keys as conflicts (add ops) and used positional array comparison, diverging
   from the backend's conflicts() semantics. Replaced with a conflicts()
   function that mirrors core/src/service/action.rs — missing keys are not
   conflicts, and arrays use set-based comparison.

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-29 13:07:52 -06:00
..
2025-12-22 13:39:38 -07:00
2025-12-31 11:30:57 -07:00
2025-11-07 10:12:05 +00:00
2025-12-22 13:39:38 -07:00

StartOS Backend

Structure

  • startos: This contains the core library for StartOS that supports building startbox.
  • helpers: This contains utility functions used across both startos and js-engine
  • models: This contains types that are shared across startos, js-engine, and helpers

Artifacts

The StartOS backend is packed into a single binary startbox that is symlinked under several different names for different behavior:

  • startd: This is the main daemon of StartOS
  • start-cli: This is a CLI tool that will allow you to issue commands to startd and control it similarly to the UI
  • start-sdk: This is a CLI tool that aids in building and packaging services you wish to deploy to StartOS

Documentation