eve-fit-engine 0.1.1 → 0.1.3
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/README.md +25 -8
- package/dist/index.cjs +565 -226
- package/dist/index.js +565 -226
- package/dist/node.cjs +565 -226
- package/dist/node.js +565 -226
- package/package.json +4 -1
package/README.md
CHANGED
|
@@ -19,9 +19,16 @@ projected effects, and structure fuel/service stats.
|
|
|
19
19
|
- **Two entries.** Base (`.`): inject your own `FittingDataset`. Node (`./node`):
|
|
20
20
|
batteries-included — bundles a snapshot of the EVE SDE (under CCP's licence, by
|
|
21
21
|
mere aggregation) + an fs loader, so it works out of the box on the server.
|
|
22
|
-
- **Validated against Pyfa
|
|
23
|
-
|
|
24
|
-
|
|
22
|
+
- **Validated against Pyfa two ways.**
|
|
23
|
+
- **Fixture suite** — `npm run test:pyfa`: 662 hand-curated assertions against
|
|
24
|
+
Pyfa screenshots, All-V skills, zero tolerance overrides. This is the
|
|
25
|
+
release gate and the engine's correctness ground truth.
|
|
26
|
+
- **Differential harness** — `npm run diff`: generates 4 fits for *every*
|
|
27
|
+
published ship and compares every stat against a headless **pyfa-org/Pyfa**
|
|
28
|
+
oracle. 1662/1676 fits (99.2%) match exactly; the residual is a documented
|
|
29
|
+
set of pyfa float/modelling/per-ship quirks (see
|
|
30
|
+
[`test/diff/known-diffs.mjs`](test/diff/known-diffs.mjs)). Exits 0 on no
|
|
31
|
+
*unexpected* diffs; `--strict` re-lists the accepted set as failures.
|
|
25
32
|
|
|
26
33
|
## Install
|
|
27
34
|
|
|
@@ -83,11 +90,21 @@ bundle and injects it, so it never depends on the (snapshot) bundled data.
|
|
|
83
90
|
## Provenance / how parity is maintained
|
|
84
91
|
|
|
85
92
|
The engine mirrors Pyfa's `eos` calculation model: effect handlers keyed by EVE
|
|
86
|
-
dogma effect IDs,
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
93
|
+
dogma effect IDs, stacking-penalty pools, a late-runtime resistance-adaptation
|
|
94
|
+
pass, a discrete capacitor simulation (faithful port of `eos/capSim.py` —
|
|
95
|
+
integer cycle times, turret-volley vs staggered drains, cap-booster injection),
|
|
96
|
+
and spool-up handling. When CCP ships a new SDE, data-driven `modifierInfo`
|
|
97
|
+
effects work automatically; new hardcoded mechanics in Pyfa's `effects.py` are
|
|
98
|
+
tracked and ported, then re-checked against **both** the fixture suite
|
|
99
|
+
(`npm run test:pyfa`) and the per-ship differential harness (`npm run diff`)
|
|
100
|
+
before release. See [`MAINTENANCE.md`](./MAINTENANCE.md) for the update flows.
|
|
101
|
+
|
|
102
|
+
## Contributing
|
|
103
|
+
|
|
104
|
+
See [`CONTRIBUTING.md`](./CONTRIBUTING.md) — the step-by-step guide to setup,
|
|
105
|
+
every internal command, the two validation suites (`npm run test:pyfa` +
|
|
106
|
+
`npm run diff`), how to add fixtures / port effects, the pyfa-pin recalibration
|
|
107
|
+
flow, and the project's hard rules.
|
|
91
108
|
|
|
92
109
|
## Licence
|
|
93
110
|
|