GEMMA DEVELOPER AGENTSAVED EVIDENCE
← Dataset Exploration
ARCHIVED TRAINING / pyqtgraph/pyqtgraph

pyqtgraph__pyqtgraph-3134

This is a preserved training example. Membership in the current training wave has not been verified.
pyqtgraph/pyqtgraph · Task 127 of 169

Problem statement

DockArea's restoreState is broken when a Dock was undocked and re-docked before calling saveState
### Short description
When one undocks a dock and either closes the temporary window or drags the dock back into the main window, clicks "Save dock state" and then "Restore dock state" the following exception occurs:

> Traceback (most recent call last):
>   File "pyqtgraph\examples\dockarea.py", line 77, in load
>     area.restoreState(state)
>   File "pyqtgraph\dockarea\DockArea.py", line 244, in restoreState
>     a.buildFromState(s[0]['main'], docks, a, missing=missing)
>   File "pyqtgraph\dockarea\DockArea.py", line 264, in buildFromState
>     typ, contents, state = state
>     ^^^^^^^^^^^^^^^^^^^^
> TypeError: cannot unpack non-iterable NoneType object

### Code to reproduce
Just use the example in examples/dockarea.py undock and then re-dock a dock and click "Save dock state" and then "Restore dock state".

### Expected behavior
The saved state should have been restored.

### Real behavior
The above exception occured and the state is not restored

```
Traceback (most recent call last):
  File "pyqtgraph\examples\dockarea.py", line 77, in load
    area.restoreState(state)
  File "pyqtgraph\dockarea\DockArea.py", line 244, in restoreState
    a.buildFromState(s[0]['main'], docks, a, missing=missing)
  File "pyqtgraph\dockarea\DockArea.py", line 264, in buildFromState
    typ, contents, state = state
    ^^^^^^^^^^^^^^^^^^^^
TypeError: cannot unpack non-iterable NoneType object
```

### Tested environment(s)

 * PyQtGraph version: Tested in 0.13.7 and 0.13.4
 * Qt Python binding: PySide6 6.6.2 Qt 6.6.2
 * Python version:  3.11.6
 * NumPy version: 2.0.1
 * Operating system:  Windows 11 10.0.22621
 * Installation method: pip

### Additional context
I also tested 0.13.3, but there the error does not occur.
That leads me to believe that I introduced this error by fixing #2887.
If I find the time I'll try to find a solution that hopefully fixes both problems in the next days.
But any help is appreciated.

Training membership

opd_e4b_pure_v6a opd_e4b_pure_v6b

Task issues extracted from preserved verified_rft_messages training examples. This is not a verified current RL wave manifest.

Task and snapshot provenance

Snapshot captured 2026-11-12T17:06:59.476467+00:00 · Autoresearch-Arena/gemma-4-developer-agent

{
  "datasets": [
    "opd_e4b_pure_v6a",
    "opd_e4b_pure_v6b"
  ],
  "examples": 4,
  "instance_id": "pyqtgraph__pyqtgraph-3134",
  "problem_statement": "DockArea's restoreState is broken when a Dock was undocked and re-docked before calling saveState\n### Short description\r\nWhen one undocks a dock and either closes the temporary window or drags the dock back into the main window, clicks \"Save dock state\" and then \"Restore dock state\" the following exception occurs:\r\n\r\n> Traceback (most recent call last):\r\n>   File \"pyqtgraph\\examples\\dockarea.py\", line 77, in load\r\n>     area.restoreState(state)\r\n>   File \"pyqtgraph\\dockarea\\DockArea.py\", line 244, in restoreState\r\n>     a.buildFromState(s[0]['main'], docks, a, missing=missing)\r\n>   File \"pyqtgraph\\dockarea\\DockArea.py\", line 264, in buildFromState\r\n>     typ, contents, state = state\r\n>     ^^^^^^^^^^^^^^^^^^^^\r\n> TypeError: cannot unpack non-iterable NoneType object\r\n\r\n### Code to reproduce\r\nJust use the example in examples/dockarea.py undock and then re-dock a dock and click \"Save dock state\" and then \"Restore dock state\".\r\n\r\n### Expected behavior\r\nThe saved state should have been restored.\r\n\r\n### Real behavior\r\nThe above exception occured and the state is not restored\r\n\r\n```\r\nTraceback (most recent call last):\r\n  File \"pyqtgraph\\examples\\dockarea.py\", line 77, in load\r\n    area.restoreState(state)\r\n  File \"pyqtgraph\\dockarea\\DockArea.py\", line 244, in restoreState\r\n    a.buildFromState(s[0]['main'], docks, a, missing=missing)\r\n  File \"pyqtgraph\\dockarea\\DockArea.py\", line 264, in buildFromState\r\n    typ, contents, state = state\r\n    ^^^^^^^^^^^^^^^^^^^^\r\nTypeError: cannot unpack non-iterable NoneType object\r\n```\r\n\r\n### Tested environment(s)\r\n\r\n * PyQtGraph version: Tested in 0.13.7 and 0.13.4\r\n * Qt Python binding: PySide6 6.6.2 Qt 6.6.2\r\n * Python version:  3.11.6\r\n * NumPy version: 2.0.1\r\n * Operating system:  Windows 11 10.0.22621\r\n * Installation method: pip\r\n\r\n### Additional context\r\nI also tested 0.13.3, but there the error does not occur.\r\nThat leads me to believe that I introduced this error by fixing #2887.\r\nIf I find the time I'll try to find a solution that hopefully fixes both problems in the next days.\r\nBut any help is appreciated.",
  "repo": "pyqtgraph/pyqtgraph",
  "source": "v2/experiments/train_data/opd_e4b_pure_v6a/verified_rft_messages.jsonl",
  "source_sha256": "f045b7ca5b3883a1e2eaee81e1c02a4a1b53dd7b7b36e98bacb2ba5823a15148"
}
{
  "captured_at": "2026-11-12T17:06:59.476467+00:00",
  "membership": "archived training",
  "membership_evidence": "Task issues extracted from preserved verified_rft_messages training examples. This is not a verified current RL wave manifest.",
  "name": "Preserved post-training task archive",
  "source": "Autoresearch-Arena/gemma-4-developer-agent",
  "source_revision": "016496de222aaafca0d4ee4c18efc63ba616f76e",
  "sources": [
    {
      "path": "v2/experiments/train_data/opd_e4b_cispo_v5/verified_rft_messages.jsonl",
      "sha256": "a43610ad0dfb6ace95375cfae09000f41afc0338cc925af870a4ade7a9b20c4c"
    },
    {
      "path": "v2/experiments/train_data/opd_e4b_hybrid_v3/verified_rft_messages.jsonl",
      "sha256": "bd326303eb127e8e5e08f03daf97bb88d79d19709d59f3f93f348bc56686a8df"
    },
    {
      "path": "v2/experiments/train_data/opd_e4b_onpolicy_v3/verified_rft_messages.jsonl",
      "sha256": "960c680e797e823a0d3a22f4b1d5ef60a72971373d703b877340b0c9126aaf68"
    },
    {
      "path": "v2/experiments/train_data/opd_e4b_pure_v6a/verified_rft_messages.jsonl",
      "sha256": "f045b7ca5b3883a1e2eaee81e1c02a4a1b53dd7b7b36e98bacb2ba5823a15148"
    },
    {
      "path": "v2/experiments/train_data/opd_e4b_pure_v6b/verified_rft_messages.jsonl",
      "sha256": "0f62460a9706eea5e1605255896f191ab00cb5706c5f1f2e1c293e9a718218dc"
    },
    {
      "path": "v2/experiments/train_data/opd_e4b_pure_v7/verified_rft_messages.jsonl",
      "sha256": "e37f7bd675322f3f81500b73559d60d5f602ca0537bf19f5cb06332c728c7b72"
    },
    {
      "path": "v2/experiments/train_data/opd_e4b_pure_v7b/verified_rft_messages.jsonl",
      "sha256": "b864bdc8695183433eef6e31cb8d33fad44ba3aded2170c1ade4ad5b2944ce23"
    },
    {
      "path": "v2/experiments/train_data/opd_e4b_self_audit_v4/verified_rft_messages.jsonl",
      "sha256": "0026023745afb8f3dc1c176dc7f7171157b4ad5a66656b524af218e8e19ceee6"
    },
    {
      "path": "v2/experiments/train_data/rft_e4b_aligned_v2/verified_rft_messages.jsonl",
      "sha256": "92a4515fee9d152b0d4c510ee3ce4caaaffe2003ba7584469f8027f174aab18c"
    },
    {
      "path": "v2/experiments/train_data/rft_v1/verified_rft_messages.jsonl",
      "sha256": "a42453ccd7ac7680b0a03865e8e7080bc8bf74c8d9d193b440c441ed46f8512b"
    },
    {
      "path": "v2/experiments/train_data/rft_v2/verified_rft_messages.jsonl",
      "sha256": "18f4b3bd7e651f83c6acab479c9475e3fa50dc652a384f309e97146983ac85ba"
    }
  ]
}