Kernel rig: each area's PATHS names only its own files, and EXEMPT lists only commands no case uses

The shared core (crates/smlib, the grader, doc eval.rs, engine features.rs and the kernel's core)
is in PATHS-ALL; the new areas' copies of it are dropped, so an area reruns on its own files and the
core reruns them all. sheet-metal also watches the sheet commands, the sheet document and the DXF
writer. 116 commands a case now uses leave EXEMPT; 25 geometry commands are still to cover.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
jyviko
2026-10-29 19:11:21 -04:00
committed by Irakli Kourtis
parent dc093b0cb4
commit 55338e139e
9 changed files with 2 additions and 145 deletions
-116
View File
@@ -39,7 +39,6 @@ component.rename a component name
component.replace_with_link component links
component.unlock component locking
component.update_links component links
contact.list a listing of contact sets
diagnostics.crash_report crash reports
diagnostics.crash_reports crash reports
diagnostics.crash_reports.clear crash reports
@@ -59,10 +58,8 @@ edit.restore_checkpoint undo, redo and checkpoints: an earlier state r
edit.undo undo, redo and checkpoints: an earlier state restored, no new geometry
engine.commands the command registry itself
engine.describe the command registry itself
explode.create exploded views: display offsets
explode.delete exploded views: display offsets
explode.list exploded views: display offsets
explode.show exploded views: display offsets
expr.evaluate expression evaluation
file.open_in_easyprint hands the file to another program
file.save saving the design
@@ -78,7 +75,6 @@ inspect.curvature_map display analysis: shading
inspect.environment_map display analysis: shading
inspect.silhouette display analysis: outline
inspect.zebra display analysis: shading
joint.list a listing of joints
library.apply material and appearance libraries
library.export material and appearance libraries
library.inspect material and appearance libraries
@@ -97,8 +93,6 @@ motion.delete removes a motion study
motion.export writes a study's results to a file
motion.export_animation writes an animation
motion.list a listing of motion studies
motion.play plays a study in the view
occurrence.properties occurrence properties
parameters.comment parameter bookkeeping; a value change that rebuilds is parameters.change, which cases use
parameters.complete parameter bookkeeping; a value change that rebuilds is parameters.change, which cases use
parameters.delete parameter bookkeeping; a value change that rebuilds is parameters.change, which cases use
@@ -111,7 +105,6 @@ parameters.move parameter bookkeeping; a value change that reb
parameters.rename parameter bookkeeping; a value change that rebuilds is parameters.change, which cases use
parameters.users parameter bookkeeping; a value change that rebuilds is parameters.change, which cases use
parts.library a listing of the parts library
plastic.rules a listing of plastic rules
render.aging.describe rendering: images, cameras, stages
render.backends rendering: images, cameras, stages
render.camera.fit rendering: images, cameras, stages
@@ -265,97 +258,17 @@ view.visual_style the view: camera, layout, display
# that a case uses), and a new geometry command gets a case, not a line here.
[to cover]
body.repair repair: the solid a refused or open part becomes
component.copy_bodies assemblies: bodies copied into a component
component.extract assemblies: bodies extracted to a design
component.from_bodies assemblies: a component made from bodies
component.insert_design assemblies: a design inserted
component.move_bodies assemblies: bodies moved between components
component.move_sketches assemblies: sketches moved between components
component.paste_new assemblies: a pasted new component
component.revert_position assemblies: a placement reverted
config.activate configurations: a configured part rebuilt per row
config.column configurations: a configured part rebuilt per row
config.configure configurations: a configured part rebuilt per row
config.preview configurations: a configured part rebuilt per row
config.row configurations: a configured part rebuilt per row
config.rule configurations: a configured part rebuilt per row
config.rules configurations: a configured part rebuilt per row
config.table configurations: a configured part rebuilt per row
construct.axis.edge construction: the plane, axis or point exactly
construct.axis.normal_to_face construction: the plane, axis or point exactly
construct.axis.through_cylinder construction: the plane, axis or point exactly
construct.axis.two_planes construction: the plane, axis or point exactly
construct.plane.at_angle construction: the plane, axis or point exactly
construct.plane.midplane construction: the plane, axis or point exactly
construct.plane.perpendicular construction: the plane, axis or point exactly
construct.plane.tangent construction: the plane, axis or point exactly
construct.plane.three_points construction: the plane, axis or point exactly
construct.plane.two_edges construction: the plane, axis or point exactly
construct.point.along_path construction: the plane, axis or point exactly
construct.point.center construction: the plane, axis or point exactly
construct.point.edge_plane construction: the plane, axis or point exactly
construct.point.three_planes construction: the plane, axis or point exactly
construct.point.two_edges construction: the plane, axis or point exactly
construct.point.vertex construction: the plane, axis or point exactly
contact.check assemblies: contact sets and what they report
contact.create assemblies: contact sets and what they report
contact.disable_all assemblies: contact sets and what they report
contact.edit assemblies: contact sets and what they report
contact.enable_all assemblies: contact sets and what they report
contact.enable_sets assemblies: contact sets and what they report
file.export_view_dxf drawings: the projection of the model a view DXF holds
frame.member frames: member bodies
frame.profile.insert frames: member bodies
inspect.center_of_mass inspect: the number or curves it reports
inspect.clearance inspect: the number or curves it reports
inspect.compare inspect: the number or curves it reports
inspect.continuity inspect: the number or curves it reports
inspect.curvature_comb inspect: the number or curves it reports
inspect.draft inspect: the number or curves it reports
inspect.interference inspect: the number or curves it reports
inspect.isocurve inspect: the number or curves it reports
inspect.minimum_radius inspect: the number or curves it reports
inspect.parameter_sweep inspect: results rebuilt over a parameter range
inspect.section inspect: the number or curves it reports
joint.as_built assemblies: joint placements and values
joint.cam assemblies: joint placements and values
joint.create assemblies: joint placements and values
joint.delete assemblies: joint placements and values
joint.drive assemblies: joint placements and values
joint.edit assemblies: joint placements and values
joint.gear assemblies: joint placements and values
joint.inspect assemblies: joint placements and values
joint.limits assemblies: joint placements and values
joint.motion_link assemblies: joint placements and values
joint.origin assemblies: joint placements and values
joint.rack_pinion assemblies: joint placements and values
joint.reach assemblies: joint placements and values
joint.rigid_group assemblies: joint placements and values
joint.screw assemblies: joint placements and values
joint.solve assemblies: joint placements and values
joint.sweep assemblies: joint placements and values
motion.interference assemblies: motion results
motion.plot assemblies: motion results
motion.study assemblies: motion results
motion.trace assemblies: motion results
motion.trace.edit assemblies: motion results
motion.trace.keep assemblies: motion results
occurrence.copy assemblies: an occurrence copied
occurrence.drag assemblies: an occurrence dragged to a placement
occurrence.reparent assemblies: an occurrence moved in the tree
parts.fastener standard parts: a fastener body
parts.insert standard parts: a part body
parts.resize standard parts: a part resized
plastic.assign_rule plastic: the feature body
plastic.boss plastic: the feature body
plastic.lip plastic: the feature body
plastic.manage_rules plastic: rules that rebuild the features using them
plastic.rest plastic: the feature body
sheet.export_bend_table sheet metal: the bend table of a flat pattern
sheet.export_dxf sheet metal: the flat pattern as DXF
sheet.hem sheet metal: the feature body
sheet.path_flange sheet metal: the feature body
sheet.perforate sheet metal: the feature body
sketch.arc3d sketch: a curve kind no case profiles yet
sketch.auto_project sketch from the model: curves the kernel computes from bodies
sketch.conic sketch: a curve kind no case profiles yet
@@ -364,36 +277,7 @@ sketch.include_3d sketch from the model: curves the kernel compu
sketch.intersect sketch from the model: curves the kernel computes from bodies
sketch.intersection_curve sketch from the model: curves the kernel computes from bodies
sketch.isoparametric_curve sketch from the model: curves the kernel computes from bodies
sketch.project sketch from the model: curves the kernel computes from bodies
sketch.project_to_surface sketch from the model: curves the kernel computes from bodies
sketch.spline.control_point_5 sketch: a curve kind no case profiles yet
sketch.spline3d sketch: a curve kind no case profiles yet
sketch.spun_profile sketch from the model: curves the kernel computes from bodies
solid.align solid modelling: the body it makes
solid.boundary_fill solid modelling: the body it makes
solid.bounding_solid solid modelling: the body it makes
solid.cone solid modelling: the body it makes
solid.pattern.path solid modelling: the body it makes
solid.replace_face solid modelling: the body it makes
solid.scale solid modelling: the body it makes
solid.web solid modelling: the body it makes
surface.blend surfaces: the surface body it makes
surface.boundary surfaces: the surface body it makes
surface.fair surfaces: the surface body it makes
surface.match surfaces: the surface body it makes
surface.offset surfaces: the surface body it makes
surface.reverse_normal surfaces: the surface body it makes
surface.ruled surfaces: the surface body it makes
surface.unstitch surfaces: the surface body it makes
surface.untrim surfaces: the surface body it makes
timeline.compute_all timeline: the bodies after the rebuild
timeline.delete timeline: the bodies after the rebuild
timeline.edit timeline: the bodies after the rebuild
timeline.group timeline: the bodies after the rebuild
timeline.move_many timeline: the bodies after the rebuild
timeline.move_to_group timeline: the bodies after the rebuild
timeline.reorder timeline: the bodies after the rebuild
timeline.reorder_many timeline: the bodies after the rebuild
timeline.roll_to timeline: the bodies after the rebuild
timeline.suppress timeline: the bodies after the rebuild
timeline.ungroup timeline: the bodies after the rebuild
-1
View File
@@ -1,7 +1,6 @@
# Source files whose change must rerun the construction area: one git pathspec glob a line.
# The construct.* commands (the plane at an angle and offset plane live in features.rs).
crates/engine/src/cmd/construct.rs
crates/engine/src/cmd/features.rs
# How a construction reference resolves, and the planes the document resolves.
crates/doc/src/construct.rs
crates/doc/src/document.rs
-3
View File
@@ -1,9 +1,6 @@
# Source files whose change must rerun the frames area (frame members, inserted profiles).
apps/solidcraft-cli/src/kernel_cases.rs
crates/doc/src/eval_frame.rs
crates/doc/src/frame.rs
crates/engine/src/cmd/frame.rs
crates/engine/src/cmd/sketch.rs
crates/kernel/src/**
crates/smlib/**
tests/kernel-cases/frames/**
-2
View File
@@ -11,7 +11,5 @@ crates/doc/src/config_rules.rs
crates/doc/src/params.rs
crates/doc/src/expr.rs
# Rebuilding the timeline, and the results it keeps between rebuilds.
crates/doc/src/eval.rs
crates/doc/src/model_cache.rs
# The cases themselves.
tests/kernel-cases/history/**
-3
View File
@@ -10,11 +10,8 @@ crates/engine/src/cmd/compare.rs
crates/engine/src/cmd/inspect.rs
# What they measure with: the comparison of two surfaces, a face's isocurves, seam continuity,
# body distance and mass properties.
crates/geom/src/compare.rs
crates/doc/src/eval.rs
crates/kernel/src/iso.rs
crates/kernel/src/continuity.rs
crates/kernel/src/continuity_order.rs
crates/kernel/src/distance.rs
crates/kernel/src/measure.rs
tests/kernel-cases/inspect/**
-8
View File
@@ -4,17 +4,9 @@ crates/engine/src/cmd/plastic.rs
crates/doc/src/plastic.rs
# The features' evaluation (plastic_eval and its helpers) and the join and cut they apply.
crates/doc/src/eval_more.rs
crates/doc/src/eval.rs
# The kernel operations they build with: extrude, tapered extrude, the lip's raised band and the
# groove's rim band, booleans (ops) and the shell the lip cases
# start from, and SMLib underneath.
crates/kernel/src/build.rs
crates/kernel/src/lip.rs
crates/kernel/src/ops.rs
crates/kernel/src/boolean_record.rs
crates/kernel/src/native.rs
crates/kernel/src/shell_groups.rs
crates/smlib/**
# The cases and the rig itself.
tests/kernel-cases/plastic/**
apps/solidcraft-cli/src/kernel_cases.rs
+2
View File
@@ -13,3 +13,5 @@ crates/engine/src/cmd/sheet.rs
crates/kernel/src/offset_backend.rs
crates/kernel/src/polyhedron.rs
crates/kernel/src/sew.rs
crates/doc/src/eval_more.rs
crates/io/src/dxf_out.rs
-5
View File
@@ -1,9 +1,4 @@
# Source files whose change must rerun the solids area (cones, scale, align, bounding solids).
apps/solidcraft-cli/src/kernel_cases.rs
crates/doc/src/eval.rs
crates/doc/src/eval_more.rs
crates/engine/src/cmd/features.rs
crates/engine/src/cmd/features_more.rs
crates/kernel/src/**
crates/smlib/**
tests/kernel-cases/solids/**
-7
View File
@@ -6,7 +6,6 @@ crates/engine/src/cmd/surface_match.rs
crates/engine/src/params.rs
# Their evaluation.
crates/doc/src/eval_surface.rs
crates/doc/src/eval.rs
# The kernel code they call.
crates/kernel/src/boundary.rs
crates/kernel/src/boundary_network.rs
@@ -15,7 +14,6 @@ crates/kernel/src/fair.rs
crates/kernel/src/fill*.rs
crates/kernel/src/loft*.rs
crates/kernel/src/matchsurf.rs
crates/kernel/src/native.rs
crates/kernel/src/surface_extend.rs
crates/kernel/src/surface_offset.rs
crates/kernel/src/surface_ruled.rs
@@ -23,10 +21,5 @@ crates/kernel/src/surface_trim.rs
crates/kernel/src/surface_untrim.rs
crates/kernel/src/surfaces.rs
crates/kernel/src/sweep*.rs
crates/kernel/src/smlib_sweeps.rs
crates/geom/src/fill*.rs
crates/geom/src/network*.rs
# SMLib and the rig itself.
crates/smlib/**
apps/solidcraft-cli/src/kernel_cases.rs
tests/kernel-cases/surfaces/**