Technical Manual · Ready-for-Service
RFS Readiness Workbench — Methodology & Formulas
Every input, gate definition, scoring formula, confidence model, forecast equation, and reference behind the G0–G7 commissioning gate board. All scoring is user-driven and deterministic — no random values, no back-solved constants. Logic is inline in rfs-readiness-workbench.html inside the RfsGateEngine, RfsForecastEngine, and RfsLibrary objects.
01 Purpose & engineering basis
The RFS Readiness Workbench is a gate-based commissioning audit tool for data center Ready-for-Service planning. It answers three operational questions: which commissioning gate each delivery unit currently holds, what evidence gaps and open defects are blocking the next gate, and when the project will reach RFS given the current defect and evidence load.
The methodology is user-driven: the operator configures delivery units, selects a facility archetype, ticks completed requirements, and logs defects. The engine returns a deterministic gate status, weighted readiness percentage, 7-term confidence score, and multi-component forecast for every unit — and a worst-case project RFS date. Gate definitions follow Uptime Institute commissioning level practice (L1 design through L5 IST/performance) and TIA-942 commissioning stages. Signoff matrices reference industry-standard roles (Cx Lead, Ops Lead, Customer Witness, Project Director).
02 Inputs
Three input categories — project configuration, per-gate evidence, and defect register — drive all engine outputs. Delivery units are user-defined (data halls, electrical blocks, mechanical plant, pods, campus infrastructure). The archetype selection controls gate-day multipliers in the forecast engine.
| Input category | Fields | Engine consumer | Notes |
|---|---|---|---|
| Project setup | Project name, facility type, archetype, customer name, target RFS date | RfsLibrary.archetypes, RfsForecastEngine | Archetype sets baseGateDaysMult (0.65–1.4) applied to all gate transitions. |
| Delivery units | Unit name, type (campus/building/data_hall/pod/electrical_block/mechanical_plant/support_area), ownership | RfsGateEngine.evaluateGate() | Gate readiness is calculated independently per unit. Project status = worst unit. |
| Evidence records | Requirement ID, unit ID, evidence type (test_report / certificate / permit / as_built / witness_sheet / waiver / training_record / contract / insurance_cert / risk_assessment), status (accepted / pending / rejected) | evaluateGate() completedWeight loop | Only status === 'accepted' evidence counts toward readiness score. |
| Defect register | Title, severity (critical / major / moderate / minor / observation), unit ID, gate impact list, retest required flag, status (open / assigned / fix_in_progress / ready_for_retest / closed / waived), root cause, created-at timestamp | evaluateGate() confidence formula; forecastUnit() blockerDrag / retestDrag | Only non-closed, non-waived defects count. Severity determines aging thresholds and gate blocking. |
| Customer overlay | Gate code, requirement title, blocker class (hard/soft), source class (A/B/C/D), status (open / confirmed / waived) | evaluateGate() overlayHardBlockers; forecastUnit() uncertaintyDrag | Hard-blocker overlays (source A or B, not confirmed/waived) block the gate. Source C/D unconfirmed items drive uncertaintyDrag. |
| Test packages | Test ID, unit ID, gate, witness required flag, witness status (pending / scheduled / completed), pass/fail status | forecastUnit() witnessDrag | Witness-required tests not yet passed and not witness-completed each add +1 day to witnessDrag. |
| Sign-offs | Unit ID, gate code, role, status (pending / approved / rejected) | evaluateGate() missingApprovals cap; forecastUnit() signoffDrag | Required roles per gate defined in RfsLibrary.SIGNOFF_MATRIX (G0–G7, 2–3 roles each). |
03 Calculation methodology
Four sequential calculations inside RfsGateEngine.evaluateGate(gateCode, unit) and RfsForecastEngine.forecastUnit(unit). Function names and source locations are given exactly as they appear in the inline script of rfs-readiness-workbench.html.
Gate readiness %
evaluateGate() — lines ~2542–2550. Item weights: W1 = 1–6 (soft, informational), W2 = 7–9 (significant), W3 = 10 (hard / safety-critical). Weight tiers are set per requirement in RfsLibrary.requirements[].INLINE · rfs-readiness-workbench.html
Two caps prevent a fully-evidenced but incomplete gate from showing 100%:
evaluateGate() — lines ~2568–2569. Mandatory requirements are those with mandatory: true in the requirement record. Missing approvals are sign-off roles in SIGNOFF_MATRIX[gateCode] not yet marked status === 'approved'.INLINE · rfs-readiness-workbench.html
Gate status determination
evaluateGate() — lines ~2592–2603. Priority: blocked > at_risk > ready_for_signoff > in_progress. Gate may only be 'approved' when the Cx Lead explicitly triggers sign-off in the UI. Prior-gate enforcement: G1 cannot be in_progress unless G0 is approved; sequential gate discipline is mandatory.INLINE · rfs-readiness-workbench.html
Gate confidence % (7-penalty model)
evaluateGate() — lines ~2571–2582. overduePenalty: for each open/non-waived defect where age ≥ AGING_THRESHOLDS[severity].overdue (Critical: 5d, Major: 10d, Moderate: 20d, Minor: 40d), add 3 pts. retestRequired: defects with retestRequired === true and status not 'closed'. Floor is 5% (never zero). Confidence band labels: ≥ 85% = High, 60–84% = Moderate, 40–59% = Weak, < 40% = Unstable.INLINE · rfs-readiness-workbench.html
RFS forecast engine — 7-component drag model
RfsForecastEngine.forecastUnit(unit) and forecastProject() — lines ~2646–2711. Base days represent typical gate-to-gate transition durations; archetype multipliers compress (AI fast-track 0.65×) or extend (Regulated/Sovereign 1.4×) them. variance = totalDays − baseDays (drag overhead). A unit already at G7 returns totalDays = 0, forecastDate = null, status = 'complete'.INLINE · rfs-readiness-workbench.html
Checklist overall readiness grade
RfsUI.renderChecklist() — lines ~4888–4895. The checklist uses simple count (checked / total) rather than the weighted formula used in evaluateGate(), so it gives an unweighted census of items touched. Use per-gate readinessPct from the gate board for the authoritative weighted score.INLINE · rfs-readiness-workbench.html
04 Constants & data sources
All constants live in RfsLibrary (deep-frozen object, inline in the page). Gate definitions (GATE_NAMES, GATE_BASE_DAYS, SIGNOFF_MATRIX) and severity thresholds (AGING_THRESHOLDS) are reproduced in full below.
| Gate | Name | Base days to next gate | Required sign-off roles |
|---|---|---|---|
G0 | Baseline Locked | 7 d → G1 | Project Director, Cx Manager |
G1 | Design Complete / FAT Ready | 10 d → G2 | Cx Lead, Electrical Lead, Safety Officer |
G2 | Delivery & Installation | 14 d → G3 | Cx Lead, MEP Lead |
G3 | Startup & Individual Testing | 10 d → G4 | Cx Lead, Ops Lead |
G4 | Functional Performance Tests | 14 d → G5 | Cx Lead, Ops Lead, Customer Witness |
G5 | Integrated Systems Tests (IST) | 7 d → G6 | Cx Lead, Ops Lead, Project Director |
G6 | Operational Readiness | 7 d → G7 | Ops Lead, Customer Representative, Commercial Lead |
G7 | Turnover Complete | — (RFS) | Project Director, Customer Representative, Legal/Commercial Lead |
| Defect severity | Gate blocking? | Aging warning (d) | Aging overdue (d) | Confidence penalty (pts) |
|---|---|---|---|---|
| Critical | Yes — blocks | 2 | 5 | 18 per open defect |
| Major | Yes — at-risk | 5 | 10 | 8 per open defect |
| Moderate | No (tracked only) | 10 | 20 | 3 per overdue (aging penalty) |
| Minor | No (tracked only) | 20 | 40 | 3 per overdue (aging penalty) |
| Observation | No | — | — | 0 |
| Archetype | Base gate-day multiplier | Key risk tags |
|---|---|---|
| Enterprise Owner-Operator | 1.0× | Single-point ownership, in-house skills gap |
| Retail Colocation | 1.15× | Multi-tenant complexity, SLA penalty exposure |
| Wholesale for Hyperscaler | 1.2× | Customer overlay, witness scheduling drag, LD exposure |
| Hyperscale Self-Build | 1.0× | Proprietary standards, phased delivery, supply chain |
| AI Fast-Track Retrofit | 0.65× | Compressed timeline, DLC maturity gap, parallel workstreams |
| Regulated / Sovereign | 1.4× | Extended approval cycles, security clearance, regulatory authority |
Item weight tiers: W3 = weight 10 (hard, safety-critical — arc flash study, NETA energization, EPO test, customer acceptance); W2 = weight 7–9 (significant — FAT reports, performance tests, SOPs); W1 = weight 1–6 (informational/soft — design approvals, minor ancillary checks). Evidence source classes A–D indicate primary/independent testing (A) through secondary/unverified information (D); source class feeds the overlay uncertainty drag in the forecast engine.
05 Outputs
| Output | Formula / source | Unit | Interpretation |
|---|---|---|---|
| Per-gate readiness % | completedWeight / totalWeight × 100 | % | Weighted fraction of gate requirements evidenced. Capped at 95% if mandatory items missing; 99% if sign-offs pending. |
| Gate status | Status determination logic (blocked → at_risk → ready_for_signoff → in_progress) | enum | Immediate operational signal. Blocked = cannot advance. At-risk = progress possible but defects open. |
| Gate confidence % | 100 − 7 penalty terms, floor 5% | % | Probability-proxy for gate passing without further defects surfacing. ≥ 85% = High; 60–84% = Moderate; 40–59% = Weak; < 40% = Unstable. |
| Per-unit current gate | Highest approved gate + 1 | G0–G7 | Gate the unit is currently targeting. Project gate = lowest unit current gate (lagging unit drives overall). |
| Open defect summary | Filtered counts by severity and status | count | Critical and Major open counts displayed on gate board; drive hero KPIs for immediate triage. |
| Per-unit forecast date | today + totalDays | ISO date | Expected next-gate-approval date accounting for all current drag. Variance = totalDays − baseDays shows drag overhead. |
| Project RFS date | max(unit forecast dates) | ISO date | Worst-case unit drives the project RFS date. Displayed in hero strip. |
| Checklist grade | A+ / A / B / C / D / F against count-based overall% | grade | High-level readiness signal; complementary to weighted gate scores. |
| Defect aging alerts | Age vs. AGING_THRESHOLDS[severity] | days | Warning at 2–20 d depending on severity; overdue at 5–40 d. Each overdue defect adds 3 pts to confidence penalty. |
06 Worked example
Single unit "Data Hall 1", gate G3 (Startup & Individual Testing). Gate has 9 baseline requirements with a total weight of 78. Scenario: 5 requirements evidenced (W = 10+10+10+10+8 = 48), 1 open Critical defect, 1 open Major defect, 1 overdue Moderate defect (age 22 d), 1 pending sign-off role, 2 unconfirmed overlays (source B, hard). Trace every number against the inline scoring.
- readinessPct raw:
completedWeight = 48, totalWeight = 78 → 48/78 × 100 =61.5% → round = 62% - Missing mandatory evidence cap: G3 has 8 mandatory requirements; 5 have accepted evidence →
missingMandatoryEvidence = 3 > 0 → readinessPct = min(62, 95) =62% (cap does not bite here; would bite only above 95%) - Missing approvals cap: G3 requires Cx Lead + Ops Lead; 1 pending →
missingApprovals = 1 > 0 → readinessPct = min(62, 99) =62% - Gate status: openCritical = 1 > 0 → blocked (even with overlayHardBlockers = 2 also triggering blocked)
- Confidence:
= 100 − (1×18) − (1×8) − (3×7) − (1×6) − (0×5) − overduePenalty − overlayPenalty
overduePenalty: Moderate defect age 22 d > threshold 20 d →1 defect × 3 = 3
overlayPenalty: 2 unconfirmed overlays × 2 =4
= 100 − 18 − 8 − 21 − 6 − 0 − 3 − 4 =40% → Weak confidence band - Forecast — G3 → G4: baseDays = 10 × 1.0 (Enterprise archetype) = 10 d
blockerDrag = 1×3 + 1×1 = 4 d
evidenceDrag: G4 has 7 mandatory reqs; assume 4 missing accepted evidence = 4 d
signoffDrag: 1 missing sign-off × 2 = 2 d
retestDrag: 1 defect with retestRequired × 2 = 2 d
witnessDrag: 1 witness-required test not yet completed × 1 = 1 d
uncertaintyDrag: 0 source-C/D overlays (both are B) → ceil(0 × 0.5) = 0 d
totalDays = 10 + 4 + 4 + 2 + 2 + 1 + 0 = 23 days from today
rfs-readiness-workbench.html locally, create a project with one unit and the above evidence/defect state, observe the gate board — G3 should show blocked, readiness chip at 62%, confidence ring at 40% (Weak), and forecast at today + 23 d. The page runs the same arithmetic client-side with no server round-trip, so a screenshot of the rendered values is the ground truth.07 References & standards
- Uptime Institute (2021) — Data Center Commissioning and Verification: L1 design review through L5 integrated systems test methodology; stage-gate progression discipline; Cx team qualification standards.
- TIA-942-B (2017) — Telecommunications Infrastructure Standard for Data Centers: commissioning plan requirements, documentation package, tiered reliability basis for gate test scope.
- NETA MTS-2019 — Maintenance Testing Specifications for Electrical Power Equipment and Systems: acceptance testing procedures referenced for G3 energization requirements (MV switchgear, transformers, UPS, batteries).
- IEEE 1584 (2018) — Guide for Performing Arc Flash Hazard Calculations: basis for G1 arc flash study requirement (req_g1_001).
- NFPA 72 (2022) — National Fire Alarm and Signaling Code: fire detection commissioning requirements (G3 req_g3_008, G4 req_g4_005 EPO interlock).
- NFPA 2001 / NFPA 855 — Clean Agent Suppression and ESS: fire suppression design approval (G1 req_g1_007) and discharge test (G4 req_g4_004) basis.
- ASHRAE TC 9.9 (2021) — Data Center Power Equipment Thermal Guidelines: cooling performance test criteria for G3–G5 mechanical requirements.
- ISO 55001 (2014) — Asset Management: spare parts strategy, maintenance contract completeness, and CMMS operational readiness (G6 requirements).
- Project stage-gate practice — Stage-Gate® process (R.G. Cooper): phase-gate decision points with defined exit criteria, mandatory sign-off, and blocker classification (hard/soft) logic.
- Engine source —
RfsLibrary,RfsGateEngine,RfsForecastEngine(inline JS inrfs-readiness-workbench.html). No external engine file — all logic is self-contained in the page.
08 Assumptions & limitations
Gate base-day durations (GATE_BASE_DAYS) are representative industry benchmarks for a well-resourced medium-sized data center build; they are not contractually binding schedules. The archetype multipliers are calibrated estimates — actual schedule must be confirmed against the project programme. The forecast is additive and optimistic in that drag terms do not account for parallel resolution of multiple issues; resolving a Critical defect simultaneously with a sign-off chase could reduce totalDays less than the formula implies. Evidence acceptance is user-asserted: the workbench trusts the operator's judgment on whether an uploaded document genuinely satisfies the requirement criteria — it does not parse documents. Defect closure is likewise operator-driven. This workbench is an engineering planning and audit aid; final RFS determination requires a qualified commissioning manager sign-off and, where applicable, customer and authority acceptance under the contract.