Edgineer
Public Demo (SIM)Join Waitlist
Solid Developing Fragile Unrated
Baseline hydration
Live the active current market data is unavailable. Snapshot-dependent cards are showing bounded degraded placeholders or local fallback context.
live fetch pending
Public workspace shell

Command center

Command center leads. One module owns deep detail while the rest stay docked as concise, high-signal cards.

The center canvas remains protected. Dashboard depth is not allowed to collapse into a narrow dock card.
Workspace: OVERVIEWMode: OperatorPreset: Learn focus
Curated next actions

Curated workspace actions are stabilizing.

Public-safe next actions stay visible while secondary surfaces compress into quieter summaries.

Hydration-safe action rail is active for the first paint.
Review curated workspace
Curated next actions stay fixed through the first paint.
ACTION NOW
This initial card prevents client-only action ranking and wording from diverging during hydration.
Live action labels, why-lines, and unlock copy replace this card right after hydration.
Check route truth
Home and route ownership stay readable while the client snapshot settles.
ACTION NEXT
The action rail keeps route context visible without swapping guided or starter wording mid-hydration.
Route-aware action ordering is restored after the mounted pass completes.
Inspect surface status
Hydration, docking, and unlock summaries remain available from the first render.
READ LATER
A scoped fallback keeps the workspace usable without letting unstable client text trigger a mismatch.
Module-specific action detail returns as soon as the live client snapshot is ready.
Home + route truth
Home and route ownership stay stable through hydration.
Workspace route copy defers client-only guided and starter refinements until after mount.
Hydration-safe summaries keep the home surface readable on first paint.
Detailed unlock routing returns once the live action snapshot is mounted.
Public-safe route guidance restores after hydration completes.
Curated presets
Learn focus stays available without dominating home.
Customization is still available, but it now enters through Build or the builder drawer.
2 modules belong in Build or the builder drawer instead of default home.
Ecosystem preview
Public ecosystem preview stays curated and compact.
Overview Command Bridge is the current featured ecosystem pack.
1 modules belong in Ecosystem instead of the operator home lane.
Home shell v3

Command center

Unlock fuller operator density after the start-here path, account assumptions, and stand-down language all feel obvious.

A wider, cleaner range expansion would give QQQ a better promotion case.
PUBLIC DEMO owns this route while home stays compact.
Academy Bridge + Launch Onboarding

Stand-Down Is A Win is the best lesson now.

Internal-only lesson packaging for turning the live operating state into one next lesson, one practical drill, and one export-ready course path.

Stand-Down Recovery Path -> Reset The Session -> Stand-Down Is A Win
Why now
Session protocol is no-trade. Discipline means preserving the lane.
Practice
Write the stand-down rationale and route it into replay, review, or drill work.
Skip now
no trade is the right doctrine today.
Next unlock
No broader rollout lane is attached yet.
Bottom strip
Adaptive clarity
Hard blockers dominate the session. Doing nothing is discipline, not hesitation. Contract quality REJECTED (5.4% spread, liquidity 80/100).
LIVE PARTIAL
Stand-down all is active. Keep premium unallocated.
Upgrade: Unlock fuller operator density after the start-here path, account assumptions, and stand-down language all feel obvious.
Guided setup
Guided mode recommended. Account Mode Unclear posture active under Unsure assumption.
LIVE PARTIAL
Academy bridge: Lead with one lesson, one drill, and one next unlock before widening into deeper operator detail. Daily Brief: Start with the verdict, why, and next step instead of jumping straight into every subsystem. Scanner emphasis: Index context should stay primary until single-name opportunity quality is explicit.
Upgrade: Unlock fuller operator density after the start-here path, account assumptions, and stand-down language all feel obvious.
Progressive reveal
Review | STAND DOWN RECOVERY | REPLAY
LIVE PARTIAL
GUIDED PATH can wait because Guided path becomes quieter when the bottleneck is live operation or review rather than onboarding.
Upgrade: Unlock fuller operator density after the start-here path, account assumptions, and stand-down language all feel obvious.
Next event
Core PCE - Monthly
Thu, Apr 30 12:30 PM
Fed-preferred inflation gauge. Often reshapes medium-term rate expectations.
SPYQQQDXYESNQ
Last updated: just now
Trade Window: OPEN(CALL)Public Demo (SIM)Join Waitlist
Finish Guided Setup
Guided setup unlocks safe defaults and removes guesswork.
Decision Brief

Run with clarity, know why it is blocked, and see the evidence.

Run with clarity: 3/3 gates passing with ERI 81 GREEN.

Current Plan
EXECUTE setup with discipline.
Decision Engine • SIM
Next move
Finish Guided Setup to lock safety rails before live SIM workflow.
Action bar
Trade plan (SIM)
Action: EXECUTE • Confidence: 100% • SizePct: 1.00%
Why: Trade Window is OPEN.
Trigger: Take setup only on predefined A+ trigger while Trade Window stays OPEN (CI 87, Score 87).
Invalidation: If Env fails or Sent flips against bias, stand down and reset.
Executable checklist (SIM)
Checklist: 0/4 checked
Env PASSAlpha PASSSent PASS
Session Plan: STAND DOWN PLAN
Readiness / Gates
Know why it is blocked and what matters most before execution.
ERI 81GREENReady
3/3 gates passed. The setup is structurally aligned.
No hard gate failures. Keep monitoring readiness and context drift.
Reasons: Decision is EXECUTE. • Trade Window is OPEN. • Environment gate passed.
Blockers: Edge is unrated. • Checklist is incomplete.
Gate Matrix
CI ≥ 80 • Score ≥ 65 • Alpha ≥ 0.25 • Sentiment aligned
GateConditionCurrentStatus
EnvironmentCI ≥ 80, Score ≥ 65CI 87, Score 87PASS
AlphaScoreAlpha ≥ 0.250.34 (CALL)PASS
Sentiment AlignCALL: > +0.20 • PUT: < -0.20Sent = 0.270PASS
Evidence / Context
See the evidence behind the current call.
Edgineer
SPY
$517.44
Trend
Trend
Aligned (strong)
Score & Confidence
CI threshold 80
87
Score
CI 87 / Th 80
Regime context

This halo compresses multi-timeframe trend, volatility regime, sentiment, and volume into a single composite view. When Score and CI are both elevated, the environment is structurally more favorable for trades that match the current regime.

Risk context
Higher CI with stable Score indicates a strong but controlled environment. Large Score with low CI may hint at fragile or one-sided conditions.
Trade window
CI and Score thresholds define when the environment is armed. Strategy signal quality and sentiment alignment ultimately decide when the window fully opens.
Preset readiness
Based on current CI, Score, Sentiment, Divergence and Trade Window for SPY.
Aggressive
OFF
Strong divergence present; Aggressive should stand down.
Balanced
OFF
Strong divergence present; Balanced should stand down.
Swing
OFF
Strong divergence present; Swing should stand down.
Replay snapshot
No replay frames yet. Run one SIM drill to generate review evidence.
Keep flow local first, then open the full replay workspace only when needed.
Daily loop snapshot
Finish Guided Setup
Why: Guided setup unlocks safe defaults and removes guesswork.
Daily loop not opened this session.
Operational Context
Operational context source posture loads after hydration.
Operational context is held on a deterministic preview-safe fallback for hydration.
BLOCKED BY CONFIGPREVIEW DERIVED
Why it matters
Preview-safe operational context stays bounded until the browser can restore the universe snapshot.
Current focus loads after hydration.
Supports / not yet
This supports first-paint orientation only, not upgraded symbol or regime interpretation.
This does not support live-news claims, broker submission, or expanded autonomy.
Next interpretation
Hydrate the universe summary before promoting a symbol-specific interpretation.
Suppressed opportunity context loads after hydration.
Candidate Promotion
No symbol deserves loud focus right now.
Stand-down or no-promotion is valid when the hydrated edge is not there.
STAND DOWN
Focus now
No promotion
No candidate deserves promotion right now. Stand-down, watchlist compression, or index-only context is the correct output.
Why not others
QQQ is not stretching enough range to outrun index-level context.
QQQ stays suppressed: QQQ is not stretching enough range to outrun index-level context.
Evidence
QQQ leads the watchlist at 73 leadership score with blocked posture. QQQ is current leadership focus under Demo Default.
QQQ is the cleaner read when single names do not beat index context decisively.
Next inspection
Stay compact, keep the queue quiet, and wait for a cleaner leader.
A wider, cleaner range expansion would give QQQ a better promotion case.
Secondary inspect
No second-tier inspect candidate is loud enough yet.
Watch-only
No watch-only name is currently pressuring the shortlist.
Suppressed
QQQ
WEAK RANGE
QQQ is not stretching enough range to outrun index-level context.
SPY
WEAK RANGE
SPY is not stretching enough range to outrun index-level context.
MSFT
WEAK RANGE
MSFT is not stretching enough range to outrun index-level context.
NVDA
WEAK RANGE
NVDA is not stretching enough range to outrun index-level context.
Why now / why not now
Feed looks locally healthy, but the snapshot still comes from a deterministic preview path.
QQQ is not stretching enough range to outrun index-level context.
A wider, cleaner range expansion would give QQQ a better promotion case.
Session Focus
No promoted candidate exists, so the session focus queue should stay compact and stand-down aware.
OPEN FIRST
Open index context first
No candidate deserves promotion right now. Stand-down, watchlist compression, or index-only context is the correct output.
INSPECT NEXT
Inspect nothing else yet
No second-tier inspect candidate is strong enough to crowd the queue.
KEEP DOCKED
Keep radar and alerts docked
No watch-only name is currently pressuring the shortlist.
LEAVE ALONE
Leave QQQ alone
QQQ is not stretching enough range to outrun index-level context.
DO NOT FORCE
Do not force today
Do not force a trade just because the queue is visible. Inspect, wait, or stand down when the route says so.
Focus summary
Open index-level or watchlist context first instead of forcing a weak single-name focus.
No second symbol deserves a deep inspect slot right now.
Radar and scanner stay docked when they are watch-only, preview, or suppressed.
QQQ stays out of the active session because qqq is not stretching enough range to outrun index-level context.
Do not force a trade just because the queue is visible. Inspect, wait, or stand down when the route says so.
Opportunity Queue
Stand-down or no-promotion is valid when the hydrated edge is not there.
No candidate
Primary
No candidate deserves promotion right now. Stand-down, watchlist compression, or index-only context is the correct output.
Inspect next
No second-tier inspect candidate is strong enough to crowd the queue.
Watch-only
No watch-only name is currently pressuring the shortlist.
Suppressed
Suppressed: QQQ (QQQ is not stretching enough range to outrun index-level context.) | SPY (SPY is not stretching enough range to outrun index-level context.)
Queue breakdown
No candidate deserves promotion right now. Stand-down, watchlist compression, or index-only context is the correct output.
Stay compact, keep the queue quiet, and wait for a cleaner leader.
Focus Dossier
No candidate deserves promotion right now. Stand-down, watchlist compression, or index-only context is the correct output.
Stand-down posture is active. Preserve discipline and avoid manufacturing a forced focus.
STAND DOWN
Why this one
QQQ is the cleaner read when single names do not beat index context decisively.
QQQ is not stretching enough range to outrun index-level context.
Supportive
QQQ leads the watchlist at 73 leadership score with blocked posture. QQQ is current leadership focus under Demo Default.
A wider, cleaner range expansion would give QQQ a better promotion case.
Danger / do not over-read
QQQ stays suppressed: QQQ is not stretching enough range to outrun index-level context.
This does not support aggressive action language, live-news claims, or any unsupported data-family inference.
Next inspect
Open index-level or watchlist context first instead of forcing a weak single-name focus.
A wider, cleaner range expansion would give QQQ a better promotion case.
Dossier details
QQQ is the cleaner read when single names do not beat index context decisively.
QQQ is not stretching enough range to outrun index-level context.
QQQ leads the watchlist at 73 leadership score with blocked posture. QQQ is current leadership focus under Demo Default.
A wider, cleaner range expansion would give QQQ a better promotion case.
QQQ stays suppressed: QQQ is not stretching enough range to outrun index-level context.
Open index-level or watchlist context first instead of forcing a weak single-name focus.
This does not support aggressive action language, live-news claims, or any unsupported data-family inference.
A wider, cleaner range expansion would give QQQ a better promotion case.
Promotion Gate
No-trade remains valid. Keep session effort on clean watchlist inspection or replay.
NO TRADE
Already good
QQQ leads the watchlist at 73 leadership score with blocked posture. QQQ is current leadership focus under Demo Default.
Must confirm
A wider, cleaner range expansion would give QQQ a better promotion case.
Missing
A wider, cleaner range expansion would give QQQ a better promotion case.
Open index-level or watchlist context first instead of forcing a weak single-name focus.
No-trade boundary
QQQ stays suppressed: QQQ is not stretching enough range to outrun index-level context.
A wider, cleaner range expansion would give QQQ a better promotion case.
Gate details
QQQ leads the watchlist at 73 leadership score with blocked posture. QQQ is current leadership focus under Demo Default.
A wider, cleaner range expansion would give QQQ a better promotion case.
A wider, cleaner range expansion would give QQQ a better promotion case.
Open index-level or watchlist context first instead of forcing a weak single-name focus.
QQQ stays suppressed: QQQ is not stretching enough range to outrun index-level context.
A wider, cleaner range expansion would give QQQ a better promotion case.
Trigger Ladder
Trigger ladder is blocked by context/event posture. Preserve stand-down discipline.
BLOCKED
Nearest level
No candidate deserves promotion right now. Stand-down, watchlist compression, or index-only context is the correct output.
Open index-level or watchlist context first instead of forcing a weak single-name focus.
Reclaim / rejection
No directional reclaim/rejection logic is armed while side is neutral.
A wider, cleaner range expansion would give QQQ a better promotion case.
No-chase boundary
If price outruns the ladder, do not convert momentum anxiety into a forced chase.
QQQ stays suppressed: QQQ is not stretching enough range to outrun index-level context.
Best-case / abort
A wider, cleaner range expansion would give QQQ a better promotion case.
QQQ stays suppressed: QQQ is not stretching enough range to outrun index-level context.
Ladder details
No candidate deserves promotion right now. Stand-down, watchlist compression, or index-only context is the correct output.
Open index-level or watchlist context first instead of forcing a weak single-name focus.
No directional reclaim/rejection logic is armed while side is neutral.
If price outruns the ladder, do not convert momentum anxiety into a forced chase.
QQQ stays suppressed: QQQ is not stretching enough range to outrun index-level context.
A wider, cleaner range expansion would give QQQ a better promotion case.
A wider, cleaner range expansion would give QQQ a better promotion case.
QQQ stays suppressed: QQQ is not stretching enough range to outrun index-level context.
Focus Comparison
Focus comparison: no candidate currently beats the alternatives cleanly enough.
Winner
No candidate deserves promotion right now. Stand-down, watchlist compression, or index-only context is the correct output.
No second-tier inspect candidate is strong enough to crowd the queue.
Index / redundancy
Index-only remains a valid fallback when single-name edge degrades: QQQ is not stretching enough range to outrun index-level context.
No dominant duplicate-exposure warning is active in the current compare set.
Least-bad check
Current winner is strong enough to lead inspection while still respecting gate limits.
A wider, cleaner range expansion would give QQQ a better promotion case.
Regime Router
Regime Router source posture loads after hydration.
Regime Router is held on a deterministic preview-safe fallback for hydration.
REVIEW ONLY
Why this one
Regime Router aligned playbook loads after hydration.
Regime Router detail loads after hydration.
Why not now
Regime Router fragile-playbook context loads after hydration.
Symbol-specific route context stays held until hydration completes.
Holdback
Regime Router holdback context loads after hydration.
Hydrated universe, setup, and regime context are required before route promotion.
Today
Today stays review-first until hydrated setup and regime context are ready.
Hydrate the regime router before upgrading symbol-specific route detail.
Routing details
Regime Router detail loads after hydration.
Keep route promotion suppressed until browser-restored context is ready.
Hydrated universe, setup, and regime context are required before route promotion.
Playbook Allocation
Primary playbook allocation loads after hydration.
Playbook allocation is held on a deterministic preview-safe fallback for hydration.
REVIEW ONLY
Primary
Hydration-safe preview allocation
Playbook allocation detail loads after hydration.
Backup
Backup playbook allocation loads after hydration.
Suppressed allocation context loads after hydration.
Academy + creator
Academy allocation emphasis loads after hydration.
Creator-pack-safe allocation context loads after hydration.
Public holdback
Public holdback allocation context loads after hydration.
Hydrate the playbook allocation engine before upgrading symbol-specific detail.
Allocation details
Playbook allocation stays on a deterministic preview-safe route until hydration completes.
Symbol-specific allocation context stays suppressed until browser-restored context is ready.
Keep allocation promotion blocked until hydrated setup and regime context are ready.
Session Protocol
Today is governed by no-trade discipline.
Session protocol is no-trade. Discipline means preserving the lane.
NO TRADE PROTOCOL
Active playbook
No active playbook is attached yet.
No candidate deserves promotion right now. Stand-down, watchlist compression, or index-only context is the correct output.
Wait for
Position state CLOSED. Exit because setup invalidation became active. Replay focus: Verify invalidation trigger and whether exit happened without hesitation.
Suppress notification because no locked plan deserves interruption. Alert only if the current focus survives the gate: Position state CLOSED. Exit because setup invalidation became active. Replay focus: Verify invalidation trigger and whether exit happened without hesitation.
Do not do
Not doing: forcing a single-name plan while stand-down posture is still the clean answer.
No-chase line stays hidden while the ticket is suppressed.
Cancel / stand down
If invalidated, exit the plan immediately instead of searching for a new reason.
Stand-down is still available if drift, exposure, or event pressure worsens.
Protocol details
Invalidation anchor: 517.03 from 1m support 1 (untested).
Risk shell is blocking progression: blocked by missing state. Execution permission gate is denying progression: denied drift.
Position state CLOSED. Exit because setup invalidation became active. Replay focus: Verify invalidation trigger and whether exit happened without hesitation.
No-Trade Doctrine
No-trade doctrine is active for the current session.
no trade is the right doctrine today.
NO TRADE
Discipline
No-trade is the disciplined answer today. The product is preserving the lane, not missing a feature.
What still works
What still works: replay discipline, review evidence, holdback language, and next-session preparation.
Not allowed
Not allowed: paper runtime progression without a lockable plan, armed trigger path, and explicit invalidation.
Position state CLOSED. Exit because setup invalidation became active. Replay focus: Verify invalidation trigger and whether exit happened without hesitation.
Protocol Transition
Protocol transition guard says cancel.
Cancel the active protocol and capture the transition explicitly.
CANCEL
Changed since lock
No locked plan exists yet, so there is no lock-drift comparison.
Decision
Cancel the active protocol and capture the transition explicitly.
Why
If invalidated, exit the plan immediately instead of searching for a new reason.
Next unlock
Stay compact, keep the queue quiet, and wait for a cleaner leader.
Run with clarity
Playbook guidance linked to the current plan and regime.
Situational Playbooks
Playbooks for this open Trade Window
SPYBalanced v1 • CI 87, Score 87 • Sent 0.270
Trade Window: OPENBias: CALL
Capital Preservation – Flat Mode
Anytime
Conservative
Best for: Sessions where CI/Score conflict with sentiment, Trade Window is CLOSED, or you feel emotionally off.
When to use: When Trade Window is CLOSED, CI/Score are low or unstable, or macro risk is very high (FOMC, CPI minutes before release).
Entry rules
  • No entries. The play is to stay flat and protect capital.
  • Use the time to review prior trades, journal, or plan for upcoming sessions.
  • If you *must* trade, reduce size dramatically and stick to A/S-tier setups only.
Exit rules
  • Not applicable – the primary goal is to avoid impulse entries.
  • If you broke rules and entered anyway, exit quickly on any sign of instability.
Flat is a position. This playbook prevents emotional and over-leveraged mistakes when the system has low conviction.
These playbooks are frameworks, not instructions. Always size risk appropriately and respect your own rules and constraints.
Divergence intelligence
SPY allowed divergence is present but event-distorted.
EVENT DISTORTED1Mscore -0.67
Bearish stretchNeutralBullish stretch
Current read
SPY allowed divergence is present but event-distorted.
Dominant timeframe
1m is the dominant divergence lens because 1m price is stretching harder than momentum quality, which can matter if failure confirms.
Why it matters
Divergence exists, but event pressure is large enough that structure and timing should lead.
Wait for
Position state CLOSED. Exit because setup invalidation became active. Replay focus: Verify invalidation trigger and whether exit happened without hesitation.
Decision relevance
Need more sample. The session does not justify a large correction yet.
Focus selected
Execution ticket
SPY allowed stand down
Execution ticket source posture loads after hydration.
NONEBLOCKEDSTAND DOWN
Contract / expiry
SPY allowed ladder remains suppressed.
Strike ladder is intentionally blank until the stack requalifies.
SPY allowed should not surface an expiry recommendation yet.
Entry / invalidation
Nearest decision level: 519.67 (1.67% away, broken, authority 72).
No-chase line stays hidden while the ticket is suppressed.
Invalidation anchor: 517.03 from 1m support 1 (untested).
Size posture
Size posture: no size.
Premium budget stays at zero.
Do not exceed: no entry.
Exit posture
SPY allowed has no active management plan because no ticket-grade candidate is live.
First trim stays undefined while the ladder is suppressed.
Time stop stays inactive while no management plan is promoted.
Why now
Divergence exists, but event pressure is large enough that structure and timing should lead.
Must confirm
Position state CLOSED. Exit because setup invalidation became active. Replay focus: Verify invalidation trigger and whether exit happened without hesitation.
Review-linked correction
Confluence + Indicator Policy: Weak confluence should lower trust before it changes thesis.
Focus selected
Why / defined risk / cancellation
SPY allowed ladder remains suppressed.
If invalidated, exit the plan immediately instead of searching for a new reason.
Wait for improves only after earnings or event distortion decays, chain quality improves, or trust blockers clear.
No tracked symbol is currently dominated by earnings proximity.
See the evidence
Timeline evidence of how gates evolved through the session.
Evidence explorer
SPY Balanced v1 evidence explorer is focused on Risk.
Alpha is the main blocker in the evidence stack.
Replay focus
Replay focus: load recent trades, then compare the latest bar against the dominant evidence contribution.
Env
Alpha
Sent
Trade
Div
Event
Ladder
Verdict
Alpha is the main blocker in the evidence stack.
Next step
Position state CLOSED. Exit because setup invalidation became active. Replay focus: Verify invalidation trigger and whether exit happened without hesitation.
Replay focus
Replay focus: load recent trades, then compare the latest bar against the dominant evidence contribution.
Review focus
Routing constraints triggered during this run and prevented low-confidence progression.
Replay should stay focused on context read issue and ignore everything else. Was stand-down triggered early enough to avoid forcing a low-confidence setup?
Selected bar
Risk
Risk: env PASS, alpha PASS, sentiment PASS, trade PASS.
Event Distorted 1m. Event posture: SPY is outperforming with clean momentum and high quality leadership quality.
CI
PASS
CI 87
Confidence index is helping the lane.
Score
PASS
Score 87
The score layer is supportive.
Alpha
FAIL
Alpha 0.34
Alpha contribution is too thin to upgrade trust.
Sentiment
PASS
Sentiment 0.27
Sentiment is aligned enough to help.
Trade window
PASS
OPEN
OPEN keeps the trade window live enough for evidence to matter.
Divergence
FAIL
Event Distorted 1m
Divergence exists, but event pressure is large enough that structure and timing should lead.
Event posture
PASS
SPY is outperforming with clean momentum and high quality leadership quality.
Wait for improves only after earnings or event distortion decays, chain quality improves, or trust blockers clear.
Contract ladder
WATCH
SPY allowed stand down
Position state CLOSED. Exit because setup invalidation became active. Replay focus: Verify invalidation trigger and whether exit happened without hesitation.
Trade bucket
All has no matching trades in the current window.
All cannot strengthen the evidence case until trade history is loaded.
Why / next
Alpha contribution is too thin to upgrade trust.
Position state CLOSED. Exit because setup invalidation became active. Replay focus: Verify invalidation trigger and whether exit happened without hesitation.
Performance + Proof Studio
Validate how the current plan performs, capture proof, and keep a clean journal trail.
Module: Strategy Studio
View modules
Module: Volatility Radar
Volatility radar is blocked from trustworthy flagship use right now.
PRO
Module: Alert Engine
Scanner hydration is blocked and should stay compact until provider posture improves.
PRO
Agent Lab Narrative

Human-in-the-loop by design: propose, review, approve. Lab before live. Certification before promotion. Operator remains in control.

1

Propose

Agents propose deterministic plans with bounded constraints and rationale.

2

Review

Operator reviews decisions, evidence, and safety checks before any approval.

3

Approve in lab

Run SIM scenarios in the lab first and compare outcomes under the same inputs.

4

Certify

Certification and replay quality must clear before promotion to broader use.

5

Promote safely

Any install stays sandbox-first with preview and rollback controls.