{"receipt_id":"base-1","seq":1,"branch_id":"base","kind":"command","cmd":"python -c 'import base64; from pathlib import Path; Path('\"'\"'/tmp/receipts-3yourmind__django-migration-linter-258-test.patch'\"'\"').write_bytes(base64.b64decode('\"'\"'ZGlmZiAtLWdpdCBhL3Rlc3RzL3VuaXQvdGVzdF9zcWxfYW5hbHlzZXIucHkgYi90ZXN0cy91bml0L3Rlc3Rfc3FsX2FuYWx5c2VyLnB5CmluZGV4IGQ3MzQ5ZmMuLjAxMmQ1M2MgMTAwNjQ0Ci0tLSBhL3Rlc3RzL3VuaXQvdGVzdF9zcWxfYW5hbHlzZXIucHkKKysrIGIvdGVzdHMvdW5pdC90ZXN0X3NxbF9hbmFseXNlci5weQpAQCAtMjk3LDYgKzI5NywxMCBAQCBjbGFzcyBQb3N0Z3Jlc3FsQW5hbHlzZXJUZXN0Q2FzZShTcWxBbmFseXNlclRlc3RDYXNlKToKICAgICAgICAgc3FsID0gIkNSRUFURSBVTklRVUUgSU5ERVggQ09OQ1VSUkVOVExZIHRpdGxlX2lkeCBPTiBmaWxtcyAodGl0bGUpOyIKICAgICAgICAgc2VsZi5hc3NlcnRWYWxpZFNxbChzcWwpCiAKKyAgICBkZWYgdGVzdF9jcmVhdGVfaW5kZXhfY29uY3VycmVudGx5X3doZXJlKHNlbGYpOgorICAgICAgICBzcWwgPSAnQ1JFQVRFIElOREVYIENPTkNVUlJFTlRMWSAiaW5kZXhfbmFtZSIgT04gInRhYmxlX25hbWUiICgiYV9jb2x1bW4iKSBXSEVSRSAoInNvbWVfY29sdW1uIiBJUyBOT1QgTlVMTCk7JworICAgICAgICBzZWxmLmFzc2VydFZhbGlkU3FsKHNxbCkKKwogICAgIGRlZiB0ZXN0X2Ryb3BfaW5kZXhfbm9uX2NvbmN1cnJlbnRseShzZWxmKToKICAgICAgICAgc3FsID0gIkRST1AgSU5ERVggT04gZmlsbXMiCiAgICAgICAgIHNlbGYuYXNzZXJ0V2FybmluZ1NxbChzcWwpCg=='\"'\"'))'","path":null,"exit_code":0,"stdout_tail":"","stderr_tail":"","stdout_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","log_path":"~/dev/nebius-hackathon/pilot/v2-P/3yourmind__django-migration-linter-258/runs/pilot-3yourmind__django-migration-linter-258-ad18c930bb/logs/base/base-1.log","tree_digest":null,"tree_download_s":null,"started_at":"2026-10-03T01:20:44.048358Z","duration_s":0.025121,"timed_out":false,"image_before":"87706c2c-4faa-3fd6-816f-97f89170a8cd","image_after":"63441d95-dec4-40b7-9d95-4632c96ebd10","junit":null,"diff":null,"patch_sha256":null,"dropped_paths":[],"snapshot_sha":null}
{"receipt_id":"base-2","seq":2,"branch_id":"base","kind":"command","cmd":"git apply /tmp/receipts-3yourmind__django-migration-linter-258-test.patch","path":null,"exit_code":0,"stdout_tail":"","stderr_tail":"","stdout_sha256":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","log_path":"~/dev/nebius-hackathon/pilot/v2-P/3yourmind__django-migration-linter-258/runs/pilot-3yourmind__django-migration-linter-258-ad18c930bb/logs/base/base-2.log","tree_digest":null,"tree_download_s":null,"started_at":"2026-10-03T01:20:45.842528Z","duration_s":0.0038729999999999997,"timed_out":false,"image_before":"63441d95-dec4-40b7-9d95-4632c96ebd10","image_after":"b0f71a4b-f374-4859-9bdb-c0341e59f366","junit":null,"diff":null,"patch_sha256":null,"dropped_paths":[],"snapshot_sha":null}
{"receipt_id":"base-3","seq":3,"branch_id":"base","kind":"command","cmd":"/opt/receipts-1488eec9a68442339f4b7c8421d0bebf/bin/busybox mkdir -p /opt/receipts/reports && python -I /opt/receipts-1488eec9a68442339f4b7c8421d0bebf/receipts_pytest.py --no-header -rA --tb=line --color=no -p no:cacheprovider -W ignore::DeprecationWarning tests/unit/test_sql_analyser.py -o junit_family=xunit1 -p no:cacheprovider -rA --continue-on-collection-errors --junitxml=/opt/receipts/reports/base-3.xml","path":null,"exit_code":1,"stdout_tail":"============================= test session starts ==============================\ncollected 37 items\n\ntests/unit/test_sql_analyser.py .....................F...............    [100%]\n\n=================================== FAILURES ===================================\nE   AssertionError: 0 != 1 : Found errors in sql: [Issue(code='NOT_NULL', message='NOT NULL constraint on columns', table=None, column=None)]\n/usr/local/lib/python3.10/unittest/case.py:838: AssertionError: 0 != 1 : Found errors in sql: [Issue(code='NOT_NULL', message='NOT NULL constraint on columns', table=None, column=None)]\n==================================== PASSES ====================================\n------------- generated xml file: /opt/receipts/reports/base-3.xml -------------\n=========================== short test summary info ============================\nPASSED tests/unit/test_sql_analyser.py::MySqlAnalyserTestCase::test_add_many_to_many_field\nPASSED tests/unit/test_sql_analyser.py::MySqlAnalyserTestCase::test_add_not_null\nPASSED tests/unit/test_sql_analyser.py::MySqlAnalyserTestCase::test_add_not_null_followed_by_default\nPASSED tests/unit/test_sql_analyser.py::MySqlAnalyserTestCase::test_alter_column\nPASSED tests/unit/test_sql_analyser.py::MySqlAnalyserTestCase::test_drop_not_null\nPASSED tests/unit/test_sql_analyser.py::MySqlAnalyserTestCase::test_make_column_not_null_with_django_default\nPASSED tests/unit/test_sql_analyser.py::MySqlAnalyserTestCase::test_make_column_not_null_with_lib_default\nPASSED tests/unit/test_sql_analyser.py::MySqlAnalyserTestCase::test_unique_index\nPASSED tests/unit/test_sql_analyser.py::MySqlAnalyserTestCase::test_unique_together\nPASSED tests/unit/test_sql_analyser.py::SqliteAnalyserTestCase::test_add_many_to_many_field\nPASSED tests/unit/test_sql_analyser.py::SqliteAnalyserTestCase::test_add_not_null\nPASSED tests/unit/test_sql_analyser.py::SqliteAnalyserTestCase::test_alter_column\nPASSED tests/unit/test_sql_analyser.py::SqliteAnalyserTestCase::test_alter_column_after_django22\nPASSED tests/unit/test_sql_analyser.py::SqliteAnalyserTestCase::test_create_table_with_not_null\nPASSED tests/unit/test_sql_analyser.py::SqliteAnalyserTestCase::test_drop_not_null\nPASSED tests/unit/test_sql_analyser.py::SqliteAnalyserTestCase::test_rename_table\nPASSED tests/unit/test_sql_analyser.py::SqliteAnalyserTestCase::test_unique_index\nPASSED tests/unit/test_sql_analyser.py::SqliteAnalyserTestCase::test_unique_together\nPASSED tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_add_many_to_many_field\nPASSED tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_alter_column\nPASSED tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_create_index_concurrently\nPASSED tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_create_index_non_concurrently\nPASSED tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_create_index_non_concurrently_with_table_creation\nPASSED tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_drop_index_concurrently\nPASSED tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_drop_index_non_concurrently\nPASSED tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_drop_not_null\nPASSED tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_field_to_not_null_with_dropped_default\nPASSED tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_make_column_not_null_with_django_default\nPASSED tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_make_column_not_null_with_lib_default\nPASSED tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_not_null_followed_by_default\nPASSED tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_onetoonefield_to_not_null\nPASSED tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_reindex\nPASSED tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_unique_index\nPASSED tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_unique_together\nPASSED tests/unit/test_sql_analyser.py::SqlUtilsTestCase::test_unknown_analyser_string\nPASSED tests/unit/test_sql_analyser.py::SqlUtilsTestCase::test_unsupported_db_vendor\nFAILED tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_create_index_concurrently_where\n========================= 1 failed, 36 passed in 0.48s =========================\n","stderr_tail":"","stdout_sha256":"574373df6fe07be2d88624987d2743e68ec77528ff6107eb4032de40598a216c","log_path":"~/dev/nebius-hackathon/pilot/v2-P/3yourmind__django-migration-linter-258/runs/pilot-3yourmind__django-migration-linter-258-ad18c930bb/logs/base/base-3.log","tree_digest":"0b4741978bb2d6588461cae88d0964d808ffd1417446da901680968418a89e24","tree_download_s":1.8968824578914791,"started_at":"2026-10-03T01:20:47.584734Z","duration_s":0.922639,"timed_out":false,"image_before":"b0f71a4b-f374-4859-9bdb-c0341e59f366","image_after":"bfee3293-13a8-40f2-bf99-1844f0231613","junit":{"passed":["tests/unit/test_sql_analyser.py::MySqlAnalyserTestCase::test_add_many_to_many_field","tests/unit/test_sql_analyser.py::MySqlAnalyserTestCase::test_add_not_null","tests/unit/test_sql_analyser.py::MySqlAnalyserTestCase::test_add_not_null_followed_by_default","tests/unit/test_sql_analyser.py::MySqlAnalyserTestCase::test_alter_column","tests/unit/test_sql_analyser.py::MySqlAnalyserTestCase::test_drop_not_null","tests/unit/test_sql_analyser.py::MySqlAnalyserTestCase::test_make_column_not_null_with_django_default","tests/unit/test_sql_analyser.py::MySqlAnalyserTestCase::test_make_column_not_null_with_lib_default","tests/unit/test_sql_analyser.py::MySqlAnalyserTestCase::test_unique_index","tests/unit/test_sql_analyser.py::MySqlAnalyserTestCase::test_unique_together","tests/unit/test_sql_analyser.py::SqliteAnalyserTestCase::test_add_many_to_many_field","tests/unit/test_sql_analyser.py::SqliteAnalyserTestCase::test_add_not_null","tests/unit/test_sql_analyser.py::SqliteAnalyserTestCase::test_alter_column","tests/unit/test_sql_analyser.py::SqliteAnalyserTestCase::test_alter_column_after_django22","tests/unit/test_sql_analyser.py::SqliteAnalyserTestCase::test_create_table_with_not_null","tests/unit/test_sql_analyser.py::SqliteAnalyserTestCase::test_drop_not_null","tests/unit/test_sql_analyser.py::SqliteAnalyserTestCase::test_rename_table","tests/unit/test_sql_analyser.py::SqliteAnalyserTestCase::test_unique_index","tests/unit/test_sql_analyser.py::SqliteAnalyserTestCase::test_unique_together","tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_add_many_to_many_field","tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_alter_column","tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_create_index_concurrently","tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_create_index_non_concurrently","tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_create_index_non_concurrently_with_table_creation","tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_drop_index_concurrently","tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_drop_index_non_concurrently","tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_drop_not_null","tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_field_to_not_null_with_dropped_default","tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_make_column_not_null_with_django_default","tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_make_column_not_null_with_lib_default","tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_not_null_followed_by_default","tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_onetoonefield_to_not_null","tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_reindex","tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_unique_index","tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_unique_together","tests/unit/test_sql_analyser.py::SqlUtilsTestCase::test_unknown_analyser_string","tests/unit/test_sql_analyser.py::SqlUtilsTestCase::test_unsupported_db_vendor"],"failed":["tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_create_index_concurrently_where"],"errors":[],"skipped":[],"collection_errors":[],"failure_text":{"tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_create_index_concurrently_where":"AssertionError: 0 != 1 : Found errors in sql: [Issue(code='NOT_NULL', message='NOT NULL constraint on columns', table=None, column=None)]\nE   AssertionError: 0 != 1 : Found errors in sql: [Issue(code='NOT_NULL', message='NOT NULL constraint on columns', table=None, column=None)]"}},"diff":null,"patch_sha256":null,"dropped_paths":[],"snapshot_sha":null}
{"receipt_id":"base-4","seq":4,"branch_id":"base","kind":"command","cmd":"/opt/receipts-a76888c3f07249afa1dd18768f1126d5/bin/busybox mkdir -p /opt/receipts/reports && python -I /opt/receipts-a76888c3f07249afa1dd18768f1126d5/receipts_pytest.py --no-header -rA --tb=line --color=no -p no:cacheprovider -W ignore::DeprecationWarning tests/unit/test_sql_analyser.py -o junit_family=xunit1 -p no:cacheprovider -rA --continue-on-collection-errors --junitxml=/opt/receipts/reports/base-4.xml","path":null,"exit_code":1,"stdout_tail":"============================= test session starts ==============================\ncollected 37 items\n\ntests/unit/test_sql_analyser.py .....................F...............    [100%]\n\n=================================== FAILURES ===================================\nE   AssertionError: 0 != 1 : Found errors in sql: [Issue(code='NOT_NULL', message='NOT NULL constraint on columns', table=None, column=None)]\n/usr/local/lib/python3.10/unittest/case.py:838: AssertionError: 0 != 1 : Found errors in sql: [Issue(code='NOT_NULL', message='NOT NULL constraint on columns', table=None, column=None)]\n==================================== PASSES ====================================\n------------- generated xml file: /opt/receipts/reports/base-4.xml -------------\n=========================== short test summary info ============================\nPASSED tests/unit/test_sql_analyser.py::MySqlAnalyserTestCase::test_add_many_to_many_field\nPASSED tests/unit/test_sql_analyser.py::MySqlAnalyserTestCase::test_add_not_null\nPASSED tests/unit/test_sql_analyser.py::MySqlAnalyserTestCase::test_add_not_null_followed_by_default\nPASSED tests/unit/test_sql_analyser.py::MySqlAnalyserTestCase::test_alter_column\nPASSED tests/unit/test_sql_analyser.py::MySqlAnalyserTestCase::test_drop_not_null\nPASSED tests/unit/test_sql_analyser.py::MySqlAnalyserTestCase::test_make_column_not_null_with_django_default\nPASSED tests/unit/test_sql_analyser.py::MySqlAnalyserTestCase::test_make_column_not_null_with_lib_default\nPASSED tests/unit/test_sql_analyser.py::MySqlAnalyserTestCase::test_unique_index\nPASSED tests/unit/test_sql_analyser.py::MySqlAnalyserTestCase::test_unique_together\nPASSED tests/unit/test_sql_analyser.py::SqliteAnalyserTestCase::test_add_many_to_many_field\nPASSED tests/unit/test_sql_analyser.py::SqliteAnalyserTestCase::test_add_not_null\nPASSED tests/unit/test_sql_analyser.py::SqliteAnalyserTestCase::test_alter_column\nPASSED tests/unit/test_sql_analyser.py::SqliteAnalyserTestCase::test_alter_column_after_django22\nPASSED tests/unit/test_sql_analyser.py::SqliteAnalyserTestCase::test_create_table_with_not_null\nPASSED tests/unit/test_sql_analyser.py::SqliteAnalyserTestCase::test_drop_not_null\nPASSED tests/unit/test_sql_analyser.py::SqliteAnalyserTestCase::test_rename_table\nPASSED tests/unit/test_sql_analyser.py::SqliteAnalyserTestCase::test_unique_index\nPASSED tests/unit/test_sql_analyser.py::SqliteAnalyserTestCase::test_unique_together\nPASSED tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_add_many_to_many_field\nPASSED tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_alter_column\nPASSED tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_create_index_concurrently\nPASSED tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_create_index_non_concurrently\nPASSED tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_create_index_non_concurrently_with_table_creation\nPASSED tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_drop_index_concurrently\nPASSED tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_drop_index_non_concurrently\nPASSED tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_drop_not_null\nPASSED tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_field_to_not_null_with_dropped_default\nPASSED tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_make_column_not_null_with_django_default\nPASSED tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_make_column_not_null_with_lib_default\nPASSED tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_not_null_followed_by_default\nPASSED tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_onetoonefield_to_not_null\nPASSED tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_reindex\nPASSED tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_unique_index\nPASSED tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_unique_together\nPASSED tests/unit/test_sql_analyser.py::SqlUtilsTestCase::test_unknown_analyser_string\nPASSED tests/unit/test_sql_analyser.py::SqlUtilsTestCase::test_unsupported_db_vendor\nFAILED tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_create_index_concurrently_where\n========================= 1 failed, 36 passed in 0.52s =========================\n","stderr_tail":"","stdout_sha256":"d693beb79d96fbd94e149e06f90bf6517adc3cfce001c5b5341d98a5ce3b5581","log_path":"~/dev/nebius-hackathon/pilot/v2-P/3yourmind__django-migration-linter-258/runs/pilot-3yourmind__django-migration-linter-258-ad18c930bb/logs/base/base-4.log","tree_digest":"0b4741978bb2d6588461cae88d0964d808ffd1417446da901680968418a89e24","tree_download_s":1.8930805420968682,"started_at":"2026-10-03T01:20:54.387348Z","duration_s":0.880323,"timed_out":false,"image_before":"bfee3293-13a8-40f2-bf99-1844f0231613","image_after":"affaee3e-75ed-423a-84b2-a1de362d933e","junit":{"passed":["tests/unit/test_sql_analyser.py::MySqlAnalyserTestCase::test_add_many_to_many_field","tests/unit/test_sql_analyser.py::MySqlAnalyserTestCase::test_add_not_null","tests/unit/test_sql_analyser.py::MySqlAnalyserTestCase::test_add_not_null_followed_by_default","tests/unit/test_sql_analyser.py::MySqlAnalyserTestCase::test_alter_column","tests/unit/test_sql_analyser.py::MySqlAnalyserTestCase::test_drop_not_null","tests/unit/test_sql_analyser.py::MySqlAnalyserTestCase::test_make_column_not_null_with_django_default","tests/unit/test_sql_analyser.py::MySqlAnalyserTestCase::test_make_column_not_null_with_lib_default","tests/unit/test_sql_analyser.py::MySqlAnalyserTestCase::test_unique_index","tests/unit/test_sql_analyser.py::MySqlAnalyserTestCase::test_unique_together","tests/unit/test_sql_analyser.py::SqliteAnalyserTestCase::test_add_many_to_many_field","tests/unit/test_sql_analyser.py::SqliteAnalyserTestCase::test_add_not_null","tests/unit/test_sql_analyser.py::SqliteAnalyserTestCase::test_alter_column","tests/unit/test_sql_analyser.py::SqliteAnalyserTestCase::test_alter_column_after_django22","tests/unit/test_sql_analyser.py::SqliteAnalyserTestCase::test_create_table_with_not_null","tests/unit/test_sql_analyser.py::SqliteAnalyserTestCase::test_drop_not_null","tests/unit/test_sql_analyser.py::SqliteAnalyserTestCase::test_rename_table","tests/unit/test_sql_analyser.py::SqliteAnalyserTestCase::test_unique_index","tests/unit/test_sql_analyser.py::SqliteAnalyserTestCase::test_unique_together","tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_add_many_to_many_field","tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_alter_column","tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_create_index_concurrently","tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_create_index_non_concurrently","tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_create_index_non_concurrently_with_table_creation","tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_drop_index_concurrently","tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_drop_index_non_concurrently","tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_drop_not_null","tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_field_to_not_null_with_dropped_default","tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_make_column_not_null_with_django_default","tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_make_column_not_null_with_lib_default","tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_not_null_followed_by_default","tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_onetoonefield_to_not_null","tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_reindex","tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_unique_index","tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_unique_together","tests/unit/test_sql_analyser.py::SqlUtilsTestCase::test_unknown_analyser_string","tests/unit/test_sql_analyser.py::SqlUtilsTestCase::test_unsupported_db_vendor"],"failed":["tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_create_index_concurrently_where"],"errors":[],"skipped":[],"collection_errors":[],"failure_text":{"tests/unit/test_sql_analyser.py::PostgresqlAnalyserTestCase::test_create_index_concurrently_where":"AssertionError: 0 != 1 : Found errors in sql: [Issue(code='NOT_NULL', message='NOT NULL constraint on columns', table=None, column=None)]\nE   AssertionError: 0 != 1 : Found errors in sql: [Issue(code='NOT_NULL', message='NOT NULL constraint on columns', table=None, column=None)]"}},"diff":null,"patch_sha256":null,"dropped_paths":[],"snapshot_sha":null}
{"receipt_id":"base-5","seq":5,"branch_id":"base","kind":"command","cmd":"python -c 'import base64\nimport hashlib\nimport json\nimport os\nfrom pathlib import Path\n\npayload = json.loads(base64.b64decode('\"'\"'eyJ0ZXN0X2ZpbGVzIjpbInRlc3RzL3VuaXQvdGVzdF9zcWxfYW5hbHlzZXIucHkiXSwidGVzdF9yb290cyI6WyJ0ZXN0cy91bml0Il0sImNvbmZpZ19uYW1lcyI6WyIucHl0ZXN0LnRvbWwiLCJjb25mdGVzdC5weSIsInB5cHJvamVjdC50b21sIiwicHl0ZXN0LmluaSIsInB5dGVzdC50b21sIiwic2V0dXAuY2ZnIiwidG94LmluaSJdfQ=='\"'\"'))\nexcluded = {'\"'\"'.git'\"'\"', '\"'\"'.venv'\"'\"', '\"'\"'__pycache__'\"'\"', '\"'\"'site-packages'\"'\"'}\n\ndef digest(path):\n    return hashlib.sha256(path.read_bytes()).hexdigest()\n\ntests = {}\nfor item in payload['\"'\"'test_files'\"'\"']:\n    path = Path(item)\n    if path.is_file():\n        tests[path.as_posix()] = digest(path)\nfor item in payload['\"'\"'test_roots'\"'\"']:\n    root = Path(item)\n    if not root.is_dir():\n        continue\n    for directory, names, filenames in os.walk(root, followlinks=False):\n        names[:] = sorted(name for name in names if name not in excluded)\n        for filename in sorted(filenames):\n            path = Path(directory, filename)\n            if path.is_file():\n                tests[path.as_posix()] = digest(path)\n\nconfigs = {}\nfor directory, names, filenames in os.walk('\"'\"'.'\"'\"', followlinks=False):\n    names[:] = sorted(name for name in names if name not in excluded)\n    for filename in sorted(filenames):\n        if filename not in payload['\"'\"'config_names'\"'\"']:\n            continue\n        path = Path(directory, filename)\n        rendered = path.as_posix()\n        rendered = rendered[2:] if rendered.startswith('\"'\"'./'\"'\"') else rendered\n        configs[rendered] = digest(path)\n\nprint(json.dumps({'\"'\"'test_digests'\"'\"': tests, '\"'\"'pytest_config_digests'\"'\"': configs}, sort_keys=True))\n'","path":null,"exit_code":0,"stdout_tail":"{\"pytest_config_digests\": {\"setup.cfg\": \"d11f8ab4c8277d78931a76a95dbe4275652accfa25d06c13f9ffd336ae646e20\", \"tox.ini\": \"8a658aef9fbc6de9c20cef305d856b2e172c8b3b21eb86e83565957c164f334f\"}, \"test_digests\": {\"tests/unit/__init__.py\": \"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855\", \"tests/unit/test_linter.py\": \"57a34246fae6fc20a85d910b1cfd725bda84778a10bb2e15a049f7f009e0f5b1\", \"tests/unit/test_sql_analyser.py\": \"cd135e2a5aaeef65cc18e811212e6b3924d051ca83e515fdd6d2979ed353fd70\", \"tests/unit/test_utils.py\": \"606f005e46d08bd8ac2e3b4dd760039db54774f1c56a8f76ab3e603b22ceaabf\"}}\n","stderr_tail":"","stdout_sha256":"955f2342192f6ca4e8f961090cf1de38b148778c867bd09704d5de3d46f56e5f","log_path":"~/dev/nebius-hackathon/pilot/v2-P/3yourmind__django-migration-linter-258/runs/pilot-3yourmind__django-migration-linter-258-ad18c930bb/logs/base/base-5.log","tree_digest":null,"tree_download_s":null,"started_at":"2026-10-03T01:20:59.727407Z","duration_s":0.034027999999999996,"timed_out":false,"image_before":"affaee3e-75ed-423a-84b2-a1de362d933e","image_after":"d62f4473-dd04-48cf-b568-8eb06fa5847a","junit":null,"diff":null,"patch_sha256":null,"dropped_paths":[],"snapshot_sha":null}
{"receipt_id":"base-6","seq":6,"branch_id":"base","kind":"command","cmd":"python -c '# Runs inside the task sandbox, so it must work on Python 3.7.\npackages = set()\ntry:\n    import importlib.metadata as metadata\nexcept ImportError:\n    import pkg_resources\n\n    for dist in pkg_resources.working_set:\n        packages.add(dist.project_name + \"==\" + dist.version)\nelse:\n    for distribution in metadata.distributions():\n        name = distribution.metadata.get(\"Name\")\n        if name:\n            packages.add(name + \"==\" + distribution.version)\nprint(\"\\n\".join(sorted(packages, key=str.casefold)))\n'","path":null,"exit_code":0,"stdout_tail":"appdirs==1.4.4\nasgiref==3.11.1\ncoverage==7.13.4\ndjango-add-default-value==0.10.0\ndjango-migration-linter==4.1.0\nDjango==5.2.11\nexceptiongroup==1.3.1\niniconfig==2.3.0\nmysqlclient==2.2.8\npackaging==25.0\npip==25.3\npluggy==1.6.0\npsycopg2==2.9.11\nPygments==2.19.2\npytest==9.0.2\nsetuptools==80.9.0\nsqlparse==0.5.5\ntoml==0.10.2\ntomli==2.3.0\ntyping_extensions==4.15.0\nwheel==0.45.1\n","stderr_tail":"","stdout_sha256":"3e7c0bcec8ad7411e0e772aa96850a1a7ee11e3d9d08b9532367fadfec82bf5b","log_path":"~/dev/nebius-hackathon/pilot/v2-P/3yourmind__django-migration-linter-258/runs/pilot-3yourmind__django-migration-linter-258-ad18c930bb/logs/base/base-6.log","tree_digest":null,"tree_download_s":null,"started_at":"2026-10-03T01:21:01.816509Z","duration_s":0.054751999999999995,"timed_out":false,"image_before":"d62f4473-dd04-48cf-b568-8eb06fa5847a","image_after":"3511df0f-c2d1-4624-8a70-f1347bc2554a","junit":null,"diff":null,"patch_sha256":null,"dropped_paths":[],"snapshot_sha":null}
{"receipt_id":"base-7","seq":7,"branch_id":"base","kind":"command","cmd":"git add -A && git -c user.name=receipts -c user.email=receipts@localhost commit -q --allow-empty -m \"receipts snapshot\" && git rev-parse HEAD","path":null,"exit_code":0,"stdout_tail":"c3b4fae6884cc85ea7867ba84601ace8e9588129\n","stderr_tail":"","stdout_sha256":"e10c79e8b9da56380c1e50dcaf601ec1af57611605ec52f58cfe01586cb70ea0","log_path":"~/dev/nebius-hackathon/pilot/v2-P/3yourmind__django-migration-linter-258/runs/pilot-3yourmind__django-migration-linter-258-ad18c930bb/logs/base/base-7.log","tree_digest":null,"tree_download_s":null,"started_at":"2026-10-03T01:21:03.609149Z","duration_s":0.021118,"timed_out":false,"image_before":"3511df0f-c2d1-4624-8a70-f1347bc2554a","image_after":"105c8b9d-40d9-4049-8a2c-8415da55a5b3","junit":null,"diff":null,"patch_sha256":null,"dropped_paths":[],"snapshot_sha":"c3b4fae6884cc85ea7867ba84601ace8e9588129"}
{"receipt_id":"base-8","seq":8,"branch_id":"base","kind":"command","cmd":"git -c core.quotePath=false ls-tree -z --name-only c3b4fae6884cc85ea7867ba84601ace8e9588129","path":null,"exit_code":0,"stdout_tail":".codecov.yml\u0000.github\u0000.gitignore\u0000.pre-commit-config.yaml\u0000CHANGELOG.md\u0000LICENSE\u0000MANIFEST.in\u0000README.md\u0000django_migration_linter\u0000docs\u0000manage.py\u0000setup.cfg\u0000setup.py\u0000tests\u0000tox.ini\u0000","stderr_tail":"","stdout_sha256":"0a1a14d4b241cb793472fbe26b800c443aa168c2f3d4af52a2688b45208098bf","log_path":"~/dev/nebius-hackathon/pilot/v2-P/3yourmind__django-migration-linter-258/runs/pilot-3yourmind__django-migration-linter-258-ad18c930bb/logs/base/base-8.log","tree_digest":null,"tree_download_s":null,"started_at":"2026-10-03T01:21:05.358442Z","duration_s":0.003829,"timed_out":false,"image_before":"105c8b9d-40d9-4049-8a2c-8415da55a5b3","image_after":"6ce1a9a4-7f18-486b-8b08-f38bdb344617","junit":null,"diff":null,"patch_sha256":null,"dropped_paths":[],"snapshot_sha":null}
{"receipt_id":"base-9","seq":9,"branch_id":"base","kind":"command","cmd":"git -c core.quotePath=false ls-tree -z --name-only c3b4fae6884cc85ea7867ba84601ace8e9588129:src","path":null,"exit_code":128,"stdout_tail":"","stderr_tail":"fatal: Not a valid object name c3b4fae6884cc85ea7867ba84601ace8e9588129:src\n","stdout_sha256":"1cb2510e449aa5726da8a94950576c2c57eeda34816b62ec246a87ef3079c197","log_path":"~/dev/nebius-hackathon/pilot/v2-P/3yourmind__django-migration-linter-258/runs/pilot-3yourmind__django-migration-linter-258-ad18c930bb/logs/base/base-9.log","tree_digest":null,"tree_download_s":null,"started_at":"2026-10-03T01:21:07.104238Z","duration_s":0.003316,"timed_out":false,"image_before":"6ce1a9a4-7f18-486b-8b08-f38bdb344617","image_after":"48f45310-9975-4438-b65d-0b5612c09f01","junit":null,"diff":null,"patch_sha256":null,"dropped_paths":[],"snapshot_sha":null}
