← Jobs
failure

test ant/term ↗

main @ 8381298b8ebd1da0bb8b1859487659a3d7386d50 · pipeline test #55 → · 2 more pipelines from this commit →
started 18 Sep 2026 19:00 UTC · ran for
10s, success 9s, success 10s, success 10s, success 12s, success 13s, success 13s, success 12s, success 12s, success 12s, success avg 11s ± 1s over the last 10 runs
fix: declare bce in terminfo now that erase ops actually implement it The bce (background-color-erase) capability was deliberately left undeclared with a comment saying erase-shaped ops always fill with COLOR_DEFAULT, not the active background -- true when written, stale the moment blank_cell(g) landed (see the commit that introduced it): clear_row/erase_line/erase_chars/insert_chars/delete_chars all fill via blank_cell(g), which reads g.cur_bg. Leaving a real capability undeclared isn't harmless: an ncurses-linked app checks terminfo before trusting erase-to-fill-with-background, and without bce falls back to manually padding a line with spaces instead of a plain erase -- starting from wherever the cursor already was, not column 1. On a full-width row that overshoots the last column by however far the cursor had already advanced, autowrapping and forcing a real scroll. This is the actual root cause of a real nvim session intermittently shifting the whole screen up by one row when entering command-line mode -- root-caused by replaying the exact captured bytes into a real tmux pane (whose terminfo correctly declares bce) and watching it reproduce the identical corruption, which places the defect in what term told nvim about itself, not in term's own byte handling.
$ test failure · exit 1 · raw
++ mktemp -d
+ checkout=/tmp/tmp.zhIUjnxCqh
+ trap 'rm -rf "$checkout"' EXIT
+ cp -R /var/lib/ci-tron/sources/78aae481655eae6b/. /tmp/tmp.zhIUjnxCqh
+ cd /tmp/tmp.zhIUjnxCqh
+ nix develop --command odin test . -all-packages
GC Warning: Could not open /proc/stat
[INFO ] --- [2026-09-18 19:01:00] Starting test runner with 12 threads. Set with -define:ODIN_TEST_THREADS=n.
[INFO ] --- [2026-09-18 19:01:00] The random seed sent to every test is: 1230930394610616. Set with -define:ODIN_TEST_RANDOM_SEED=n.
[INFO ] --- [2026-09-18 19:01:00] Memory tracking is enabled. Tests will log their memory usage if there's an issue.
[INFO ] --- [2026-09-18 19:01:00] < Final Mem/ Total Mem> < Peak Mem> (#Free/Alloc) :: [package.test_name]
Fontconfig error: No writable cache directories
/tmp/tmp.IAUvy5FHk8/.cache/fontconfig
/var/cache/fontconfig
/nix/store/7s879ridd8xfxajagsjzcb41vv1snp17-fc-cache
term: --class requires an argument
usage: term [--class <app_id>] [--working-directory <dir>] [-e <command> [args...]]
term: -e requires a command
usage: term [--class <app_id>] [--working-directory <dir>] [-e <command> [args...]]
term: --working-directory requires an argument
usage: term [--class <app_id>] [--working-directory <dir>] [-e <command> [args...]]
term: unknown flag "--bogus"
usage: term [--class <app_id>] [--working-directory <dir>] [-e <command> [args...]]
[ERROR] --- [2026-09-18 19:01:00] [terminfo_test.odin:308:test_terminfo_source_infocmp_round_trip()] expected state.exit_code == 0 to be true
[ERROR] --- [2026-09-18 19:01:00] [terminfo_test.odin:309:test_terminfo_source_infocmp_round_trip()] expected strings.contains(string(stdout), "smacs") to be true
[ERROR] --- [2026-09-18 19:01:00] [terminfo_test.odin:310:test_terminfo_source_infocmp_round_trip()] expected strings.contains(string(stdout), "setaf") to be true
[ERROR] --- [2026-09-18 19:01:00] [terminfo_test.odin:330:test_terminfo_source_tput_longname()] expected state.exit_code == 0 to be true
[ERROR] --- [2026-09-18 19:01:00] [terminfo_test.odin:331:test_terminfo_source_tput_longname()] expected strings.contains(string(stdout), "term terminal emulator with 256 colors") to be true
Finished 310 tests in 929.527189ms. 2 tests failed.
- main.test_terminfo_source_infocmp_round_trip expected strings.contains(string(stdout), "setaf") to be true
- main.test_terminfo_source_tput_longname expected strings.contains(string(stdout), "term terminal emulator with 256 colors") to be true
To run only the failed tests, use:
-define:ODIN_TEST_NAMES=main.test_terminfo_source_infocmp_round_trip,main.test_terminfo_source_tput_longname,
If your terminal supports OSC 52, you may use -define:ODIN_TEST_CLIPBOARD to have this copied directly to your clipboard.
+ rm -rf /tmp/tmp.zhIUjnxCqh
Artifacts

no artifacts