1 line
24 KiB
JSON
1 line
24 KiB
JSON
{"repo": "aresbit/ted", "files": {"scripts/regression.sh": {"bf60ff455d94604824020c10a7bd211d859ef6f8": {"t": 1785745959.11946, "n": 4832, "h": "1e6b314fae369756", "c": "#!/usr/bin/env sh\nset -eu\n\nprintf '[1/5] build\\n'\nmkdir -p ./tmp\nmake -j4 >/dev/null\n\nprintf '[2/5] help output\\n'\nHELP_OUT=\"$(./bin/ted --help 2>&1)\"\nprintf '%s\\n' \"$HELP_OUT\" | rg -q 'TED - Termux Editor' || {\n echo 'help output check failed: missing title' >&2\n exit 1\n}\n\nprintf '[3/5] agent command availability (source check)\\n'\nrg -q 'cmd_agent|\\\"agent\\\"' src/command.c || {\n echo 'agent command check failed' >&2\n exit 1\n}\nrg -q 'cmd_js|\\\"js\\\"' src/command.c || {\n echo 'js command check failed' >&2\n exit 1\n}\nrg -q 'cmd_source|\\\"source\\\"' src/command.c || {\n echo 'source command check failed' >&2\n exit 1\n}\nrg -q 'cmd_langs|\\\"langs\\\"' src/command.c || {\n echo 'langs command check failed' >&2\n exit 1\n}\nrg -q 'cmd_llm|\\\"llm\\\"|cmd_llmcopy|\\\"llmcopy\\\"|cmd_llmshow|\\\"llmshow\\\"' src/command.c || {\n echo 'llm command check failed' >&2\n exit 1\n}\nrg -q 'cmd_targets|\\\"targets\\\"' src/command.c || {\n echo 'targets command check failed' >&2\n exit 1\n}\n\nprintf '[4/5] js extension api availability (source check)\\n'\nrg -q 'registerLanguage' src/ext.c || {\n echo 'registerLanguage api check failed' >&2\n exit 1\n}\nrg -q 'registerOperatorTarget' src/ext.c || {\n echo 'registerOperatorTarget api check failed' >&2\n exit 1\n}\nrg -q 'llm_query|llm_status|TED_LLM_API_URL|DEEPSEEK_API_KEY' src/llm.c src/ted.h || {\n echo 'llm bridge check failed' >&2\n exit 1\n}\nrg -q 'tree on|tree off|tree status|treesitter_set_enabled' src/command.c src/treesitter.c || {\n echo 'tree-sitter command bridge check failed' >&2\n exit 1\n}\nrg -q 'syntax_register_language' src/syntax.c src/ted.h || {\n echo 'syntax_register_language check failed' >&2\n exit 1\n}\nrg -q 'onConflict must be override/skip/error' src/ext.c || {\n echo 'registerLanguage conflict policy check failed' >&2\n exit 1\n}\nrg -q 'stringDelims' src/ext.c || {\n echo 'registerLanguage stringDelims check failed' >&2\n exit 1\n}\nrg -q 'singleComments' src/ext.c || {\n echo 'registerLanguage singleComments check failed' >&2\n exit 1\n}\nrg -q 'multiCommentPairs' src/ext.c || {\n echo 'registerLanguage multiCommentPairs check failed' >&2\n exit 1\n}\nrg -q 'numberMode' src/ext.c || {\n echo 'registerLanguage numberMode check failed' >&2\n exit 1\n}\nrg -q 'identifierExtras' src/ext.c || {\n echo 'registerLanguage identifierExtras check failed' >&2\n exit 1\n}\nrg -q 'multiLineStrings' src/ext.c || {\n echo 'registerLanguage multiLineStrings check failed' >&2\n exit 1\n}\nrg -q 'ext_list_loaded_plugins' src/ext.c src/ted.h || {\n echo 'plugin list api check failed' >&2\n exit 1\n}\nrg -q 'syntax_highlight_line_impl' src/syntax.c || {\n echo 'cross-line syntax state check failed' >&2\n exit 1\n}\nrg -q 'consume_identifier|token_state_t' src/syntax.c || {\n echo 'tokenizer core extraction check failed' >&2\n exit 1\n}\nrg -q 'MODE_OPERATOR_PENDING|input_handle_operator_pending' src/ted.h src/input.c src/editor.c || {\n echo 'operator-pending mode check failed' >&2\n exit 1\n}\nrg -q 'op_apply_inner_word|op_apply_to_eol' src/input.c || {\n echo 'operator motion/textobject check failed' >&2\n exit 1\n}\nrg -q 'op_apply_motion_builtin|No next word|No previous word' src/input.c || {\n echo 'builtin motion check failed' >&2\n exit 1\n}\nrg -q 'op_apply_text_object_builtin|op_find_quote_pair_around|op_find_paren_pair_around' src/input.c || {\n echo 'builtin textobject check failed' >&2\n exit 1\n}\nrg -q 'normal_count|pending_count|count:' src/input.c src/ted.h || {\n echo 'operator count check failed' >&2\n exit 1\n}\nrg -q 'input_register_operator_target|ext_invoke_operator_target' src/input.c src/ext.c src/ted.h || {\n echo 'operator target extension check failed' >&2\n exit 1\n}\nrg -q '__ted_count' src/ext.c docs/sample-plugin-operator-target.js || {\n echo 'operator target count bridge check failed' >&2\n exit 1\n}\nrg -q 'treesitter_highlight_buffer|ts_parser_parse_string|tree_sitter_c|ts_parser_set_language|ts_walk_and_highlight_c|ts_map_c_node|call_expression|preproc_' src/treesitter.c src/display.c || {\n echo 'tree-sitter runtime integration check failed' >&2\n exit 1\n}\nrg -q 'in_string' src/syntax.c || {\n echo 'cross-line string state check failed' >&2\n exit 1\n}\nrg -q 'syntax_highlight_buffer' src/display.c || {\n echo 'display rehighlight path check failed' >&2\n exit 1\n}\n\nprintf '[5/5] narrow terminal startup (libiui grid regression)\\n'\nif command -v script >/dev/null 2>&1 && command -v timeout >/dev/null 2>&1; then\n if script -qefc 'exit 0' /dev/null >/dev/null 2>&1; then\n timeout 10 script -qefc \"stty cols 44 rows 18; printf 'q' | ./bin/ted >/dev/null 2>&1\" /dev/null || {\n echo 'narrow terminal startup check failed' >&2\n exit 1\n }\n else\n echo 'skip narrow terminal startup check (script PTY unavailable)'\n fi\nelse\n echo 'skip narrow terminal startup check (script/timeout missing)'\nfi\n\necho 'smoke regression passed'\n"}, "d3d984739722f70276e4fd499e7d09c9490d4bc2": {"t": 1785758282.4622343, "n": 4832, "h": "1e6b314fae369756", "c": "#!/usr/bin/env sh\nset -eu\n\nprintf '[1/5] build\\n'\nmkdir -p ./tmp\nmake -j4 >/dev/null\n\nprintf '[2/5] help output\\n'\nHELP_OUT=\"$(./bin/ted --help 2>&1)\"\nprintf '%s\\n' \"$HELP_OUT\" | rg -q 'TED - Termux Editor' || {\n echo 'help output check failed: missing title' >&2\n exit 1\n}\n\nprintf '[3/5] agent command availability (source check)\\n'\nrg -q 'cmd_agent|\\\"agent\\\"' src/command.c || {\n echo 'agent command check failed' >&2\n exit 1\n}\nrg -q 'cmd_js|\\\"js\\\"' src/command.c || {\n echo 'js command check failed' >&2\n exit 1\n}\nrg -q 'cmd_source|\\\"source\\\"' src/command.c || {\n echo 'source command check failed' >&2\n exit 1\n}\nrg -q 'cmd_langs|\\\"langs\\\"' src/command.c || {\n echo 'langs command check failed' >&2\n exit 1\n}\nrg -q 'cmd_llm|\\\"llm\\\"|cmd_llmcopy|\\\"llmcopy\\\"|cmd_llmshow|\\\"llmshow\\\"' src/command.c || {\n echo 'llm command check failed' >&2\n exit 1\n}\nrg -q 'cmd_targets|\\\"targets\\\"' src/command.c || {\n echo 'targets command check failed' >&2\n exit 1\n}\n\nprintf '[4/5] js extension api availability (source check)\\n'\nrg -q 'registerLanguage' src/ext.c || {\n echo 'registerLanguage api check failed' >&2\n exit 1\n}\nrg -q 'registerOperatorTarget' src/ext.c || {\n echo 'registerOperatorTarget api check failed' >&2\n exit 1\n}\nrg -q 'llm_query|llm_status|TED_LLM_API_URL|DEEPSEEK_API_KEY' src/llm.c src/ted.h || {\n echo 'llm bridge check failed' >&2\n exit 1\n}\nrg -q 'tree on|tree off|tree status|treesitter_set_enabled' src/command.c src/treesitter.c || {\n echo 'tree-sitter command bridge check failed' >&2\n exit 1\n}\nrg -q 'syntax_register_language' src/syntax.c src/ted.h || {\n echo 'syntax_register_language check failed' >&2\n exit 1\n}\nrg -q 'onConflict must be override/skip/error' src/ext.c || {\n echo 'registerLanguage conflict policy check failed' >&2\n exit 1\n}\nrg -q 'stringDelims' src/ext.c || {\n echo 'registerLanguage stringDelims check failed' >&2\n exit 1\n}\nrg -q 'singleComments' src/ext.c || {\n echo 'registerLanguage singleComments check failed' >&2\n exit 1\n}\nrg -q 'multiCommentPairs' src/ext.c || {\n echo 'registerLanguage multiCommentPairs check failed' >&2\n exit 1\n}\nrg -q 'numberMode' src/ext.c || {\n echo 'registerLanguage numberMode check failed' >&2\n exit 1\n}\nrg -q 'identifierExtras' src/ext.c || {\n echo 'registerLanguage identifierExtras check failed' >&2\n exit 1\n}\nrg -q 'multiLineStrings' src/ext.c || {\n echo 'registerLanguage multiLineStrings check failed' >&2\n exit 1\n}\nrg -q 'ext_list_loaded_plugins' src/ext.c src/ted.h || {\n echo 'plugin list api check failed' >&2\n exit 1\n}\nrg -q 'syntax_highlight_line_impl' src/syntax.c || {\n echo 'cross-line syntax state check failed' >&2\n exit 1\n}\nrg -q 'consume_identifier|token_state_t' src/syntax.c || {\n echo 'tokenizer core extraction check failed' >&2\n exit 1\n}\nrg -q 'MODE_OPERATOR_PENDING|input_handle_operator_pending' src/ted.h src/input.c src/editor.c || {\n echo 'operator-pending mode check failed' >&2\n exit 1\n}\nrg -q 'op_apply_inner_word|op_apply_to_eol' src/input.c || {\n echo 'operator motion/textobject check failed' >&2\n exit 1\n}\nrg -q 'op_apply_motion_builtin|No next word|No previous word' src/input.c || {\n echo 'builtin motion check failed' >&2\n exit 1\n}\nrg -q 'op_apply_text_object_builtin|op_find_quote_pair_around|op_find_paren_pair_around' src/input.c || {\n echo 'builtin textobject check failed' >&2\n exit 1\n}\nrg -q 'normal_count|pending_count|count:' src/input.c src/ted.h || {\n echo 'operator count check failed' >&2\n exit 1\n}\nrg -q 'input_register_operator_target|ext_invoke_operator_target' src/input.c src/ext.c src/ted.h || {\n echo 'operator target extension check failed' >&2\n exit 1\n}\nrg -q '__ted_count' src/ext.c docs/sample-plugin-operator-target.js || {\n echo 'operator target count bridge check failed' >&2\n exit 1\n}\nrg -q 'treesitter_highlight_buffer|ts_parser_parse_string|tree_sitter_c|ts_parser_set_language|ts_walk_and_highlight_c|ts_map_c_node|call_expression|preproc_' src/treesitter.c src/display.c || {\n echo 'tree-sitter runtime integration check failed' >&2\n exit 1\n}\nrg -q 'in_string' src/syntax.c || {\n echo 'cross-line string state check failed' >&2\n exit 1\n}\nrg -q 'syntax_highlight_buffer' src/display.c || {\n echo 'display rehighlight path check failed' >&2\n exit 1\n}\n\nprintf '[5/5] narrow terminal startup (libiui grid regression)\\n'\nif command -v script >/dev/null 2>&1 && command -v timeout >/dev/null 2>&1; then\n if script -qefc 'exit 0' /dev/null >/dev/null 2>&1; then\n timeout 10 script -qefc \"stty cols 44 rows 18; printf 'q' | ./bin/ted >/dev/null 2>&1\" /dev/null || {\n echo 'narrow terminal startup check failed' >&2\n exit 1\n }\n else\n echo 'skip narrow terminal startup check (script PTY unavailable)'\n fi\nelse\n echo 'skip narrow terminal startup check (script/timeout missing)'\nfi\n\necho 'smoke regression passed'\n"}, "8b9dc249d0738397cdfe2a229ae9b19ad8a59cc5": {"t": 1785758283.7463582, "n": 4682, "h": "fab90f001cd800da", "c": "#!/usr/bin/env sh\nset -eu\n\nprintf '[1/5] build\\n'\nmkdir -p ./tmp\nmake -j4 >/dev/null\n\nprintf '[2/5] help output\\n'\nHELP_OUT=\"$(./bin/ted --help 2>&1)\"\nprintf '%s\\n' \"$HELP_OUT\" | rg -q 'TED - Termux Editor' || {\n echo 'help output check failed: missing title' >&2\n exit 1\n}\n\nprintf '[3/5] agent command availability (source check)\\n'\nrg -q 'cmd_agent|\\\"agent\\\"' src/command.c || {\n echo 'agent command check failed' >&2\n exit 1\n}\nrg -q 'cmd_js|\\\"js\\\"' src/command.c || {\n echo 'js command check failed' >&2\n exit 1\n}\nrg -q 'cmd_source|\\\"source\\\"' src/command.c || {\n echo 'source command check failed' >&2\n exit 1\n}\nrg -q 'cmd_langs|\\\"langs\\\"' src/command.c || {\n echo 'langs command check failed' >&2\n exit 1\n}\nrg -q 'cmd_llm|\\\"llm\\\"|cmd_llmcopy|\\\"llmcopy\\\"|cmd_llmshow|\\\"llmshow\\\"' src/command.c || {\n echo 'llm command check failed' >&2\n exit 1\n}\nrg -q 'cmd_targets|\\\"targets\\\"' src/command.c || {\n echo 'targets command check failed' >&2\n exit 1\n}\n\nprintf '[4/5] js extension api availability (source check)\\n'\nrg -q 'registerLanguage' src/ext.c || {\n echo 'registerLanguage api check failed' >&2\n exit 1\n}\nrg -q 'registerOperatorTarget' src/ext.c || {\n echo 'registerOperatorTarget api check failed' >&2\n exit 1\n}\nrg -q 'llm_query|llm_status|TED_LLM_API_URL|DEEPSEEK_API_KEY' src/llm.c src/ted.h || {\n echo 'llm bridge check failed' >&2\n exit 1\n}\nrg -q 'tree on|tree off|tree status|treesitter_set_enabled' src/command.c src/treesitter.c || {\n echo 'tree-sitter command bridge check failed' >&2\n exit 1\n}\nrg -q 'syntax_register_language' src/syntax.c src/ted.h || {\n echo 'syntax_register_language check failed' >&2\n exit 1\n}\nrg -q 'onConflict must be override/skip/error' src/ext.c || {\n echo 'registerLanguage conflict policy check failed' >&2\n exit 1\n}\nrg -q 'stringDelims' src/ext.c || {\n echo 'registerLanguage stringDelims check failed' >&2\n exit 1\n}\nrg -q 'singleComments' src/ext.c || {\n echo 'registerLanguage singleComments check failed' >&2\n exit 1\n}\nrg -q 'multiCommentPairs' src/ext.c || {\n echo 'registerLanguage multiCommentPairs check failed' >&2\n exit 1\n}\nrg -q 'numberMode' src/ext.c || {\n echo 'registerLanguage numberMode check failed' >&2\n exit 1\n}\nrg -q 'identifierExtras' src/ext.c || {\n echo 'registerLanguage identifierExtras check failed' >&2\n exit 1\n}\nrg -q 'multiLineStrings' src/ext.c || {\n echo 'registerLanguage multiLineStrings check failed' >&2\n exit 1\n}\nrg -q 'ext_list_loaded_plugins' src/ext.c src/ted.h || {\n echo 'plugin list api check failed' >&2\n exit 1\n}\nrg -q 'syntax_highlight_line_impl' src/syntax.c || {\n echo 'cross-line syntax state check failed' >&2\n exit 1\n}\nrg -q 'consume_identifier|token_state_t' src/syntax.c || {\n echo 'tokenizer core extraction check failed' >&2\n exit 1\n}\nrg -q 'MODE_OPERATOR_PENDING|input_handle_operator_pending' src/ted.h src/input.c src/editor.c || {\n echo 'operator-pending mode check failed' >&2\n exit 1\n}\nrg -q 'op_apply_inner_word|op_apply_to_eol' src/input.c || {\n echo 'operator motion/textobject check failed' >&2\n exit 1\n}\nrg -q 'op_apply_motion_builtin|No next word|No previous word' src/input.c || {\n echo 'builtin motion check failed' >&2\n exit 1\n}\nrg -q 'op_apply_text_object_builtin|op_find_quote_pair_around|op_find_paren_pair_around' src/input.c || {\n echo 'builtin textobject check failed' >&2\n exit 1\n}\nrg -q 'normal_count|pending_count|count:' src/input.c src/ted.h || {\n echo 'operator count check failed' >&2\n exit 1\n}\nrg -q 'input_register_operator_target|ext_invoke_operator_target' src/input.c src/ext.c src/ted.h || {\n echo 'operator target extension check failed' >&2\n exit 1\n}\nrg -q '__ted_count' src/ext.c docs/sample-plugin-operator-target.js || {\n echo 'operator target count bridge check failed' >&2\n exit 1\n}\nrg -q 'treesitter_highlight_buffer|ts_parser_parse_string|tree_sitter_c|ts_parser_set_language|ts_walk_and_highlight_c|ts_map_c_node|call_expression|preproc_' src/treesitter.c src/display.c || {\n echo 'tree-sitter runtime integration check failed' >&2\n exit 1\n}\nrg -q 'in_string' src/syntax.c || {\n echo 'cross-line string state check failed' >&2\n exit 1\n}\nrg -q 'syntax_highlight_buffer' src/display.c || {\n echo 'display rehighlight path check failed' >&2\n exit 1\n}\n\nprintf '[5/5] narrow terminal startup (libiui grid regression)\\n'\nif command -v script >/dev/null 2>&1 && command -v timeout >/dev/null 2>&1; then\n timeout 10 script -qefc \"stty cols 44 rows 18; printf 'q' | ./bin/ted >/dev/null 2>&1\" /dev/null || {\n echo 'narrow terminal startup check failed' >&2\n exit 1\n }\nelse\n echo 'skip narrow terminal startup check (script/timeout missing)'\nfi\n\necho 'smoke regression passed'\n"}, "5a626936db6024dd664eb339e2e148043f600ca9": {"t": 1785758285.0068226, "n": 4286, "h": "c33941dd376496e0", "c": "#!/usr/bin/env sh\nset -eu\n\nprintf '[1/4] build\\n'\nmkdir -p ./tmp\nmake -j4 >/dev/null\n\nprintf '[2/4] help output\\n'\nHELP_OUT=\"$(./bin/ted --help 2>&1)\"\nprintf '%s\\n' \"$HELP_OUT\" | rg -q 'TED - Termux Editor' || {\n echo 'help output check failed: missing title' >&2\n exit 1\n}\n\nprintf '[3/4] agent command availability (source check)\\n'\nrg -q 'cmd_agent|\\\"agent\\\"' src/command.c || {\n echo 'agent command check failed' >&2\n exit 1\n}\nrg -q 'cmd_js|\\\"js\\\"' src/command.c || {\n echo 'js command check failed' >&2\n exit 1\n}\nrg -q 'cmd_source|\\\"source\\\"' src/command.c || {\n echo 'source command check failed' >&2\n exit 1\n}\nrg -q 'cmd_langs|\\\"langs\\\"' src/command.c || {\n echo 'langs command check failed' >&2\n exit 1\n}\nrg -q 'cmd_llm|\\\"llm\\\"|cmd_llmcopy|\\\"llmcopy\\\"|cmd_llmshow|\\\"llmshow\\\"' src/command.c || {\n echo 'llm command check failed' >&2\n exit 1\n}\nrg -q 'cmd_targets|\\\"targets\\\"' src/command.c || {\n echo 'targets command check failed' >&2\n exit 1\n}\n\nprintf '[4/4] js extension api availability (source check)\\n'\nrg -q 'registerLanguage' src/ext.c || {\n echo 'registerLanguage api check failed' >&2\n exit 1\n}\nrg -q 'registerOperatorTarget' src/ext.c || {\n echo 'registerOperatorTarget api check failed' >&2\n exit 1\n}\nrg -q 'llm_query|llm_status|TED_LLM_API_URL|DEEPSEEK_API_KEY' src/llm.c src/ted.h || {\n echo 'llm bridge check failed' >&2\n exit 1\n}\nrg -q 'tree on|tree off|tree status|treesitter_set_enabled' src/command.c src/treesitter.c || {\n echo 'tree-sitter command bridge check failed' >&2\n exit 1\n}\nrg -q 'syntax_register_language' src/syntax.c src/ted.h || {\n echo 'syntax_register_language check failed' >&2\n exit 1\n}\nrg -q 'onConflict must be override/skip/error' src/ext.c || {\n echo 'registerLanguage conflict policy check failed' >&2\n exit 1\n}\nrg -q 'stringDelims' src/ext.c || {\n echo 'registerLanguage stringDelims check failed' >&2\n exit 1\n}\nrg -q 'singleComments' src/ext.c || {\n echo 'registerLanguage singleComments check failed' >&2\n exit 1\n}\nrg -q 'multiCommentPairs' src/ext.c || {\n echo 'registerLanguage multiCommentPairs check failed' >&2\n exit 1\n}\nrg -q 'numberMode' src/ext.c || {\n echo 'registerLanguage numberMode check failed' >&2\n exit 1\n}\nrg -q 'identifierExtras' src/ext.c || {\n echo 'registerLanguage identifierExtras check failed' >&2\n exit 1\n}\nrg -q 'multiLineStrings' src/ext.c || {\n echo 'registerLanguage multiLineStrings check failed' >&2\n exit 1\n}\nrg -q 'ext_list_loaded_plugins' src/ext.c src/ted.h || {\n echo 'plugin list api check failed' >&2\n exit 1\n}\nrg -q 'syntax_highlight_line_impl' src/syntax.c || {\n echo 'cross-line syntax state check failed' >&2\n exit 1\n}\nrg -q 'consume_identifier|token_state_t' src/syntax.c || {\n echo 'tokenizer core extraction check failed' >&2\n exit 1\n}\nrg -q 'MODE_OPERATOR_PENDING|input_handle_operator_pending' src/ted.h src/input.c src/editor.c || {\n echo 'operator-pending mode check failed' >&2\n exit 1\n}\nrg -q 'op_apply_inner_word|op_apply_to_eol' src/input.c || {\n echo 'operator motion/textobject check failed' >&2\n exit 1\n}\nrg -q 'op_apply_motion_builtin|No next word|No previous word' src/input.c || {\n echo 'builtin motion check failed' >&2\n exit 1\n}\nrg -q 'op_apply_text_object_builtin|op_find_quote_pair_around|op_find_paren_pair_around' src/input.c || {\n echo 'builtin textobject check failed' >&2\n exit 1\n}\nrg -q 'normal_count|pending_count|count:' src/input.c src/ted.h || {\n echo 'operator count check failed' >&2\n exit 1\n}\nrg -q 'input_register_operator_target|ext_invoke_operator_target' src/input.c src/ext.c src/ted.h || {\n echo 'operator target extension check failed' >&2\n exit 1\n}\nrg -q '__ted_count' src/ext.c docs/sample-plugin-operator-target.js || {\n echo 'operator target count bridge check failed' >&2\n exit 1\n}\nrg -q 'treesitter_highlight_buffer|ts_parser_parse_string|tree_sitter_c|ts_parser_set_language|ts_walk_and_highlight_c|ts_map_c_node|call_expression|preproc_' src/treesitter.c src/display.c || {\n echo 'tree-sitter runtime integration check failed' >&2\n exit 1\n}\nrg -q 'in_string' src/syntax.c || {\n echo 'cross-line string state check failed' >&2\n exit 1\n}\nrg -q 'syntax_highlight_buffer' src/display.c || {\n echo 'display rehighlight path check failed' >&2\n exit 1\n}\n\necho 'smoke regression passed'\n"}, "05ac831afc6c9b68f0cdbc27e1ec8a25aa764b1c": {"t": 1785758286.4628165, "n": 4011, "h": "5215886f85843030", "c": "#!/usr/bin/env sh\nset -eu\n\nprintf '[1/4] build\\n'\nmkdir -p ./tmp\nmake -j4 >/dev/null\n\nprintf '[2/4] help output\\n'\nHELP_OUT=\"$(./bin/ted --help 2>&1)\"\nprintf '%s\\n' \"$HELP_OUT\" | rg -q 'TED - Termux Editor' || {\n echo 'help output check failed: missing title' >&2\n exit 1\n}\n\nprintf '[3/4] agent command availability (source check)\\n'\nrg -q 'cmd_agent|\\\"agent\\\"' src/command.c || {\n echo 'agent command check failed' >&2\n exit 1\n}\nrg -q 'cmd_js|\\\"js\\\"' src/command.c || {\n echo 'js command check failed' >&2\n exit 1\n}\nrg -q 'cmd_source|\\\"source\\\"' src/command.c || {\n echo 'source command check failed' >&2\n exit 1\n}\nrg -q 'cmd_langs|\\\"langs\\\"' src/command.c || {\n echo 'langs command check failed' >&2\n exit 1\n}\nrg -q 'cmd_targets|\\\"targets\\\"' src/command.c || {\n echo 'targets command check failed' >&2\n exit 1\n}\n\nprintf '[4/4] js extension api availability (source check)\\n'\nrg -q 'registerLanguage' src/ext.c || {\n echo 'registerLanguage api check failed' >&2\n exit 1\n}\nrg -q 'registerOperatorTarget' src/ext.c || {\n echo 'registerOperatorTarget api check failed' >&2\n exit 1\n}\nrg -q 'tree on|tree off|tree status|treesitter_set_enabled' src/command.c src/treesitter.c || {\n echo 'tree-sitter command bridge check failed' >&2\n exit 1\n}\nrg -q 'syntax_register_language' src/syntax.c src/ted.h || {\n echo 'syntax_register_language check failed' >&2\n exit 1\n}\nrg -q 'onConflict must be override/skip/error' src/ext.c || {\n echo 'registerLanguage conflict policy check failed' >&2\n exit 1\n}\nrg -q 'stringDelims' src/ext.c || {\n echo 'registerLanguage stringDelims check failed' >&2\n exit 1\n}\nrg -q 'singleComments' src/ext.c || {\n echo 'registerLanguage singleComments check failed' >&2\n exit 1\n}\nrg -q 'multiCommentPairs' src/ext.c || {\n echo 'registerLanguage multiCommentPairs check failed' >&2\n exit 1\n}\nrg -q 'numberMode' src/ext.c || {\n echo 'registerLanguage numberMode check failed' >&2\n exit 1\n}\nrg -q 'identifierExtras' src/ext.c || {\n echo 'registerLanguage identifierExtras check failed' >&2\n exit 1\n}\nrg -q 'multiLineStrings' src/ext.c || {\n echo 'registerLanguage multiLineStrings check failed' >&2\n exit 1\n}\nrg -q 'ext_list_loaded_plugins' src/ext.c src/ted.h || {\n echo 'plugin list api check failed' >&2\n exit 1\n}\nrg -q 'syntax_highlight_line_impl' src/syntax.c || {\n echo 'cross-line syntax state check failed' >&2\n exit 1\n}\nrg -q 'consume_identifier|token_state_t' src/syntax.c || {\n echo 'tokenizer core extraction check failed' >&2\n exit 1\n}\nrg -q 'MODE_OPERATOR_PENDING|input_handle_operator_pending' src/ted.h src/input.c src/editor.c || {\n echo 'operator-pending mode check failed' >&2\n exit 1\n}\nrg -q 'op_apply_inner_word|op_apply_to_eol' src/input.c || {\n echo 'operator motion/textobject check failed' >&2\n exit 1\n}\nrg -q 'op_apply_motion_builtin|No next word|No previous word' src/input.c || {\n echo 'builtin motion check failed' >&2\n exit 1\n}\nrg -q 'op_apply_text_object_builtin|op_find_quote_pair_around|op_find_paren_pair_around' src/input.c || {\n echo 'builtin textobject check failed' >&2\n exit 1\n}\nrg -q 'normal_count|pending_count|count:' src/input.c src/ted.h || {\n echo 'operator count check failed' >&2\n exit 1\n}\nrg -q 'input_register_operator_target|ext_invoke_operator_target' src/input.c src/ext.c src/ted.h || {\n echo 'operator target extension check failed' >&2\n exit 1\n}\nrg -q '__ted_count' src/ext.c docs/sample-plugin-operator-target.js || {\n echo 'operator target count bridge check failed' >&2\n exit 1\n}\nrg -q 'treesitter_highlight_buffer|ts_parser_parse_string|tree_sitter_c|ts_parser_set_language|ts_walk_and_highlight_c|ts_map_c_node|call_expression|preproc_' src/treesitter.c src/display.c || {\n echo 'tree-sitter runtime integration check failed' >&2\n exit 1\n}\nrg -q 'in_string' src/syntax.c || {\n echo 'cross-line string state check failed' >&2\n exit 1\n}\nrg -q 'syntax_highlight_buffer' src/display.c || {\n echo 'display rehighlight path check failed' >&2\n exit 1\n}\n\necho 'smoke regression passed'\n"}}}} |