Skip to content

Commit e89dba8

Browse files
authored
fix(docs): restore validation baseline (#883)
Refs #882
1 parent 4c65f4f commit e89dba8

10 files changed

Lines changed: 26 additions & 32 deletions

docs/coverage/index.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -11,21 +11,21 @@ Use the manual **Coverage Report** GitHub Actions workflow to regenerate this pa
1111
| Metric | Covered | Total | % |
1212
| --- | --- | --- | --- |
1313
| Statements | 44821 | 49278 | 90.96% |
14-
| Branches | 9461 | 11036 | 85.73% |
14+
| Branches | 9462 | 11037 | 85.73% |
1515
| Functions | 2344 | 2502 | 93.69% |
1616
| Lines | 44821 | 49278 | 90.96% |
1717

1818
## Coverage by Package
1919
| Package | Statements | Branches | Functions | Lines |
2020
| --- | --- | --- | --- | --- |
21-
| @idle-engine/content-compiler | 1696 / 1913 (88.66%) | 291 / 371 (78.44%) | 102 / 106 (96.23%) | 1696 / 1913 (88.66%) |
21+
| @idle-engine/content-compiler | 1696 / 1913 (88.66%) | 289 / 369 (78.32%) | 102 / 106 (96.23%) | 1696 / 1913 (88.66%) |
2222
| @idle-engine/content-sample | 17 / 21 (80.95%) | 2 / 3 (66.67%) | 0 / 0 (0.00%) | 17 / 21 (80.95%) |
23-
| @idle-engine/content-schema | 8846 / 9915 (89.22%) | 1276 / 1494 (85.41%) | 313 / 343 (91.25%) | 8846 / 9915 (89.22%) |
23+
| @idle-engine/content-schema | 8846 / 9915 (89.22%) | 1277 / 1495 (85.42%) | 313 / 343 (91.25%) | 8846 / 9915 (89.22%) |
2424
| @idle-engine/content-validation-cli | 2045 / 2200 (92.95%) | 480 / 545 (88.07%) | 94 / 103 (91.26%) | 2045 / 2200 (92.95%) |
2525
| @idle-engine/controls | 228 / 230 (99.13%) | 67 / 69 (97.10%) | 14 / 14 (100.00%) | 228 / 230 (99.13%) |
26-
| @idle-engine/core | 24786 / 27368 (90.57%) | 5473 / 6488 (84.36%) | 1440 / 1539 (93.57%) | 24786 / 27368 (90.57%) |
26+
| @idle-engine/core | 24786 / 27368 (90.57%) | 5474 / 6489 (84.36%) | 1440 / 1539 (93.57%) | 24786 / 27368 (90.57%) |
2727
| @idle-engine/renderer-contract | 516 / 523 (98.66%) | 134 / 138 (97.10%) | 27 / 27 (100.00%) | 516 / 523 (98.66%) |
2828
| @idle-engine/renderer-debug | 870 / 876 (99.32%) | 255 / 266 (95.86%) | 49 / 49 (100.00%) | 870 / 876 (99.32%) |
29-
| @idle-engine/renderer-webgpu | 1943 / 1965 (98.88%) | 524 / 534 (98.13%) | 97 / 98 (98.98%) | 1943 / 1965 (98.88%) |
29+
| @idle-engine/renderer-webgpu | 1943 / 1965 (98.88%) | 525 / 535 (98.13%) | 97 / 98 (98.98%) | 1943 / 1965 (98.88%) |
3030
| @idle-engine/shell-desktop | 3858 / 4251 (90.76%) | 957 / 1126 (84.99%) | 208 / 223 (93.27%) | 3858 / 4251 (90.76%) |
3131
| idle-engine-monorepo | 16 / 16 (100.00%) | 2 / 2 (100.00%) | 0 / 0 (0.00%) | 16 / 16 (100.00%) |

docs/issue-157-design.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ This design adds a fast, release-gating schema compatibility check for `@idle-en
7979
- Build a `FeatureGateMap` where every module in `FEATURE_GATES` is treated as “in use”.
8080
- Assert `resolveFeatureViolations(RUNTIME_VERSION, allEnabledMap)` returns `[]`.
8181
- This directly enforces that `FEATURE_GATES[].introducedIn` never points to a future runtime release.
82-
2. **Schema validates a compat pack under current runtime**
82+
1. **Schema validates a compat pack under current runtime**
8383
- Construct a minimal pack object that includes at least one entry in each gated module array:
8484
- `automations`, `entities`, `transforms`, `runtimeEvents`, `prestigeLayers`
8585
- Ensure all cross references are self-contained (resources referenced by generators/transforms exist; prestige layers include the required `${layerId}-prestige-count` resource).

docs/issue-775-design.md

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ This design document proposes documenting the exact mathematical formulas used t
2020
## 2. Context & Problem Statement
2121
- **Background**: The engine uses a flexible system for defining costs via `costCurve` (which supports various mathematical functions) and `costMultiplier`.
2222
- **Problem**: The exact formulas are not documented. Content creators resort to trial-and-error or reverse-engineering to understand how costs scale with level, leading to unexpected values and inefficient balancing workflows. The issue reporter specifically noted confusion around the `exponential` curve and how `offset` applies.
23-
- **Forces**:
23+
- **Forces**:
2424
- Accuracy: The documentation must strictly reflect the runtime implementation.
2525
- Clarity: Formulas should be expressed in standard mathematical notation where possible, alongside JSON examples.
2626

@@ -36,9 +36,9 @@ This design document proposes documenting the exact mathematical formulas used t
3636

3737
## 4. Stakeholders, Agents & Impacted Surfaces
3838
- **Primary Stakeholders**: Content Creators / Game Designers.
39-
- **Agent Roles**:
39+
- **Agent Roles**:
4040
- **Documentation Agent**: Responsible for updating the markdown files.
41-
- **Affected Packages/Services**:
41+
- **Affected Packages/Services**:
4242
- `docs/` (documentation only).
4343
- **Compatibility Considerations**: None (doc change only).
4444

@@ -62,15 +62,15 @@ Where `evaluateNumericFormula` behaves as follows:
6262
We will add a new section "Cost Calculation Formulas" to `docs/content-dsl-usage-guidelines.md` (or `docs/content-quick-reference.md` as requested, but "Usage Guidelines" seems more appropriate for deep dives).
6363

6464
The section will detail:
65-
1. **Generator Cost Formula**: `FinalCost = BaseCostFromCurve * CostMultiplier * GlobalMultipliers`
66-
2. **Upgrade Cost Formula**: `FinalCost = BaseCostFromCurve * CostMultiplier * RepeatableAdjustment` (no global multipliers; RepeatableAdjustment comes from `repeatable.costCurve` for repeatable upgrades, defaults to 1 otherwise)
67-
3. **Curve Formulas**:
68-
* **Exponential**: `Cost(level) = base * growth^level + offset`
69-
* *Note: Explicitly clarify that `offset` is added to the result, not the level.*
70-
* **Linear**: `Cost(level) = base + slope * level`
71-
* **Constant**: `Cost(level) = value`
72-
* **Polynomial**: `Cost(level) = sum(coefficient_i * level^i)`
73-
4. **Examples**: JSON snippets + calculated values for levels 0, 1, 10.
65+
1. **Generator Cost Formula**: `FinalCost = BaseCostFromCurve * CostMultiplier * GlobalMultipliers`
66+
2. **Upgrade Cost Formula**: `FinalCost = BaseCostFromCurve * CostMultiplier * RepeatableAdjustment` (no global multipliers; RepeatableAdjustment comes from `repeatable.costCurve` for repeatable upgrades, defaults to 1 otherwise)
67+
3. **Curve Formulas**:
68+
- **Exponential**: `Cost(level) = base * growth^level + offset`
69+
- *Note: Explicitly clarify that `offset` is added to the result, not the level.*
70+
- **Linear**: `Cost(level) = base + slope * level`
71+
- **Constant**: `Cost(level) = value`
72+
- **Polynomial**: `Cost(level) = sum(coefficient_i * level^i)`
73+
4. **Examples**: JSON snippets + calculated values for levels 0, 1, 10.
7474

7575
### 6.2 Detailed Design
7676
No code changes.

docs/issue-809-design.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -204,4 +204,3 @@ The test suite (`packages/renderer-webgpu/src/webgpu-renderer.test.ts`) currentl
204204
| Date | Author | Change Summary |
205205
|------------|--------|----------------|
206206
| 2026-01-21 | Codex (AI) | Initial draft for Issue 809 |
207-

docs/issue-810-design.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -201,4 +201,3 @@ Add a renderer bundling step to `@idle-engine/shell-desktop`’s build:
201201
| Date | Author | Change Summary |
202202
|------------|-----------------|----------------|
203203
| 2026-01-24 | Ralph (AI agent) | Initial draft for issue-810 |
204-

docs/issue-811-design.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -223,4 +223,3 @@ This keeps cleanup local and explicit without adding a general-purpose resource
223223
| Date | Author | Change Summary |
224224
|------------|--------|----------------|
225225
| 2026-01-21 | Codex (AI) | Initial draft |
226-

docs/issue-814-design.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -221,4 +221,3 @@ sidebar_position: 99
221221
| Date | Author | Change Summary |
222222
|------------|--------|----------------|
223223
| 2026-01-24 | Codex (AI) | Initial draft for Issue 814 |
224-

docs/issue-821-design.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -235,4 +235,3 @@ Example filtered definition (subset of generators):
235235
| Date | Author | Change Summary |
236236
|------------|--------|----------------|
237237
| 2026-01-25 | Ralph (AI agent) | Initial draft for Issue 821 |
238-

docs/issue-846-design.md

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ sidebar_position: 99
9494
### 7.1 Issue Map
9595
| Issue Title | Scope Summary | Proposed Assignee/Agent | Dependencies | Acceptance Criteria |
9696
|-------------|---------------|-------------------------|--------------|---------------------|
97-
| `feat(renderer-webgpu): centralize texture usage for external copies` | Add a helper that applies required usage flags for `copyExternalImageToTexture` destinations; update atlas texture creation and usage enum fallbacks accordingly. | Renderer Implementation Agent | Doc approval | Atlas texture is created with `COPY_DST | RENDER_ATTACHMENT | TEXTURE_BINDING`; no scattered one-off bitmask tweaks; Node fallback constants include `RENDER_ATTACHMENT`. |
97+
| `feat(renderer-webgpu): centralize texture usage for external copies` | Add a helper that applies required usage flags for `copyExternalImageToTexture` destinations; update atlas texture creation and usage enum fallbacks accordingly. | Renderer Implementation Agent | Doc approval | Atlas texture is created with `COPY_DST`, `RENDER_ATTACHMENT`, and `TEXTURE_BINDING`; no scattered one-off bitmask tweaks; Node fallback constants include `RENDER_ATTACHMENT`. |
9898
| `test(renderer-webgpu): assert atlas texture usage flags` | Add regression tests verifying `createTexture` is called with the expected usage mask when `loadAssets()` uploads an atlas via `copyExternalImageToTexture`. | Test Agent | Implementation | New tests fail if `RENDER_ATTACHMENT` is omitted; tests run deterministically in Node with the existing WebGPU stubs. |
9999
| `docs(renderer-webgpu): document copyExternalImageToTexture backend variance` | Add a short rationale and reference links (GPUWeb issue, MDN/spec notes) explaining why `RENDER_ATTACHMENT` is included for external-copy destination textures. | Docs Agent | Implementation | Documentation exists either as code comments near the helper or as a package doc entry; references are linked. |
100100

@@ -176,4 +176,3 @@ sidebar_position: 99
176176
| Date | Author | Change Summary |
177177
|------------|--------|----------------|
178178
| 2026-01-26 | Codex (AI) | Initial draft |
179-

docs/issue-850-design.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,7 @@ This feature changes the **input event workflow** so that pointer/UI interaction
121121
| sim.running.input.enqueued | None (postMessage has no acknowledgment). | sim.running.input.idle | No-op. |
122122
| sim.running.input.dropped | None (event already dropped). | sim.running.input.idle | No-op. |
123123
| sim.running.input.rejected | None (event already rejected). | sim.running.input.idle | No-op. |
124-
| sim.running.input.* | `webContents.send(frame|simStatus)` throws (renderer not ready/crashed). | sim.running.input.* | Log error; continue sim tick loop; renderer recovery is via reload. |
124+
| sim.running.input.* | `webContents.send` throws for `frame` or `simStatus` (renderer not ready/crashed). | sim.running.input.* | Log error; continue sim tick loop; renderer recovery is via reload. |
125125
| sim.running.input.* | Worker becomes unresponsive (no `frame`/`ready`/`error` messages arrive). | sim.running.input.* | No automatic transition; renderer appears stalled; operator recovery is explicit restart (reload). |
126126
| sim.running.input.* | Worker exits with code `0`. | sim.stopped | Log stop; send `simStatus` (stopped); terminate worker; ignore further input until restart. |
127127
| sim.running.input.* | Worker exits non-zero OR emits `error`/`messageerror` OR sends `kind:'error'`. | sim.crashed | Log crash; send `simStatus` (crashed); terminate worker; ignore further input until restart. |
@@ -401,14 +401,14 @@ The `INPUT_EVENT` command is only allowed in the player priority lane so that UI
401401
3. **Parallel work**: Yes; after the IPC surface exists, renderer capture (T3) and main mapping (T4) can proceed in parallel; sim-runtime wiring (T5) can proceed after core types land (T1).
402402

403403
### Ordering Gates
404-
7. **Must be done first**: Define shared types + `INPUT_EVENT` command type in `@idle-engine/core` (T1).
405-
8. **Must be done last**: Integration checks + coverage/docs regeneration (T6).
406-
9. **Circular dependencies**: None in this breakdown; shared input-event types live in `@idle-engine/core` to avoid core↔shell cycles.
404+
1. **Must be done first**: Define shared types + `INPUT_EVENT` command type in `@idle-engine/core` (T1).
405+
2. **Must be done last**: Integration checks + coverage/docs regeneration (T6).
406+
3. **Circular dependencies**: None in this breakdown; shared input-event types live in `@idle-engine/core` to avoid core↔shell cycles.
407407

408408
### Infrastructure Gates
409-
10. **Build/config changes**: None expected beyond updating TypeScript sources and checked-in `dist/` outputs via existing `pnpm build` scripts.
410-
11. **New dependencies**: None.
411-
12. **Env vars/secrets**: None required; optional dev-only `IDLE_ENGINE_ENABLE_UNSAFE_WEBGPU=1` remains unchanged.
409+
1. **Build/config changes**: None expected beyond updating TypeScript sources and checked-in `dist/` outputs via existing `pnpm build` scripts.
410+
2. **New dependencies**: None.
411+
3. **Env vars/secrets**: None required; optional dev-only `IDLE_ENGINE_ENABLE_UNSAFE_WEBGPU=1` remains unchanged.
412412

413413
### Task Dependency Graph
414414
```

0 commit comments

Comments
 (0)