checkpoint

⚒️ Generated with [Fabro](https://fabro.sh)
This commit is contained in:
Fabro 2026-03-16 08:06:29 -04:00
parent 6f967e3567
commit 312f67bfc7
5 changed files with 52 additions and 15 deletions

View file

@ -1,15 +1,17 @@
{
"timestamp": "2026-03-16T12:06:27.058706Z",
"current_node": "solve",
"timestamp": "2026-03-16T12:06:29.647532Z",
"current_node": "extract_patch",
"completed_nodes": [
"start",
"setup",
"solve"
"solve",
"extract_patch"
],
"node_retries": {
"start": 1,
"setup": 1,
"solve": 1
"solve": 1,
"extract_patch": 1
},
"context_values": {
"thread.start.current_node": "setup",
@ -18,24 +20,39 @@
"response.solve": "Implemented the fix in the `astropy` checkout.\n\nWhat changed:\n- `astropy/io/ascii/qdp.py`\n - Made QDP line parsing case-insensitive by compiling the line-type regex with `re.IGNORECASE`.\n - Made `NO` masked-value handling case-insensitive too, so lowercase `no` is handled consistently once parsing is case-insensitive.\n- `astropy/io/ascii/tests/test_qdp.py`\n - Added a regression test covering lowercase `read serr` and lowercase `no`.\n\nValidation:\n- Ran: `python -m pytest astropy/io/ascii/tests/test_qdp.py -q`\n- Result: `9 passed`\n\nAlso manually verified the reported repro now works:\n- `Table.read(..., format=\"ascii.qdp\", table_id=0, names=[\"a\", \"b\"])` successfully reads:\n - `read serr 1 2`\n - `1 0.5 1 0.5`\n\nFiles changed:\n- `astropy/io/ascii/qdp.py`\n- `astropy/io/ascii/tests/test_qdp.py`",
"graph.goal": "ascii.qdp Table format assumes QDP commands are upper case\n### Description\n\nascii.qdp assumes that commands in a QDP file are upper case, for example, for errors they must be \"READ SERR 1 2\" whereas QDP itself is not case sensitive and case use \"read serr 1 2\". \r\n\r\nAs many QDP files are created by hand, the expectation that all commands be all-caps should be removed.\n\n### Expected behavior\n\nThe following qdp file should read into a `Table` with errors, rather than crashing.\r\n```\r\nread serr 1 2 \r\n1 0.5 1 0.5\r\n```\n\n### How to Reproduce\n\nCreate a QDP file:\r\n```\r\n> cat > test.qdp\r\nread serr 1 2 \r\n1 0.5 1 0.5\r\n<EOF>\r\n\r\n > python\r\nPython 3.10.9 (main, Dec 7 2022, 02:03:23) [Clang 13.0.0 (clang-1300.0.29.30)] on darwin\r\nType \"help\", \"copyright\", \"credits\" or \"license\" for more information.\r\n>>> from astropy.table import Table\r\n>>> Table.read('test.qdp',format='ascii.qdp')\r\nWARNING: table_id not specified. Reading the first available table [astropy.io.ascii.qdp]\r\nTraceback (most recent call last):\r\n...\r\n raise ValueError(f'Unrecognized QDP line: {line}')\r\nValueError: Unrecognized QDP line: read serr 1 2\r\n```\r\n\r\nRunning \"qdp test.qdp\" works just fine.\r\n\n\n### Versions\n\nPython 3.10.9 (main, Dec 7 2022, 02:03:23) [Clang 13.0.0 (clang-1300.0.29.30)]\r\nastropy 5.1\r\nNumpy 1.24.1\r\npyerfa 2.0.0.1\r\nScipy 1.10.0\r\nMatplotlib 3.6.3\r\n\n\n\n\n## Additional Context\n\nWelcome to Astropy 👋 and thank you for your first issue!\n\nA project member will respond to you as soon as possible; in the meantime, please double-check the [guidelines for submitting issues](https://github.com/astropy/astropy/blob/main/CONTRIBUTING.md#reporting-issues) and make sure you've provided the requested details.\n\nGitHub issues in the Astropy repository are used to track bug reports and feature requests; If your issue poses a question about how to use Astropy, please instead raise your question in the [Astropy Discourse user forum](https://community.openastronomy.org/c/astropy/8) and close this issue.\n\nIf you feel that this issue has not been responded to in a timely manner, please send a message directly to the [development mailing list](http://groups.google.com/group/astropy-dev). If the issue is urgent or sensitive in nature (e.g., a security vulnerability) please send an e-mail directly to the private e-mail feedback@astropy.org.\nHuh, so we do have this format... https://docs.astropy.org/en/stable/io/ascii/index.html\r\n\r\n@taldcroft , you know anything about this?\nThis is the format I'm using, which has the issue: https://docs.astropy.org/en/stable/api/astropy.io.ascii.QDP.html\r\n\nThe issue is that the regex that searches for QDP commands is not case insensitive. \r\n\r\nThis attached patch fixes the issue, but I'm sure there's a better way of doing it.\r\n\r\n[qdp.patch](https://github.com/astropy/astropy/files/10667923/qdp.patch)\r\n\n@jak574 - the fix is probably as simple as that. Would you like to put in a bugfix PR?",
"internal.retry_count.start": 1,
"current.preamble": "Goal: ascii.qdp Table format assumes QDP commands are upper case\n### Description\n\nascii.qdp assumes that commands in a QDP file are upper case, for example, for errors they must be \"READ SERR 1 2\" whereas QDP itself is not case sensitive and case use \"read serr 1 2\". \r\n\r\nAs many QDP files are created by hand, the expectation that all commands be all-caps should be removed.\n\n### Expected behavior\n\nThe following qdp file should read into a `Table` with errors, rather than crashing.\r\n```\r\nread serr 1 2 \r\n1 0.5 1 0.5\r\n```\n\n### How to Reproduce\n\nCreate a QDP file:\r\n```\r\n> cat > test.qdp\r\nread serr 1 2 \r\n1 0.5 1 0.5\r\n<EOF>\r\n\r\n > python\r\nPython 3.10.9 (main, Dec 7 2022, 02:03:23) [Clang 13.0.0 (clang-1300.0.29.30)] on darwin\r\nType \"help\", \"copyright\", \"credits\" or \"license\" for more information.\r\n>>> from astropy.table import Table\r\n>>> Table.read('test.qdp',format='ascii.qdp')\r\nWARNING: table_id not specified. Reading the first available table [astropy.io.ascii.qdp]\r\nTraceback (most recent call last):\r\n...\r\n raise ValueError(f'Unrecognized QDP line: {line}')\r\nValueError: Unrecognized QDP line: read serr 1 2\r\n```\r\n\r\nRunning \"qdp test.qdp\" works just fine.\r\n\n\n### Versions\n\nPython 3.10.9 (main, Dec 7 2022, 02:03:23) [Clang 13.0.0 (clang-1300.0.29.30)]\r\nastropy 5.1\r\nNumpy 1.24.1\r\npyerfa 2.0.0.1\r\nScipy 1.10.0\r\nMatplotlib 3.6.3\r\n\n\n\n\n## Additional Context\n\nWelcome to Astropy 👋 and thank you for your first issue!\n\nA project member will respond to you as soon as possible; in the meantime, please double-check the [guidelines for submitting issues](https://github.com/astropy/astropy/blob/main/CONTRIBUTING.md#reporting-issues) and make sure you've provided the requested details.\n\nGitHub issues in the Astropy repository are used to track bug reports and feature requests; If your issue poses a question about how to use Astropy, please instead raise your question in the [Astropy Discourse user forum](https://community.openastronomy.org/c/astropy/8) and close this issue.\n\nIf you feel that this issue has not been responded to in a timely manner, please send a message directly to the [development mailing list](http://groups.google.com/group/astropy-dev). If the issue is urgent or sensitive in nature (e.g., a security vulnerability) please send an e-mail directly to the private e-mail feedback@astropy.org.\nHuh, so we do have this format... https://docs.astropy.org/en/stable/io/ascii/index.html\r\n\r\n@taldcroft , you know anything about this?\nThis is the format I'm using, which has the issue: https://docs.astropy.org/en/stable/api/astropy.io.ascii.QDP.html\r\n\nThe issue is that the regex that searches for QDP commands is not case insensitive. \r\n\r\nThis attached patch fixes the issue, but I'm sure there's a better way of doing it.\r\n\r\n[qdp.patch](https://github.com/astropy/astropy/files/10667923/qdp.patch)\r\n\n@jak574 - the fix is probably as simple as that. Would you like to put in a bugfix PR?\n\n## Completed stages\n- **setup**: fail\n - Script: `git clone https://github.com/astropy/astropy.git . && git checkout 7269fa3e33e8d02485a647da91a5a2a60a06af61 && sed -i 's/requires = \\[\"setuptools\",/requires = \\[\"setuptools==68.0.0\",/' pyproject.toml && python -m pip install -e .[test] --verbose`\n - Stdout:\n ```\n fatal: destination path '.' already exists and is not an empty directory.\n ```\n - Stderr: (empty)\n\n## Context\n- failure_class: deterministic\n- failure_signature: setup|deterministic|script failed with exit code: <n> ## stdout fatal: destination path '.' already exists and is not an empty directory.\n",
"current.preamble": "Goal: ascii.qdp Table format assumes QDP commands are upper case\n### Description\n\nascii.qdp assumes that commands in a QDP file are upper case, for example, for errors they must be \"READ SERR 1 2\" whereas QDP itself is not case sensitive and case use \"read serr 1 2\". \r\n\r\nAs many QDP files are created by hand, the expectation that all commands be all-caps should be removed.\n\n### Expected behavior\n\nThe following qdp file should read into a `Table` with errors, rather than crashing.\r\n```\r\nread serr 1 2 \r\n1 0.5 1 0.5\r\n```\n\n### How to Reproduce\n\nCreate a QDP file:\r\n```\r\n> cat > test.qdp\r\nread serr 1 2 \r\n1 0.5 1 0.5\r\n<EOF>\r\n\r\n > python\r\nPython 3.10.9 (main, Dec 7 2022, 02:03:23) [Clang 13.0.0 (clang-1300.0.29.30)] on darwin\r\nType \"help\", \"copyright\", \"credits\" or \"license\" for more information.\r\n>>> from astropy.table import Table\r\n>>> Table.read('test.qdp',format='ascii.qdp')\r\nWARNING: table_id not specified. Reading the first available table [astropy.io.ascii.qdp]\r\nTraceback (most recent call last):\r\n...\r\n raise ValueError(f'Unrecognized QDP line: {line}')\r\nValueError: Unrecognized QDP line: read serr 1 2\r\n```\r\n\r\nRunning \"qdp test.qdp\" works just fine.\r\n\n\n### Versions\n\nPython 3.10.9 (main, Dec 7 2022, 02:03:23) [Clang 13.0.0 (clang-1300.0.29.30)]\r\nastropy 5.1\r\nNumpy 1.24.1\r\npyerfa 2.0.0.1\r\nScipy 1.10.0\r\nMatplotlib 3.6.3\r\n\n\n\n\n## Additional Context\n\nWelcome to Astropy 👋 and thank you for your first issue!\n\nA project member will respond to you as soon as possible; in the meantime, please double-check the [guidelines for submitting issues](https://github.com/astropy/astropy/blob/main/CONTRIBUTING.md#reporting-issues) and make sure you've provided the requested details.\n\nGitHub issues in the Astropy repository are used to track bug reports and feature requests; If your issue poses a question about how to use Astropy, please instead raise your question in the [Astropy Discourse user forum](https://community.openastronomy.org/c/astropy/8) and close this issue.\n\nIf you feel that this issue has not been responded to in a timely manner, please send a message directly to the [development mailing list](http://groups.google.com/group/astropy-dev). If the issue is urgent or sensitive in nature (e.g., a security vulnerability) please send an e-mail directly to the private e-mail feedback@astropy.org.\nHuh, so we do have this format... https://docs.astropy.org/en/stable/io/ascii/index.html\r\n\r\n@taldcroft , you know anything about this?\nThis is the format I'm using, which has the issue: https://docs.astropy.org/en/stable/api/astropy.io.ascii.QDP.html\r\n\nThe issue is that the regex that searches for QDP commands is not case insensitive. \r\n\r\nThis attached patch fixes the issue, but I'm sure there's a better way of doing it.\r\n\r\n[qdp.patch](https://github.com/astropy/astropy/files/10667923/qdp.patch)\r\n\n@jak574 - the fix is probably as simple as that. Would you like to put in a bugfix PR?\n\n## Completed stages\n- **setup**: fail\n - Script: `git clone https://github.com/astropy/astropy.git . && git checkout 7269fa3e33e8d02485a647da91a5a2a60a06af61 && sed -i 's/requires = \\[\"setuptools\",/requires = \\[\"setuptools==68.0.0\",/' pyproject.toml && python -m pip install -e .[test] --verbose`\n - Stdout:\n ```\n fatal: destination path '.' already exists and is not an empty directory.\n ```\n - Stderr: (empty)\n- **solve**: success\n - Model: gpt-5.4, 958.3k tokens in / 8.8k out\n",
"outcome": "success",
"last_response": "Implemented the fix in the `astropy` checkout.\n\nWhat changed:\n- `astropy/io/ascii/qdp.py`\n - Made QDP line parsing case-insensitive by compiling the line-type regex with `re.IGNORECASE`.\n - Made `NO",
"internal.thread_id": "setup",
"internal.thread_id": "solve",
"internal.retry_count.extract_patch": 1,
"internal.fidelity": "compact",
"thread.setup.current_node": "solve",
"internal.retry_count.solve": 1,
"last_stage": "solve",
"internal.run_id": "01KKV8D5GS2X8B3R6MJ7BEP47B",
"graph.rankdir": "LR",
"current_node": "solve",
"command.output": "fatal: destination path '.' already exists and is not an empty directory.\n",
"current_node": "extract_patch",
"command.output": "diff --git a/astropy b/astropy\n--- a/astropy\n+++ b/astropy\n@@ -1 +1 @@\n-Subproject commit 7269fa3e33e8d02485a647da91a5a2a60a06af61\n+Subproject commit 7269fa3e33e8d02485a647da91a5a2a60a06af61-dirty\n",
"command.stderr": "",
"failure_class": "",
"thread.solve.current_node": "extract_patch",
"failure_signature": ""
},
"logs": [],
"node_outcomes": {
"extract_patch": {
"status": "success",
"context_updates": {
"command.stderr": "",
"command.output": "diff --git a/astropy b/astropy\n--- a/astropy\n+++ b/astropy\n@@ -1 +1 @@\n-Subproject commit 7269fa3e33e8d02485a647da91a5a2a60a06af61\n+Subproject commit 7269fa3e33e8d02485a647da91a5a2a60a06af61-dirty\n"
},
"notes": "Script completed: git diff",
"duration_ms": 54
},
"start": {
"status": "success",
"duration_ms": 0
},
"setup": {
"status": "fail",
"context_updates": {
@ -48,10 +65,6 @@
},
"duration_ms": 50
},
"start": {
"status": "success",
"duration_ms": 0
},
"solve": {
"status": "success",
"context_updates": {
@ -71,13 +84,14 @@
"duration_ms": 236883
}
},
"next_node_id": "extract_patch",
"next_node_id": "exit",
"loop_failure_signatures": {
"setup|deterministic|script failed with exit code: <n> ## stdout fatal: destination path '.' already exists and is not an empty directory.": 1
},
"node_visits": {
"solve": 1,
"extract_patch": 1,
"setup": 1,
"start": 1,
"setup": 1
"solve": 1
}
}

View file

@ -0,0 +1,5 @@
{
"command": "git diff",
"language": "shell",
"timeout_ms": null
}

View file

@ -0,0 +1,5 @@
{
"duration_ms": 54,
"exit_code": 0,
"timed_out": false
}

View file

@ -0,0 +1,6 @@
{
"status": "success",
"notes": "Script completed: git diff",
"failure_reason": null,
"timestamp": "2026-03-16T12:06:29.647337+00:00"
}

7
nodes/solve/diff.patch Normal file
View file

@ -0,0 +1,7 @@
diff --git a/astropy b/astropy
new file mode 160000
index 0000000..7269fa3
--- /dev/null
+++ b/astropy
@@ -0,0 +1 @@
+Subproject commit 7269fa3e33e8d02485a647da91a5a2a60a06af61