🎉 WIN a Snapmaker U1 Printer! Enter FREE now

--normative-check

Slicing Actions Orca SlicerBambu Studio

Check the loaded 3MF config for two unsupported or experimental states — post_process scripts and filament_is_mixed slots — and abort with a structured error if either is present, before any per-plate slicing begins.

Details

--normative-check is a boolean flag (default true) that gates two pre-slice abort checks on the config embedded in the loaded 3MF file. The flag value is read before file loading begins. The actual checks run immediately after the input 3MF is loaded — inside the branch that confirms the file is a BBL-format 3MF — before per-plate slicing starts. They inspect that single file-level config. If either condition fires, the CLI records a structured exit reason using a top-level (non-plate-specific) error index and terminates the entire invocation without producing output.

When enabled (the default), the CLI inspects the embedded config for two conditions it treats as fatal: first, whether any post_process scripts are defined; second, whether any filament slot has filament_is_mixed set to true. Either condition causes an immediate abort. Post-process scripts are rejected because running arbitrary shell commands at the end of a slice is not supported in the CLI context. Mixed filaments — slots that combine multiple physical filaments, identified by the filament_is_mixed field — are rejected because the feature is still in an experimental stage; the structured abort message specifically cites that the upload pipeline (MakerWorld) does not yet support it.

Passing the flag with a value of false disables both checks; the CLI proceeds to slice regardless of those config states. Disabling the checks does not make post-process scripts run or cause mixed filaments to slice correctly — it only removes the guard that would otherwise abort, potentially resulting in silently incorrect output. This flag is entirely separate from --no-check, which controls a different set of validity checks (layer-height limits, empty G-code layers, and toolpath conflict detection).

Watch out for

  • The default is `true`, meaning the checks are active unless you explicitly pass `false`. Omitting the flag entirely leaves both abort conditions in place.
  • Disabling with `false` does not make post-process scripts run or cause mixed filaments to slice correctly — it only removes the guard that would otherwise abort. The underlying features remain unsupported; you lose the early structured error and may get silently wrong output instead.
  • `--normative-check` and `--no-check` are independent; each controls a distinct set of abort conditions and can be combined freely.

Sign up for free today

No credit card required. Connect unlimited printers and get production automation running in minutes.