Engineering & roadmap
Implementation review: PB-116, PR 891
Development documentation. This guide follows a reviewed snapshot of main and may describe capabilities not yet in Stable. Check Preview labels and release notes. Some executable names and paths remain unchanged for compatibility. Legacy names explained ↗
| Field | Value |
|---|---|
| Backlog item | PB-116, Fabric Spark interactive sessions (Livy) as a Preview engine (issue #852) |
| Pull request | #891 and #1133, merged, plus the later hardening (#1191, #1201, #1292, #1439); main at 063b84ed |
| Package | none |
| Reviewer | Product management thread |
| Date | 2026-11-01 |
| Environment | Linux container, engine from source, Fabric faked. One live run on 2026-10-29 (docs/platforms.md#live-runs) |
Outcome#
Accepted with Documented Limitations (recommended).
Recommended by: Product management thread. Decided by (product owner): Chris, 'Accept all six' on the decision card on 2026-11-01 (project message cmsg_018T4o2pQdpbLBNhHpgVNNGpHEi2797KQ2xEh3mRcFsM8K).
Acceptance criteria#
| # | Criterion (copied from the backlog item) | Result | Evidence |
|---|---|---|---|
| 1 | Every remote session start goes through the remote compute confirmation and risk check | Met, with one exception set by policy | engines_service plans every remote engine with a risk check (_engine_risk). app/ui/engines.js shows the confirm with the target, the grant, the bill and the risk lines. The confirm is skipped only when IT's policy sets remote_compute = "policy" and lists the engine in allowed_remote_engines. The risk check still runs in that case. |
| 2 | Tests with Fabric faked cover start, run, cancel and stop | Met | test_fabric_spark.py: start (..._never_starts_is_ended, ..._dies_while_starting), run (cells_run_once_per_statement...), cancel (cancel_cancels_the_statement_in_fabric, the time limit), stop (close_ends_the_session_in_fabric_once). With test_notebook_formats.py: 99 passed |
| 3 | Docs say it uses Fabric capacity and is Preview | Met | docs/engines.md engine table ("Fabric capacity", "Preview, tested against fakes") and its "Fabric Spark (Preview)" section |
Limitations to record#
- One recorded live run (KUDP, 2026-10-29). Everything else is tested with Fabric faked.
- An organization that pre-approves the engine by policy skips the per-session confirm.
- Capacity use appears in the Fabric Capacity Metrics app, not in KratosForge.
Need a hand?
Find a fix in troubleshooting, or share a reproducible issue with the community.
Get support ↗Improve this guide on GitHub ↗