Skip to main content
@bijection/model-lifecycle owns modeling objectives, immutable candidate registrations, evaluation associations, desired deployments and monitoring policies in private application tables. Model/scenario execution, pipelines, operations, approval, releases, files and datasets retain their native owners. The component source contains the API, adapters, CPU controller and executable reference cases.

Install in an application

Create lifecycleTables("modelLifecycle") once, merge the result into the application schema and pass those same tables to lifecycleApplication(options, tables, approval). Export the returned functions individually from modelLifecycle.ts. Supply an existing operationApproval with target_id as its resource argument. The application’s access model still grants native read, preview and invoke permissions for these operations. The Northstar integration recipe provides a demand-model acceptance policy. The document integration recipe connects a separate native Compute installation and a classification policy. These recipes require the application’s actual custody, publication and authorization owners. They do not activate a provider or grant authority merely by importing them. Use the exported workspace helper so operations belong to the correct feature:
Merge these entries with the application’s other features and operations. The reference recipes return both feature and operations for this purpose. Keep the lifecycle tables private. The official workspace exposes paginated objectives, candidates, suites, evaluation comparisons, work, promotions, deployment observations, predictions and outcomes through authorized queries. Every action opens the existing native operation dialog; promotion uses its review and approval flow.

Register and evaluate

A candidate binds its capability, implementation, input/output contract, preprocessing, postprocessing, canonical parameters and exact model-file references. Imported provenance is distinct from native-correlated training evidence. Small parameters use existing model artifacts; large weights remain governed files with independent custody. A suite fixes evaluator identity, baseline, selection and validation dataset versions, metric units, sample bounds and acceptance criteria. Different input digests alone do not establish independent observations: the configured evaluator must check their actual split. Missing metrics, incomplete populations, wrong units and undefined denominators cannot pass. External evaluator reports remain external evidence, not independent attestation of statistical correctness. requestEvaluation admits work through the configured native owner. acceptWork reads that owner’s current result, checks the entire identity and retains report custody. It accepts no caller-supplied evaluation metrics.

Review, publish and deploy

promote rechecks the target revision, objective policy, current baseline, candidate, evaluation and custody in the accepting transaction. It submits the exact reviewed proposal through the existing source/release owner. Changing policy requires a new suite/evaluation. Selecting an experimental release does not install it in the live application. requestDeployment waits for actual publication evidence and submits a provider change through native work. A command acknowledgement does not establish model readiness. The serving source must independently report the selected candidate and release. Superseded work cannot replace the current deployment resource. nativeComputeWork adapts an installed @bijection/compute controller. modelServingSource declares the separate serving observations. Connections own account identities and credentials. A persistent serving deployment is distinct from the finite command that creates or changes it.

Train, score and monitor

requestTraining pins its declared inputs and configuration through the installed custody and execution owners. Its accepted result registers a candidate with the original native work identity. Training success does not approve business use. Batch scoring follows the same work protocol and retains its output separately. Trusted internal decoders record predictions with exact model/input/inference identities. Outcome corrections preserve the prediction association and check an expected revision. Initial quality monitors measure error for the selected candidate and expose missing-label or incomplete populations. Notification occurrences pass through the installed notification owner in the same transaction. Schedule the exposed evaluateMonitor operation through the existing Automations component when periodic checks are needed; this library adds no scheduler. requestInference provides this path for a native Compute installation: it checks the current published, ready target and retains the exact input version. Accepting the correlated result records its prediction automatically, including the selected candidate, subject and horizon. Native work retains the execution and its result. The reference CPU controller implements training, evaluation, immutable model deployments, batch inference, prediction, disable and persistent command recovery. Its scope is finite synthetic datasets and one process with a private durable directory. Production compute, model packaging and scaling remain provider-owned.

Bounds and verification

The initial monitor admits 256 predictions per window and reports larger windows as incomplete. Use dataset computation for broader populations. Lists page at most 50 records. Native file custody has a finite maximum seven-day grant; expiry never silently renews work. Cancellation alone does not prove remote termination or authorize releasing its input custody. Disable the provider, observe its disabled state and settle the command before clearTarget removes its desired binding. Unselected evaluations, suites and candidates have explicit retirement operations that release their independent custody. Authorized lists preserve redacted metadata after retirement or custody loss; retained parameters and inputs remain unavailable. Clearing a binding does not reverse an installed source release. Package checks exercise real JavaScript transactions with controlled execution evidence and a real HTTP controller, including controller restart. They do not qualify native reviews, file grants, PostgreSQL recovery, hosted release flows or provider failures. Run a dedicated Atlas campaign for those boundaries when qualification is requested.