2026-09-29 - v0.82.112 Local branch-connector insertion
Add Part can split the selected occupied connector on a branched fitting such as TVU-C without requiring the complete fitting component to have one linear Chain Order. The existing neighbour keeps its World pose and the inserted part enters the normal solve workflow.
2026-09-25 - v0.82.111 Single productive Engine
Topology, connector frames, Append, Full/Active/Span and Live solving, Guide and obstacle evaluation, previews and A/B/C planning now use one host-independent Engine and one transactional Blender adapter. Root-level routing shadows and duplicate path/order authorities are removed. The public Guides document the runtime flow, controls, diagnostics, cache behavior, atomic Apply boundary and verification evidence.
2026-09-22 - v0.82.13 Reversed Append guard
New Append refuses a selected part from another Chain before touching its links or pose. Select the loose part and make the established Chain endpoint active; Detach first when a transfer is intentional.
2026-09-21 - v0.82.12 Chain list retains obstacle-tagged parts
A connected part marked as a planning obstacle remains in its complete Chain, so selecting it highlights the Chain row.
2026-09-17 - v0.74.5 exact TVU branch connector
TVU connector C and the generated branch mesh now consume one shared endpoint calculation.
2026-09-17 - v0.74.4 Add Part at selected Append axis
Add Part now consumes the open connector selected under Append axes; TVU can therefore add directly at C.
2026-09-17 - v0.74.3 existing-edge Cut Active and SR choices
Cut Active continues an already tracked connector pair without repeating Append. SR Add/Exchange exposes DN63-DN2000 with the published stock length.
2026-09-17 - v0.74.2 safe Cut Active connector choice
The all-in-one action rejects an occupied active connector before releasing or creating any relation and reports the available connector explicitly.
2026-09-17 - v0.74.1 all-in-one Cut Active append
Cut Active to Fit now implies pose-preserving Append and performs both steps in one action.
2026-09-17 - v0.74.0 Append in Place
Append can preserve manually placed transforms and optionally fit the active length part.
2026-09-17 - v0.73.1 Lindab Safe TVU45
Corrected the complete tee generator identity and linked the supplied global Safe datasheet.
2026-09-17 - v0.73.0 complete Add Part families
Add and Exchange now expose all connection-ready Catalog families.
2026-09-17 - v0.72.7 reload-safe preview cleanup
Preview Off and Apply remove tagged Align & Adjust preview meshes even after an add-on reload.
2026-09-17 - v0.72.6 faithful Align & Adjust preview
Length drives movement along the CUT axis. Preview shows evaluated Instance geometry and the calculated CUT length without editing planning objects.
2026-09-17 - v0.72.5 Align & Adjust Length
Parametric CUTs expose an explicit Length freedom. A same-Chain reference beyond A remains fixed while only the bounded segment moves and D is rebuilt.
2026-09-17 - v0.72.4 local Join in Place
Exact endpoint joins no longer depend on unrelated pose residuals elsewhere in either linear Chain. No part moves.
2026-09-17 - v0.72.3 local Fit validation
Fit Inbetween validates its two adjacent seams; unrelated existing Chain residuals no longer roll back an exact local Cut.
2026-09-17 - v0.72.2 Stock labels and spacing
Visible 3D text names every used variant and quantity. Evaluated maximum extents, a fixed gap and dynamic row heights prevent long parts from overlapping.
2026-09-17 - v0.72.1 fast, visible Stock matrix
Stock calculates its table immediately; its labelled 3D matrix builds with one scene update and opens in reliable Viewport isolation. Source & Instances now sits inside Part Configure.
2026-09-17 - v0.72.0 Catalog and Used Parts matrix
Catalog replaces generator-first navigation. A refreshed Local View matrix shows every used product variant once with native labels and quantities; preview Instances never enter takeoff. Advanced Source controls move into Source & Instances.
2026-09-17 - v0.71.3 Add/Exchange manufacturer PDF
A compact icon before Exchange Part and Add Part opens the selected Part Type's online manufacturer PDF without increasing the action-row height.
2026-09-17 - v0.71.2 verified Exchange geometry and Planning Color
Exchange repairs reused Sources whose internal parameters disagree with their product identity and preserves the active semantic Planning Color.
2026-09-17 - v0.71.1 silent Add/Exchange Source reuse
Add Part and Exchange Part silently reuse an existing product Source, while the manual Parts Generator retains its duplicate-product notice.
2026-09-16 - v0.71.0 Exchange Part
Exchange Part shares Add Part's remembered variant controls and replaces the active occurrence while preserving its World pose, Planning Color and Chain references. Direct project Instances keep the Planning Colors section.
2026-09-16 - v0.70.1 Planning Color recovery
When Blender preferences unexpectedly contain only defaults, VentLib reconstructs missing custom profiles and adjusted built-in colors from stable metadata already stored on scene Instances, preserves original enum values and saves the repaired library.
2026-09-16 - v0.68.0 Align by Adjust and Chain keyboard focus
A/B/C/D transform matching previews moved parts as reversible blue wire ghosts, enables Apply only for a valid preview and restores failed CUT adjustments. Up/Down keys traverse the complete Chain Order from the Viewport sidebar.
2026-09-16 - v0.67.7 Fit staging and root-anchored Solve
Internal Fit staging keeps its previous tracked edge, while Solve From Active accepts position 1 as the fixed anchor and solves the remaining Chain.
2026-09-16 - v0.67.6 Compact Chain blocker
One fixed workflow row replaces separate Solve, Cut and Join notes. A blocked Join reports the active Chain misalignment count and maximum residual and opens every failing seam persistently.
2026-09-16 - v0.67.5 Registration hotfix
Occurrence-ID migration now waits until Blender restores normal data access after Add-on registration. A failed registration also rolls back already registered VentLib modules.
2026-09-16 - v0.67.4 Reusable Blender copies and stable Chain actions
Shift+D copies receive a fresh occurrence identity and discard inherited Append, Chain Parenting and Solver Lock state while retaining part and appearance data. Solve, Cut and Join rows remain in place as Chain Order selection changes.
2026-09-16 - v0.67.3 Stable Cut Length panel
Cut Length keeps its complete row structure for fixed parts, fresh cuttable instances and existing CUT parts. Unavailable controls stay visible but disabled so Chain Order selection no longer shifts the rest of VentLib vertically.
2026-09-16 - v0.67.2 Cut colors and Order Edit diagnostics
Fit Cuts retain their Planning Color profile, exact color and render mix. Order Edit now derives A/B sides from visible Chain Order, names duplicate connector assignments correctly, and opens failures persistently with a Guide link.
2026-09-15 - v0.67.1 Complete-Lock selected-side Fit
Fit Inbetween now treats a selected side with all Location channels locked as an absolute boundary, including legacy parts without the internal full-lock marker. The action stays unavailable instead of moving the part and recapturing its target.
2026-09-15 - v0.67.0 Lindab MF generator
Parts Generator now includes the uninsulated MF female sleeve with every published DN, overall length, mass and folded-edge marker, plus end-face connectors, Configure support, a local sheet and icon.
2026-09-15 - v0.66.1 NPUI generator icon
The NPUI generator card now uses a deterministic local 32 px product icon derived from the bundled Lindab datasheet.
2026-09-15 - v0.66.0 Aim for Straight Cut
Two selected open Chain endpoints can now be rolled around their connected axes while the adjacent SRI lengths are solved. The preview exposes every change; Apply creates the exact middle SRI and joins both Chains atomically.
2026-09-15 - v0.65.1 Complete-Lock Fit and P-safe Cut
Fit Inbetween now suspends P before CUT rebuilds and treats Complete Lock as an absolute pose boundary. Cut Chain suspends and reconstructs P independently on both resulting Chains without changing World poses.
2026-09-15 - v0.65.0 connector-coordinate alignment
Align Connector Coordinate translates connector A/B to a reference Object Origin or connector on selected Global axes. Active, following-suffix and selected-part scopes preserve rotation and rebuild P constraints safely.
2026-09-15 - v0.64.8 parenting-safe New Append
New Append now suspends stale P constraints before World-matrix placement and rebuilds movement coupling for every resulting multi-part Chain. Transform Orientation and Pivot remain irrelevant to connector placement.
2026-09-15 - v0.64.7 uninterrupted sidebar scroll and stable P state
Chain Order no longer captures the mouse wheel. Previous Part and Next Part traverse all rows across page boundaries, while P remains active for complete movement constraints during temporary geometric misalignment.
2026-09-15 - v0.64.6 event-fed native Chain Order
The native ten-row Chain Order list returns with wheel, keyboard and active-object navigation. Selection and topology events populate it outside panel draw, preserving complete outer-sidebar scrolling.
2026-09-15 - v0.64.5 draw-safe Chain Order centering
Active-object centering now runs from Blender's selection message bus instead of writing Scene properties during panel draw, so Chain Order rows and following sections remain present and the sidebar scrolls normally.
2026-09-15 - v0.64.4 panel-safe Chain Order navigation
The nested UIList was removed because it intercepted wheel scrolling for the full VentLib sidebar. Compact Chain Order rows return, while viewport selection automatically centers the active part in the ten-row window.
2026-09-15 - v0.64.3 native Chain Order navigation
Chain Order now uses Blender's native ten-row scrolling list with mouse-wheel, keyboard and active-object navigation. Valid World rotations seed later articulated solves and can be reset per row through the native right-click menu.
2026-09-14 - v0.64.2 evaluated-pose P cleanup
Load-time partial-P cleanup now waits for Blender dependency-graph evaluation before preserving World poses and removing stale constraints, preventing fallback to old basis transforms after restart.
2026-09-14 - v0.64.1 inactive P cleanup
Scene load and an explicit click now remove incomplete VentLib P constraints and flags without changing World poses. A gray P control therefore guarantees independent transforms; Blender 5.2 regression covers movement of a middle part.
2026-09-14 - Solve From Active Guide example
The general and detailed Guides now walk through the validated 20-part suffix solve, including the active-row boundary, translation-only seam closure, Solver Lock recapture, unchanged CUT lengths and the choice between Solve From Active, Fit Inbetween and Solve Between Locks.
2026-09-14 - v0.64.0 decimal CUT precision
Cut Length and Fit Inbetween retain connector-derived lengths to 0.001 mm in geometry, metadata and procurement totals. Decimal CUT names use a stable p separator; Chain validity retains its 0.025 mm float32 guard.
2026-09-14 - v0.63.2 native deletion cleanup
Normal Blender object deletion now turns references to the removed object into valid open Chain ends without changing any remaining World transform.
2026-09-13 - v0.63.1 shared Planning Color source
New Instance Profile and the main Planning Colors picker now consume the same complete ordered profile collection, including every saved custom profile.
2026-09-13 - v0.63.0 native right-click Guide and Detach Part
Separate Guide symbols no longer consume panel width. Every VentLib function or owned setting receives a native right-click Guide entry through one central registry; information and status rows remain directly clickable. Detach Part removes an active part from adjacent Appends and movement coupling while keeping its object and exact World transform.
2026-09-12 - v0.62.6 parenting-safe Solve and Profile Code guidance
Solve From Active now suspends and reconstructs Chain Parenting around its World-space transaction, with complete late-failure rollback. The Planning Color dialog now explains Profile Code and links directly to its Guide section.
2026-09-12 - v0.62.5 translation-only Solve From Active
Solve From Active now preserves every rotation while translating the active and following suffixes into connected positions. Seams requiring rotation are rejected before mutation; Fit Inbetween retains its separate full-pose alignment.
2026-09-12 - v0.62.4 discoverable Cut eligibility
Cut Length and a disabled Fit Inbetween action remain visible on fixed catalog parts. The button hover explains why the selected family cannot be cut; eligible but blocked parts expose their current preflight reason in the same place.
2026-09-12 - v0.62.3 complete Fit Inbetween alignment
Cut Length remains contextual to fresh or baked SRI, SR and SRSS parts. Fit Inbetween rebuilds the exact Cut, then closes every following Chain seam in order and captures new targets for Solver Locks moved by this explicit action. Any failure restores geometry, World transforms, lock targets and the pinned Chain.
2026-09-12 - v0.62.2 immediate profiles and solver choice
Planning Color profile clicks apply immediately. Failed locked-span solves remain visible with a clickable Guide. Solve From Active explicitly moves the active row and following tail and recaptures moved Solver Lock targets.
2026-09-12 - v0.62.1 exact Local View state restoration
Chain Local View now restores the pre-entry selection and active object when leaving isolation, including selection-locked Chain parts. The Planning Color tooltip now describes multi-object application and ignored non-VentLib objects.
2026-09-12 — v0.62.0 selection, Local View and direct Guides
Planning Color selection applies to all selected VentLib occurrences and ignores non-VentLib objects. Chain V preserves and restores the viewport. Chain Order pages overlap by one reference row, and the magnifier jumps to the active object. Guide-only symbols navigate directly through the central reused-tab dispatcher; rich Guide windows retain inline content and add an X close control.
2026-09-12 — v0.61.1 action guides, profile picker and Guide media
Primary VentLib actions now expose the clickable 2HE Guide symbol, including Solve Between Locks. Planning Colors uses a filtered ten-row picker with pages for longer libraries. The top Guide entry demonstrates a persistent popup with a bundled NASA Goddard still and five-second local MP4 excerpt.
2026-09-01 - v0.34.0 connector-anchored scale-to-cut
Status: BLENDER E2E VALIDATED
- MFI A/B now sit on the physical end faces.
- Local-X scale commits into unit-scale stock pieces plus a remainder while preserving the chosen connector.
- SRSS spiral seams and MFI end corrugations regenerate per exact piece.
- Create-card icons open the bundled local datasheet.
2026-08-31 — v0.33.0 reusable installed cut lengths
Status: BLENDER E2E VALIDATED
- SRSS and MFI project instances reuse exact L<mm> SOURCE variants.
- Sibling instances remain unchanged and DN is never scaled.
- Stock and installed lengths are distinct, calculation-ready values.
2026-08-31 — v0.32.0 Lindab MFI insulated coupling
Status: PDF + GENERATOR + BLENDER E2E VALIDATED
- Added exact Type 25 / Type 50 DN100–500 catalog variants.
- Added centered stop-plane geometry and opposing VentLib connectors.
- Bundled the datasheet, mounting instruction, product media and connection notes.
2026-08-31 — v0.31.1 legacy SOURCE reuse and viewport scaling
Status: VALIDATED
- Legacy canonical products resolve their exact SRC collection even when the redundant backlink is absent.
- Lock restoration evaluates only changed VentLib components instead of scanning the full scene per viewport update.
- The first instance uses the ordinary INST__<part-id> name without a warehouse suffix.
- Source positioning remains driver-free.
2026-08-31 — v0.31.0 PDF-grounded performance catalog
Status: VALIDATED
- Exact SLU/BSLU octave-band variant datasets are reusable online and in SOURCE metadata.
- CBC/CBE and MB/MBB example-combination attenuation tables retain their applicability limits.
- BUSS, BSLU, RCLU and TCPUSS pressure-loss chart provenance and required inputs are registered.
- Unavailable operating ranges and generated-noise values remain explicit orange acquisition tasks.
2026-08-31 — v0.30.2 tagged SOURCE fallback for legacy instances
Status: VALIDATED
- Older PART_INSTANCE objects with stale IDs are recognized through their canonical VentLib-tagged SOURCE collection.
- Unrelated collection instances remain unchanged.
2026-08-31 — v0.30.1 legacy instance display normalization
Status: VALIDATED
- Older PART_INSTANCE records are normalized when their exact SRC__ collection matches the stored part ID, even without the newer source-collection field.
- Unrelated collection instances remain excluded.
2026-08-31 — v0.30.0 product-performance register and compact instances
Status: VALIDATED
- All new warehouse/project instances use a compact 0.03 m display size.
- Make Instance retains 3D-Cursor placement.
- A public Product Data table exposes reusable calculation/proof inputs and marks missing data orange.
- Generated SOURCE metadata carries the corresponding reusable family record.
- The proposed Asset Library remains a derived browse/place surface rather than the product-data SSOT.
2026-08-31 — v0.29.2 canonical SOURCE lookup
Status: VALIDATED
- Product-exists detection accepts only a SOURCE in its exact SRC product collection.
- Project objects with reused part IDs are no longer mistaken for catalog definitions.
2026-08-31 — v0.29.1 migration ownership guard
Status: VALIDATED
- Legacy promotion requires the explicit VentLib component tag.
- Generic WORK definitions owned by other add-ons remain untouched.
2026-08-31 — v0.29.0 canonical product sources
Status: GENERATOR + MIGRATION CONTRACT VALIDATED
- Removed new WORK definitions: one exact product variant now has one functional SOURCE.
- First generation creates a warehouse instance at World X +1 m and selects the SOURCE.
- Duplicate generation reports Product exists already and selects the warehouse instance.
- New Project Instance at 3D Cursor creates additional placements in project collections.
- Legacy WORK metadata migrates to SOURCE without changing legacy occurrence transforms.
← FH VentLib workspace · Guides · Straightener Guide
APPEND-ONLY DEVLOGFH VentLib DevLog
Historical milestones remain visible; new development adds entries instead of replacing the past.
2026-08-31 — v0.28.3 SRC-linked occurrences
Status: IMPLEMENTED + RUNTIME VALIDATED
- Mesh/Curve project placements linked to canonical VentLib SRC geometry now resolve their Component Configure data from the authoritative WORK object.
- Connector A/B operations preserve the placement object's world transform.
2026-08-29 — v0.27.1 direct source instancing
Status: REPOSITORY + BLENDER RUNTIME VALIDATED; LIVE NOT DEPLOYED
- Added New Instance (+1 m X) beside Commit Source Position.
- Reuses the active canonical SRC without rebuilding or replacing it.
- Links the new occurrence outside its SRC hierarchy and places it at an exact one-metre World-X offset.
2026-08-29 — v0.27.0 driver-free source warehouse positioning
Status: REPOSITORY + K39B SCENE VALIDATED; LIVE NOT DEPLOYED
- Added undo-capable Commit Source Position using the SRC Collection Instance Offset.
- Translation preserves every placed occurrence; Rotation and Scale are explicitly rejected.
- Added an in-scene non-rendering warehouse instruction sign.
- Migrated 33 K39B SRC roots, arranged 19 former World-Origin sources and removed the final three-driver CMB proxy with a maximum evaluated geometry delta below 0.002 mm.
- Connector cursor pivots now return to Active Element when another object becomes active, using a watcher that exists only while armed.
2026-08-23 — v0.15.0 detached topology and reversible relationships
Status: VALIDATED IN BLENDER 5.2 — repository result
- Separated tracked VentLib Append topology from optional Blender parenting.
- Added Parented/Re-parent and Appended/Re-append controls with remembered targets and connector mappings.
- Added a persistent Proportional switch for automatic SRSS length distribution.
- Allowed already locked components to be appended while reporting incompatible placement as Chain needs attention.
2026-08-23 — v0.14.1 registration hotfix
Status: RELEASED, LIVE AND VALIDATED
- Deferred legacy native-lock migration until Blender data is available.
- Prevented restricted-data registration failure and stale partial RNA registration.
2026-08-23 — v0.14.0 proportional Live Solve
Status: VALIDATED IN BLENDER 5.2
- Added proportional SRSS length solving between locked endpoints.
- Added manufacturer maximum-length limits and guarded pivot-based Live Solve.
- Reported unresolved length and separated unreachable sides at the moved pivot.
2026-08-23 — v0.13.1 solver-lock usability
Status: VALIDATED IN BLENDER 5.2 — repository result
- VentLib solve locks no longer activate Blender native transform locks.
- Locked goals remain directly movable with G/R.
- Ordered components is collapsed by default.
- Corrected beige-page status-text contrast.
2026-08-23 — v0.13.0 parent-safe size foundation
Status: VALIDATED IN BLENDER 5.2 — repository result
- Locked components retain their world pose during upstream SRSS length rebuilds despite Blender parenting.
- Unlocked descendants continue following tracked connector updates.
- Append and Straighten accept harmless scale decomposition noise while still rejecting meaningful object scale.
- Proportional size allocation and missing-part insertion remain the next milestone.
2026-08-22 — v0.12.1 matrix-aware Append
Status: VALIDATED IN BLENDER 5.2 — repository result
- Renamed the user workflow from Connect to Append.
- Every Append is automatically tracked and parented.
- Append respects the selected component’s world Location/Rotation constraint matrix.
- Removed separate Fixed Goal, Parent on Connect and Recapture controls; the large Lock button toggles all axes.
- No timers, handlers or continuous background operators were added.
2026-08-22 — v0.12.0 fixed-goal constraints
Status: VALIDATED IN BLENDER 5.2 — repository result
- Added persistent world-space Location/Rotation constraint masks with native Blender lock mirroring.
- Added captured target poses and explicit Recapture.
- Added Attach as Fixed Goal, preserving the goal world transform while recording tracked connector metadata.
- Added focused Blender 5.2 regression coverage.
2026-08-22 — v0.11.0 two-endpoint foundation
Status: VALIDATED IN BLENDER 5.2 — repository result
- Added deterministic damped-least-squares solving between two locked linear-chain endpoints.
- Uses circular connector axial rotation while preserving both endpoint transforms.
- Rejects intermediate locks, structural topology errors and unreachable targets without changing transforms.
- Added a focused reachable/unreachable Blender 5.2 regression.
2026-08-22 — v0.10.1 lock-state clarity
Status: VALIDATED IN BLENDER 5.2 — user accepted and LIVE
- Replaced separate lock and unlock actions with one active-component Lock toggle.
- The depressed state and closed/open icon expose the active component lock state.
- Moved Straightener diagnostics above the ordered component list.
- Strengthened text contrast on the VentLib Guides pages.
2026-08-22 — v0.10.0 deterministic chain repair
Status: VALIDATED IN BLENDER 5.2
- Added Straighten Chain with active-component or locked-component anchoring.
- Repairs disturbed tracked connections to zero connector error.
- Conflicting locks and branched topology cancel without changing component transforms.
- Added the living Straightener Guide so behavior and limitations evolve alongside implementation.
2026-08-22 — v0.9.0 Straightener chain foundation
Status: VALIDATED IN BLENDER 5.2 — repository and LIVE copy
- Added deterministic read-only discovery and ordering for tracked VentLib chains.
- Reports connections, endpoints, open ports, branches, cycles, locked components and maximum connector error.
- Added persistent per-occurrence locks and selected-component lock/unlock controls.
- Made Components and Straightener collapsed by default with scene-persistent state.
- Added focused clean-process Blender regression coverage for a three-part chain and deliberately broken connection.
- Verified the deployed LIVE package by hash and by both regressions in factory-clean Blender processes.
2026-08-21 — v0.8.0 tracked parent connections
Status: VALIDATED IN BLENDER 5.2 — repository and LIVE
- Added optional Parent on Connect with cycle-safe hierarchy creation.
- Stored source and target connector IDs on each tracked child.
- Re-solved connected descendants after parametric geometry rebuilds.
- Verified that extending a parent SRSS moves its connected child while preserving connector coincidence.
- Moved Configure and Part Info above Create; Metadata is collapsed by default.
2026-08-20 — v0.7.0 connector frames and port-to-port alignment
Status: IMPLEMENTED — Blender 5.2 repository and LIVE runtime validation passed
- Added two to four A/B/C/D connector frames across all current VentLib families.
- Added 3D Cursor placement/orientation and automatic Cursor-pivot activation without changing object origins.
- Added selected-source-port to active-target-port alignment for location, full 3D orientation and roll.
- Added FH__InstanceStructure PART_INSTANCE resolution through shared part IDs and SOURCE/WORK transforms.
- Verified coincident connector centers, opposed outward axes and matching roll references in Blender 5.2.
2026-08-19 — v0.6.6 YVU common-junction construction
Status: IMPLEMENTED — generator and Blender visual validated; user visual acceptance pending
- Placed the inlet endpoint and both outlet starts on one shared centerline junction.
- Removed backward branch embeds that created diagonal stubs around the inlet body.
- Preserved manufacturer l2 data, custom d3/d4 limits, hollow connectors, galvanized material and EPDM beads.
2026-08-07 — v0.4.9 parametric YVU Hosenstück
Status: UNDER DEVELOPMENT — Blender visual validation pending
- Added Lindab YVU as a deliberately fast three-overlapping-cylinder planning model with lightweight EPDM beads and no Boolean/remesh junction work.
- Default source is the exact published YVU45 100/80/80 configuration.
- Live numeric sliders allow arbitrary d1, d3, d4 and branch angle values; d3/d4 are constrained to d1 as stated in the source datasheet.
- Separate preset dropdowns expose only the nominal d1/d3/d4 values and 15°/30°/45°/60° angles published in yvu45.pdf.
- Exact published 45° rows use source l2 and mass values. Custom combinations use an interpolated d1/l2 planning baseline without inventing mass data.
- YVU participates in canonical FH__Lindab/SRC__Lindab source naming, Update Name, instance renaming and geometry hot reload.
2026-08-07 — v0.4.1 live XVU + source governance + metadata
Status: UNDER DEVELOPMENT — Blender runtime validation pending
- Replaced destructive live XVU Boolean rebuilding with robust three-tube overlap geometry for arbitrary DN and angle values.
- Added custom numeric Main DN / Branch DN / Angle plus separate published Lindab preset dropdowns.
- Added manufacturer source hierarchy and shared Update Source + Names commit action for configuration, collection, object and instance naming.
- Added Manufacturer URL, FH VentLib URL and unlimited file/media/URL metadata items with direct open actions.
- Crash report after Reload Scripts points to Blender RNA lookup during Archipack manipulable draw callback; workflow rule is now deploy + restart Blender rather than hot Reload Scripts.
2026-08-07 — v0.4.0 parametric XVU double branch
Status: SUPERSEDED BY v0.4.1 LIVE-EDIT REFINEMENT
- Introduced XVU 100/100/100 45° and Lindab XVU45 dimensional data.
- Initial exact-Boolean live rebuild path proved fragile for arbitrary size changes and was replaced in v0.4.1.
2026-08-07 — v0.3.7 TCPUSS connector proportions
Status: UNDER DEVELOPMENT
- TVUSS45 v0.3.6 external shape accepted visually in Blender 5.2.
- Added DN-proportional TCPUSS straight socket projections and retained black EPDM beads.
2026-08-07 — v0.3.6 deeper TVUSS45 saddle embed
Status: VISUALLY VALIDATED IN BLENDER 5.2
- Closed the remaining external saddle notch.
- Kept constant-DN branch geometry and no visible penetration through the opposite wall.
2026-08-07 — v0.3.4 Boolean TVUSS45 air path
Status: UNDER DEVELOPMENT
- Added deeper constant-DN overlap as fallback and Blender EXACT Boolean cleanup for the TVUSS45 internal air path.
2026-08-07 — v0.3.1 geometry + BUSS variants
Status: UNDER DEVELOPMENT
- BUSS 15°/30°/45°/60°/90° for DN100/125/200.
- TCPUSS and TVUSS45 geometry refinement.
2026-08-06 — v0.3.0 consolidation milestone
Status: UNDER DEVELOPMENT
- Canonical package, sidebar presets, deployment path and living workspace established.
2026-08-24 — v0.16.0 multi-lock spans and robust constraints
Status: VALIDATED IN BLENDER 5.2 — repository result
- Removed the two-lock ceiling and solve consecutive locked spans.
- Allowed each eligible SRSS to use its remaining manufacturer capacity independently.
- Protected locked occurrences from indirect Blender-parent motion.
- Highlighted the active Ordered components entry and fixed structural joint-axis constraints.
- Recorded per-object Obstacles in chain order as the next topology milestone.
2026-08-24 — v0.16.1 existing-lock constraint migration
Status: VALIDATED IN BLENDER 5.2 — repository result
- Migrated existing locked occurrences so structural X/Y joint-axis constraints are visibly active and cannot be disabled.
2026-08-24 — v0.17.0 selectable chain list and span diagnostics
Status: VALIDATED IN BLENDER 5.2 — repository result
- Made Ordered components entries select and activate their Blender objects.
- Named the exact failing lock span and its eligible SRSS reserve.
2026-08-24 — v0.18.0 Curve Guide Fit prototype
Status: VALIDATED IN BLENDER 5.2 — repository result
- Added Bezier/Poly Curve selection and Fit Chain to Guide.
- Preserved exactly two locked endpoint poses while internal occurrences approach sampled centerline targets.
- Kept proportional SRSS participation optional and rejected invalid post-fit chains transactionally.
- Reported guide RMS distance and added focused Blender regression coverage.
2026-08-25 — v0.20.0 Automatic Pipe Routing planner
Status: VALIDATED IN BLENDER 5.2 — route-planning milestone
- Added conservative obstacle inflation for DN radius and installation clearance.
- Added fast 3D centerline search with hard partial-axis locks and soft guide preference.
- Added exact collision revalidation, catalog bend demand, and Missing-Part recommendations.
- Kept route preview non-destructive; unsupported terminal transitions remain explicit adapter requirements.
2026-08-25 — v0.20.1 exact-terminal rectilinear routing
Status: VALIDATED IN BLENDER 5.2 — current scene
- Uses exact terminal, lock, and inflated-obstacle coordinate planes rather than boundary-quantized grid endpoints.
- Produces only 90-degree internal turns and no adapter angles in the current scene.
- Includes fixed endpoint SRSS geometry and assigns one BUSS90 recommendation to each Missing Part.
2026-08-25 — v0.21.2 chain navigation refinement
Status: VALIDATED IN BLENDER 5.2
- Chains follow the active component without replacing the current OCL selection.
- Chain attention is explicit and rename dialogs start with the visible chain name.
- Resolved newly-created Missing Part markers retire automatically after a component insertion.
- Obstacle and component-name controls now live in their workflow sections.
2026-08-30 — v0.28.0 BFUI, SLU and catalog categories
Status: MANUFACTURER PDF + GENERATOR + BLENDER E2E VALIDATED; VISUAL ACCEPTANCE PENDING
- Added table-driven BFUI insulated bends for 30°, 45° and 90°, 25/50 mm insulation and all published DN combinations.
- Added SLU straight silencers with dependent 50/100 mm insulation, DN and nominal-length choices plus exact dimensional, mass and attenuation metadata.
- Bundled both PDFs, product images and deterministic 32×32 icons.
- Organized the Blender catalog and Parts page into functional categories.
2026-08-30 — v0.28.1 catalog and media refinement
Status: BLENDER UI + MEDIA VALIDATED
- Each functional component category is independently collapsible and closed by default.
- BFUI product media receives a balanced white safety margin.
- SLU product media is corrected to a positive light-background presentation.
2026-08-30 — v0.28.2 compact Parts media
Status: PAGES + MEDIA VALIDATED
- Reduced Parts-page catalog previews to roughly one third of their previous display size.
- Added balanced white framing around the complete BSLU product silhouette.
2026-09-02 — v0.36.0 SRI and installation planning
Status: PDF VERIFIED; implementation validation pending
- Added published SRI Type 25/50 DN100–500 catalog data and 3000 mm stock geometry.
- Added exact cut variants, open-end connectors, installation evidence and the K39B work-planning link.
- Added a documentation-completeness register with orange gaps.
- Kept private project content in the access-controlled GDoc because static GitHub Pages cannot enforce a secure login.
2026-09-02 — v0.43.0 stock SOURCE and baked cuts
Status: BLENDER E2E VALIDATED
- One canonical SOURCE remains per purchased SRI/SRSS stock product.
- Cut Length creates driver-free baked project instances with exact geometry and connectors instead of cut-length SRC variants.
- Configure and EK continue to resolve the purchased stock product.
2026-09-02 — v0.43.1 explicit CUT occurrence names
Status: BLENDER E2E VALIDATED
- Driver-free length-specific SRSS/MFI occurrences now use
CUT__..., clearly separating editable baked cuts from native Blender collection instances named INST__.... - Connector metadata, stock-source resolution, quantity takeoff, and Straightener behavior are unchanged.
2026-09-08 — v0.51.2 selected-part transfer and SLU stop datums
Status: BLENDER 5.2 REGRESSION VALIDATED
- New Append transfers only the selected inactive occurrence into the active target's surviving chain.
- Released edges retain dormant connector memory for Append On and do not remain applied while off.
- Integral SLU Safe nipples append at their insertion-stop shoulders, allowing MFI to overlap them correctly.
2026-09-08 — v0.51.3 profile-safe Instance names
Status: BLENDER 5.2 REGRESSION VALIDATED
- Scene-load migration and Source updates preserve non-neutral Instance Profile suffixes.
- Profile renames rewrite stored Chain, parent-memory and Append-memory references to Blender's actual object name.
- Neutral warehouse and project occurrence naming remains compact.
2026-09-08 — v0.53.0 complete-chain concatenation
Status: BLENDER 5.2 REGRESSION VALIDATED
- Concatenate Chains joins two complete linear assemblies through their selected unique open endpoints.
- The active chain stays fixed and keeps its identity; the selected chain moves by one rigid transform while its internal mappings remain intact.
- Chain Orders orient automatically, and moving-side World-lock conflicts or late validation failures restore both chains completely.
2026-09-08 — v0.54.0 unified Fit Inbetween
Status: BLENDER 5.2 REGRESSION VALIDATED
- One context-aware button creates the initial exact Cut from fresh stock or re-fits an existing Cut in place.
- Chain Order fixes the previous member and derives the axial length from the staged following connector.
- World-lock-aware downstream re-append and late-failure rollback prevent partial or staged-object residue.
2026-09-08 — v0.55.0 authoritative Chain architecture
Status: BLENDER 5.2 REGRESSION VALIDATED
- The visible Chain Order is now the sole operational direction; persisted edge ownership remains storage provenance only.
- Panel preflight is read-only, preventing Blender restricted-context failures that hid Cut Length and Fit Inbetween.
- Exclusive row selection, one-port-safe inversion, rigid-tail Solve From Active and pose-preserving Cut Chain are transactionally covered.
2026-09-08 — v0.52.3 constrained following-side Re-fit
Status: BLENDER 5.2 REGRESSION VALIDATED
- Removed the blanket refusal for following Chain locks.
- Re-fit now retains each World Location, Rotation and Size lock channel while using the remaining free channels.
- Compatible partial locks complete; conflicting constraints roll back the complete Cut and Chain transaction.
2026-09-08 — v0.52.2 baked-Cut panel visibility
Status: BLENDER 5.2 REGRESSION VALIDATED
- Restored Re-fit Cut for direct baked Cut objects whose component resolver returns the Cut itself.
- Prevented baked Cuts from exposing Source-only length configuration.
- Added runtime coverage for fresh Instance, baked Cut and canonical Source panel modes.
2026-09-08 — v0.52.1 Cut workflow beside Append
Status: BLENDER 5.2 REGRESSION VALIDATED
- Moved occurrence Cut Length and Re-fit Cut directly below Append and before Straightener.
- Fresh stock Instances show the normal new-piece action; baked Cuts show the in-place re-fit action.
- Kept canonical Source length configuration in Part Configure.
2026-09-08 — v0.52.0 transactional Re-fit Cut
Status: BLENDER 5.2 REGRESSION VALIDATED
- Re-fit Cut keeps an internal baked SRI/SR/SRSS Blender Object and its Chain position while rebuilding exact millimetre geometry at unit scale.
- The previous member remains fixed; the unlocked following subchain is re-appended to the regenerated end connector.
- Ambiguous topology, stock overlength and locks refuse safely; injected late-failure coverage verifies transactional rollback.
2026-09-09 — v0.55.1 Planning Colors persistence
Profile add/edit/delete/reset now save user preferences immediately, independent of Auto-Save. Two isolated Blender processes verify restart and repeated scene reload, stable profile identity and retained instance colors. Failed preference writes produce an explicit session-only warning.
2026-09-09 — v0.55.2 MFI DN 160 correction
MFI offers DN 160 instead of DN 150 for both Type 25 and Type 50. This remains a project modelling decision for a suspected source printing error, not a manufacturer-confirmed revision.
2026-09-09 — v0.56.0 Air-Circle
Added the DN100 planning generator for BAUHAUS product 23207127. Internal and undimensioned casing details are planning approximations. Current source information is recorded in the public source register; manufacturer and retailer media are not mirrored.