formulab 0.48.0 → 0.48.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -7,6 +7,16 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [0.48.1] - 2026-09-24
11
+
12
+ ### Fixed
13
+
14
+ - **`safety/fallClearance()` warned about compliant values.** OSHA 1926.502(d)(16) states each limit
15
+ in both feet and metres: "6 feet (1.8 m)" for free fall and "3.5 feet (1.07 m)" for deceleration.
16
+ The two do not convert exactly. 0.48.0 compared against the exact feet value, so a deceleration
17
+ distance of exactly 1.07 m — the standard's own metric figure and the usual absorber rating — was
18
+ reported as over the limit. A value is now within the limit if it meets either stated figure.
19
+
10
20
  ## [0.48.0] - 2026-09-24
11
21
 
12
22
  ### Changed
@@ -1 +1 @@
1
- {"version":3,"file":"fallClearance.d.ts","sourceRoot":"","sources":["../../src/safety/fallClearance.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAO1E;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,kBAAkB,GAAG,mBAAmB,CA+C5E"}
1
+ {"version":3,"file":"fallClearance.d.ts","sourceRoot":"","sources":["../../src/safety/fallClearance.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAa1E;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,kBAAkB,GAAG,mBAAmB,CA+C5E"}
@@ -1,8 +1,14 @@
1
1
  import { roundTo } from '../utils.js';
2
- /** OSHA 29 CFR 1926.502(d)(16)(iii) — a personal fall arrest system must limit free fall to 6 ft. */
3
- const MAX_FREE_FALL = 6 * 0.3048; // m — the rule is written in feet; 1.8 m is its rounded metric
4
- /** OSHA 29 CFR 1926.502(d)(16)(iv) — deceleration distance must not exceed 3.5 ft. */
5
- const MAX_DECELERATION = 3.5 * 0.3048; // m
2
+ /*
3
+ * OSHA 29 CFR 1926.502(d)(16) states each limit in both units — "6 feet (1.8 m)", "3.5 feet
4
+ * (1.07 m)" — and the two do not convert exactly (6 ft = 1.8288 m, 3.5 ft = 1.0668 m). A value
5
+ * that meets either statement complies, so the limit is the larger of the two: a 6 ft lanyard's
6
+ * free fall and a 1.07 m absorber rating are both within the rule.
7
+ */
8
+ /** OSHA 29 CFR 1926.502(d)(16)(iii) — free fall. */
9
+ const MAX_FREE_FALL = Math.max(6 * 0.3048, 1.8); // m
10
+ /** OSHA 29 CFR 1926.502(d)(16)(iv) — deceleration distance. */
11
+ const MAX_DECELERATION = Math.max(3.5 * 0.3048, 1.07); // m
6
12
  /**
7
13
  * Fall clearance for a personal fall arrest system on a fixed-length shock-absorbing lanyard.
8
14
  *
@@ -1 +1 @@
1
- {"version":3,"file":"fallClearance.js","sourceRoot":"","sources":["../../src/safety/fallClearance.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAGtC,qGAAqG;AACrG,MAAM,aAAa,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,+DAA+D;AACjG,sFAAsF;AACtF,MAAM,gBAAgB,GAAG,GAAG,GAAG,MAAM,CAAC,CAAC,IAAI;AAE3C;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,MAAM,UAAU,aAAa,CAAC,KAAyB;IACrD,MAAM,EACJ,aAAa,EAAE,CAAC,EAChB,oBAAoB,EAAE,EAAE,EACxB,cAAc,EAAE,EAAE,EAClB,WAAW,EAAE,EAAE,EACf,eAAe,EAAE,CAAC,EAClB,YAAY,EAAE,EAAE,EAChB,aAAa,EACb,cAAc,GAAG,CAAC,GACnB,GAAG,KAAK,CAAC;IAEV,IAAI,EAAE,IAAI,CAAC;QAAE,MAAM,IAAI,UAAU,CAAC,oCAAoC,CAAC,CAAC;IACxE,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,cAAc,GAAG,CAAC,IAAI,CAAC,aAAa,KAAK,SAAS,IAAI,aAAa,GAAG,CAAC,CAAC,EAAE,CAAC;QACpH,MAAM,IAAI,UAAU,CAAC,0HAA0H,CAAC,CAAC;IACnJ,CAAC;IAED,MAAM,oBAAoB,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;IACnD,MAAM,iBAAiB,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IAC/C,MAAM,iBAAiB,GAAG,iBAAiB,GAAG,EAAE,CAAC;IACjD,MAAM,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;IAEjD,gGAAgG;IAChG,MAAM,sBAAsB,GAC1B,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,GAAG,cAAc,GAAG,iBAAiB,EAAE,CAAC,CAAC,CAAC;IACtG,MAAM,UAAU,GAAG,sBAAsB,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,sBAAsB,IAAI,CAAC,CAAC;IAExF,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,IAAI,gBAAgB,GAAG,aAAa,EAAE,CAAC;QACrC,QAAQ,CAAC,IAAI,CAAC,gBAAgB,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,qFAAqF,CAAC,CAAC;IAClJ,CAAC;IACD,IAAI,EAAE,GAAG,gBAAgB,EAAE,CAAC;QAC1B,QAAQ,CAAC,IAAI,CAAC,iEAAiE,CAAC,CAAC;IACnF,CAAC;IACD,IAAI,sBAAsB,KAAK,IAAI,IAAI,sBAAsB,GAAG,CAAC,EAAE,CAAC;QAClE,QAAQ,CAAC,IAAI,CAAC,2BAA2B,IAAI,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,uDAAuD,CAAC,CAAC;IAC/I,CAAC;IAED,OAAO;QACL,iBAAiB,EAAE,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAAC;QAChD,iBAAiB,EAAE,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAAC;QAChD,oBAAoB,EAAE,OAAO,CAAC,oBAAoB,EAAE,CAAC,CAAC;QACtD,gBAAgB,EAAE,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAC;QAC9C,sBAAsB;QACtB,UAAU;QACV,QAAQ;KACT,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"fallClearance.js","sourceRoot":"","sources":["../../src/safety/fallClearance.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "formulab",
3
- "version": "0.48.0",
3
+ "version": "0.48.1",
4
4
  "description": "Manufacturing & Engineering calculation formulas library - 203 industrial calculations across 15 domains for OEE, Cpk, SPC, FMEA, Nelson Rules, metal weight, CNC machining, GD&T, battery, environmental, pipe flow, logistics, IE time study, and more",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",