A snapshot: read at commit 707a04c7ce8 on 2026-10-18T00:06:01Z by majordomus 0.29.0. Nothing on this page is read again. See it live
I1800
The sandboxed engine a scripted capability runs in
Where it stands
devtask.issue- Readiness
- ready no dependency and no gate holds it; nobody has started it
- Status
- READY
- Can start
- startable
- Milestone
- Milestone status
- ACTIVE
- Wave
0- Waiting on
- none
- Holds back
- Behind it in all
2- Evidence
0of1
Moves
plan.transitionWhat it is
- Objective
- Embed Rhai in the Rust executable as one engine constructor that every scripted capability runs under: eval disabled, no clock, limits on operations, call depth, expression depth and the sizes of strings, arrays and maps, and cancellation checked on every operation.
- Why
- ADR 0069 decides that repository automation becomes scripted capabilities rather than shell. The declared exception to project.no-network-no-eval holds only if the interpreter is a sandbox and there is exactly one place that builds it, so the engine lands first and alone.
- Now
- No interpreter is embedded; every orchestration is shell.
- Wanted
- apps/majordomus-cli/src/script builds the one engine; each guarantee it makes is proved by a unit test.
- Done when
- unknown: the record declares no `completion`
- Risk
- unknown: the record declares no `risk`
Acceptance
- eval does not compile in a script
- a script has no clock function
- an endless loop ends with the operation limit, and a string cannot grow past its limit
- a cancelled execution stops at its next operation
- the engine is Send and Sync
- Validation
cargo test --manifest-path apps/majordomus-cli/Cargo.toml --lib script::- Evidence required
sandbox_engine_proved- Evidence present
- unknown: the record carries no `evidence` entries
Scope
- Touches
apps/majordomus-cli.ai/repo/adrs- Not
Binding the engine to a capability; that is I1801- Depends on
- none
- Priority
- p1
- Profile
- implementation
- Parallel safe
- true
- Owner
- unknown: the record declares no `owner`
The work so far
- Branches
- none
- Merged
- none
- Commits
0- Trunk
- master
- Sessions
- none
- Created
- 2026-09-15
- Updated
- 2026-09-15
- Started
- unknown: the record declares no `started_at`
- Verified
- unknown: the record declares no `verified_at`
- Completed
- unknown: the record declares no `completed_at`
Synchronisation
- Adapter
scripts/github-sync- Repository
- unknown: the derived plan's header carries no repository
- External issue
- unknown: a live GitHub state; this executable makes no network call, so only `scripts/github-sync --check` can answer it
- State there
- unknown: a live GitHub state; this executable makes no network call, so only `scripts/github-sync --check` can answer it
Findings
| Level | Code | Message | Reproduce |
|---|---|---|---|
| WARN | scope_conflict | shares apps/majordomus-cli with I1900; they may not run concurrently | majordomus plan validate |
| WARN | scope_conflict | shares apps/majordomus-cli with I1997; they may not run concurrently | majordomus plan validate |
| WARN | scope_conflict | shares apps/majordomus-cli with I1999; they may not run concurrently | majordomus plan validate |
| WARN | scope_conflict | shares apps/majordomus-cli with I2059; they may not run concurrently | majordomus plan validate |
| WARN | scope_conflict | shares apps/majordomus-cli with I2114; they may not run concurrently | majordomus plan validate |
| WARN | scope_conflict | shares apps/majordomus-cli with I2132; they may not run concurrently | majordomus plan validate |
| WARN | scope_conflict | shares apps/majordomus-cli with I2140; they may not run concurrently | majordomus plan validate |
| WARN | scope_conflict | shares apps/majordomus-cli with I2410; they may not run concurrently | majordomus plan validate |
| WARN | scope_conflict | shares apps/majordomus-cli with I2411; they may not run concurrently | majordomus plan validate |
| WARN | scope_conflict | shares apps/majordomus-cli with I2412; they may not run concurrently | majordomus plan validate |
| WARN | scope_conflict | shares apps/majordomus-cli with I2413; they may not run concurrently | majordomus plan validate |
| WARN | scope_conflict | shares apps/majordomus-cli with I2414; they may not run concurrently | majordomus plan validate |
| WARN | scope_conflict | shares apps/majordomus-cli with I2415; they may not run concurrently | majordomus plan validate |
| WARN | scope_conflict | shares .ai/repo/adrs with I2653; they may not run concurrently | majordomus plan validate |
| WARN | scope_conflict | shares apps/majordomus-cli with I2670; they may not run concurrently | majordomus plan validate |
| WARN | scope_conflict | shares apps/majordomus-cli with I2694; they may not run concurrently | majordomus plan validate |
| WARN | scope_conflict | shares apps/majordomus-cli with I2695; they may not run concurrently | majordomus plan validate |
| WARN | scope_conflict | shares apps/majordomus-cli with I2697; they may not run concurrently | majordomus plan validate |
| WARN | scope_conflict | shares .ai/repo/adrs with I2714; they may not run concurrently | majordomus plan validate |
| WARN | scope_conflict | shares apps/majordomus-cli with I2718; they may not run concurrently | majordomus plan validate |
| WARN | scope_conflict | shares apps/majordomus-cli with I2720; they may not run concurrently | majordomus plan validate |
| WARN | scope_conflict | shares apps/majordomus-cli with I2723; they may not run concurrently | majordomus plan validate |
| WARN | scope_conflict | shares apps/majordomus-cli with I2740; they may not run concurrently | majordomus plan validate |
| WARN | scope_conflict | shares apps/majordomus-cli with I2742; they may not run concurrently | majordomus plan validate |
| WARN | scope_conflict | shares apps/majordomus-cli with I2747; they may not run concurrently | majordomus plan validate |
| WARN | scope_conflict | shares apps/majordomus-cli with I2770; they may not run concurrently | majordomus plan validate |
| WARN | scope_conflict | shares .ai/repo/adrs with I2786; they may not run concurrently | majordomus plan validate |