Files
quixos-protocol/nix/checked-package.nix
T
Timothy J. Aveni fae4e48f72 Unify workspace authoring, verification and scaffolding workflows
Use exact jj snapshots and one candidate-bound Nix builder for incremental checks, template validation and activation. Keep provenance internal and separate recovery checkpoint failures from local command success.

Provision workspace-scoped managed package/interface repositories with recoverable Central effects. Add TypeScript/React presets, function and dependency commands, and scaffold enrollment for all TODO packages. Install authoring guides and controlled Codex sandbox rules.

Invalidate module resolutions across cutover, including in-flight races, and content-address host platform entries. Strengthen domain-model and verification instructions.

Validated real jj/Nix authoring, React/Slate dependency installation, bottom-up local Git publication, packaged CLI tests, PostgreSQL recovery/auth tests, Web Studio tests and host configuration. Public protocol/helpers and the validated 19-resource TODO template are published. Retained the approved exact private baseline and updated the installation's default template pin to 68d54f0d52be433ebf60bdc1faf7646c57f90307. Master and live deployments remain unchanged. See docs/WORKSPACE_AUTHORING_PROGRESS.md.
2026-09-13 23:06:38 -07:00

18 lines
872 B
Nix

# One derivation path for provisional checking and activation. The source and
# schema come from exact committed inputs resolved by the Quixos compiler.
{ source, schema, generator, packageRevisionId, system ? builtins.currentSystem }:
let
packageSource = builtins.path {
path = /. + source;
name = "quixos-package-source";
filter = path: _: let name = baseNameOf path; in name != ".git" && name != ".jj";
};
package = builtins.getFlake ("path:" + builtins.unsafeDiscardStringContext (toString packageSource));
checked = package.quixosPackages.${system}.checkedServer or
(throw "Package ${packageRevisionId} lacks checkedServer; use the supported package scaffold.");
in checked {
inherit packageRevisionId;
schema = builtins.path { path = /. + schema; name = "candidate-package-bindings.json"; };
generator = builtins.storePath generator;
}