mirror of
https://github.com/stablyai/orca.git
synced 2026-09-29 16:02:50 +00:00
skills: reconcile integrated guards, name the emulator_no_active recovery
This commit is contained in:
@@ -284,26 +284,14 @@ describe('bundled skill guide generator', () => {
|
||||
}
|
||||
})
|
||||
|
||||
// Why: a guide that restates the resolver must restate all of it — a partial copy is what
|
||||
// sends an agent to bare `orca` and the GNOME screen reader on Linux.
|
||||
it('keeps the executable-resolution ladder whole in the guides that restate it', async () => {
|
||||
for (const name of ['orca-cli', 'computer-use']) {
|
||||
// Why: `skills get` already ran on a resolved executable, so guide bodies name that
|
||||
// executable instead of carrying another copy of the ladder the stubs own.
|
||||
it('points every guide at the executable that ran skills get', async () => {
|
||||
for (const name of CANONICAL_GUIDE_NAMES) {
|
||||
const source = await readFile(path.join(projectDir, 'skill-guides', `${name}.md`), 'utf8')
|
||||
|
||||
expect(source, name).toContain('ORCA_CLI_COMMAND')
|
||||
expect(source, name).toContain('orca-dev')
|
||||
expect(source, name).toContain('orca-ide')
|
||||
}
|
||||
})
|
||||
|
||||
// Why: `skills get` already ran on a resolved executable, so the emulator guides name that
|
||||
// executable instead of carrying a fourth copy of the ladder the stubs own.
|
||||
it('points the emulator guides at the stub-resolved executable', async () => {
|
||||
for (const name of ['orca-emulator', 'orca-emulator-android']) {
|
||||
const source = await readFile(path.join(projectDir, 'skill-guides', `${name}.md`), 'utf8')
|
||||
|
||||
expect(source, name).toContain(
|
||||
'`ORCA` is a placeholder for the executable you used to run `skills get`'
|
||||
expect(source.replace(/\s+/gu, ' '), name).toContain(
|
||||
'the executable you used to run `skills get`'
|
||||
)
|
||||
expect(source, name).not.toContain('ORCA_CLI_COMMAND')
|
||||
}
|
||||
|
||||
@@ -18,10 +18,7 @@ const MAX_GUIDE_LINES = 300
|
||||
* ratchet ceiling, not a target: shrink them freely and delete the entry once the guide fits.
|
||||
* A name may leave this set. A name may never join it — split the guide into `references/` instead.
|
||||
*/
|
||||
const OVER_BUDGET = new Map([
|
||||
['orca-cli', 424],
|
||||
['orca-per-workspace-env', 794]
|
||||
])
|
||||
const OVER_BUDGET = new Map([['orca-per-workspace-env', 390]])
|
||||
|
||||
/** Matches `wc -l`: a trailing newline ends the last line rather than starting a new one. */
|
||||
function lineCount(contents) {
|
||||
|
||||
@@ -77,7 +77,8 @@ device.
|
||||
|
||||
`attach` makes one device active per worktree, and opening the emulator pane does the same,
|
||||
so unqualified commands target it. Pass a selector only to override that or to reach a
|
||||
second device.
|
||||
second device. An unqualified command with no active session fails with
|
||||
`emulator_no_active`; run `attach` or open the pane, then retry.
|
||||
|
||||
- `--device "iPhone 16 Pro"` or `--device <udid>`, from `list` or `devices`.
|
||||
- `--emulator <id>` is an alternative spelling of `--device`: the bridge resolves both
|
||||
|
||||
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user