NORTH POLE EXPRESS 24 -- INDEPENDENT REV B FUNCTIONAL / FLIGHT SCREEN
Reviewer: printed_design_review; 2026-11-02

DISPOSITION
The reviewed revision B is a digital prototype of the requested removable-fin
system. No digital functional blocker was found in the checks below. This is
not a zero-play joint, a validated print process, or a flight-ready rocket.
The user reported unsatisfactory physical fit of A; nominal CAD clearance is
not evidence that B solves the physical fit without the supplied fit trials.

B replaces the external bonded sockets with permanent sealed internal tracks,
rigid T-shoes, and a nonrotating keeper retained by two purchased M3 screws and
heat-set inserts. The user confirmed PETG and a 0.6 mm nozzle. Actual filament
brand, density, process compensation, insert hardware, and print results are
still unmeasured. A's mass, balance, and fit evidence is stale for B.

TRACEABILITY
Coordinates: millimeters; z=0 at aft body plane; +z noseward; tip z=610.
The keeper extends to z=-2.4. Fastener heads and motor hardware extend farther
aft; the 610 mm decorative airframe dimension excludes those projections.

Specification: ROCKET_SPEC.md, revision B
SHA256 0b27701ea7343cc5bb0b729e1ea7236107ee301d504d70777413bd0e9a2368f1
Manifest: exports/B/manifest.json
SHA256 c07188a844d91a26c2fa72e70587e8220850330d21a0f39b662c2fa05266f0cd
Main 3MF: exports/B/North_Pole_Express_24_ALL_PARTS_B.3mf
SHA256 977a1e07b70d69385f498c9def8cc6cf4cae7e5f9f77473ab693d71de0f20d6e
Source hashes from the reviewed manifest:
  design/build_b.py
  2bc75786b38ae474cdb78f6bf83b13f7e573ba3ea570ee6b9165756b073e9294
  design/fins_b.py
  bcede21c4c298815c3deddfdc94bae280aad9dc7394abc6915e563736ff5810a
  design/fins.py
  1795db7d002ffc57fad153435f01302fadf7a7b963fc792b76298421de3d338b
  design/removable_mount_b.py
  6dfcd6b89229e2396985c779e2d8be267b85b86e7dedae9beb5c90ace77a3673

METHOD
Independent STL readback, volume/centroid recomputation, selected mesh Boolean
intersections, source/interface inspection, and lower-body transverse-section
connectivity checks using trimesh/shapely in .venv-cadquery. Separate digital
QA owns the complete insertion/withdrawal sweeps and export/package checks.
This report contains a conventional static aerodynamic screen, not OpenRocket,
a trajectory/guide-exit simulation, a load analysis, or physical testing.

Localized update: NP-03 key backing was changed from tapered ends to a
full-length backing over z220..260. The corrected NP-03 STL was reread and
its mass/centroid checked; all other geometry/check conclusions are retained.
The earlier report is preserved at:
simulation/archive/flight_review_B_before_coupler_end_correction.txt

FUNCTIONAL FINDINGS
FB01 -- Pass, sampled digital gas-boundary geometry only.
With fins absent, lower-body sections at z=3,15,70,106.5,115,134 show the track
cavity connected to the exterior but separated from the central gas cavity.
The permanent inner backs and side walls provide that separation; the sliding
fit is not used as a seal. Sections at z=135.6 and 136.4 show solid track roofs.
Above the cassette, z=137.2, the central cavity resumes normally. Source roof
limits are 135.5..136.7, nominal 1.2 mm thickness. All four tracks are rotational
copies. Watertight digital solids do not prove printed gas tightness, thermal
resistance, or adequate strength under deployment pressure.

FB02 -- Pass, selected nominal ring/track geometry only.
NP-01/NP-10 and NP-01/NP-11 Boolean intersection volumes are zero. Both rings
are notched around the fixed cassettes; the aft ring additionally clears the
insert bosses. Nominal cassette-to-notch allowance is0.15 mm. Bond the rings
and their stationary mating interfaces permanently and inspect for gaps; do
not glue the sliding shoes. Neither the notches nor fitting adjustments may
cut through the cassette's gas-side walls. Ring ligament/load strength and
the completed motor-mount seal remain physical checks.

FB03 -- Pass for nominal keeper access; hardware checks Not started.
Keeper NP-14 is fixed against rotation and pulls straight aft after both screws
are removed. Its nominal opening is32.4 mm ID with local screw lands extending
inward to radius 15.8. The assumed paper tube radius is13.0. A nominal hook
envelope at45 degrees, radial x11.8..15.0 and tangential width 3.8, has no
intersection with the keeper. This is an assumed envelope, not a measurement
of the purchased hook. Verify the complete removal path around actual tube,
hook, motor retention, and screw heads without forcing or bending the keeper.

FB04 -- Pass for nominal blind-bore geometry; installation Not started.
Screw axes are radius 18.7 at135/315 degrees, clear of the cardinal tracks,
hook 45 degrees, and guide/leader 225 degrees. The insert pilot is4.2 mm diameter
and 5 mm deep, while the fixed boss extends to z14. Sections at z6 and 13.5 are
solid above both pilot axes. M3x6 under-head screws through the 2.4 mm keeper
project 3.6 mm: nominal 1.4 mm clearance to the pilot floor before considering
actual insert/thread details. Assumed inserts are 4.6 mm OD x4 mm long.
Verify heat-set fit, thread engagement, clamp seating, and screw bottoming.
Do not substitute longer screws or add washers without checking the stack.
Maximum modeled 8 mm screw heads can extend 0.2 mm beyond body radius locally.
Check hand access and an appropriate fastener anti-loosening arrangement.
Neither insert pullout strength nor keeper bending has been established.

FB05 -- Physical fit/rocking Not started; no zero-play claim.
The T-foot is7.2 mm wide in a nominal 7.7 mm pocket, with 0.25 mm running
clearance per face. Two bearing regions at z15..40 and 105..130 are separated
by a relieved waist. The neck is3 mm in a3.5 mm mouth. Axial travel is nominal
0.5 mm between the keeper stops and forward roof. The keeper prevents axial
withdrawal; it does not clamp away radial/tangential shoe clearance.

For scale only, a0.25 mm side clearance over a3.6 mm head half-width is of
order 0.069 radians (~4 degrees). This is not a solved maximum rotation, but
shows why several degrees of geometric rocking cannot be dismissed. Actual
printed errors may consume or enlarge the clearance. The0.15/0.25/0.35 mm
per-face coupons and a full-length LOCKED fin trial must govern selection.
Check free insertion, withdrawal, cant/rocking, axial play, retention, and
repeatability after several changes. A short sliding coupon alone is not a
qualified fin joint. If unacceptable play remains, revise the fit/locking
mechanism before treating the assembly as suitable for flight.

FB06 -- Nominal passage/access retained; physical recovery test Not started.
The forward leader hole is moved to225 degrees, radius 16.8, between tracks.
Install and protect the leader before final access is restricted. The local
coupler backing improves the old 0.4 mm key web to nominal 1.2 mm for the
confirmed 0.6 mm nozzle, but projects inward to radius 19.1 at one azimuth.
The corrected backing spans the full z220..260 length, maintaining the web
at both ends. Its local end transitions are now square rather than tapered;
include those transitions in the recovery-gear snag/edge inspection without
removing the required backing thickness.
Thus a centered circular passage is locally limited to38.2 mm diameter; the
opposing span in that direction is approximately 39.0 mm, versus nominal 39.8
elsewhere. Test the actual packed recovery gear through this local restriction.
Keep the nose separation joint unglued and free sliding. No new recovery,
thermal, anchor, or deployment qualification is implied by these modifications.

FB07 -- Interface compatibility is host-specific.
The shoe section and documented datums can be reused. Body curvature, cassette
length, fin planform, motor-ring clearances, structural loads, and loaded
balance must be evaluated for each host. Matching shoe dimensions do not make
arbitrary fin sets aerodynamically interchangeable. Display fillers are not
flight fins. Confirm the installed fin set and keeper before flight assessment.

PRINTED MASS -- INDEPENDENT COMPUTED ESTIMATE
All 14 main exported solids were reread at assumed homogeneous 1.25 g/cm3,
with the subsequently corrected NP-03 reread as noted above:
  Total 210.7932 g; CG x=-0.3179, y=-0.2022, z=199.6711 mm.
This agrees with the manifest to less than 0.001 g/0.001 mm. Compared with A,
printed mass increases 18.0280 g and printed CG moves 13.3481 mm aft.

Part(s)           Estimated g        CG z, mm
NP-01                61.732            108.629
NP-02                49.365            360.026
NP-03                 9.054            240.000
NP-04                19.069            508.551
NP-05                 3.371            467.600
NP-06..09            58.149 total       57.806 each
NP-10                 2.359              9.500
NP-11                 2.607            106.500
NP-12                 1.403             40.000
NP-13                 1.403            320.000
NP-14                 2.280             -1.179

Printed estimate excludes supports, purge, and brims, which do not fly. Actual
PETG density, toolpaths, infill/wall realization, inserts, fasteners, adhesives,
recovery gear, motor, and optional ballast require measured values. In
particular, a confirmed 0.6 mm nozzle does not itself validate every thin wall.

ILLUSTRATIVE FINISHED MASS CASES -- NOT SELECTED/MEASURED HARDWARE
Item                            Light / Middle / Heavier g   Assumed z mm
Paper tube                         5 / 6 / 8                      52
Motor hook/thrust-stop hardware     3 / 3 / 4                      45
Adhesive                           6 / 8 /12                     200
Parachute                         10 /12 /18                     400
Cord/leader/heat protection         5 / 6 / 8                     330
Finish                             2 / 3 / 5                     280
Keeper screws and inserts          3 / 5 / 8                       0
Total additions                   34 /43 /63

Motor representation: E12-4 published mass 61.2 g, with explicitly assumed
CG z40.5, the midpoint of a nominal 97 mm casing beginning at z=-8. Actual
chosen motor/lot/position/CG and recovery packing must replace these values.

Case       Dry g    Loaded g   Loaded CG z   Margin at CP 145.541 / CP 149
Light      244.79    305.99       171.16          0.569 / 0.492 cal
Middle     253.79    314.99       172.18          0.592 / 0.515 cal
Heavier    273.79    334.99       175.54          0.667 / 0.590 cal
No acceptance criterion is granted by these figures. Additional forward
recovery mass explains the small forward shift in the heavier case; adding
mass indiscriminately does not improve balance.

CONVENTIONAL STATIC CP SCREEN -- APPROXIMATION ONLY
B's changed visible fin root/planform was used, rather than reusing A's CP.
Crop the original outline at radius 26.4 and rescale to visible root 22.55,
tip 72.5: visible planform area 4271.208 mm2 per fin. A conventional equivalent
uses semispan 49.95, root chord 125, area-matched tip chord 46.0193, leading-edge
sweep 81, and root leading edge z135. The actual shape remains curved.

Using midline=hypot(s,sweep+(ct-cr)/2):
  CNa_f=(1+R/(s+R))*16*(s/D)^2 /
        (1+sqrt(1+(2*midline/(cr+ct))^2)) =11.4534
  x_CP_f=sweep*(cr+2*ct)/(3*(cr+ct))
         +(cr+ct-cr*ct/(cr+ct))/6
  z_CP_f=135-x_CP_f=77.8374 mm.
Angle-averaging the actual nose's squared outer radius and integrating its
displaced external volume gives z_CP_n=480+V/A_base=533.2598 mm, CNa_n~2.
Combined equivalent CP=(2*z_CP_n+CNa_f*z_CP_f)/(2+CNa_f)=145.5411 mm.
All static margins use 45 mm reference diameter and (CG_z-CP_z)/45.

This is a small-angle/subsonic equivalent with thin flat fins. Spiral-ribbon
flow, fluting, relief, keeper geometry, finite-angle effects, compliance,
fin play, and interference are not resolved. CP 149 and CP 155 below are
sensitivity assumptions, NOT guaranteed bounds on actual aerodynamics.

OPTIONAL BALANCE SENSITIVITY -- NOT A BALLAST PRESCRIPTION
For the middle assumed case, added mass at z485 to reach an ILLUSTRATIVE
1.25-cal margin would be:
  CP 145.541 -> target CG 201.791 -> added 32.94 g -> loaded 347.93 g
  CP 149.000 -> target CG 205.250 -> added 37.24 g -> loaded 352.23 g
  CP 155.000 -> target CG 211.250 -> added 44.96 g -> loaded 359.95 g
These supersede A's 20-30 g illustration. Added mass includes the whole M4
bolt/nut/washer assembly. Actual washer OD/material/stack and tool access
determine what fits the 18 mm OD /25 mm envelope; do not assume ordinary M4
washers provide these amounts. No fixed ballast quantity is authorized here.
Measure and select/secure the complete balance hardware BEFORE bonding the
nose anchor. Balance correction also increases launch and recovery loads.

MOTOR / FLIGHT CONCLUSION
E12 and delay remain provisional. Manufacturer E12-4 mass is61.2 g; its 482 g
maximum lift figure does not establish suitability for this model. Historical
NAR E12 data gives approximately 11.17 N average thrust. The middle sensitivity
cases above have average thrust/weight only about 3.27,3.23,3.16 respectively.
These are observations, not automatic pass/fail thresholds or trajectories.
Actual early thrust, guide travel/exit speed, wind, flight stability, recovery
loads, and deployment timing must be evaluated with measured configuration.

Physical fit, gas sealing, print/adhesive/insert strength, resistance to heat,
fastener retention, locked-fin play, loaded CG, launch guidance, and deployment
remain Not started/Not assessed. No flight-ready or flight-balanced claim is
supported. This does not prevent delivery of B as the requested removable-fin
digital prototype with fit coupons and its stated limitations.

REFERENCES
https://estesrockets.com/products/e12-4-engines
https://www.nar.org/SandT/pdf/Estes/E12.pdf
https://openrocket.info/documentation.html
https://www.nasa.gov/wp-content/uploads/2016/02/sl_video_instruction_book.pdf
