Files
cnx_vinyl/docs/finance/phase1-construction-rfq.md
T
grabowski 4deaa2c57c Correct errors found by review; hedge unmarked inferences
A four-agent review audited arithmetic, cross-document consistency,
epistemic honesty and style. It found substantially more than the
manual pass in the previous commit. Errors that changed conclusions,
not decimals:

Arithmetic
- production-timeline: the headline lead times did not reconcile with
  the stage table on the same page. Launch is 22-49 days (was 21-39),
  mature 11.5-22 (was 14-20), repress 6.5-11.5. Including gates,
  launch is 6-17 weeks, not 8-14.
- Consequence: at 17 weeks the launch configuration is at parity with
  EU/US plants, not ahead of them. The page now compares quote to
  quote rather than a stage sum to a quoted lead time, and says so.
- The galvanics turnaround saving is 1.5-5 weeks, not 3-5.
- scale.md Duplex capacity 300-600k/yr did not reproduce from its own
  stated basis; corrected to 175-540k. production-timeline disagreed
  with scale.md on the same fleet; both now agree.
- "300 units is under an hour of pressing" was out by an order of
  magnitude on the semi-auto line: 5-8 hours.
- project-timeline carried two totals for the same quantity. Now
  27-33 months throughout, with the Gantt's two ordering breaks fixed.
- scale.md: 300 kWp covers 28-45% of consumption, not 20-35%; roof PV
  stated as both 150-200 and 247 kWp for the same roof; parking canopy
  dimensions and PV disagreed with the RFQ.
- RFQ: fire tank stated 200 m3 where both its geometry (254 m3) and
  its own mass (250 t) say 250. Drainage now gives total sealed area
  66%, not the 46% paving figure, since that is what attenuation needs.
- Galvanics payback used only the top of the saving range: 1-5 years,
  not 1-4.

Inference marked as inference
- The 22,000 THB stamper figure is an invoice RESIDUAL. It carries
  lacquer cutting, test pressings, setup and margin, so it is an upper
  bound on the stamper component, not a measurement. Everything derived
  from it now says so, and a line-itemised invoice is the top question.
- The saving was also benchmarked against the wrong supplier: CNX buys
  from Stamper Discs, not a Thai reseller. Stated as 175-665 USD until
  that quote exists.
- The stamper-bottleneck hypothesis now names its alternatives. Jacket
  print runs would produce the same symptom and would constrain CNX
  equally, which would remove the competitive read entirely.
- Competitor capacity relabelled as nameplate times an assumed OEE,
  with the assumed shift pattern stated; all rows on one 300-day basis.
- The fixed/variable decomposition keeps the shape and drops the point
  estimates: the solve point inside the flat 1000-3000 tier is
  arbitrary and moves the fixed component by nearly half.
- "Nobody in Thailand plates" reduced to "we have found no evidence",
  with a desk check named as the action.
- Cut the USD 450-700k valuation of a competitor's presses entirely.
  It extrapolated a semi-auto quote onto a different machine, ignored
  the used market, and supported no decision.
- The collaboration payback divided capex by revenue where the same
  page uses contribution elsewhere: 5-10 years, not 1-3.

Missing caveats added
- No financing is committed or modelled anywhere in this repo;
  project-timeline previously asserted money was not a constraint.
- Leasing cannot pull the launch forward on its own, since the press
  chain governs and construction has float against it.
- The whole competitive analysis is one buyer, one plant, one
  afternoon, and the primary evidence is not archived in the repo.
- ResurRec is a competitor and may decline to buy from a new entrant.
2026-08-06 12:35:37 +07:00

12 KiB
Raw Blame History

Phase 1 Construction: Rough Pricing Request

Spec sheet for asking a contractor for a budget-level price on the phase 1 buildings and site works. Quantities come from the parametric model (docs/cnx_vinyl_parametric.FCStd) sited on the candidate Mueang Chi parcel; everything here is planning-stage, not construction documents. In Thailand this scope is typically quoted as a PEB (pre-engineered steel building) per m² plus civil works, and the sheet is structured that way.

Context to give the contractor up front: the land is not yet purchased and zoning is unverified, so this is a budget number, not a bid.

1. Main production building

Item Spec
Type Single-storey steel portal frame (PEB), no mezzanine, no crane
Footprint 60 × 25 m = 1,500 m²
Roof Monopitch, 10° pitch, roof plane 1,523 m², low eave 7.0 m, high side ~11.4 m (both above finished floor)
Roof load Carries a rooftop PV array (~425 modules, ~247 kWp): add ~20 kg/m² dead load plus wind uplift on racking; PV mounts on the purlins
Envelope Insulated sandwich panels, walls and roof, PIR core — EPS core excluded (fire and insurability), fire-rated class stated (FM-approved or B-s1,d0). Roof 100 mm PIR with light-colored top skin, walls 75 mm PIR. Taped/gasketed joints throughout — the building is air-conditioned (20–26 °C, 35–60 % RH) and must be airtight against smoke-season PM2.5. No skylights. Not bare metal sheet with blanket insulation. See §1a for where mineral-wool core is required instead
Wall quantities Masonry/precast dado 170 m perimeter × 2.5 m = 425 m² (impact, security, washdown), internally insulated so the envelope stays continuous; sandwich panel above dado ~1,140 m²
Floor 200 mm ground-bearing slab rated 30 kN/m² UDL, provision for machine plinths, power-floated finish
Finished floor level +1.2 m above surrounding ground — see §1b
Doors 2 loading doors (insulated sectional) as sealed dock positions: dock shelters/seals plus dock levelers, so the docked trailer acts as the airlock and doors never open to outside air. Personnel entrances with vestibule; fire exits per code
Interior Shell only — no internal fit-out in this price (clean room, offices etc. priced later)

On the slab spec: 30 kN/m² (3 t/m²) is the standard industrial warehouse class, not a premium — it is what the presses and pallet racking need, and stepping up from a light-duty slab adds only on the order of 100–200 THB/m². The real cost variable is the ground underneath (see soil, below). A later value-engineering option is to zone the slab — 30 kN/m² under press hall and warehouse only, lighter under offices — but for rough pricing the whole floor is specified at 30 so the number is conservative.

1a. Panel core: where PIR is not enough

PIR is specified for the general envelope because it gives the best thermal performance per millimetre (λ ≈ 0.022 W/mK, so roughly U 0.28 W/m²K walls and 0.21 W/m²K roof), which is what the conditioned interior needs. Two places it should not be used, and the contractor should price mineral-wool core panels instead:

  • Fire compartmentation. A panel's reaction-to-fire class is not a fire resistance rating. Any wall required to compartment — production hall to warehouse, and anything separating the boiler hall — needs rated construction achieving EI 60 or EI 120, which in panel form means mineral wool, not PIR.
  • Acoustics. PIR performs poorly for sound, typically Rw 25–30 dB; it is a stiff closed-cell foam and behaves as a mass-spring-mass system with coincidence dips. Presses, compressors, chillers and the boiler are all significant sources and the site is agricultural land, so a neighbour complaint is a permitting risk. Mineral-wool core reaches roughly Rw 32–40 dB.

Ask the contractor to price the general envelope in PIR and to quote mineral-wool core as a separate rate per m² for nominated compartment and acoustic walls, stating the panel thickness needed to hold the same U-value (mineral wool at λ ≈ 0.038 needs roughly 130 mm walls / 180 mm roof to match, and is heavier — it may affect purlin and frame sizing).

Open decision: which elevations are acoustically governed. That depends on the neighbour to be identified at the land survey. Until then, price the mineral-wool rate but leave the area provisional.

1b. Raised floor and site fill

The dock-height question is now decided: the whole building floor is raised rather than forming a recessed dock pit. This is a civil works item and must be included.

Item Quantity
Compacted structural fill under the building platform 1,711 m³
Fill build-up 1.0 m compacted fill + 200 mm slab = FFL +1.2 m
Reinforced concrete edge beam to retained faces 56.1 m³, ~85 m of retained edge
Battered faces Two faces battered at 1V:2H rather than retained (no edge beam)

The loading face and the car-park elevation are retained by the edge beam; the other two faces are battered. The dispatch room behind the docks runs as a buffer climate zone, separated from the conditioned warehouse by interlocked high-speed roll doors.

Access at grade. With FFL at +1.2 m the building needs its own access, now modelled and to be included:

Item Spec
Vehicle ramp 10.5 m run × 4.5 m wide at 1:10, rising 1,050 mm from yard level to FFL, sited at the far end of the building — opposite the docks, so it does not conflict with dock operations. ~22.9 m³ concrete
Personnel steps 3 flights: main entrance on the car-park elevation, plus two fire exits — one at the opposite end of the same elevation, one at the dock end. Each 1.5 m wide, 6 risers at 175 mm, 5 treads at 280 mm, 1.2 m top landing. ~2.3 m³ each

Two things deliberately not in the model, to be priced anyway: handrails to both sides of every flight and to the ramp, and door thresholds.

The ramp is 1:10, which suits forklifts and vans but is not an accessible gradient. If a step-free staff entrance is required, that is a separate 1:12 ramp with intermediate landings — flag it now if wanted.

Exit positions are provisional: they are placed for reasonable escape distances on a 60 × 25 m footprint, but final numbers and locations follow the fire strategy and the racking layout, neither of which is fixed.

2. Detached utility yard

Simple industrial enclosures beside the main building.

Building Area Height
Boiler hall 66 m² 6.0 m
Biomass fuel store 42 m² 5.0 m
Chiller room 60 m² 5.0 m
Cooling tower pad (concrete pad only) 10 m² —

The 14 m flue stack comes with the boiler — excluded here. The boiler hall envelope should be non-combustible (mineral-wool panels or masonry), not PIR.

3. Site works

Item Quantity
Perimeter wall ~444 m boundary, 2.0 m high block/precast on strip footing (~174 m³)
Main gate One gate only: piers plus bi-parting sliding leaves, 10.0 m clear opening (2 × 5 m). The previously mooted second gate is deleted
Paving — heavy duty 1,608 m² rigid reinforced concrete for laden trucks: truck apron, dock face, internal circulation road, Phase 2 link
Paving — general 2,779 m² lighter hardstanding: car park, yard and margins
Paving total 4,387 m² — see note below
Car/scooter parking Roofed canopies: 27.7 × 7.0 m (195 m², 10 cars) + 13.7 × 5.5 m (76 m², 30 scooters), steel canopy carrying ~40 kWp PV
Guard house 12 m² (4 × 3 m), insulated/AC'd, with toilet; sited at the gate, north-west side
Tank foundations Ring foundation for a 9 m dia × 4 m fire water tank (~250 m³, ~250 t full — the geometry gives 254 m³ gross; if 200 m³ usable with freeboard is intended, the foundation still carries the full 250 t) sited in the north-west corner of the plot, with the fire pump house adjacent to it; plus a 5 m dia × 3 m raw water tank. Tanks themselves are vendor-supplied bolted panels — foundations only
Fire main Ring main runs from the north-west corner to the buildings — quote the length, not just "a ring main"
Drainage & sanitation Site stormwater drainage, domestic septic/treatment for ~25 staff — see note below

On the paving quantity. This is a deliberate increase: the site is now paved continuously from the road frontage through to the Phase 2 building. At 4,387 m² it is roughly 2.5× the 1,500–2,000 m² this sheet previously carried, and it becomes one of the larger civil numbers in the package. Two things follow:

  • The two paving classes are quoted separately on purpose. Do not price the whole 4,387 m² at truck spec.
  • Roughly the last third of the general paving is the Phase 2 approach, which will be dug up again for Phase 2 piling and foundations. Option to price: compacted sub-base only now, surfaced after Phase 2 completes.

On drainage. 4,387 m² of pavement is about 46 % of the 9,567 m² plot, but the figure that matters for attenuation is the total sealed area: adding the main building (1,500 m²), utility yard (178 m²), guard house (12 m²) and parking canopies (271 m²) gives 6,348 m², or 66 % of the plot. Quote the contractor that number, not the paving one. Runoff increases materially over the agricultural baseline, and stormwater attenuation — quite possibly a detention pond — may be required for the factory permit. Ask the contractor to state what they have assumed.

4. Exclusions

State these so the number is clean: process machinery, PV system, HVAC plant, chiller/boiler/tanks themselves, sprinkler system, internal fit-out, transformer (PEA), and land works beyond normal grading.

5. Questions the contractor will ask

  • Soil conditions: unknown — the plot is agricultural land in Mueang Chi, Lamphun, likely soft former paddy. A soil boring test (~30–50k THB) comes before any real number. For rough pricing, ask them to assume soft-to-medium Lamphun valley soil and to state the foundation assumption they price (footings vs driven piles; a piled slab can add several hundred to 1,000+ THB/m²). The soil, not the slab spec, is the main price risk in the whole package — and it now applies to 4,387 m² of pavement and a 1,711 m³ fill platform as well as the building.
  • Tank proximity to the building: the fire water tank sits about 4.5 m from the main building. Full, it is ~250 t on a 9 m ring foundation. On soft ground, ask whether they price a deeper tank foundation, ground improvement, or want the tank moved further off.
  • Panel core: PIR general with mineral wool at compartment and acoustic walls (§1a) — separate rate per m², and any frame implications.
  • Sprinklers: OH2 sprinkler system, ring main, and hydrants are planned but not designed (see facility security). Ask whether they price it or use a specialist sub — quoted separately either way.
  • Racking height in the warehouse zone: undecided; drives the fire design, not the shell, but they may ask.
  • Permits: ask whether the price includes permit drawings by a licensed engineer for the building permit and Ror.Ngor. 4 factory license — rough shell prices usually don't.

6. What to ask for back

  • THB/m² rough range for the PEB shell at the insulated-panel spec above — not the bare-shed spec
  • Separate rates for heavy-duty and general paving
  • A separate rate for mineral-wool core panel
  • A lump figure for the rest of the site works
  • The foundation/geotech assumption behind all of it

That is enough to sanity-check against the ~24–42M THB Thai-sourced utilities baseline in the utilities CSV; building construction is currently an unpriced line in scale.