[P0-30] Formalize deployment config, secret refs, and trusted init boundary #138
Labels
No labels
bug
documentation
duplicate
enhancement
good first issue
help wanted
invalid
question
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
nsaspy/starintel-server#138
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Current status after ARDR re-audit — 2026-08-29
The original issue mixed current defects with defects already repaired on
master.Exact inspected baseline:
8fb297d146e7332fae7e38170b5b49d49530ac53.Already repaired — preserve these
Current master already:
dockerTools.buildLayeredImagecarrying the StarIntel application closure;Do not rewrite those working deployment mechanisms as part of this issue.
Residual P0 problem
Ordinary server settings still flow through an executable Common Lisp init file selected by
STAR_SERVER_INIT_FILE; secret resolution semantics are split between the shell entrypoint and application code; and several declared configuration controls still need observed-behavior proof rather than mere variable presence.The default config path and trusted code-extension path therefore have the same authority today.
Canonical ARDR authority
Research:
lost-rob0t/starintel-auto-research/roam/research/ardr-issues/ARDR-ISSUE-191-deployment-config-secrets-contract.orgDesign:
lost-rob0t/starintel-auto-research/roam/design/star-server/STAR-SERVER-044-deployment-config-trusted-init.orgTransactions: Auto-Research #191 / #192.
Design direction
Preserve current OCI/Compose packaging and add a closed typed Common Lisp deployment-config normal form:
star-server admin;VALUE/VALUE_FILEambiguity has one explicit tested rule;No new StarLang syntax or external configuration supervisor is justified.
Proposed implementation slices — PENDING OPERATOR APPROVAL
Slice 1 — pure config schema + normalizer
No network/thread/process mutation.
Mandatory RED-first targets on untouched server:
Slice 2 — unified secret-reference resolver
*_FILEfixture;Slice 3 — env + inert data-file adapters
Map currently supported deployment variables into the schema; invalid values fail before long-lived startup.
Slice 4 — startup/trusted-init split
Normal deployment starts without executable init. Legacy
-i/STAR_SERVER_INIT_FILEis explicitly trusted-extension compatibility and base configuration is revalidated before resource realization.Slice 5 — observed behavior
Contract tests prove retained HTTP listener/base-path/TLS and other supported settings actually affect runtime behavior. Dead settings are removed/deprecated rather than falsely advertised.
Slice 6 — deployment regression
Existing Nix image and authenticated Compose/stack tests remain green.
Acceptance
APPROVEDby the operator.Implementation authorization
PENDING / AWAITING_OPERATOR_APPROVALResearch readiness, design completion, issue state, publication, or machine output does not authorize implementation.