Recommended test
Use a valid standalone circular-arc Open Contour with reviewed motion and G2/G3 output.
- Open the CAM operation and find G-code · Shapeoko / GRBL.
- Choose Review export preflight. You can also inspect the G-code first and continue from its footer.
- Confirm the amber boundary says Local file export only — no machine connection.
- Read the summary. Stock, selected XY stock anchor, stock-top Z0, 6 mm cutter, Safe Z, final Z, passes, feeds, router target, direction, tabs, and program size should match the operation.
- Automatic facts should be green. Manual router control and any active entry/linking limitations remain amber for deliberate review.
- Tick all four operator confirmations. The heading should advance from 0 of 4 to Operator review complete.
- Close the dialog and reopen it. All confirmations should reset; old approval must not survive a new review session.
- Turn tabs off on a through-cut. Reopen preflight and confirm an amber Through-cut has no holding tabs warning appears.
- For a through-depth arc contour, confirm Open through-cut requires workholding review appears because tabs are not available for that operation.
- Add a small spoilboard overcut. Confirm the exact intentional overcut appears as a depth warning.
- Make Feed invalid. G-code and export preflight should become blocked until the operation is repaired.
- After all confirmations pass, Save … .nc should unlock. Localhost downloads through the browser; the desktop app opens a native save dialog.
- Confirm there is still no clipboard or machine-send action.
01 · ONE REVIEW SURFACE
The values that matter are visible together
The dialog reads the current resolved operation rather than storing a second copy. Changes to stock, Safe Z, cutter, depth, feeds, spindle target, placement/direction, motion, or G-code rebuild the information shown the next time preflight opens.
02 · MACHINE-CHECKABLE FACTS
Errors block while warnings stay visible
The preflight independently confirms the Shapeoko/GRBL profile, supported job-zero convention, positive stock and Safe Z, matching cutter, phase-specific cutting values, resolved contour or pocket plan, ordered linear or circular motion, and a non-empty consistent G-code program. For splines it separately reconciles sample count, pass count, linear cut moves, generated G1 blocks, and the measured chord-error bound.
GreenInternal check passedAmberValid but requires human reviewRedBlocking inconsistency; confirmations disabledIntentional spoilboard cutting, unusual cutting parameters, Safe Z below the 10 mm new-job recommendation, explicit straight entry/linking motion, sampled spline approximation, through-cut workholding, and manual router control remain amber. A warning is not silently converted into approval.
03 · REAL-WORLD FACTS
Four checks software cannot prove
Confirmations are session-only UI state. Closing the dialog, changing mode, or deleting the operation clears them. They do not enter document history and are never treated as a permanent safety certificate.
04 · DELIBERATE BOUNDARY
Review complete unlocks one local file
After all checks and confirmations pass, Local NC Export v1.3 can save the exact reviewed G0/G1/G2/G3 text. Localhost uses a browser download; the desktop app asks for a destination with the native save dialog. There is no machine connection.
The generated program contains no M3, M4, or M5. It pauses at M0 before cutter-stage motion so the operator can start the router and resume. Software-controlled spindle semantics must be designed and tested separately instead of appearing as an unchecked option.
05 · SAME VERIFIED SOURCE
One chain from geometry to review
Resolved rectangle or Open Contour ↓ Typed motion plan ↓ Shapeoko / GRBL preview ↓ Export Preflight v1 ↓ Session-only confirmations ↓ Local .nc file
Pure preflight logic is covered by focused tests. The UI adds readable summaries and operator acknowledgements without changing the generated program.