All issues raised now actioned and fixed (but as yet untested).
Here’s the full v1.33.9 Changelog:
· Feature (Auto-Billet on Downsize): UPDATE_HULL_CLASS now detects specialist departments whose hull-class pool capacity drops to zero on downsize. Affected officers are automatically moved to officersOnBillet (preserving loyalty, traits, and decorations) rather than left commanding an empty department. Their remaining crew are transferred to crewOnShoreLeave. Prevents the empty-dept LOY −5 drain and EVT092 (The Empty Deck) from firing on an already-stressful hull transition.
· Feature (StaffingAlertPanel — Billet Section): When auto-billeting occurs during a hull transition, the StaffingAlertPanel expands with an OFFICERS STOOD DOWN section. Lists each billeted officer by name, role, and per-session retainer. Provides a DISCHARGE ALL button to permanently dismiss the lot (fires DISCHARGE_BILLETED_OFFICER per officer; −8 MOR per discharge). Players who prefer to keep them on retainer simply dismiss the alert as normal.
· Fix (Crew Displacement for Zero-Pool Specialist Depts): UPDATE_HULL_CLASS previously used `newPools[dept] || officer.poolTotal` (falsy-||), which silently fell back to the old pool size when a specialist dept pool was 0 on the new hull — leaving crew counts unaffected. The auto-billet post-processing now explicitly handles `newPools[dept] === 0` with correct crew displacement to shore leave.
· Feature (Directive-Aware Crew Rotation): CREW_RECYCLE now reads the active recruitmentDirective. When specialist_lineage or press_ganged lineage is set, the rotation injects the targeted lineage proportionally into all active department lineageComps. Refresh fractions: Light 10%, Moderate 25%, Full 50% — matching the existing ‘X% refreshed’ label semantics. A Full rotation with Naval Enlisted active will push 50% of the dept composition to naval_enlisted lineage — enough to instantly recover a FRACTURED department to DOMINANT culture without the shuttle workaround.
· Feature (Rotation Lineage Preview): CrewRotationPanel and the RecruitmentHub rotation section both display a LINEAGE INJECTION preview line when a non-standard directive is active. Shows the lineage label and injection fraction so the player knows the rotation will do more than just restore gauges.
· Internal: Lineage injection in CREW_RECYCLE uses the existing module-scope previewLineageBlend() helper from v1.33.7 — no new logic needed, consistent with blendComp arithmetic in RECRUIT_CREW.
v1.33.10 quickly followed to bug fix some issues with the Diplomatic Intelligence Dashboard.
Full changelog details available in-game (dev tools in the bottom-right star icon ‘Sim’ menu).