chore: Phase 4 cleanup — dedupe RenderOptions, remove unused param, fix test numbering

1. Deduplicate RenderOptions type
   - Remove duplicate definition from liquid-render.ts
   - Import from render.ts instead (canonical location)

2. Remove unused _globalDecay parameter
   - Remove from renderNode function signature
   - Update all call sites

3. Fix test numbering gaps
   - Suite 4: Renumber 4.4→4.2, 4.5→4.3
   - Suite 7→6: Renumber 7.1→6.1, 7.2→6.2, 7.4→6.3
   - Suite 8→7: Renumber all 8.x→7.x tests
   - Suite 10→8: Renumber 10.1→8.1
   - Result: consecutive suite numbering (1-8)

4. CLI test status: All 95 tests pass (no pre-existing failures found)

Fixes #46

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-05-31 07:11:44 +00:00
parent 0a761f5289
commit 1e5f4b7c46
2 changed files with 16 additions and 24 deletions
+15 -15
View File
@@ -602,7 +602,7 @@ describe("Suite 4: Render Flow Integration", () => {
}
});
test("4.4 Empty Template", async () => {
test("4.2 Empty Template", async () => {
const { store, varStore, cleanup } = await createTempVarStore();
try {
@@ -631,7 +631,7 @@ describe("Suite 4: Render Flow Integration", () => {
}
});
test("4.5 Template with LiquidJS Syntax Error", async () => {
test("4.3 Template with LiquidJS Syntax Error", async () => {
const { store, varStore, cleanup } = await createTempVarStore();
try {
@@ -808,8 +808,8 @@ describe("Suite 5: Decay Priority Chain", () => {
});
});
describe("Suite 7: Recursive Rendering Edge Cases", () => {
test("7.1 Deep Recursion (10 Levels)", async () => {
describe("Suite 6: Recursive Rendering Edge Cases", () => {
test("6.1 Deep Recursion (10 Levels)", async () => {
const { store, varStore, cleanup } = await createTempVarStore();
try {
@@ -856,7 +856,7 @@ describe("Suite 7: Recursive Rendering Edge Cases", () => {
}
});
test("7.2 Cycle Detection with Templates", async () => {
test("6.2 Cycle Detection with Templates", async () => {
const { store, varStore, cleanup } = await createTempVarStore();
try {
@@ -893,7 +893,7 @@ describe("Suite 7: Recursive Rendering Edge Cases", () => {
}
});
test("7.4 Array of cas_ref with Template", async () => {
test("6.3 Array of cas_ref with Template", async () => {
const { store, varStore, cleanup } = await createTempVarStore();
try {
@@ -949,8 +949,8 @@ describe("Suite 7: Recursive Rendering Edge Cases", () => {
});
});
describe("Suite 8: Error Handling & Edge Cases", () => {
test("8.1 Template Missing render Variable", async () => {
describe("Suite 7: Error Handling & Edge Cases", () => {
test("7.1 Template Missing render Variable", async () => {
const { store, varStore, cleanup } = await createTempVarStore();
try {
@@ -983,7 +983,7 @@ describe("Suite 8: Error Handling & Edge Cases", () => {
}
});
test("8.2 Template Invalid Decay Value", async () => {
test("7.2 Template Invalid Decay Value", async () => {
const { store, varStore, cleanup } = await createTempVarStore();
try {
@@ -1023,7 +1023,7 @@ describe("Suite 8: Error Handling & Edge Cases", () => {
}
});
test("8.3 Template Negative Decay", async () => {
test("7.3 Template Negative Decay", async () => {
const { store, varStore, cleanup } = await createTempVarStore();
try {
@@ -1063,7 +1063,7 @@ describe("Suite 8: Error Handling & Edge Cases", () => {
}
});
test("8.4 Template Decay=0 (Invalid)", async () => {
test("7.4 Template Decay=0 (Invalid)", async () => {
const { store, varStore, cleanup } = await createTempVarStore();
try {
@@ -1103,7 +1103,7 @@ describe("Suite 8: Error Handling & Edge Cases", () => {
}
});
test("8.5 Template Decay=1 (Valid Edge)", async () => {
test("7.5 Template Decay=1 (Valid Edge)", async () => {
const { store, varStore, cleanup } = await createTempVarStore();
try {
@@ -1150,7 +1150,7 @@ describe("Suite 8: Error Handling & Edge Cases", () => {
}
});
test("8.6 Template with Unicode Content", async () => {
test("7.6 Template with Unicode Content", async () => {
const { store, varStore, cleanup } = await createTempVarStore();
try {
@@ -1183,8 +1183,8 @@ describe("Suite 8: Error Handling & Edge Cases", () => {
});
});
describe("Suite 10: Performance & Scalability", () => {
test("10.1 Wide Fan-out (100 Children)", async () => {
describe("Suite 8: Performance & Scalability", () => {
test("8.1 Wide Fan-out (100 Children)", async () => {
const { store, varStore, cleanup } = await createTempVarStore();
try {
+1 -9
View File
@@ -1,14 +1,9 @@
import { type Context, Liquid, type TagToken } from "liquidjs";
import type { RenderOptions } from "./render.js";
import { putSchema } from "./schema.js";
import type { Hash, Store } from "./types.js";
import type { VariableStore } from "./variable-store.js";
export type RenderOptions = {
resolution?: number; // (0, 1], default 1.0
decay?: number; // (0, 1], default 0.5
epsilon?: number; // >= 0, default 0.01
};
const DEFAULT_RESOLUTION = 1.0;
const DEFAULT_DECAY = 0.5;
const DEFAULT_EPSILON = 0.01;
@@ -50,7 +45,6 @@ export async function renderWithTemplate(
varStore,
hash,
resolution,
decay,
epsilon,
visited,
);
@@ -146,7 +140,6 @@ function createLiquidEngine(
varStore,
nodeHash,
childResolution,
globalDecay,
currentEpsilon,
visited,
);
@@ -167,7 +160,6 @@ async function renderNode(
varStore: VariableStore,
hash: Hash,
currentResolution: number,
_globalDecay: number,
epsilon: number,
visited: Set<Hash>,
): Promise<string> {