Environments Update Calculation Tuning
environments_update_calculation_tuningWrite env-tier tuning overrides (audited).
setup_factor / programming_factor / cycle_factor write
the per-bin setup_efficiency / programming_efficiency /
cycle_efficiency resolver overrides for every routable process
bin at ENV tier; 1.0, their identity, clears the override.
processes writes the same three cells for only the processes it
names, applied after the flat fields.
The four REFA allowances (verteilzeit_pct, erholzeit_pct,
ruestverteilzeit_pct, ruesterholzeit_pct) write the same
per-bin overrides, over every bin that reads them.
The six sheet-nesting settings (edge_margin_mm,
skeleton_web_mm, the three remnant thresholds and
cut_to_size_increment_mm) each write their one cell of the
sheet-nesting settings, which is where a sheet part's purchase reads
them, and remnant_value_factor its cell of the material valuation
policy, beside the remnant-credit answer that switches it on. The three
bar stock settings (bar_length_mm, bar_clamp_remnant_mm and the
shortest end that counts as a remnant, bar_remnant_min_l_mm) write
theirs, which is where a turned part's bar is bought. Like the
allowances, 0 is a statement and reset is the way back.
The four inspection_* fields write the platform-wide inspection
constants in the global bin — the cells the cost sheet's Prüfung
line lets a reader move. They read back on
GET /environments/{env_id}/factors with their provenance and the
platform value beside them, which is where every resolved factor is
published; this endpoint's own read model stays the tuning knobs.
learning_rate writes the env's Wright rate. Every change lands an
audit row.
null means "no statement" on every field of this body, and
never a write: a client that serialises its whole model sends nulls
for the knobs it is silent about, and that must leave them alone.
Clearing a knob, so that it reads a parent environment's statement
where one exists and else the platform default, is the named reset
list — the allowances need it (0 is a statable allowance, so they
have no identity value to send), and the multipliers accept it as
the spelled-out equivalent of sending 1.0. The inspection cells are
the one exception: an explicit null there clears the override,
the contract the cost sheet's save dialog was built against.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| reset | No | Knobs to clear on this environment, by name — learning_rate, setup_factor, programming_factor, cycle_factor, verteilzeit_pct, erholzeit_pct, ruestverteilzeit_pct, ruesterholzeit_pct, edge_margin_mm, skeleton_web_mm, remnant_min_l_mm, remnant_min_w_mm, remnant_min_area_share, remnant_value_factor, full_stock_threshold, cut_to_size_increment_mm, custom_format_surcharge_pct, bar_length_mm, bar_clamp_remnant_mm, bar_remnant_min_l_mm, min_web_mm_to_3mm, min_web_mm_to_6mm, min_web_mm_to_12mm, min_web_mm_over_12mm, micro_joint_width_mm, micro_joints_to_300mm, micro_joints_to_1000mm, micro_joints_over_1000mm. A cleared knob reads what a parent environment states, else the platform default; learning_rate is this environment's own and returns to the platform default. Clearing is a named gesture because a null in a knob's own field means 'no statement' and must never delete one. An unknown name is rejected. | |
| env_id | Yes | ||
| processes | No | Per-process factors, keyed by process (milling, turning, sawing, ...). Applied after the flat fields, so a flat value sets every process and a named one overrides it. | |
| cycle_factor | No | Multiplier on the whole per-unit run time — cutting, air moves, peck retract, tool changes and load/unload; omit or send null to keep, 1.0 (its identity) or "reset" to clear it back to inherit / platform default. | |
| setup_factor | No | Setup-time multiplier; omit or send null to keep, 1.0 (its identity) or "reset" to clear it back to inherit / platform default. | |
| bar_length_mm | No | Length the round bar a turned part is cut from is bought in, mm; omit or send null to keep, "reset" to clear it back to inherit / platform default. | |
| erholzeit_pct | No | Recovery allowance on the RUN base time, as a fraction (0.045 = 4.5 %); omit or send null to keep, "reset" to clear it back to inherit / platform default. | |
| learning_rate | No | Wright rate in [0.5, 1.0]; 1.0 disables learning. Omit or send null to keep it; name it in "reset" to return it to the platform default. | |
| edge_margin_mm | No | Edge margin kept to every side of a purchased sheet, mm; omit or send null to keep, "reset" to clear it back to inherit / platform default. 0 is a statement, not a reset. | |
| skeleton_web_mm | No | Web between two nested parts WITHOUT the cutting gap, mm — the cutter's kerf is added to it; omit or send null to keep, "reset" to clear it back to inherit / platform default. | |
| verteilzeit_pct | No | Distribution allowance as a fraction of the run base time (0.10 = 10 %); omit or send null to keep, "reset" to clear it back to inherit / platform default. 0 is a statable allowance, not a reset. | |
| remnant_min_l_mm | No | Longer side a reusable remnant needs, mm; omit or send null to keep, "reset" to clear it back to inherit / platform default. | |
| remnant_min_w_mm | No | Shorter side a reusable remnant needs, mm; omit or send null to keep, "reset" to clear it back to inherit / platform default. | |
| min_web_mm_to_3mm | No | Minimum web for sheet up to 3 mm, mm; omit or send null to keep, "reset" to clear it back to inherit / platform default. | |
| min_web_mm_to_6mm | No | Minimum web for sheet over 3 up to 6 mm, mm; omit or send null to keep, "reset" to clear it back to inherit / platform default. | |
| min_web_mm_to_12mm | No | Minimum web for plate over 6 up to 12 mm, mm; omit or send null to keep, "reset" to clear it back to inherit / platform default. | |
| programming_factor | No | Programming-time multiplier; omit or send null to keep, 1.0 (its identity) or "reset" to clear it back to inherit / platform default. | |
| ruesterholzeit_pct | No | Recovery allowance on the SETUP base time, as a fraction (0.045 = 4.5 %); omit or send null to keep, "reset" to clear it back to inherit / platform default. | |
| bar_clamp_remnant_mm | No | End of each bar the clamp holds and no part is cut from, mm; omit or send null to keep, "reset" to clear it back to inherit / platform default. | |
| bar_remnant_min_l_mm | No | Shortest bar or tube end that counts as a reusable remnant, mm; omit or send null to keep, "reset" to clear it back to inherit / platform default. | |
| full_stock_threshold | No | The fill of a started stock piece from which a lot pays it whole, as a fraction of the parts it holds (0.85 = 85 %; 1.0 turns the rule off); omit or send null to keep, "reset" to clear it back to inherit / platform default. | |
| micro_joint_width_mm | No | Micro-joint width, mm; omit or send null to keep, "reset" to clear it back to inherit / platform default. | |
| min_web_mm_over_12mm | No | Minimum web for plate over 12 mm, mm; omit or send null to keep, "reset" to clear it back to inherit / platform default. | |
| remnant_value_factor | No | What a reusable remnant is worth against new stock of its kind, as a fraction of its price per kg (0.8 = 80 %); omit or send null to keep, "reset" to clear it back to inherit / platform default. | |
| ruestverteilzeit_pct | No | Distribution allowance on setup as a fraction of the setup base time (0.10 = 10 %); omit or send null to keep, "reset" to clear it back to inherit / platform default. | |
| inspection_weight_gdt | No | Effort weight of a geometric-tolerance characteristic; omit to keep, null to clear. | |
| inspection_weight_ndt | No | Effort weight of a non-destructive-testing callout; omit to keep, null to clear. | |
| micro_joints_to_300mm | No | Micro-joints per part with an outline up to 300 mm; omit or send null to keep, "reset" to clear it back to inherit / platform default. | |
| micro_joints_to_1000mm | No | Micro-joints per part with an outline over 300 up to 1000 mm; omit or send null to keep, "reset" to clear it back to inherit / platform default. | |
| remnant_min_area_share | No | Area a reusable remnant needs, as a fraction of the purchased sheet's (0.05 = 5 %); omit or send null to keep, "reset" to clear it back to inherit / platform default. | |
| inspection_weight_datum | No | Effort weight of a datum characteristic; omit to keep, null to clear. | |
| cut_to_size_increment_mm | No | Step a plate ordered cut to size is bought in, mm — each side rounds up to a multiple of it, 0 buys the exact size; omit or send null to keep, "reset" to clear it back to inherit / platform default. | |
| micro_joints_over_1000mm | No | Micro-joints per part with an outline over 1000 mm; omit or send null to keep, "reset" to clear it back to inherit / platform default. | |
| custom_format_surcharge_pct | No | Premium a sheet cut to an ordered size carries on its metal, as a fraction of the metal's price (0.15 = 15 %); omit or send null to keep, "reset" to clear it back to inherit / platform default. | |
| inspection_tau_s_per_element | No | Seconds to measure one characteristic; omit to keep, send null to clear your override. |