{ "package_version": "github_backlog_hf_space_v1", "generated_utc": "2026-07-08T05:44:15+00:00", "repo_id": "cjc0013/sqlalchemy-backlog-intelligence", "source_packet_version": "github_backlog_report_v0", "source_packet_hash": "9b4298e4dd5929576ce90bfe1cbb17896dee99542f68bd4e1e06570e458bbad7", "repo_name": "sqlalchemy/sqlalchemy", "summary": { "listed_open_issue_count": 186, "listed_open_pr_count": 32, "open_issue_count": 186, "open_pr_count": 32, "missing_issue_count": 0, "missing_pr_count": 0, "full_collection": true, "attention_queue_count": 218, "cluster_card_count": 19, "relationship_edge_count": 312, "work_thread_count": 175, "issue_collapse_group_count": 99, "issue_collapse_multi_issue_group_count": 37, "issue_collapse_pr_backed_group_count": 19, "issue_collapse_singleton_group_count": 62, "issue_collapse_issue_coverage_count": 186, "issue_collapse_full_coverage": true, "issue_collapse_reduction_percent": 46.8, "referenced_context_issue_count": 55, "referenced_context_pr_count": 9, "work_thread_active_issue_count": 186, "work_thread_active_pr_count": 32, "work_thread_full_active_coverage": true, "issue_bucket_counts": { "stale/low urgency": 157, "good volunteer slice": 36, "has linked PR": 16, "needs maintainer decision": 15, "high-priority/blocker": 4, "waiting on contributor": 3 }, "pr_bucket_counts": { "stale/low urgency": 21, "has linked issue": 18, "waiting on repo owner test approval": 12, "waiting on contributor": 11, "PR blocked": 7, "draft/noise": 3 }, "top_attention": [ { "item_type": "issue", "number": 8992, "title": "tuple expanding params do not render bind_expression() for elements", "url": "https://github.com/sqlalchemy/sqlalchemy/issues/8992", "primary_bucket": "has linked PR", "buckets": [ "has linked PR", "high-priority/blocker" ], "attention_score": 94, "attention_reason": "open PR references this issue; high-priority/blocker/regression label present; component labels: sql", "maintainer_next_action": "review early; this can change release or regression risk", "labels": [ "bug", "high priority", "sql" ], "linked_pr_numbers": [ 13323 ], "linked_issue_numbers": [], "updated_at": "2026-05-12T13:10:18Z", "stale_days": 56 }, { "item_type": "pr", "number": 13421, "title": "Fix oracledb async dialect entering cursors synchronously", "url": "https://github.com/sqlalchemy/sqlalchemy/pull/13421", "primary_bucket": "PR blocked", "buckets": [ "PR blocked", "has linked issue" ], "attention_score": 73, "attention_reason": "failed checks or blocked/unstable merge state; PR closes or references open issue numbers", "maintainer_next_action": "identify whether block is CI, merge conflict, or review gate", "labels": [], "linked_pr_numbers": [], "linked_issue_numbers": [ 13420 ], "updated_at": "2026-07-07T19:01:25Z", "stale_days": 0 }, { "item_type": "pr", "number": 13402, "title": "Allow inspection registrations from module reloads", "url": "https://github.com/sqlalchemy/sqlalchemy/pull/13402", "primary_bucket": "PR blocked", "buckets": [ "PR blocked", "has linked issue" ], "attention_score": 73, "attention_reason": "failed checks or blocked/unstable merge state; PR closes or references open issue numbers", "maintainer_next_action": "identify whether block is CI, merge conflict, or review gate", "labels": [], "linked_pr_numbers": [], "linked_issue_numbers": [ 10748 ], "updated_at": "2026-06-29T10:30:18Z", "stale_days": 8 }, { "item_type": "pr", "number": 13405, "title": "# Cython batch instance processor — ~10–30% on most loads (collection joinedload −5%)", "url": "https://github.com/sqlalchemy/sqlalchemy/pull/13405", "primary_bucket": "waiting on repo owner test approval", "buckets": [ "waiting on repo owner test approval", "has linked issue" ], "attention_score": 70, "attention_reason": "external test gate is pending maintainer or repository-owner approval; PR closes or references open issue numbers", "maintainer_next_action": "approve or inspect the gated test run before asking the contributor for changes", "labels": [], "linked_pr_numbers": [], "linked_issue_numbers": [ 13407 ], "updated_at": "2026-07-07T18:57:47Z", "stale_days": 0 }, { "item_type": "pr", "number": 13398, "title": "fix catastrophic backtracking in sqlite inline unique reflection regex", "url": "https://github.com/sqlalchemy/sqlalchemy/pull/13398", "primary_bucket": "waiting on repo owner test approval", "buckets": [ "waiting on repo owner test approval", "has linked issue" ], "attention_score": 70, "attention_reason": "external test gate is pending maintainer or repository-owner approval; PR closes or references open issue numbers", "maintainer_next_action": "approve or inspect the gated test run before asking the contributor for changes", "labels": [], "linked_pr_numbers": [], "linked_issue_numbers": [ 13419 ], "updated_at": "2026-07-07T06:44:24Z", "stale_days": 0 }, { "item_type": "pr", "number": 13418, "title": "Use identifier preparer for string type collations", "url": "https://github.com/sqlalchemy/sqlalchemy/pull/13418", "primary_bucket": "waiting on repo owner test approval", "buckets": [ "waiting on repo owner test approval", "has linked issue" ], "attention_score": 70, "attention_reason": "external test gate is pending maintainer or repository-owner approval; PR closes or references open issue numbers", "maintainer_next_action": "approve or inspect the gated test run before asking the contributor for changes", "labels": [], "linked_pr_numbers": [], "linked_issue_numbers": [ 9693 ], "updated_at": "2026-07-06T21:13:11Z", "stale_days": 0 }, { "item_type": "pr", "number": 13399, "title": "UniqueConstraint and Index withheld from table via attach_to_table flag, and appended to table via append_constraint", "url": "https://github.com/sqlalchemy/sqlalchemy/pull/13399", "primary_bucket": "waiting on repo owner test approval", "buckets": [ "waiting on repo owner test approval", "has linked issue" ], "attention_score": 70, "attention_reason": "external test gate is pending maintainer or repository-owner approval; PR closes or references open issue numbers", "maintainer_next_action": "approve or inspect the gated test run before asking the contributor for changes", "labels": [], "linked_pr_numbers": [], "linked_issue_numbers": [ 13048 ], "updated_at": "2026-07-02T20:22:37Z", "stale_days": 4 }, { "item_type": "pr", "number": 13404, "title": "Subqueryload without per-row Row construction — ~26% on subqueryload", "url": "https://github.com/sqlalchemy/sqlalchemy/pull/13404", "primary_bucket": "waiting on repo owner test approval", "buckets": [ "waiting on repo owner test approval", "has linked issue" ], "attention_score": 70, "attention_reason": "external test gate is pending maintainer or repository-owner approval; PR closes or references open issue numbers", "maintainer_next_action": "approve or inspect the gated test run before asking the contributor for changes", "labels": [], "linked_pr_numbers": [], "linked_issue_numbers": [ 13406 ], "updated_at": "2026-06-30T20:33:50Z", "stale_days": 6 }, { "item_type": "pr", "number": 13368, "title": "Document deprecated MySQL (M,D) float syntax and improve error message", "url": "https://github.com/sqlalchemy/sqlalchemy/pull/13368", "primary_bucket": "waiting on repo owner test approval", "buckets": [ "waiting on repo owner test approval", "has linked issue" ], "attention_score": 70, "attention_reason": "external test gate is pending maintainer or repository-owner approval; PR closes or references open issue numbers", "maintainer_next_action": "approve or inspect the gated test run before asking the contributor for changes", "labels": [], "linked_pr_numbers": [], "linked_issue_numbers": [ 11132 ], "updated_at": "2026-06-11T21:25:24Z", "stale_days": 25 }, { "item_type": "pr", "number": 12401, "title": "Make loader strategy error message more verbose", "url": "https://github.com/sqlalchemy/sqlalchemy/pull/12401", "primary_bucket": "PR blocked", "buckets": [ "PR blocked", "has linked issue", "stale/low urgency" ], "attention_score": 65, "attention_reason": "failed checks or blocked/unstable merge state; PR closes or references open issue numbers; PR has not updated for at least 45 days", "maintainer_next_action": "identify whether block is CI, merge conflict, or review gate", "labels": [], "linked_pr_numbers": [], "linked_issue_numbers": [ 12398 ], "updated_at": "2025-10-28T21:28:52Z", "stale_days": 251 } ], "top_work_threads": [ { "thread_key": "thread:issue:8992:pr:13323", "title": "pr #13323: Apply tuple bind expressions to expanding IN values", "primary_bucket": "waiting on repo owner test approval", "attention_score": 94, "maintainer_next_action": "Approve or inspect gated test run(s) for PR #13323, then review the thread evidence together.", "active_item_count": 2, "context_item_count": 1, "active_issue_numbers": [ 8992 ], "active_pr_numbers": [ 13323 ], "context_issue_numbers": [ 8989 ], "context_pr_numbers": [], "buckets": [ "has linked PR", "waiting on repo owner test approval" ], "active_items": [ { "item_type": "issue", "number": 8992, "title": "tuple expanding params do not render bind_expression() for elements", "url": "https://github.com/sqlalchemy/sqlalchemy/issues/8992", "primary_bucket": "has linked PR", "state": "OPEN", "active_backlog": true }, { "item_type": "pr", "number": 13323, "title": "Apply tuple bind expressions to expanding IN values", "url": "https://github.com/sqlalchemy/sqlalchemy/pull/13323", "primary_bucket": "waiting on repo owner test approval", "state": "OPEN", "active_backlog": true } ], "context_items": [ { "item_type": "issue", "number": 8989, "title": "Error when combining `literal_binds` with `bind_expression()` on an \"expanding\" `BindParameter`", "url": "https://github.com/sqlalchemy/sqlalchemy/issues/8989", "primary_bucket": "good volunteer slice", "state": "CLOSED", "active_backlog": false } ], "relationship_edge_count": 4, "representative_evidence": [ { "edge_kind": "closes", "source_item_type": "pr", "source_number": 13323, "target_item_type": "issue", "target_number": 8992, "evidence_source": "pr.closingIssuesReferences", "evidence_excerpt": "pr #13323 declares a closing reference to issue #8992.", "evidence_url": "https://github.com/sqlalchemy/sqlalchemy/pull/13323", "confidence": "high", "evidence_hash": "579ea63a5b64a2ddb2418ef200efbb854a90ee2c4e24c5675cb7786ac1a0e38a", "edge_hash": "3cec98bc0d7adc99b01df86aa50a84eabb8bc4004cec69005ddc6af1551f4284" }, { "edge_kind": "closes", "source_item_type": "pr", "source_number": 13323, "target_item_type": "issue", "target_number": 8992, "evidence_source": "pr.body", "evidence_excerpt": "dering expanded tuples. This matches scalar `IN` behavior for custom types and covers both `render_postcompile` and `literal_binds`. Fixes: #8992 ### Checklist This pull request is: - [ ] A documentation / typographical / small typing error fix - [x] A short code fix - Fixes:...", "evidence_url": "https://github.com/sqlalchemy/sqlalchemy/pull/13323", "confidence": "high", "evidence_hash": "3fdec6052d67d3cfd6f11f8ce992e0bbb9385ee310574b703ec0e955726fb6ee", "edge_hash": "35ba4d39c7b2f9b036753e67180432d5bb33221773fc0599a425fce483fdc5b7" }, { "edge_kind": "waiting on owner test approval", "source_item_type": "pr", "source_number": 13323, "target_item_type": "pr", "target_number": 13323, "evidence_source": "pr.statusCheckRollup", "evidence_excerpt": "Pending gated check(s): gerrit_review", "evidence_url": "https://github.com/sqlalchemy/sqlalchemy/pull/13323", "confidence": "high", "evidence_hash": "78389ce6eeb4a2890cd6e80e3f725abd4f796eb48f0d0fa80bc89286ebeffff5", "edge_hash": "fd2750d26b91987704010f092a748d5600cc41474915cf0d41b5b22347a24ae9" }, { "edge_kind": "references", "source_item_type": "issue", "source_number": 8992, "target_item_type": "issue", "target_number": 8989, "evidence_source": "issue.body", "evidence_excerpt": "discovered during #8989, this is simply not implemented at all and the bind expression is ignored when it's an element of a tuple. Also, the impl of a TupleType()", "evidence_url": "https://github.com/sqlalchemy/sqlalchemy/issues/8992", "confidence": "medium", "evidence_hash": "46c36af5913ed4eacd3c91b7bbfe671ecce76e43945986c60a3484702423ff7b", "edge_hash": "c5f2bec507074b35456f1d1b4e6b8e7317035e374d340f36f165e59c8d865b0b" } ], "generated_utc": "2026-07-07T19:49:19+00:00", "thread_hash": "10c0c9b7ee2c2fa4a0b5decdc2941d4c9bb23bca037bf2206aaa44c515c939cc" }, { "thread_key": "thread:issue:10748:pr:13402", "title": "pr #13402: Allow inspection registrations from module reloads", "primary_bucket": "PR blocked", "attention_score": 73, "maintainer_next_action": "Review active PRs and linked issues as one maintainer work thread.", "active_item_count": 2, "context_item_count": 0, "active_issue_numbers": [ 10748 ], "active_pr_numbers": [ 13402 ], "context_issue_numbers": [], "context_pr_numbers": [], "buckets": [ "has linked PR", "PR blocked" ], "active_items": [ { "item_type": "issue", "number": 10748, "title": "schemes that attempt to reload modules are blocked by the inspection registry", "url": "https://github.com/sqlalchemy/sqlalchemy/issues/10748", "primary_bucket": "has linked PR", "state": "OPEN", "active_backlog": true }, { "item_type": "pr", "number": 13402, "title": "Allow inspection registrations from module reloads", "url": "https://github.com/sqlalchemy/sqlalchemy/pull/13402", "primary_bucket": "PR blocked", "state": "OPEN", "active_backlog": true } ], "context_items": [], "relationship_edge_count": 8, "representative_evidence": [ { "edge_kind": "closes", "source_item_type": "pr", "source_number": 13402, "target_item_type": "issue", "target_number": 10748, "evidence_source": "pr.review_comments[0].body", "evidence_excerpt": "let's add a comment similar to the shared by mike here https://github.com/sqlalchemy/sqlalchemy/issues/10748#issuecomment-1852787222 to clarify why it's done this way", "evidence_url": "https://github.com/sqlalchemy/sqlalchemy/pull/13402", "confidence": "high", "evidence_hash": "a6c68e602a88c876863c56c4cc76309bbe60cf2d2c6eccaf0415c33e7d7dba7f", "edge_hash": "4744fe30ead34340dbcdd86c6353e91bd8fc19d932ed9c0b696e84173c852a82" }, { "edge_kind": "closes", "source_item_type": "pr", "source_number": 13402, "target_item_type": "issue", "target_number": 10748, "evidence_source": "pr.closingIssuesReferences", "evidence_excerpt": "pr #13402 declares a closing reference to issue #10748.", "evidence_url": "https://github.com/sqlalchemy/sqlalchemy/pull/13402", "confidence": "high", "evidence_hash": "2ff81594ce6acdcfeb0602a855629ad1d9a7721515133cc29324b30d2c2ca232", "edge_hash": "70766bad10414c9f02b07d24ffaaacbb9199da1a0ca5cee81cdc3f12080da76b" }, { "edge_kind": "closes", "source_item_type": "pr", "source_number": 13402, "target_item_type": "issue", "target_number": 10748, "evidence_source": "pr.body", "evidence_excerpt": "gistration assertion for conflicting registrars - add regression coverage for module reload style registration and a changelog entry Closes #10748. ### Validation - `/tmp/sqlalchemy-pr-venv/bin/python -m pytest test/base/test_inspect.py -q` - `/tmp/sqlalchemy-pr-venv/bin/pytho...", "evidence_url": "https://github.com/sqlalchemy/sqlalchemy/pull/13402", "confidence": "high", "evidence_hash": "c150169126683f2b1a5088f586356dac00a154712c353f36519b216309168dfa", "edge_hash": "1752aa77665d15b641d2709524803aed9903e5f7080f42dceb806e3fe9d5fca7" }, { "edge_kind": "review guidance", "source_item_type": "pr", "source_number": 13402, "target_item_type": "issue", "target_number": 10748, "evidence_source": "pr.reviews[3].body", "evidence_excerpt": "OK, this is **sqla-tester** setting up my work on behalf of **CaselIT** to try to get revision e54815ef0092da05277efab79b90b77e44734cb9 of this pull request into gerrit so we can run tests and reviews and stuff", "evidence_url": "https://github.com/sqlalchemy/sqlalchemy/pull/13402#pullrequestreview-4590995010", "confidence": "high", "evidence_hash": "8b7a19c1abf1d46bdf74ab347e2b6a5580f42341e7f25f5882798fb27a7bb34c", "edge_hash": "caa5d2c69add7aedf6f7cee7a7355eac438e085610693dcfc46f3a46cca6d5c8" }, { "edge_kind": "review guidance", "source_item_type": "pr", "source_number": 13402, "target_item_type": "issue", "target_number": 10748, "evidence_source": "pr.reviews[2].body", "evidence_excerpt": "thanks, just a nitpick comment. otherwise it looks fine @zzzeek I think 2.1 only for this is fine", "evidence_url": "https://github.com/sqlalchemy/sqlalchemy/pull/13402#pullrequestreview-4590614148", "confidence": "high", "evidence_hash": "788250012b0125e304886586bcd8d8f88a085429a2f4d5fc15a5cba222b2a0af", "edge_hash": "f20699b75bada4b4bed273a53cb87438704bf9b44800a32981bd416c5a78ab42" }, { "edge_kind": "review guidance", "source_item_type": "pr", "source_number": 13402, "target_item_type": "issue", "target_number": 10748, "evidence_source": "pr.reviews[1].body", "evidence_excerpt": "OK, this is **sqla-tester** setting up my work on behalf of **CaselIT** to try to get revision e54815ef0092da05277efab79b90b77e44734cb9 of this pull request into gerrit so we can run tests and reviews and stuff", "evidence_url": "https://github.com/sqlalchemy/sqlalchemy/pull/13402", "confidence": "high", "evidence_hash": "c2cecc1f3588b02651b4c91caebdef4cfe14f66fa65d5756883901839621ae9d", "edge_hash": "d6a9354336447786cf2d22dfc4558f109546bf6369cabdfbb57d839efc59cbc9" }, { "edge_kind": "review guidance", "source_item_type": "pr", "source_number": 13402, "target_item_type": "issue", "target_number": 10748, "evidence_source": "pr.reviews[0].body", "evidence_excerpt": "thanks, just a nitpick comment. otherwise it looks fine @zzzeek I think 2.1 only for this is fine", "evidence_url": "https://github.com/sqlalchemy/sqlalchemy/pull/13402", "confidence": "high", "evidence_hash": "317501913ea3833a0f52017aece56f00a5964f4d16e269ab23bc92f9cc85d4e2", "edge_hash": "9648dec67755fe3a4a27000b84d391854329f9f83c7a1e9eb3ac5f8dc6ce676f" }, { "edge_kind": "blocked by checks", "source_item_type": "pr", "source_number": 13402, "target_item_type": "pr", "target_number": 13402, "evidence_source": "pr.statusCheckRollup", "evidence_excerpt": "Blocked or unstable check/merge state. Check signal(s): code_review", "evidence_url": "https://github.com/sqlalchemy/sqlalchemy/pull/13402", "confidence": "medium", "evidence_hash": "205af2d2b20fdfa500b93cde2bc6eccf20fb2d956a29683d5048f3aad06e0893", "edge_hash": "68ee51cc0e6890c4be1f6ea7c681c164ed4b887f0c44e364aa321b2f543bf87b" } ], "generated_utc": "2026-07-07T19:49:19+00:00", "thread_hash": "c153dd83fec93e4a8ae5d8c5603d163fadfb9b15f22739a4fb2c4a05cd155dea" }, { "thread_key": "thread:issue:13420:pr:13421", "title": "pr #13421: Fix oracledb async dialect entering cursors synchronously", "primary_bucket": "PR blocked", "attention_score": 73, "maintainer_next_action": "Review active PRs and linked issues as one maintainer work thread.", "active_item_count": 2, "context_item_count": 0, "active_issue_numbers": [ 13420 ], "active_pr_numbers": [ 13421 ], "context_issue_numbers": [], "context_pr_numbers": [], "buckets": [ "has linked PR", "PR blocked" ], "active_items": [ { "item_type": "issue", "number": 13420, "title": "oracledb async dialect enters cursors synchronously, silently breaking async cursor wrappers", "url": "https://github.com/sqlalchemy/sqlalchemy/issues/13420", "primary_bucket": "has linked PR", "state": "OPEN", "active_backlog": true }, { "item_type": "pr", "number": 13421, "title": "Fix oracledb async dialect entering cursors synchronously", "url": "https://github.com/sqlalchemy/sqlalchemy/pull/13421", "primary_bucket": "PR blocked", "state": "OPEN", "active_backlog": true } ], "context_items": [], "relationship_edge_count": 5, "representative_evidence": [ { "edge_kind": "closes", "source_item_type": "pr", "source_number": 13421, "target_item_type": "issue", "target_number": 13420, "evidence_source": "pr.closingIssuesReferences", "evidence_excerpt": "pr #13421 declares a closing reference to issue #13420.", "evidence_url": "https://github.com/sqlalchemy/sqlalchemy/pull/13421", "confidence": "high", "evidence_hash": "8b33a35ff1691143cc95cea5dbf74aabb2977e184c2e60ce18f313f6bbca2bde", "edge_hash": "ef9f6d83630b523f3748797762ee7b37eee9c23f6755101d791e894a1e4489e0" }, { "edge_kind": "closes", "source_item_type": "pr", "source_number": 13421, "target_item_type": "issue", "target_number": 13420, "evidence_source": "pr.body", "evidence_excerpt": "db's AsyncCursor in version 2.0.1, the async dialect's minimum supported oracledb version is raised from 2.0.0 to 2.0.1 accordingly. Fixes: #13420 ### Description ### Description