The following errors were reported by main [Pipeline that generated this bug](https://dev.azure.com/typescript/TypeScript/_build?definitionId=76) [Logs for the pipeline run](https://typescript.visualstudio.com/TypeScript/_build/results?buildId=169548) [File that generated the pipeline](https://github.com/microsoft/typescript-error-deltas/blob/main/azure-pipelines-gitTests.yml) This run considered 300 popular TS repos from GH (after skipping the top 0). <details> <summary>Successfully analyzed 230 of 300 visited repos</summary> | Outcome | Count | |---------|-------| | Detected interesting changes | 4 | | Detected no interesting changes | 226 | | Timeout | 42 | | Unknown failure | 28 | Seed: `\oYbfMLurqBp7`LpWi!U` </details>
Activity
typescript-automation commentedon Oct 23, 2026
panic handling request textDocument/diagnostic: flaky diagnostic(s) logged:
Affected repos
chartjs/Chart.js
Raw error text:RepoResults1/chartjs.Chart.js.rawError.txtin the artifact folderReplay commands:
RepoResults1/chartjs.Chart.js.replay.txtin the artifact folderOld server result
The old server completed successfully for this repo.
Last few requests
{"kind":"request","method":"textDocument/diagnostic","params":{"textDocument":{"uri":"@PROJECT_ROOT_URI@/src/controllers/controller.bubble.js"}}} {"kind":"request","method":"textDocument/codeLens","params":{"textDocument":{"uri":"@PROJECT_ROOT_URI@/src/controllers/controller.bubble.js"}}} {"kind":"request","method":"textDocument/inlayHint","params":{"textDocument":{"uri":"@PROJECT_ROOT_URI@/src/controllers/controller.bubble.js"},"range":{"start":{"line":0,"character":0},"end":{"line":169,"character":0}}}} {"kind":"request","method":"textDocument/semanticTokens/full","params":{"textDocument":{"uri":"@PROJECT_ROOT_URI@/src/controllers/controller.bubble.js"}}}Repro steps
To run the repro, use the "Launch replay test" launch configuration in your local copy of native TypeScript.
typescript-automation commentedon Oct 23, 2026
Server connection closed prematurely: undefined
Affected repos
usebruno/bruno
Raw error text:RepoResults2/usebruno.bruno.rawError.txtin the artifact folderReplay commands:
RepoResults2/usebruno.bruno.replay.txtin the artifact folderOld server result
The old server completed successfully for this repo.
Last few requests
{"kind":"request","method":"textDocument/typeDefinition","params":{"textDocument":{"uri":"@PROJECT_ROOT_URI@/packages/bruno-converters/tests/postman-with-examples.spec.js"},"position":{"line":124,"character":40}}} {"kind":"notification","method":"textDocument/didChange","params":{"textDocument":{"uri":"@PROJECT_ROOT_URI@/packages/bruno-converters/tests/postman-with-examples.spec.js","version":4086},"contentChanges":[{"range":{"start":{"line":124,"character":81},"end":{"line":124,"character":82}},"text":""}]}} {"kind":"request","method":"textDocument/signatureHelp","params":{"textDocument":{"uri":"@PROJECT_ROOT_URI@/packages/bruno-converters/tests/postman-with-examples.spec.js"},"position":{"line":127,"character":55},"context":{"triggerKind":1,"isRetrigger":false}}} {"kind":"request","method":"textDocument/implementation","params":{"textDocument":{"uri":"@PROJECT_ROOT_URI@/packages/bruno-converters/tests/postman-with-examples.spec.js"},"position":{"line":129,"character":35}}}Repro steps
To run the repro, use the "Launch replay test" launch configuration in your local copy of native TypeScript.
typescript-automation commentedon Oct 23, 2026
Server connection closed prematurely: undefined
Affected repos
gchq/CyberChef
Raw error text:RepoResults3/gchq.CyberChef.rawError.txtin the artifact folderReplay commands:
RepoResults3/gchq.CyberChef.replay.txtin the artifact folderOld server result
The old server completed successfully for this repo.
Last few requests
{"kind":"request","method":"textDocument/codeAction","params":{"textDocument":{"uri":"@PROJECT_ROOT_URI@/tests/operations/tests/PRESENT.mjs"},"range":{"start":{"line":352,"character":25},"end":{"line":352,"character":25}},"context":{"diagnostics":[],"only":["refactor"]}}} {"kind":"notification","method":"textDocument/didChange","params":{"textDocument":{"uri":"@PROJECT_ROOT_URI@/tests/operations/tests/PRESENT.mjs","version":1422},"contentChanges":[{"text":"/**\n * PRESENT cipher tests.\n *\n * Test vectors from the original PRESENT paper:\n * \"PRESENT: An Ultra-Lightweight Block Cipher\"\n * https://link.springer.com/chapter/10.1007/978-3-540-74735-2_31\n * https://www.iacr.org/archive/ches2007/47270450/47270450.pdf\n *\n * Note: PKCS5 padding adds an extra block when input is exactly block-aligned.\n * Round-trip tests verify correct encryption/decryption behavior.\n *\n * @author Medjedtxm\n * @copyright Crown Copyright 2026\n * @license Apache-2.0\n */\n\nimport TestRegister from \"../../lib/TestRegister.mjs\";\n\nTestRegister.addTests([\n // ============================================================\n // OFFICIAL TEST VECTORS from the original PRESENT paper:\n // \"PRESENT: An Ultra-Lightweight Block Cipher\" (Bogdanov et al., CHES 2007)\n // https://link.springer.com/chapter/10.1007/978-3-540-74735-2_31\n // Table 3: Test Vectors\n // ============================================================\n {\n name: \"PRESENT Official Vector 1: 80-bit zero key, zero plaintext\",\n input: \"0000000000000000\",\n expectedOutput: \"5579c1387b228445\",\n recipeConfig: [\n {\n op: \"PRESENT Encrypt\",\n args: [\n { string: \"00000000000000000000\", option: \"Hex\" },\n { string: \"\", option: \"Hex\" },\n \"ECB\", \"Hex\", \"Hex\", \"NO\"\n ]\n }\n ]\n },\n {\n name: \"PRESENT Official Vector 2: 80-bit all-ones key, zero plaintext\",\n input: \"0000000000000000\",\n expectedOutput: \"e72c46c0f5945049\",\n recipeConfig: [\n {\n op: \"PRESENT Encrypt\",\n args: [\n { string: \"ffffffffffffffffffff\", option: \"Hex\" },\n { string: \"\", option: \"Hex\" },\n \"ECB\", \"Hex\", \"Hex\", \"NO\"\n ]\n }\n ]\n },\n {\n name: \"PRESENT Official Vector 3: 80-bit zero key, all-ones plaintext\",\n input: \"ffffffffffffffff\",\n expectedOutput: \"a112ffc72f68417b\",\n recipeConfig: [\n {\n op: \"PRESENT Encrypt\",\n args: [\n { string: \"00000000000000000000\", option: \"Hex\" },\n { string: \"\", option: \"Hex\" },\n \"ECB\", \"Hex\", \"Hex\", \"NO\"\n ]\n }\n ]\n },\n {\n name: \"PRESENT Official Vector 4: 80-bit all-ones key, all-ones plaintext\",\n input: \"ffffffffffffffff\",\n expectedOutput: \"3333dcd3213210d2\",\n recipeConfig: [\n {\n op: \"PRESENT Encrypt\",\n args: [\n { string: \"ffffffffffffffffffff\", option: \"Hex\" },\n { string: \"\", option: \"Hex\" },\n \"ECB\", \"Hex\", \"Hex\", \"NO\"\n ]\n }\n ]\n },\n {\n name: \"PRESENT Official Vector 5: 128-bit zero key, zero plaintext\",\n input: \"0000000000000000\",\n expectedOutput: \"96db702a2e6900af\",\n recipeConfig: [\n {\n op: \"PRESENT Encrypt\",\n args: [\n { string: \"00000000000000000000000000000000\", option: \"Hex\" },\n { string: \"\", option: \"Hex\" },\n \"ECB\", \"Hex\", \"Hex\", \"NO\"\n ]\n }\n ]\n },\n {\n name: \"PRESENT Official Vector 6: 128-bit key (SageMath reference)\",\n input: \"0123456789abcdef\",\n expectedOutput: \"0e9d28685e671dd6\",\n recipeConfig: [\n {\n op: \"PRESENT Encrypt\",\n args: [\n { string: \"0123456789abcdef0123456789abcdef\", option: \"Hex\" },\n { string: \"\", option: \"Hex\" },\n \"ECB\", \"Hex\", \"Hex\", \"NO\"\n ]\n }\n ]\n },\n // Decrypt verification of official vectors\n {\n name: \"PRESENT Official Vector 1 Decrypt: 80-bit zero key\",\n input: \"5579c1387b228445\",\n expectedOutput: \"0000000000000000\",\n recipeConfig: [\n {\n op: \"PRESENT Decrypt\",\n args: [\n { string: \"00000000000000000000\", option: \"Hex\" },\n { string: \"\", option: \"Hex\" },\n \"ECB\", \"Hex\", \"Hex\", \"NO\"\n ]\n }\n ]\n },\n {\n name: \"PRESENT Official Vector 4 Decrypt: 80-bit all-ones key\",\n input: \"3333dcd3213210d2\",\n expectedOutput: \"ffffffffffffffff\",\n recipeConfig: [\n {\n op: \"PRESENT Decrypt\",\n args: [\n { string: \"ffffffffffffffffffff\", option: \"Hex\" },\n { string: \"\", option: \"Hex\" },\n \"ECB\", \"Hex\", \"Hex\", \"NO\"\n ]\n }\n ]\n },\n {\n name: \"PRESENT Official Vector 5 Decrypt: 128-bit zero key\",\n input: \"96db702a2e6900af\",\n expectedOutput: \"0000000000000000\",\n recipeConfig: [\n {\n op: \"PRESENT Decrypt\",\n args: [\n { string: \"00000000000000000000000000000000\", option: \"Hex\" },\n { string: \"\", option: \"Hex\" },\n \"ECB\", \"Hex\", \"Hex\", \"NO\"\n ]\n }\n ]\n },\n {\n name: \"PRESENT Official Vector 6 Decrypt: 128-bit key (SageMath reference)\",\n input: \"0e9d28685e671dd6\",\n expectedOutput: \"0123456789abcdef\",\n recipeConfig: [\n {\n op: \"PRESENT Decrypt\",\n args: [\n { string: \"0123456789abcdef0123456789abcdef\", option: \"Hex\" },\n { string: \"\", option: \"Hex\" },\n \"ECB\", \"Hex\", \"Hex\", \"NO\"\n ]\n }\n ]\n },\n // ============================================================\n // Round-trip tests - These verify encryption and decryption work correctly\n // ============================================================\n {\n name: \"PRESENT Round-trip: ECB 80-bit key, short message\",\n input: \"Hello!!!\",\n expectedOutput: \"Hello!!!\",\n recipeConfig: [\n {\n op: \"PRESENT Encrypt\",\n args: [\n { string: \"00112233445566778899\", option: \"Hex\" },\n { string: \"\", option: \"Hex\" },\n \"ECB\", \"Raw\", \"Hex\", \"PKCS5\"\n ]\n },\n {\n op: \"PRESENT Decrypt\",\n args: [\n { string: \"00112233445566778899\", option: \"Hex\" },\n { string: \"\", option: \"Hex\" },\n \"ECB\", \"Hex\", \"Raw\", \"PKCS5\"\n ]\n }\n ]\n },\n {\n name: \"PRESENT Round-trip: CBC 80-bit key, long message\",\n input: \"The quick brown fox jumps over the lazy dog\",\n expectedOutput: \"The quick brown fox jumps over the lazy dog\",\n recipeConfig: [\n {\n op: \"PRESENT Encrypt\",\n args: [\n { string: \"aabbccddeeff00112233\", option: \"Hex\" },\n { string: \"0011223344556677\", option: \"Hex\" },\n \"CBC\", \"Raw\", \"Hex\", \"PKCS5\"\n ]\n },\n {\n op: \"PRESENT Decrypt\",\n args: [\n { string: \"aabbccddeeff00112233\", option: \"Hex\" },\n { string: \"0011223344556677\", option: \"Hex\" },\n \"CBC\", \"Hex\", \"Raw\", \"PKCS5\"\n ]\n }\n ]\n },\n {\n name: \"PRESENT Round-trip: ECB 128-bit key\",\n input: \"Testing PRESENT cipher with 128-bit key\",\n expectedOutput: \"Testing PRESENT cipher with 128-bit key\",\n recipeConfig: [\n {\n op: \"PRESENT Encrypt\",\n args: [\n { string: \"00112233445566778899aabbccddeeff\", option: \"Hex\" },\n { string: \"\", option: \"Hex\" },\n \"ECB\", \"Raw\", \"Hex\", \"PKCS5\"\n ]\n },\n {\n op: \"PRESENT Decrypt\",\n args: [\n { string: \"00112233445566778899aabbccddeeff\", option: \"Hex\" },\n { string: \"\", option: \"Hex\" },\n \"ECB\", \"Hex\", \"Raw\", \"PKCS5\"\n ]\n }\n ]\n },\n {\n name: \"PRESENT Round-trip: CBC 128-bit key\",\n input: \"PRESENT is an ultra-lightweight block cipher!\",\n expectedOutput: \"PRESENT is an ultra-lightweight block cipher!\",\n recipeConfig: [\n {\n op: \"PRESENT Encrypt\",\n args: [\n { string: \"ffeeddccbbaa99887766554433221100\", option: \"Hex\" },\n { string: \"8877665544332211\", option: \"Hex\" },\n \"CBC\", \"Raw\", \"Hex\", \"PKCS5\"\n ]\n },\n {\n op: \"PRESENT Decrypt\",\n args: [\n { string: \"ffeeddccbbaa99887766554433221100\", option: \"Hex\" },\n { string: \"8877665544332211\", option: \"Hex\" },\n \"CBC\", \"Hex\", \"Raw\", \"PKCS5\"\n ]\n }\n ]\n },\n {\n name: \"PRESENT Round-trip: UTF8 key (10 bytes)\",\n input: \"Secret message\",\n expectedOutput: \"Secret message\",\n recipeConfig: [\n {\n op: \"PRESENT Encrypt\",\n args: [\n { string: \"mypassword\", option: \"UTF8\" },\n { string: \"initvect\", option: \"UTF8\" },\n \"CBC\", \"Raw\", \"Hex\", \"PKCS5\"\n ]\n },\n {\n op: \"PRESENT Decrypt\",\n args: [\n { string: \"mypassword\", option: \"UTF8\" },\n { string: \"initvect\", option: \"UTF8\" },\n \"CBC\", \"Hex\", \"Raw\", \"PKCS5\"\n ]\n }\n ]\n },\n\n // Encryption consistency tests - verify same input always produces same output\n {\n name: \"PRESENT Encrypt: 80-bit zero key consistency\",\n input: \"TestData\",\n expectedOutput: \"b78cfea5ffcd89f265585a6ce7312131\",\n recipeConfig: [\n {\n op: \"PRESENT Encrypt\",\n args: [\n { string: \"00000000000000000000\", option: \"Hex\" },\n { string: \"\", option: \"Hex\" },\n \"ECB\", \"Raw\", \"Hex\", \"PKCS5\"\n ]\n }\n ]\n },\n {\n name: \"PRESENT Encrypt: 128-bit zero key consistency\",\n input: \"TestData\",\n expectedOutput: \"e127a24e38de2c36407e794ef5dffefd\",\n recipeConfig: [\n {\n op: \"PRESENT Encrypt\",\n args: [\n { string: \"00000000000000000000000000000000\", option: \"Hex\" },\n { string: \"\", option: \"Hex\" },\n \"ECB\", \"Raw\", \"Hex\", \"PKCS5\"\n ]\n }\n ]\n },\n {\n name: \"PRESENT Round-trip: Various lengths 1 byte\",\n input: \"A\",\n expectedOutput: \"A\",\n recipeConfig: [\n {\n op: \"PRESENT Encrypt\",\n args: [\n { string: \"00112233445566778899\", option: \"Hex\" },\n { string: \"\", option: \"Hex\" },\n \"ECB\", \"Raw\", \"Hex\", \"PKCS5\"\n ]\n },\n {\n op: \"PRESENT Decrypt\",\n args: [\n { string: \"00112233445566778899\", option: \"Hex\" },\n { string: \"\", option: \"Hex\" },\n \"ECB\", \"Hex\", \"Raw\", \"PKCS5\"\n ]\n }\n ]\n },\n {\n name: \"PRESENT Round-trip: Various lengths 7 bytes\",\n input: \"1234567\",\n expectedOutput: \"1234567\",\n recipeConfig: [\n {\n op: \"PRESENT Encrypt\",\n args: [\n { string: \"00112233445566778899\", option: \"Hex\" },\n { string: \"\", option: \"Hex\" },\n \"ECB\", \"Raw\", \"Hex\", \"PKCS5\"\n ]\n },\n {\n op: \"PRESENT Decrypt\",\n args: [\n { string: \"00112233445566778899\", option: \"Hex\" },\n { string: \"\", option: \"Hex\" },\n \"ECB\", \"Hex\", \"Raw\", \"PKCS5\"\n ]\n }\n ]\n },\n {\n name: \"PRESENT Round-trip: Various lengths 8 bytes (exact block)\",\n input: \"12345678\",\n expectedOutput: \"12345678\",\n recipeConfig: [\n {\n op: \"PRESENT Encrypt\",\n args: [\n { string: \"00112233445566778899\", option: \"Hex\" },\n { string: \"\", option: \"Hex\" },\n \"ECB\", \"Raw\", \"Hex\", \"PKCS5\"\n ]\n },\n {\n op: \"PRESENT Decrypt\",\n args: [\n { string: \"00112233445566778899\", option: \"Hex\" },\n { string: \"\", option: \"Hex\" },\n \"ECB\", \"Hex\", \"Raw\", \"PKCS5\"\n ]\n }\n ]\n },\n {\n name: \"PRESENT Round-trip: Various lengths 9 bytes\",\n input: \"123456789\",\n expectedOutput: \"123456789\",\n recipeConfig: [\n {\n op: \"PRESENT Encrypt\",\n args: [\n { string: \"00112233445566778899\", option: \"Hex\" },\n { string: \"\", option: \"Hex\" },\n \"ECB\", \"Raw\", \"Hex\", \"PKCS5\"\n ]\n },\n {\n op: \"PRESENT Decrypt\",\n args: [\n { string: \"00112233445566778899\", option: \"Hex\" },\n { string: \"\", option: \"Hex\" },\n \"ECB\", \"Hex\", \"Raw\", \"PKCS5\"\n ]\n }\n ]\n },\n {\n name: \"PRESENT Round-trip: Various lengths 16 bytes (two blocks)\",\n input: \"1234567890ABCDEF\",\n expectedOutput: \"1234567890ABCDEF\",\n recipeConfig: [\n {\n op: \"PRESENT Encrypt\",\n args: [\n { string: \"00112233445566778899\", option: \"Hex\" },\n { string: \"\", option: \"Hex\" },\n \"ECB\", \"Raw\", \"Hex\", \"PKCS5\"\n ]\n },\n {\n op: \"PRESENT Decrypt\",\n args: [\n { string: \"00112233445566778899\", option: \"Hex\" },\n { string: \"\", option: \"Hex\" },\n \"ECB\", \"Hex\", \"Raw\", \"PKCS5\"\n ]\n }\n ]\n },\n {\n name: \"PRESENT Round-trip: Binary data\",\n input: \"\\x00\\x01\\x02\\x03\\x04\\x05\\x06\\x07\",\n expectedOutput: \"\\x00\\x01\\x02\\x03\\x04\\x05\\x06\\x07\",\n recipeConfig: [\n {\n op: \"PRESENT Encrypt\",\n args: [\n { string: \"ffeeddccbbaa99887766\", option: \"Hex\" },\n { string: \"0011223344556677\", option: \"Hex\" },\n \"CBC\", \"Raw\", \"Hex\", \"PKCS5\"\n ]\n },\n {\n op: \"PRESENT Decrypt\",\n args: [\n { string: \"ffeeddccbbaa99887766\", option: \"Hex\" },\n { string: \"0011223344556677\", option: \"Hex\" },\n \"CBC\", \"Hex\", \"Raw\", \"PKCS5\"\n ]\n }\n ]\n }\n]);\n"}]}} {"kind":"notification","method":"textDocument/didChange","params":{"textDocument":{"uri":"@PROJECT_ROOT_URI@/tests/operations/tests/PRESENT.mjs","version":1423},"contentChanges":[{"range":{"start":{"line":373,"character":5},"end":{"line":373,"character":5}},"text":"."}]}} {"kind":"request","method":"textDocument/hover","params":{"textDocument":{"uri":"@PROJECT_ROOT_URI@/tests/operations/tests/PRESENT.mjs"},"position":{"line":376,"character":23}}}Repro steps
To run the repro, use the "Launch replay test" launch configuration in your local copy of native TypeScript.
typescript-automation commentedon Oct 23, 2026
Server connection closed prematurely: undefined
Affected repos
nosir/cleave.js
Raw error text:RepoResults8/nosir.cleave.js.rawError.txtin the artifact folderReplay commands:
RepoResults8/nosir.cleave.js.replay.txtin the artifact folderOld server result
The old server completed successfully for this repo.
Last few requests
{"kind":"request","method":"textDocument/completion","params":{"textDocument":{"uri":"@PROJECT_ROOT_URI@/src/addons/phone-type-formatter.dm.js"},"position":{"line":50,"character":305},"context":{"triggerKind":1}}} {"kind":"request","method":"completionItem/resolve","params":{"label":"MessageEventTargetEventMap","kind":8,"sortText":"15","commitCharacters":[".",",",";"],"data":{"fileName":"@PROJECT_ROOT@/src/addons/phone-type-formatter.dm.js","position":11545,"name":"MessageEventTargetEventMap"}}} {"kind":"request","method":"custom/textDocument/sourceDefinition","params":{"textDocument":{"uri":"@PROJECT_ROOT_URI@/src/addons/phone-type-formatter.dm.js"},"position":{"line":50,"character":346}}} {"kind":"request","method":"custom/textDocument/sourceDefinition","params":{"textDocument":{"uri":"@PROJECT_ROOT_URI@/src/addons/phone-type-formatter.dm.js"},"position":{"line":50,"character":360}}}Repro steps
To run the repro, use the "Launch replay test" launch configuration in your local copy of native TypeScript.