dwavesystems / dwavesystems/dwave-preprocessing

Presolver.detach_model() should cause subsequent access to model to fail

Offen
#58 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
bug
Vorherrschende Sprache
C++
Sterne
9
Forks
18
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

The ``detach_model()`` [docs](https://docs.ocean.dwavesys.com/en/stable/docs_preprocessing/reference/generated/dwave.preprocessing.presolve.Presolver.detach_model.html#dwave.preprocessing.presolve.Presolver.detach_model) say "Subsequent attempts to access the model will raise a [RuntimeError](https://docs.python.org/3/library/exceptions.html#RuntimeError)" but that is not happening:

```
pre = Presolver(cqm)
pre.load_default_presolvers()
pre.detach_model()
cqm2 = pre.copy_model()
>>> type(cqm2)
dimod.constrained.constrained.ConstrainedQuadraticModel
>>> cqm2.is_equal(dimod.ConstrainedQuadraticModel())
True
```

The post-detach ``cqm2 = pre.copy_model()`` command gives no error and happily generates an empty CQM.

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Rechercherichtung

Beginne mit den in der Issue referenzierten Einstiegspunkten Presolver.detach_model() und copy_model(), und reproduziere anschließend die bereitgestellte Sequenz mit einem CQM. Verfolge den Modellzugriff nach dem Detach und überprüfe, dass copy_model() einen RuntimeError auslöst, anstatt ein leeres CQM zurückzugeben; füge Tests für dieses Verhalten hinzu oder aktualisiere die Testabdeckung, falls die relevante Teststelle gefunden wird.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
python
Bereich
backend
Issue-Typ
Bug
Schwierigkeit
2/5
Geschätzter Aufwand
1-3 Stunden
Aktivitätsstatus
Veraltet
Klarheit
Klar beschrieben
Anfängerfreundlichkeit
48/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.