Engineering & roadmap

Implementation review: PB-014, PR 1190

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-014 (FD-111, AST-based compatibility analyzer with an Unknown outcome)
Pull request #1190, with #1262, #1275, #1300, #1305 and #1324, all merged; main at b3c5b223
Package none
Reviewer Product management thread
Date 2026-10-31
Environment Linux container, engine from source, no tenant

Outcome#

Changes Required (criterion 2 only).

Recommended by: Product management thread. Decided by (product owner): pending.

Acceptance criteria#

# Criterion (copied from the backlog item) Result Evidence
1 Aliased and from-imports are recognized Met test_aliased_and_from_imports_of_fabric_only_utilities_run_in_fabric_only and test_sql_on_another_name_for_the_spark_session_is_read_like_spark_sql (sidecar/tests/test_compute_check_ast.py)
2 Unknown is a distinct result shown in the ribbon Not met The engine returns Unknown separately: unknown and unknown_local in fabric_run.compute_check, and ok is False. The notebook doesn't show it. computeNote in app/ui/app.js draws only blockers, and its comment says "Unknown cells (here.unknown) aren't shown as blockers". No ribbon or note names an Unknown cell
3 Prove and Runs on read the same analyzer output Met proof.py, validate.py, risk_service.py, side_by_side_service.py and service.py (open and save) all call fabric_run.compute_check. test_prove_validate_advice_and_the_risk_check_read_the_same_unknown covers this

Checks#

Check Result Evidence or note
Scope matches the item and package Yes Also follows %run, notebook.run, runMultiple and %run -b (#1262 to #1324)
New tests fail without the change, pass with it Not re-run without the change
Full suites pass (pytest, UI, cargo) Partly test_compute_check_ast, test_fabric_compute, test_prove and test_validate*: 214 passed, 1 skipped
Reachable where docs say; Preview behavior right; packaged into the engine Yes, engine side
OneLake data safety Yes Read-only analysis
Authentication and distribution Not affected
No unproven local-equals-Fabric claim; Preview tags kept where untested Yes Unknown counts as "not fine" everywhere
Docs match the code; linked; strict docs build passes Yes
Accessibility of new controls No new controls

What would close it#

Either of these:

  • Show Unknown cells in the notebook's compute note, listing each cell and its reason, distinct from blockers. That is new UI, so it needs a small mockup.
  • Or Chris rewords criterion 2 to "Unknown is a distinct result that Prove, Validate, the advisor and the risk check treat as not fine", and accepts the item with the limitation that the notebook itself doesn't name Unknown cells.

Need a hand?

Find a fix in troubleshooting, or share a reproducible issue with the community.

Get support ↗Improve this guide on GitHub ↗

Search documentation

Start typing to search all 178 guides.

Search runs in your browser esc to close