mirror of
https://github.com/NousResearch/hermes-agent.git
synced 2026-07-20 15:33:54 +00:00
tests/test_desktop_mac_entitlements.py asserts about apps/desktop/electron/*.plist — the same CI blind spot as the other ported tests: the change classifier routes apps/ changes to the frontend lane, so a PR touching only the plists would skip the Python suite and the regression would go green on the PR and red on main. Ported to tests-js/desktop-mac-entitlements.test.ts so it runs in the correct lane. All three tests carry over: the inherit plist grants audio-input (regression #37718), every device.* entitlement on the main app is also inherited, and both files remain well-formed. Parsing uses the `plist` package (pinned to ^3.1.0, the version already present in the workspace lockfile, so no new transitive packages) plus `@types/plist` — Node's stand-in for plistlib. Verified: tests-js `npm run check` passes (typecheck + 9/9 tests), and a mutation run (removing audio-input from the inherit plist) turns both regression tests red.
20 lines
465 B
JSON
20 lines
465 B
JSON
{
|
|
"name": "@hermes/root-tests",
|
|
"private": true,
|
|
"type": "module",
|
|
"scripts": {
|
|
"typecheck": "tsc --noEmit -p tsconfig.json",
|
|
"test": "vitest run",
|
|
"check": "npm run typecheck && npm run test",
|
|
"lint": "eslint .",
|
|
"lint:fix": "eslint . --fix",
|
|
"fix": "npm run lint:fix"
|
|
},
|
|
"devDependencies": {
|
|
"eslint": "^9.39.4",
|
|
"@types/plist": "^3.0.5",
|
|
"plist": "^3.1.0",
|
|
"typescript": "^6.0.3",
|
|
"vitest": "^4.1.9"
|
|
}
|
|
}
|