Date: 2026-08-10
Decision owner: project owner
Technical owner: @kiranmagic7
Status: implementation authorized, launch closed
Implement the BehaviorLock engineering and usability program as a sequence of reversible, issue-backed changes. The program may use public development branches and hosted CI to prove Linux container behavior. It must not create a release tag, publish a Marketplace action, promote the project, execute live malware, or merge to protected main without a separate owner decision.
Make bounded npm behavior changes inspectable without presenting BehaviorLock as a malware verdict, safety proof, or complete sandbox.
- BehaviorLock reports observations and review levels. It does not classify package intent.
- Every trusted report item must point to retained, content-addressed raw evidence.
- Acquisition and package execution remain separate trust boundaries.
- Package execution remains offline by default.
- Trusted automation captures both versions itself and never accepts pull-request-supplied profiles as authority.
- Ambiguous, incomplete, incompatible, or unverifiable evidence fails closed.
- Implement the fourteen release-gate proof paths with inert fixtures and hosted Linux evidence.
- Replace verdict-oriented output with threshold and review language before the first tagged schema contract.
- Retain raw evidence separately from normalized profiles and add verifiable evidence references.
- Restrict acquisition to an internal Docker network and an exact-host allowlist proxy.
- Add artifact provenance verification, SBOM generation, signed release configuration, and release dry runs without creating a tag.
- Expand selected syscall coverage, descriptor attribution, process relationships, environment-probe evidence, canaries, and observable technique sequences.
- Build split-privilege CI integration without
pull_request_targetand without Marketplace publication. - Add deterministic fixtures, repeated-run checks, safe benchmark metadata, runbooks, and an incident-response template.
pull_request_targetis rejected. A privileged workflow must never execute code or package selections controlled by a pull request.- Global noise suppression from a no-op package is rejected. Repeated observations may report frequency, but credential, network, process, environment-probe, and out-of-boundary mutation evidence is never suppressible.
- Sandbox camouflage that weakens a read-only root, process identity, procfs integrity, or container isolation is rejected. BehaviorLock reports environment probes instead of claiming invisibility.
- Clock injection and automatic sleep skipping are rejected for the trusted default because they change program semantics. Timing probes may be observed while the hard wall-clock limit remains authoritative.
- Privileged eBPF and unverified gVisor syscall claims are deferred. Capture-backend identity and compatibility checks may be added without claiming unsupported evidence.
- Live malware execution on GitHub-hosted runners is rejected pending explicit platform-policy, legal, and isolation approval. The benchmark harness uses inert reconstructions and metadata only.
- No release-candidate or stable tag is created while any release gate is open.
- Reconcile existing documentation and containment work.
- Stabilize terminology and evidence contracts.
- Close containment, exhaustion, tracer-death, and determinism implementation gaps.
- Close acquisition-egress and provenance implementation gaps.
- Add bounded observation coverage.
- Add safe CI integration and no-publish release machinery.
- Complete security and truth audits before any merge or release decision.
Every implementation change uses a dedicated branch or local integration branch. The pre-program repository refs and uncommitted containment work are preserved in a verified Git bundle and patch under the workspace backup directory. Public merges, releases, promotion, and live-sample research remain separate owner decisions.
- Every roadmap gate has an explicit proof path and reports fail-closed state for the exact protected commit.
make check, builds, security scanners, schema tests, and release dry runs pass on the implementation stack.- Acquisition package tooling has no direct route and can reach only the exact registry proxy through a private Unix socket.
- Every current diff addition has a raw-evidence reference whose content digest verifies.
- Cross-workflow consumers verify artifact provenance before privileged use.
- Documentation states tested coverage and limitations without unsupported detection claims.
- A new user can build, run the inert demonstration, operate capture on a disposable Linux runner, and understand the output.
Implementation and hosted CI branches are approved. Merge to main, release tags, package or image publication, Marketplace publication, external outreach, and live malware execution are not approved by this record.
Review after all automated checks are green on the final draft stack and before any merge or release decision.