mirror of
https://github.com/fabro-sh/fabro.git
synced 2026-09-06 08:18:58 +00:00
parent
1f9a3a6e87
commit
059e63c5eb
5 changed files with 157 additions and 10 deletions
|
|
@ -1,34 +1,62 @@
|
|||
{
|
||||
"timestamp": "2026-03-16T11:58:07.578825Z",
|
||||
"current_node": "setup",
|
||||
"timestamp": "2026-03-16T12:01:19.819858Z",
|
||||
"current_node": "solve",
|
||||
"completed_nodes": [
|
||||
"start",
|
||||
"setup"
|
||||
"setup",
|
||||
"solve"
|
||||
],
|
||||
"node_retries": {
|
||||
"setup": 1,
|
||||
"solve": 1,
|
||||
"start": 1
|
||||
},
|
||||
"context_values": {
|
||||
"current_node": "setup",
|
||||
"failure_signature": "setup|deterministic|script failed with exit code: <n> ## stdout fatal: destination path '.' already exists and is not an empty directory.",
|
||||
"current_node": "solve",
|
||||
"failure_signature": "",
|
||||
"internal.run_id": "01KKV857GYNJCNTDVW731RJXJP",
|
||||
"thread.start.current_node": "setup",
|
||||
"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?",
|
||||
"command.output": "fatal: destination path '.' already exists and is not an empty directory.\n",
|
||||
"internal.fidelity": "compact",
|
||||
"thread.setup.current_node": "solve",
|
||||
"internal.retry_count.solve": 1,
|
||||
"graph.rankdir": "LR",
|
||||
"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",
|
||||
"internal.thread_id": "start",
|
||||
"failure_class": "deterministic",
|
||||
"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",
|
||||
"internal.thread_id": "setup",
|
||||
"failure_class": "",
|
||||
"command.stderr": "",
|
||||
"outcome": "fail",
|
||||
"last_response": "All 12 tests pass (8 unit tests + 4 doctests).\n\n## Summary\n\nThe fix is a **one-line change** in `/tmp/astropy_repo/astropy/io/ascii/qdp.py`:\n\n**Line 71 (originally):**\n```python\n_line_type_re = re.com",
|
||||
"outcome": "success",
|
||||
"internal.retry_count.start": 1,
|
||||
"last_stage": "solve",
|
||||
"response.solve": "All 12 tests pass (8 unit tests + 4 doctests).\n\n## Summary\n\nThe fix is a **one-line change** in `/tmp/astropy_repo/astropy/io/ascii/qdp.py`:\n\n**Line 71 (originally):**\n```python\n_line_type_re = re.compile(_type_re)\n```\n\n**Changed to:**\n```python\n_line_type_re = re.compile(_type_re, re.IGNORECASE)\n```\n\n**Root cause:** The `_line_type()` function uses a regex to classify QDP file lines. The command regex `r\"READ [TS]ERR(\\s+[0-9]+)+\"` only matched uppercase `READ SERR` / `READ TERR`, but QDP itself is case-insensitive. By adding `re.IGNORECASE` to the `re.compile()` call, the regex now matches commands regardless of case (e.g., `read serr 1 2`, `Read Serr 1 2`, `READ SERR 1 2`).\n\nThe `re.IGNORECASE` flag also makes the `NO` matching case-insensitive, which is correct since QDP is generally case-insensitive. The downstream command parsing in `_get_tables_from_qdp_file` already used `.lower()` on `command[1]`, so no other changes were needed.",
|
||||
"internal.retry_count.setup": 1,
|
||||
"internal.node_visit_count": 1
|
||||
},
|
||||
"logs": [],
|
||||
"node_outcomes": {
|
||||
"solve": {
|
||||
"status": "success",
|
||||
"context_updates": {
|
||||
"last_stage": "solve",
|
||||
"last_response": "All 12 tests pass (8 unit tests + 4 doctests).\n\n## Summary\n\nThe fix is a **one-line change** in `/tmp/astropy_repo/astropy/io/ascii/qdp.py`:\n\n**Line 71 (originally):**\n```python\n_line_type_re = re.com",
|
||||
"response.solve": "All 12 tests pass (8 unit tests + 4 doctests).\n\n## Summary\n\nThe fix is a **one-line change** in `/tmp/astropy_repo/astropy/io/ascii/qdp.py`:\n\n**Line 71 (originally):**\n```python\n_line_type_re = re.compile(_type_re)\n```\n\n**Changed to:**\n```python\n_line_type_re = re.compile(_type_re, re.IGNORECASE)\n```\n\n**Root cause:** The `_line_type()` function uses a regex to classify QDP file lines. The command regex `r\"READ [TS]ERR(\\s+[0-9]+)+\"` only matched uppercase `READ SERR` / `READ TERR`, but QDP itself is case-insensitive. By adding `re.IGNORECASE` to the `re.compile()` call, the regex now matches commands regardless of case (e.g., `read serr 1 2`, `Read Serr 1 2`, `READ SERR 1 2`).\n\nThe `re.IGNORECASE` flag also makes the `NO` matching case-insensitive, which is correct since QDP is generally case-insensitive. The downstream command parsing in `_get_tables_from_qdp_file` already used `.lower()` on `command[1]`, so no other changes were needed."
|
||||
},
|
||||
"notes": "Stage completed: solve",
|
||||
"usage": {
|
||||
"model": "claude-opus-4-6",
|
||||
"input_tokens": 24729,
|
||||
"output_tokens": 4218,
|
||||
"cache_read_tokens": 558918,
|
||||
"cache_write_tokens": 29154,
|
||||
"cost": 0.687285
|
||||
},
|
||||
"files_touched": [
|
||||
"/tmp/astropy_repo/astropy/io/ascii/qdp.py"
|
||||
],
|
||||
"duration_ms": 189492
|
||||
},
|
||||
"start": {
|
||||
"status": "success",
|
||||
"duration_ms": 0
|
||||
|
|
@ -46,11 +74,12 @@
|
|||
"duration_ms": 231
|
||||
}
|
||||
},
|
||||
"next_node_id": "solve",
|
||||
"next_node_id": "extract_patch",
|
||||
"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,
|
||||
"start": 1,
|
||||
"setup": 1
|
||||
}
|
||||
|
|
|
|||
88
nodes/solve/prompt.md
Normal file
88
nodes/solve/prompt.md
Normal file
|
|
@ -0,0 +1,88 @@
|
|||
Goal: ascii.qdp Table format assumes QDP commands are upper case
|
||||
### Description
|
||||
|
||||
ascii.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".
|
||||
|
||||
As many QDP files are created by hand, the expectation that all commands be all-caps should be removed.
|
||||
|
||||
### Expected behavior
|
||||
|
||||
The following qdp file should read into a `Table` with errors, rather than crashing.
|
||||
```
|
||||
read serr 1 2
|
||||
1 0.5 1 0.5
|
||||
```
|
||||
|
||||
### How to Reproduce
|
||||
|
||||
Create a QDP file:
|
||||
```
|
||||
> cat > test.qdp
|
||||
read serr 1 2
|
||||
1 0.5 1 0.5
|
||||
<EOF>
|
||||
|
||||
> python
|
||||
Python 3.10.9 (main, Dec 7 2022, 02:03:23) [Clang 13.0.0 (clang-1300.0.29.30)] on darwin
|
||||
Type "help", "copyright", "credits" or "license" for more information.
|
||||
>>> from astropy.table import Table
|
||||
>>> Table.read('test.qdp',format='ascii.qdp')
|
||||
WARNING: table_id not specified. Reading the first available table [astropy.io.ascii.qdp]
|
||||
Traceback (most recent call last):
|
||||
...
|
||||
raise ValueError(f'Unrecognized QDP line: {line}')
|
||||
ValueError: Unrecognized QDP line: read serr 1 2
|
||||
```
|
||||
|
||||
Running "qdp test.qdp" works just fine.
|
||||
|
||||
|
||||
### Versions
|
||||
|
||||
Python 3.10.9 (main, Dec 7 2022, 02:03:23) [Clang 13.0.0 (clang-1300.0.29.30)]
|
||||
astropy 5.1
|
||||
Numpy 1.24.1
|
||||
pyerfa 2.0.0.1
|
||||
Scipy 1.10.0
|
||||
Matplotlib 3.6.3
|
||||
|
||||
|
||||
|
||||
|
||||
## Additional Context
|
||||
|
||||
Welcome to Astropy 👋 and thank you for your first issue!
|
||||
|
||||
A 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.
|
||||
|
||||
GitHub 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.
|
||||
|
||||
If 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.
|
||||
Huh, so we do have this format... https://docs.astropy.org/en/stable/io/ascii/index.html
|
||||
|
||||
@taldcroft , you know anything about this?
|
||||
This is the format I'm using, which has the issue: https://docs.astropy.org/en/stable/api/astropy.io.ascii.QDP.html
|
||||
|
||||
The issue is that the regex that searches for QDP commands is not case insensitive.
|
||||
|
||||
This attached patch fixes the issue, but I'm sure there's a better way of doing it.
|
||||
|
||||
[qdp.patch](https://github.com/astropy/astropy/files/10667923/qdp.patch)
|
||||
|
||||
@jak574 - the fix is probably as simple as that. Would you like to put in a bugfix PR?
|
||||
|
||||
## Completed stages
|
||||
- **setup**: fail
|
||||
- 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`
|
||||
- Stdout:
|
||||
```
|
||||
fatal: destination path '.' already exists and is not an empty directory.
|
||||
```
|
||||
- Stderr: (empty)
|
||||
|
||||
## Context
|
||||
- failure_class: deterministic
|
||||
- failure_signature: setup|deterministic|script failed with exit code: <n> ## stdout fatal: destination path '.' already exists and is not an empty directory.
|
||||
|
||||
|
||||
Fix this GitHub issue in the repository. Make the minimal code change needed.
|
||||
5
nodes/solve/provider_used.json
Normal file
5
nodes/solve/provider_used.json
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
{
|
||||
"mode": "agent",
|
||||
"provider": "anthropic",
|
||||
"model": "claude-opus-4-6"
|
||||
}
|
||||
19
nodes/solve/response.md
Normal file
19
nodes/solve/response.md
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
All 12 tests pass (8 unit tests + 4 doctests).
|
||||
|
||||
## Summary
|
||||
|
||||
The fix is a **one-line change** in `/tmp/astropy_repo/astropy/io/ascii/qdp.py`:
|
||||
|
||||
**Line 71 (originally):**
|
||||
```python
|
||||
_line_type_re = re.compile(_type_re)
|
||||
```
|
||||
|
||||
**Changed to:**
|
||||
```python
|
||||
_line_type_re = re.compile(_type_re, re.IGNORECASE)
|
||||
```
|
||||
|
||||
**Root cause:** The `_line_type()` function uses a regex to classify QDP file lines. The command regex `r"READ [TS]ERR(\s+[0-9]+)+"` only matched uppercase `READ SERR` / `READ TERR`, but QDP itself is case-insensitive. By adding `re.IGNORECASE` to the `re.compile()` call, the regex now matches commands regardless of case (e.g., `read serr 1 2`, `Read Serr 1 2`, `READ SERR 1 2`).
|
||||
|
||||
The `re.IGNORECASE` flag also makes the `NO` matching case-insensitive, which is correct since QDP is generally case-insensitive. The downstream command parsing in `_get_tables_from_qdp_file` already used `.lower()` on `command[1]`, so no other changes were needed.
|
||||
6
nodes/solve/status.json
Normal file
6
nodes/solve/status.json
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
{
|
||||
"status": "success",
|
||||
"notes": "Stage completed: solve",
|
||||
"failure_reason": null,
|
||||
"timestamp": "2026-03-16T12:01:19.819709+00:00"
|
||||
}
|
||||
Loading…
Add table
Reference in a new issue