From cafb3a815bc10a6c47f281eca91af5778e26e252 Mon Sep 17 00:00:00 2001 From: Altay Date: Sun, 25 Oct 2026 21:26:19 +0300 Subject: [PATCH] docs: cut mirrored and stale doc lines --- AGENTS.md | 8 ++------ CONTRIBUTING.md | 6 +----- README.md | 15 --------------- skills/rokit/SKILL.md | 15 ++++----------- 4 files changed, 7 insertions(+), 37 deletions(-) diff --git a/AGENTS.md b/AGENTS.md index 95b460b..fca4325 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -39,10 +39,9 @@ for humans and agents. error in a deterministic object. - `process.cwd()` is the consumer app root; `.rokit/` there holds its env file, artifacts, and transient device state. -- Native code owns the developer installer, screenshots, device-info, and - package ZIPs. `roku-deploy` stays only for `rokudeploy.json` file-rule +- Native code owns the developer installer, screenshots, and package ZIPs. + `roku-deploy` stays for `device-info` and for `rokudeploy.json` file-rule compatibility in `package` until native glob parity replaces it. -- ECP drives launch, keypresses, active-app, and raw runtime state. - Media-player and SceneGraph helpers stay generic: state, text, attributes, focus waits, raw trees. Content, playback, and screen contracts stay in app repos. @@ -78,9 +77,6 @@ pnpm exec vp run hooks:install pnpm exec vp run verify ``` -Fast loops: `check`, `typecheck`, `smoke`, and `test`, each as -`pnpm exec vp run `. - Live checks need a developer-enabled Roku. The CLI reads `.rokit/.env`; `live:probe` also reads `.env` and `.env.local`. See `.env.example`. diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 6e02b3c..7dd382a 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -19,8 +19,6 @@ pnpm exec vp run smoke pnpm exec vp run verify ``` -CI runs the same command on pull requests and on `main`. - ## Live Checks Live checks need a developer-enabled Roku on the same network. Screenshots and @@ -37,6 +35,4 @@ file. The CLI reads `.rokit/.env`; `live:probe` also reads `.env` and ## Pull Requests -- Keep changes focused. -- Add or update tests when command behavior, parsing, output, or public exports change. -- Keep app-specific journeys out of `rokit`; they belong in the consuming app repo. +Add or update tests when command behavior, parsing, output, or public exports change. diff --git a/README.md b/README.md index 00c3801..fd00b5d 100644 --- a/README.md +++ b/README.md @@ -68,8 +68,6 @@ printf '{"command":"press","keys":["Back"]}' | pnpm exec rokit --input-json - completed observation and reject late success. - Bounded navigation: `press Down --until-node videoPlayerScreen --until-state visible --max 8`. - `--dry-run` validates a mutating command without touching the device or files. -- ECP paths reject query strings, fragments, traversal, backslashes, control - characters, and percent-encoded segments. - Output paths must stay inside the current directory. - Screenshots append a timestamp to the filename; read the written path from the result. Captures that fail decoding or exceed the limits in @@ -94,19 +92,6 @@ await pressKey(context, "Info"); await assertSceneGraphNode(context, "videoPlayerScreen", { state: "visible" }); ``` -## Boundaries - -`rokit` owns generic Roku mechanics: - -- package, install, launch, deeplink params, and remote keypresses -- raw ECP queries and parsed media-player state -- BrightScript console capture and allowlisted debug-server commands -- SceneGraph state queries and named-node assertions -- timestamped screenshots, snapshots, and proof artifacts - -Consumer app repos own product behavior: specific routes, playback of real -content, app-specific UI nodes, and review artifacts. - ## Docs - [Contributing](./CONTRIBUTING.md) diff --git a/skills/rokit/SKILL.md b/skills/rokit/SKILL.md index fa56807..8bac0f5 100644 --- a/skills/rokit/SKILL.md +++ b/skills/rokit/SKILL.md @@ -12,13 +12,11 @@ description: Drive Roku devices with rokit when testing, sideloading, or debuggi disagree, trust `describe`. 2. Dry-run mutating commands such as `package`, `install`, `launch`, `press`, `screenshot`, or `proof` before touching a device. -3. Use structured output: the non-TTY JSON default or `--json`. Trim it with - `--fields`. +3. Trim JSON output with `--fields`. 4. Read artifact paths from the returned JSON. Screenshots append a timestamp to the requested filename. 5. For state, use `rokit snapshot`; for review artifacts, `rokit proof - `. In the rokit repo, `pnpm exec vp run live:probe` runs the full - generic package, install, launch, input, and proof probe. + `. 6. After launch, use `wait-ready` when the app can race ECP or SceneGraph readiness. Navigate with `press --until-node`, never arbitrary sleeps. 7. For crashes, start `rokit console` before you reproduce. See @@ -42,10 +40,5 @@ printf '{"command":"press","keys":["Back"]}' | rokit --input-json - ## Boundaries -- Device IPs, developer passwords, screenshots, packages, and proof bundles stay - local or ignored. -- `rokit` asserts generic Roku and SceneGraph state. Consumer repos own product - routes, fixtures, account state, screen names, playback expectations, and - review narratives. -- ECP query paths are plain paths: no query strings, fragments, traversal, - backslashes, or encoded segments. +Device IPs, developer passwords, screenshots, packages, and proof bundles stay +local or ignored.