TAP version 13 # Subtest: channel registry requires dispatch at interface 1 and switches a list ok 1 - channel registry requires dispatch at interface 1 and switches a list --- duration_ms: 1.255032 type: 'test' ... # Subtest: channel shipped modules load and preserve every supported operation and bus refusal ok 2 - channel shipped modules load and preserve every supported operation and bus refusal --- duration_ms: 2.804618 type: 'test' ... # Subtest: channel snapshot is a frozen matched pair and a captured array survives reload ok 3 - channel snapshot is a frozen matched pair and a captured array survives reload --- duration_ms: 4.163001 type: 'test' ... # Subtest: channel guards refuse bad names, missing paths, exports and versions while retaining last good ok 4 - channel guards refuse bad names, missing paths, exports and versions while retaining last good --- duration_ms: 3.559755 type: 'test' ... # Subtest: channel guards refuse symlinked module, index and kind directories ok 5 - channel guards refuse symlinked module, index and kind directories --- duration_ms: 2.649428 type: 'test' ... # Subtest: channel caller re-reads settings and keeps off switches independent by module name ok 6 - channel caller re-reads settings and keeps off switches independent by module name --- duration_ms: 1.86561 type: 'test' ... # Subtest: channel caller malformed settings refuse without a chat operation and no unrelated kind loads ok 7 - channel caller malformed settings refuse without a chat operation and no unrelated kind loads --- duration_ms: 0.553009 type: 'test' ... # Subtest: channel caller uses last good after loader refusal and fails closed on first load ok 8 - channel caller uses last good after loader refusal and fails closed on first load --- duration_ms: 0.753171 type: 'test' ... # Subtest: channel dispatch holds no selection lock while a slow send is awaiting ok 9 - channel dispatch holds no selection lock while a slow send is awaiting --- duration_ms: 0.63183 type: 'test' ... # Subtest: channel last realpath check refuses an index swapped after component checks ok 10 - channel last realpath check refuses an index swapped after component checks --- duration_ms: 3.292656 type: 'test' ... # Subtest: channel caller refuses invalid core construction ok 11 - channel caller refuses invalid core construction --- duration_ms: 0.192852 type: 'test' ... # Subtest: channel caller invokes the selected loaded module instead of bypassing dispatch ok 12 - channel caller invokes the selected loaded module instead of bypassing dispatch --- duration_ms: 2.4109 type: 'test' ... # Subtest: channel caller keeps the selected module operation filter in front of the core transport ok 13 - channel caller keeps the selected module operation filter in front of the core transport --- duration_ms: 0.296323 type: 'test' ... # Subtest: REQ-LIMIT-2 daily-quota exports interface version 2 with mayLaunch, mustStop and report ok 14 - REQ-LIMIT-2 daily-quota exports interface version 2 with mayLaunch, mustStop and report --- duration_ms: 1.604743 type: 'test' ... # Subtest: REQ-LIMIT-2 the count sums every kind of the account's known records since the later of the day start and since ok 15 - REQ-LIMIT-2 the count sums every kind of the account's known records since the later of the day start and since --- duration_ms: 18.301118 type: 'test' ... # Subtest: REQ-LIMIT-2 a launch with no account (pi) is covered by no daily quota ok 16 - REQ-LIMIT-2 a launch with no account (pi) is covered by no daily quota --- duration_ms: 0.67675 type: 'test' ... # Subtest: REQ-LIMIT-4 an unknown turn adds nothing and is counted apart ok 17 - REQ-LIMIT-4 an unknown turn adds nothing and is counted apart --- duration_ms: 0.68869 type: 'test' ... # Subtest: REQ-LIMIT-2 the day turns at the reset in its zone, not in UTC, and before it the day is yesterday's ok 18 - REQ-LIMIT-2 the day turns at the reset in its zone, not in UTC, and before it the day is yesterday's --- duration_ms: 0.910567 type: 'test' ... # Subtest: REQ-LIMIT-2 the spring DST change makes the day after a 00:00 reset 23 hours long ok 19 - REQ-LIMIT-2 the spring DST change makes the day after a 00:00 reset 23 hours long --- duration_ms: 0.655694 type: 'test' ... # Subtest: REQ-LIMIT-2 the fall DST change makes the day after a 00:00 reset 25 hours long ok 20 - REQ-LIMIT-2 the fall DST change makes the day after a 00:00 reset 25 hours long --- duration_ms: 0.494632 type: 'test' ... # Subtest: REQ-LIMIT-2 a reset the clocks skip starts the day at the first instant after the gap ok 21 - REQ-LIMIT-2 a reset the clocks skip starts the day at the first instant after the gap --- duration_ms: 2.195628 type: 'test' ... # Subtest: REQ-LIMIT-2 a reset the clocks repeat starts one day, at the first one ok 22 - REQ-LIMIT-2 a reset the clocks repeat starts one day, at the first one --- duration_ms: 0.909074 type: 'test' ... # Subtest: REQ-LIMIT-2 a launch is refused at the quota, a turn that reaches it stops, and the next day allows again ok 23 - REQ-LIMIT-2 a launch is refused at the quota, a turn that reaches it stops, and the next day allows again --- duration_ms: 1.793159 type: 'test' ... # Subtest: REQ-LIMIT-2 counts past the safe integer range come back as digit strings ok 24 - REQ-LIMIT-2 counts past the safe integer range come back as digit strings --- duration_ms: 0.560099 type: 'test' ... # Subtest: REQ-LIMIT-4 bad leaves, records or times throw a code, and the check reads nothing but its arguments ok 25 - REQ-LIMIT-4 bad leaves, records or times throw a code, and the check reads nothing but its arguments --- duration_ms: 3.066376 type: 'test' ... # Subtest: REQ-LIMIT-2 no daily quotas: every launch is allowed and the report is empty ok 26 - REQ-LIMIT-2 no daily quotas: every launch is allowed and the report is empty --- duration_ms: 0.26005 type: 'test' ... # Subtest: row 307 pi answers what row 270 read: plain ok 27 - row 307 pi answers what row 270 read: plain --- duration_ms: 3.128746 type: 'test' ... # Subtest: row 307 pi answers what row 270 read: budget ok 28 - row 307 pi answers what row 270 read: budget --- duration_ms: 1.055314 type: 'test' ... # Subtest: row 307 pi answers what row 270 read: cap ok 29 - row 307 pi answers what row 270 read: cap --- duration_ms: 0.646932 type: 'test' ... # Subtest: row 307 pi answers what row 270 read: shrank ok 30 - row 307 pi answers what row 270 read: shrank --- duration_ms: 0.514604 type: 'test' ... # Subtest: row 307 pi answers what row 270 read: header ok 31 - row 307 pi answers what row 270 read: header --- duration_ms: 0.71648 type: 'test' ... # Subtest: row 307 pi's first collection over Claude history answers harness-unsupported without a scan, and a later one scans ok 32 - row 307 pi's first collection over Claude history answers harness-unsupported without a scan, and a later one scans --- duration_ms: 1.146063 type: 'test' ... # Subtest: row 307 claude-code reads nothing and answers harness-unsupported with no version ok 33 - row 307 claude-code reads nothing and answers harness-unsupported with no version --- duration_ms: 0.242405 type: 'test' ... # Subtest: row 307 a harness module without compactions doesn't load: missing-export ok 34 - row 307 a harness module without compactions doesn't load: missing-export --- duration_ms: 3.973295 type: 'test' ... # Subtest: row 65 both harness modules load through the loader with every export the kind names ok 35 - row 65 both harness modules load through the loader with every export the kind names --- duration_ms: 10.826134 type: 'test' ... # Subtest: row 65 each module answers for its own harness: adapter, levels, account, web, turn end and session files ok 36 - row 65 each module answers for its own harness: adapter, levels, account, web, turn end and session files --- duration_ms: 0.901435 type: 'test' ... # Subtest: row 65 claude-code preflight: a missing credential, then a missing or relative binary, each refuse with their code ok 37 - row 65 claude-code preflight: a missing credential, then a missing or relative binary, each refuse with their code --- duration_ms: 4.184201 type: 'test' ... # Subtest: row 65 claude-code version asks MOSAIC_CLAUDE_BIN when set, else claude on PATH, else null ok 38 - row 65 claude-code version asks MOSAIC_CLAUDE_BIN when set, else claude on PATH, else null --- duration_ms: 4.810847 type: 'test' ... # Subtest: row 65 pi preflight passes with the repository's pi, and its version is the package pin ok 39 - row 65 pi preflight passes with the repository's pi, and its version is the package pin --- duration_ms: 1.138555 type: 'test' ... # Subtest: row 65 env passes the thinking level to both adapters, and claude-code's bundle writes its hook and MCP files ok 40 - row 65 env passes the thinking level to both adapters, and claude-code's bundle writes its hook and MCP files --- duration_ms: 1.575693 type: 'test' ... # Subtest: row 65 a route's thinking reaches pi as --thinking and claude as --effort, through each module's env and adapter ok 41 - row 65 a route's thinking reaches pi as --thinking and claude as --effort, through each module's env and adapter --- duration_ms: 19.982183 type: 'test' ... # Subtest: row 65 no core source outside packages/plugins names a harness, apart from the listed exceptions ok 42 - row 65 no core source outside packages/plugins names a harness, apart from the listed exceptions --- duration_ms: 35.700253 type: 'test' ... # Subtest: row 65 the grep's pattern catches a quoted name and a regex alternation, and not a word in prose ok 43 - row 65 the grep's pattern catches a quoted name and a regex alternation, and not a word in prose --- duration_ms: 0.194718 type: 'test' ... # Subtest: REQ-PLUG-1 REQ-LIMIT-4 the registry: usage-source at interface version 1, limit-check at 2 (row 125), each a list ok 44 - REQ-PLUG-1 REQ-LIMIT-4 the registry: usage-source at interface version 1, limit-check at 2 (row 125), each a list --- duration_ms: 1.459893 type: 'test' ... # Subtest: REQ-PLUG-1 checkPlugins accepts one key per kind, each a list of names, empty included ok 45 - REQ-PLUG-1 checkPlugins accepts one key per kind, each a list of names, empty included --- duration_ms: 0.318081 type: 'test' ... # Subtest: REQ-PLUG-1 checkPlugins refuses bad shapes, unknown kinds, bad names and duplicates ok 46 - REQ-PLUG-1 checkPlugins refuses bad shapes, unknown kinds, bad names and duplicates --- duration_ms: 4.006863 type: 'test' ... # Subtest: REQ-PLUG-1 a kind that switches on one module takes one name, not a list ok 47 - REQ-PLUG-1 a kind that switches on one module takes one name, not a list --- duration_ms: 0.240242 type: 'test' ... # Subtest: REQ-PLUG-1 checkPlugins reports through the caller's fail callback ok 48 - REQ-PLUG-1 checkPlugins reports through the caller's fail callback --- duration_ms: 0.227037 type: 'test' ... # Subtest: REQ-PLUG-1 fixture modules of each kind switch on from a test organization file, no core file changed ok 49 - REQ-PLUG-1 fixture modules of each kind switch on from a test organization file, no core file changed --- duration_ms: 10.556155 type: 'test' ... # Subtest: REQ-PLUG-1 a name not matching ^[a-z][a-z0-9-]*$ refuses and keeps the old setting ok 50 - REQ-PLUG-1 a name not matching ^[a-z][a-z0-9-]*$ refuses and keeps the old setting --- duration_ms: 4.644716 type: 'test' ... # Subtest: REQ-PLUG-1 a missing module directory or index.mjs refuses and keeps the old setting ok 51 - REQ-PLUG-1 a missing module directory or index.mjs refuses and keeps the old setting --- duration_ms: 4.413168 type: 'test' ... # Subtest: REQ-PLUG-1 a symlinked module directory or index.mjs refuses and keeps the old setting ok 52 - REQ-PLUG-1 a symlinked module directory or index.mjs refuses and keeps the old setting --- duration_ms: 2.976821 type: 'test' ... # Subtest: REQ-PLUG-1 a symlinked kind directory refuses and keeps the old setting ok 53 - REQ-PLUG-1 a symlinked kind directory refuses and keeps the old setting --- duration_ms: 2.66049 type: 'test' ... # Subtest: REQ-PLUG-1 a symlinked packages/plugins refuses (run with --preserve-symlinks so the path keeps it) ok 54 - REQ-PLUG-1 a symlinked packages/plugins refuses (run with --preserve-symlinks so the path keeps it) --- duration_ms: 31.929167 type: 'test' ... # Subtest: REQ-PLUG-1 index.mjs swapped for a symlink after the lstat checks refuses at the realpath check ok 55 - REQ-PLUG-1 index.mjs swapped for a symlink after the lstat checks refuses at the realpath check --- duration_ms: 3.775138 type: 'test' ... # Subtest: REQ-PLUG-1 a path that can't be read refuses as unreadable, is logged and keeps the old setting ok 56 - REQ-PLUG-1 a path that can't be read refuses as unreadable, is logged and keeps the old setting --- duration_ms: 3.568356 type: 'test' ... # Subtest: REQ-PLUG-1 a path that becomes unreadable after the lstat checks refuses at either realpath ok 57 - REQ-PLUG-1 a path that becomes unreadable after the lstat checks refuses at either realpath --- duration_ms: 3.240777 type: 'test' ... # Subtest: REQ-PLUG-1 a module that fails to load refuses and keeps the old setting ok 58 - REQ-PLUG-1 a module that fails to load refuses and keeps the old setting --- duration_ms: 3.317002 type: 'test' ... # Subtest: REQ-PLUG-1 a missing export refuses and keeps the old setting ok 59 - REQ-PLUG-1 a missing export refuses and keeps the old setting --- duration_ms: 5.632466 type: 'test' ... # Subtest: REQ-PLUG-1 a different interface version refuses and keeps the old setting ok 60 - REQ-PLUG-1 a different interface version refuses and keeps the old setting --- duration_ms: 5.597735 type: 'test' ... # Subtest: REQ-PLUG-1 REQ-LIMIT-3 a version 1 limit check refuses after the bump to 2, and the old setting stays ok 61 - REQ-PLUG-1 REQ-LIMIT-3 a version 1 limit check refuses after the bump to 2, and the old setting stays --- duration_ms: 4.383909 type: 'test' ... # Subtest: REQ-PLUG-1 a kind refused on its first load has nothing switched on, and the log names kind and name ok 62 - REQ-PLUG-1 a kind refused on its first load has nothing switched on, and the log names kind and name --- duration_ms: 3.685614 type: 'test' ... # Subtest: REQ-PLUG-1 the setting's shape: unknown kinds refuse alone, a bad whole setting keeps everything ok 63 - REQ-PLUG-1 the setting's shape: unknown kinds refuse alone, a bad whole setting keeps everything --- duration_ms: 5.345608 type: 'test' ... # Subtest: REQ-PLUG-1 loads run one at a time, so the last requested setting wins ok 64 - REQ-PLUG-1 loads run one at a time, so the last requested setting wins --- duration_ms: 105.419451 type: 'test' ... # Subtest: REQ-PLUG-1 the loader needs a log callback ok 65 - REQ-PLUG-1 the loader needs a log callback --- duration_ms: 1.585267 type: 'test' ... # Subtest: C2-10c webui permits exactly the three added room verbs and preserves core refusals ok 66 - C2-10c webui permits exactly the three added room verbs and preserves core refusals --- duration_ms: 5.236914 type: 'test' ... # Subtest: REQ-PLUG-2 the real tree's searxng-url module switches on as the search-source and answers ok 67 - REQ-PLUG-2 the real tree's searxng-url module switches on as the search-source and answers --- duration_ms: 3.225057 type: 'test' ... # Subtest: REQ-PLUG-2 a SearXNG that refuses JSON (403) is search-down, a bad settings url throws ok 68 - REQ-PLUG-2 a SearXNG that refuses JSON (403) is search-down, a bad settings url throws --- duration_ms: 1.278205 type: 'test' ... # Subtest: REQ-PLUG-2 search-source takes one name, not a list ok 69 - REQ-PLUG-2 search-source takes one name, not a list --- duration_ms: 0.269767 type: 'test' ... # Subtest: REQ-PLUG-2 searxng-bundled queries the fixed loopback address and ignores web.searxng ok 70 - REQ-PLUG-2 searxng-bundled queries the fixed loopback address and ignores web.searxng --- duration_ms: 1.229975 type: 'test' ... # Subtest: REQ-PLUG-2 harness-builtin switches on, serves no broker search, and refuses if called ok 71 - REQ-PLUG-2 harness-builtin switches on, serves no broker search, and refuses if called --- duration_ms: 0.882877 type: 'test' ... # Subtest: the searxng modules end the request when the broker's AbortSignal fires ok 72 - the searxng modules end the request when the broker's AbortSignal fires --- duration_ms: 41.188565 type: 'test' ... # Subtest: hasModule: true for a shipped module, false for a missing one, an unknown kind or a bad name ok 73 - hasModule: true for a shipped module, false for a missing one, an unknown kind or a bad name --- duration_ms: 0.618514 type: 'test' ... # Subtest: REQ-LIMIT-3 token-limit exports interface version 2 with mayLaunch, mustStop and report ok 74 - REQ-LIMIT-3 token-limit exports interface version 2 with mayLaunch, mustStop and report --- duration_ms: 4.517556 type: 'test' ... # Subtest: REQ-LIMIT-3 each subject kind refuses at its limit and allows under it ok 75 - REQ-LIMIT-3 each subject kind refuses at its limit and allows under it --- duration_ms: 1.445175 type: 'test' ... # Subtest: REQ-LIMIT-3 a limit covers only its own subject's records and launches ok 76 - REQ-LIMIT-3 a limit covers only its own subject's records and launches --- duration_ms: 0.361027 type: 'test' ... # Subtest: REQ-LIMIT-4 only known records count; an unknown turn adds nothing and is counted apart ok 77 - REQ-LIMIT-4 only known records count; an unknown turn adds nothing and is counted apart --- duration_ms: 0.288366 type: 'test' ... # Subtest: REQ-LIMIT-3 a reset moves since: records before it no longer count ok 78 - REQ-LIMIT-3 a reset moves since: records before it no longer count --- duration_ms: 0.203004 type: 'test' ... # Subtest: REQ-LIMIT-3 limit 0 refuses with no records; the first limit hit in file order is named ok 79 - REQ-LIMIT-3 limit 0 refuses with no records; the first limit hit in file order is named --- duration_ms: 0.160925 type: 'test' ... # Subtest: REQ-LIMIT-3 a key limit is not enforced while every record's account is null (decision 150 Q1) ok 80 - REQ-LIMIT-3 a key limit is not enforced while every record's account is null (decision 150 Q1) --- duration_ms: 0.192387 type: 'test' ... # Subtest: REQ-LIMIT-3 counts past the safe integer range come back as digit strings ok 81 - REQ-LIMIT-3 counts past the safe integer range come back as digit strings --- duration_ms: 0.190253 type: 'test' ... # Subtest: REQ-LIMIT-4 bad records or times throw a code, and the check reads nothing but its arguments ok 82 - REQ-LIMIT-4 bad records or times throw a code, and the check reads nothing but its arguments --- duration_ms: 0.66893 type: 'test' ... # Subtest: REQ-LIMIT-3 no token limits: every launch is allowed and the report is empty ok 83 - REQ-LIMIT-3 no token limits: every launch is allowed and the report is empty --- duration_ms: 0.264938 type: 'test' ... # Subtest: REQ-LIMIT-3 token-limit ignores tokens.daily, which the daily-quota check enforces (row 126) ok 84 - REQ-LIMIT-3 token-limit ignores tokens.daily, which the daily-quota check enforces (row 126) --- duration_ms: 0.52878 type: 'test' ... # Subtest: REQ-LIMIT-4 pi: reports all token kinds and deduplicates assistant ids ok 85 - REQ-LIMIT-4 pi: reports all token kinds and deduplicates assistant ids --- duration_ms: 3.202577 type: 'test' ... # Subtest: REQ-LIMIT-4 claude-code: reports all token kinds and deduplicates assistant ids ok 86 - REQ-LIMIT-4 claude-code: reports all token kinds and deduplicates assistant ids --- duration_ms: 0.789693 type: 'test' ... # Subtest: REQ-LIMIT-4 pi cut line is unknown, never zero or content ok 87 - REQ-LIMIT-4 pi cut line is unknown, never zero or content --- duration_ms: 1.068437 type: 'test' ... # Subtest: REQ-LIMIT-4 pi invalid UTF-8 is unknown, never zero or content ok 88 - REQ-LIMIT-4 pi invalid UTF-8 is unknown, never zero or content --- duration_ms: 0.551999 type: 'test' ... # Subtest: REQ-LIMIT-4 pi missing input is unknown, never zero or content ok 89 - REQ-LIMIT-4 pi missing input is unknown, never zero or content --- duration_ms: 0.585082 type: 'test' ... # Subtest: REQ-LIMIT-4 pi negative count is unknown, never zero or content ok 90 - REQ-LIMIT-4 pi negative count is unknown, never zero or content --- duration_ms: 0.498103 type: 'test' ... # Subtest: REQ-LIMIT-4 pi fractional count is unknown, never zero or content ok 91 - REQ-LIMIT-4 pi fractional count is unknown, never zero or content --- duration_ms: 0.451081 type: 'test' ... # Subtest: REQ-LIMIT-4 pi unsafe integer is unknown, never zero or content ok 92 - REQ-LIMIT-4 pi unsafe integer is unknown, never zero or content --- duration_ms: 0.467648 type: 'test' ... # Subtest: REQ-LIMIT-4 pi file size is unknown, never zero or content ok 93 - REQ-LIMIT-4 pi file size is unknown, never zero or content --- duration_ms: 12.153053 type: 'test' ... # Subtest: REQ-LIMIT-4 pi line size is unknown, never zero or content ok 94 - REQ-LIMIT-4 pi line size is unknown, never zero or content --- duration_ms: 3.738483 type: 'test' ... # Subtest: REQ-LIMIT-4 pi symlink file is unknown, never zero or content ok 95 - REQ-LIMIT-4 pi symlink file is unknown, never zero or content --- duration_ms: 0.51929 type: 'test' ... # Subtest: REQ-LIMIT-4 pi hardlink file is unknown, never zero or content ok 96 - REQ-LIMIT-4 pi hardlink file is unknown, never zero or content --- duration_ms: 0.332686 type: 'test' ... # Subtest: REQ-LIMIT-4 claude-code cut line is unknown, never zero or content ok 97 - REQ-LIMIT-4 claude-code cut line is unknown, never zero or content --- duration_ms: 0.375612 type: 'test' ... # Subtest: REQ-LIMIT-4 claude-code invalid UTF-8 is unknown, never zero or content ok 98 - REQ-LIMIT-4 claude-code invalid UTF-8 is unknown, never zero or content --- duration_ms: 0.399894 type: 'test' ... # Subtest: REQ-LIMIT-4 claude-code missing input is unknown, never zero or content ok 99 - REQ-LIMIT-4 claude-code missing input is unknown, never zero or content --- duration_ms: 0.377755 type: 'test' ... # Subtest: REQ-LIMIT-4 claude-code negative count is unknown, never zero or content ok 100 - REQ-LIMIT-4 claude-code negative count is unknown, never zero or content --- duration_ms: 0.370714 type: 'test' ... # Subtest: REQ-LIMIT-4 claude-code fractional count is unknown, never zero or content ok 101 - REQ-LIMIT-4 claude-code fractional count is unknown, never zero or content --- duration_ms: 0.359511 type: 'test' ... # Subtest: REQ-LIMIT-4 claude-code unsafe integer is unknown, never zero or content ok 102 - REQ-LIMIT-4 claude-code unsafe integer is unknown, never zero or content --- duration_ms: 0.372877 type: 'test' ... # Subtest: REQ-LIMIT-4 claude-code file size is unknown, never zero or content ok 103 - REQ-LIMIT-4 claude-code file size is unknown, never zero or content --- duration_ms: 5.929833 type: 'test' ... # Subtest: REQ-LIMIT-4 claude-code line size is unknown, never zero or content ok 104 - REQ-LIMIT-4 claude-code line size is unknown, never zero or content --- duration_ms: 2.390572 type: 'test' ... # Subtest: REQ-LIMIT-4 claude-code symlink file is unknown, never zero or content ok 105 - REQ-LIMIT-4 claude-code symlink file is unknown, never zero or content --- duration_ms: 0.422073 type: 'test' ... # Subtest: REQ-LIMIT-4 claude-code hardlink file is unknown, never zero or content ok 106 - REQ-LIMIT-4 claude-code hardlink file is unknown, never zero or content --- duration_ms: 0.361017 type: 'test' ... # Subtest: REQ-LIMIT-4 pi a symlink directory anywhere in the root refuses ok 107 - REQ-LIMIT-4 pi a symlink directory anywhere in the root refuses --- duration_ms: 0.368549 type: 'test' ... # Subtest: REQ-LIMIT-4 claude-code a symlink directory anywhere in the root refuses ok 108 - REQ-LIMIT-4 claude-code a symlink directory anywhere in the root refuses --- duration_ms: 0.289802 type: 'test' ... # Subtest: REQ-LIMIT-4 bounded directory entries refuse before scanning an arbitrary tree ok 109 - REQ-LIMIT-4 bounded directory entries refuse before scanning an arbitrary tree --- duration_ms: 7.765819 type: 'test' ... # Subtest: REQ-LIMIT-4 conflicting repeated usage refuses rather than double counting ok 110 - REQ-LIMIT-4 conflicting repeated usage refuses rather than double counting --- duration_ms: 0.531022 type: 'test' ... # Subtest: REQ-LIMIT-4 oversized metadata refuses before reading any transcript bytes ok 111 - REQ-LIMIT-4 oversized metadata refuses before reading any transcript bytes --- duration_ms: 6.610835 type: 'test' ... # Subtest: REQ-LIMIT-4 a file growing after fstat cannot exceed the streaming byte budget ok 112 - REQ-LIMIT-4 a file growing after fstat cannot exceed the streaming byte budget --- duration_ms: 6.282821 type: 'test' ... # Subtest: REQ-LIMIT-4 a same-size edit during a read is unknown rather than a stable snapshot ok 113 - REQ-LIMIT-4 a same-size edit during a read is unknown rather than a stable snapshot --- duration_ms: 0.810788 type: 'test' ... # Subtest: REQ-LIMIT-4 record count is bounded even when each record is tiny ok 114 - REQ-LIMIT-4 record count is bounded even when each record is tiny --- duration_ms: 7.805423 type: 'test' ... # Subtest: REQ-LIMIT-4 missing assistant usage, malformed JSON and conflicting identities are unknown ok 115 - REQ-LIMIT-4 missing assistant usage, malformed JSON and conflicting identities are unknown --- duration_ms: 0.928936 type: 'test' ... # Subtest: REQ-LIMIT-4 caller roots, unsupported harnesses and non-object JSON never become zero usage ok 116 - REQ-LIMIT-4 caller roots, unsupported harnesses and non-object JSON never become zero usage --- duration_ms: 0.621657 type: 'test' ... # Subtest: REQ-LIMIT-4 even a complete JSON record with no final newline is an unknown cut line ok 117 - REQ-LIMIT-4 even a complete JSON record with no final newline is an unknown cut line --- duration_ms: 0.310336 type: 'test' ... # Subtest: REQ-LIMIT-4 final file opens are nonblocking before hostile file type is known ok 118 - REQ-LIMIT-4 final file opens are nonblocking before hostile file type is known --- duration_ms: 0.533184 type: 'test' ... # Subtest: REQ-LIMIT-4 invalid transcript entry names refuse before file lookup ok 119 - REQ-LIMIT-4 invalid transcript entry names refuse before file lookup --- duration_ms: 0.316982 type: 'test' ... # Subtest: REQ-LIMIT-4 claude-code refuses a symlinked project directory ok 120 - REQ-LIMIT-4 claude-code refuses a symlinked project directory --- duration_ms: 0.474377 type: 'test' ... 1..120 # tests 120 # suites 0 # pass 120 # fail 0 # cancelled 0 # skipped 0 # todo 0 # duration_ms 1004.179548