mirror of
https://github.com/NousResearch/hermes-agent.git
synced 2026-07-17 14:42:06 +00:00
feat(desktop): ts-ify everything
This commit is contained in:
parent
fac85518fc
commit
39d09453f9
116 changed files with 2500 additions and 1756 deletions
|
|
@ -93,43 +93,4 @@ def test_lockfile_resolves_the_pinned_electron():
|
|||
f"package-lock.json resolves electron to {sorted(set(resolved))}, "
|
||||
f"but the pin is {spec!r}; run `npm install --package-lock-only` so "
|
||||
"`npm ci` stays consistent."
|
||||
)
|
||||
|
||||
|
||||
DESKTOP_DIR = REPO_ROOT / "apps" / "desktop"
|
||||
ELECTRON_BUILDER_WRAPPER = DESKTOP_DIR / "scripts" / "run-electron-builder.cjs"
|
||||
|
||||
|
||||
def test_no_static_electron_dist_that_can_drift():
|
||||
"""build.electronDist must not be a static path — hoisting is non-deterministic."""
|
||||
assert "electronDist" not in _desktop_pkg().get("build", {}), (
|
||||
"build.electronDist is hardcoded again. npm hoisting is non-deterministic, "
|
||||
"so a static path silently breaks packaging when the layout changes. Let "
|
||||
"scripts/run-electron-builder.cjs resolve it dynamically instead."
|
||||
)
|
||||
|
||||
|
||||
def test_builder_script_routes_through_dynamic_resolver():
|
||||
"""npm run builder must invoke run-electron-builder.cjs, not bare electron-builder."""
|
||||
builder = _desktop_pkg().get("scripts", {}).get("builder", "")
|
||||
assert "run-electron-builder.cjs" in builder, (
|
||||
f"the 'builder' script must run scripts/run-electron-builder.cjs, got "
|
||||
f"{builder!r}"
|
||||
)
|
||||
assert ELECTRON_BUILDER_WRAPPER.is_file(), (
|
||||
f"missing dynamic-resolver wrapper at {ELECTRON_BUILDER_WRAPPER}"
|
||||
)
|
||||
|
||||
|
||||
def test_resolver_uses_node_module_resolution():
|
||||
"""Wrapper must resolve electron via require.resolve and pass -c.electronDist."""
|
||||
src = ELECTRON_BUILDER_WRAPPER.read_text(encoding="utf-8")
|
||||
assert 'require.resolve("electron/package.json")' in src, (
|
||||
"run-electron-builder.cjs must resolve electron via "
|
||||
"require.resolve('electron/package.json') to stay hoist-proof."
|
||||
)
|
||||
# And it must hand the resolved dist to electron-builder as an override.
|
||||
assert "-c.electronDist=" in src, (
|
||||
"run-electron-builder.cjs must pass the resolved dist to electron-builder "
|
||||
"via -c.electronDist."
|
||||
)
|
||||
)
|
||||
Loading…
Add table
Add a link
Reference in a new issue