Repair only invalid entity assessments with precise scoped feedback
This commit is contained in:
1 parent
33603db9bd
commit
4cbba4c1e4
7 files changed
+920
-33
No files matched your search
@@ -0,0 +1,5 @@
|
||||
# BUG-000021 revision 2: no_match on a nonempty localized search
|
||||
|
||||
The base creature search correctly selected Furien (35286). The localized substring query returned unrelated harpy rows and was truncated. All three assessments marked it no_match, although the contract requires zero rows for no_match. The generic ENTITY_RESOLUTION_SELECTION feedback did not identify the index or rule.
|
||||
|
||||
Keep the independently valid selection unchanged. Explain nonempty/truncated coverage at search index 1; request only its correction. The expected repair is ambiguous, not a deterministic assertion that the other candidates match or do not match. The fixture contains one answer and the required scoped validation inputs, not a full run archive.
|
||||
+561
@@ -0,0 +1,561 @@
|
||||
{
|
||||
"context": {
|
||||
"sources": {
|
||||
"B0002": {
|
||||
"case_pointer": "/bug/reports/1",
|
||||
"data": {
|
||||
"origin": {
|
||||
"archive_ref": "original/vcore/imports/c9a524054fee52c755ce3e247237f9e2fd8640dc1703e7700a11ab689cfa28a3/wowdiag/archive.tar.gz",
|
||||
"json_pointer": "",
|
||||
"member_name": "BUG-000021-20261024-174219/bug/bug.json",
|
||||
"source_ref": "original/vcore/imports/c9a524054fee52c755ce3e247237f9e2fd8640dc1703e7700a11ab689cfa28a3/wowdiag/members/BUG-000021-20261024-174219/bug/bug.json"
|
||||
},
|
||||
"source_ref": "case/inputs/vcore/c9a524054fee52c755ce3e247237f9e2fd8640dc1703e7700a11ab689cfa28a3/wowdiag/bug-record.json",
|
||||
"summary": "Furien ist nicht hier.",
|
||||
"title": "NPC Furien ist nicht existent"
|
||||
},
|
||||
"kind": "report"
|
||||
},
|
||||
"F0015": {
|
||||
"case_pointer": "/runtime_facts/facts/14",
|
||||
"data": {
|
||||
"id": "F0015",
|
||||
"name": "project_description",
|
||||
"provenance": {
|
||||
"author": null,
|
||||
"json_pointer": "/facts/3",
|
||||
"kind": "reproduction_record",
|
||||
"observed_at": null,
|
||||
"source_ref": "research/project/revisions/0001/facts.json"
|
||||
},
|
||||
"value": {
|
||||
"context_role": "quest_definition",
|
||||
"entity_id": 28548,
|
||||
"meaning": "source_description_not_verified_runtime_behavior",
|
||||
"table": "quest_template",
|
||||
"texts": [
|
||||
{
|
||||
"column": "LogTitle",
|
||||
"origin": {
|
||||
"json_pointer": "/result/items/0/row/LogTitle",
|
||||
"source_ref": "research/project/2997bf767d0e0ea58265f2606a8c79aec557c6d0905f85e32b417c3a0bfa2847/capture.json"
|
||||
},
|
||||
"text": "Warchief's Command: Desolace!"
|
||||
},
|
||||
{
|
||||
"column": "LogDescription",
|
||||
"origin": {
|
||||
"json_pointer": "/result/items/0/row/LogDescription",
|
||||
"source_ref": "research/project/2997bf767d0e0ea58265f2606a8c79aec557c6d0905f85e32b417c3a0bfa2847/capture.json"
|
||||
},
|
||||
"text": "Report to Furien at Tethris Aran in Desolace."
|
||||
},
|
||||
{
|
||||
"column": "QuestDescription",
|
||||
"origin": {
|
||||
"json_pointer": "/result/items/0/row/QuestDescription",
|
||||
"source_ref": "research/project/2997bf767d0e0ea58265f2606a8c79aec557c6d0905f85e32b417c3a0bfa2847/capture.json"
|
||||
},
|
||||
"text": "All able bodied members of the Horde are hereby ordered to report to Furien at Tethris Aran in Desolace. The brave Horde warriors of Desolace need your help to beat back the armies of the Alliance and ancient demons.$B$BTo reach Tethris Aran, travel south from the Charred Vale in the Stonetalon Mountains.$B$BDestiny calls!"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"kind": "fact"
|
||||
},
|
||||
"F0023": {
|
||||
"case_pointer": "/runtime_facts/facts/22",
|
||||
"data": {
|
||||
"id": "F0023",
|
||||
"name": "project_description",
|
||||
"provenance": {
|
||||
"author": null,
|
||||
"json_pointer": "/facts/3",
|
||||
"kind": "reproduction_record",
|
||||
"observed_at": null,
|
||||
"source_ref": "research/project/revisions/0002/facts.json"
|
||||
},
|
||||
"value": {
|
||||
"context_role": "quest_definition",
|
||||
"entity_id": 28548,
|
||||
"meaning": "source_description_not_verified_runtime_behavior",
|
||||
"table": "quest_template",
|
||||
"texts": [
|
||||
{
|
||||
"column": "LogTitle",
|
||||
"origin": {
|
||||
"json_pointer": "/result/items/0/row/LogTitle",
|
||||
"source_ref": "research/project/2997bf767d0e0ea58265f2606a8c79aec557c6d0905f85e32b417c3a0bfa2847/capture.json"
|
||||
},
|
||||
"text": "Warchief's Command: Desolace!"
|
||||
},
|
||||
{
|
||||
"column": "LogDescription",
|
||||
"origin": {
|
||||
"json_pointer": "/result/items/0/row/LogDescription",
|
||||
"source_ref": "research/project/2997bf767d0e0ea58265f2606a8c79aec557c6d0905f85e32b417c3a0bfa2847/capture.json"
|
||||
},
|
||||
"text": "Report to Furien at Tethris Aran in Desolace."
|
||||
},
|
||||
{
|
||||
"column": "QuestDescription",
|
||||
"origin": {
|
||||
"json_pointer": "/result/items/0/row/QuestDescription",
|
||||
"source_ref": "research/project/2997bf767d0e0ea58265f2606a8c79aec557c6d0905f85e32b417c3a0bfa2847/capture.json"
|
||||
},
|
||||
"text": "All able bodied members of the Horde are hereby ordered to report to Furien at Tethris Aran in Desolace. The brave Horde warriors of Desolace need your help to beat back the armies of the Alliance and ancient demons.$B$BTo reach Tethris Aran, travel south from the Charred Vale in the Stonetalon Mountains.$B$BDestiny calls!"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"kind": "fact"
|
||||
},
|
||||
"O0001": {
|
||||
"case_pointer": "/human_observations/observations/0",
|
||||
"data": {
|
||||
"id": "O0001",
|
||||
"provenance": {
|
||||
"author": "Elena",
|
||||
"json_pointer": "/observations/0",
|
||||
"kind": "tester",
|
||||
"observed_at": null,
|
||||
"origin": {
|
||||
"archive_ref": "original/vcore/imports/c9a524054fee52c755ce3e247237f9e2fd8640dc1703e7700a11ab689cfa28a3/wowdiag/archive.tar.gz",
|
||||
"json_pointer": "/0/description",
|
||||
"member_name": "BUG-000021-20261024-174219/bug/reports.json",
|
||||
"source_ref": "original/vcore/imports/c9a524054fee52c755ce3e247237f9e2fd8640dc1703e7700a11ab689cfa28a3/wowdiag/members/BUG-000021-20261024-174219/bug/reports.json",
|
||||
"source_timestamp": "2026-10-24T17:39:03"
|
||||
},
|
||||
"source_ref": "case/inputs/vcore/c9a524054fee52c755ce3e247237f9e2fd8640dc1703e7700a11ab689cfa28a3/wowdiag/report-34.json"
|
||||
},
|
||||
"text": "Furien ist nicht hier."
|
||||
},
|
||||
"kind": "observation"
|
||||
}
|
||||
}
|
||||
},
|
||||
"plan": {
|
||||
"searches": [
|
||||
{
|
||||
"catalog": "creatures",
|
||||
"role": "affected_subject",
|
||||
"source_ids": [
|
||||
"B0002",
|
||||
"F0015",
|
||||
"F0023",
|
||||
"O0001"
|
||||
],
|
||||
"term": "Furien"
|
||||
},
|
||||
{
|
||||
"catalog": "localized_creatures",
|
||||
"role": "affected_subject",
|
||||
"source_ids": [
|
||||
"B0002",
|
||||
"F0015",
|
||||
"F0023",
|
||||
"O0001"
|
||||
],
|
||||
"term": "Furien"
|
||||
}
|
||||
]
|
||||
},
|
||||
"captures": [
|
||||
{
|
||||
"format": "viano-project-capture",
|
||||
"format_version": 1,
|
||||
"origin": {
|
||||
"additional_databases": {
|
||||
"cata_characters": [
|
||||
"*"
|
||||
],
|
||||
"cata_hotfixes": [
|
||||
"*"
|
||||
]
|
||||
},
|
||||
"database": "cata_world",
|
||||
"kind": "mariadb",
|
||||
"selected_database": "cata_world",
|
||||
"selected_table": "creature_template",
|
||||
"snapshot_id": "vps-live",
|
||||
"table_reference": "database.table; unqualified tables use the default database only",
|
||||
"tables": [
|
||||
"*"
|
||||
],
|
||||
"time_scope": "configured_snapshot_not_current_production"
|
||||
},
|
||||
"query": {
|
||||
"columns": [
|
||||
"entry",
|
||||
"name",
|
||||
"subname",
|
||||
"AIName",
|
||||
"ScriptName",
|
||||
"minlevel",
|
||||
"maxlevel",
|
||||
"faction",
|
||||
"unit_flags"
|
||||
],
|
||||
"filters": [
|
||||
{
|
||||
"column": "name",
|
||||
"operator": "contains",
|
||||
"value": "Furien"
|
||||
}
|
||||
],
|
||||
"kind": "database.rows",
|
||||
"limit": 8,
|
||||
"offset": 0,
|
||||
"table": "creature_template"
|
||||
},
|
||||
"result": {
|
||||
"coverage": "complete_filtered_rows",
|
||||
"items": [
|
||||
{
|
||||
"database": "cata_world",
|
||||
"row": {
|
||||
"AIName": "",
|
||||
"ScriptName": "",
|
||||
"entry": 35286,
|
||||
"faction": 1604,
|
||||
"maxlevel": 35,
|
||||
"minlevel": 35,
|
||||
"name": "Furien",
|
||||
"subname": "",
|
||||
"unit_flags": 0
|
||||
},
|
||||
"table": "creature_template"
|
||||
},
|
||||
{
|
||||
"database": "cata_world",
|
||||
"row": {
|
||||
"AIName": "",
|
||||
"ScriptName": "",
|
||||
"entry": 35287,
|
||||
"faction": 35,
|
||||
"maxlevel": 30,
|
||||
"minlevel": 30,
|
||||
"name": "Furien's Mount",
|
||||
"subname": "",
|
||||
"unit_flags": 0
|
||||
},
|
||||
"table": "creature_template"
|
||||
},
|
||||
{
|
||||
"database": "cata_world",
|
||||
"row": {
|
||||
"AIName": "",
|
||||
"ScriptName": "",
|
||||
"entry": 35288,
|
||||
"faction": 29,
|
||||
"maxlevel": 25,
|
||||
"minlevel": 25,
|
||||
"name": "Furien's Dragonhawk",
|
||||
"subname": "",
|
||||
"unit_flags": 0
|
||||
},
|
||||
"table": "creature_template"
|
||||
},
|
||||
{
|
||||
"database": "cata_world",
|
||||
"row": {
|
||||
"AIName": "",
|
||||
"ScriptName": "",
|
||||
"entry": 35316,
|
||||
"faction": 29,
|
||||
"maxlevel": 25,
|
||||
"minlevel": 25,
|
||||
"name": "Furien's Dragonhawk",
|
||||
"subname": "",
|
||||
"unit_flags": 0
|
||||
},
|
||||
"table": "creature_template"
|
||||
},
|
||||
{
|
||||
"database": "cata_world",
|
||||
"row": {
|
||||
"AIName": "",
|
||||
"ScriptName": "",
|
||||
"entry": 51554,
|
||||
"faction": 35,
|
||||
"maxlevel": 1,
|
||||
"minlevel": 1,
|
||||
"name": "Furien's Research Assistant",
|
||||
"subname": "",
|
||||
"unit_flags": 0
|
||||
},
|
||||
"table": "creature_template"
|
||||
}
|
||||
],
|
||||
"next_offset": null,
|
||||
"truncated": false
|
||||
}
|
||||
},
|
||||
{
|
||||
"format": "viano-project-capture",
|
||||
"format_version": 1,
|
||||
"origin": {
|
||||
"additional_databases": {
|
||||
"cata_characters": [
|
||||
"*"
|
||||
],
|
||||
"cata_hotfixes": [
|
||||
"*"
|
||||
]
|
||||
},
|
||||
"database": "cata_world",
|
||||
"kind": "mariadb",
|
||||
"selected_database": "cata_world",
|
||||
"selected_table": "creature_template_locale",
|
||||
"snapshot_id": "vps-live",
|
||||
"table_reference": "database.table; unqualified tables use the default database only",
|
||||
"tables": [
|
||||
"*"
|
||||
],
|
||||
"time_scope": "configured_snapshot_not_current_production"
|
||||
},
|
||||
"query": {
|
||||
"columns": [
|
||||
"entry",
|
||||
"locale",
|
||||
"Name",
|
||||
"Title"
|
||||
],
|
||||
"filters": [
|
||||
{
|
||||
"column": "Name",
|
||||
"operator": "contains",
|
||||
"value": "Furien"
|
||||
}
|
||||
],
|
||||
"kind": "database.rows",
|
||||
"limit": 8,
|
||||
"offset": 0,
|
||||
"table": "creature_template_locale"
|
||||
},
|
||||
"result": {
|
||||
"coverage": "partial_filtered_rows",
|
||||
"items": [
|
||||
{
|
||||
"database": "cata_world",
|
||||
"row": {
|
||||
"Name": "Harpyie der Windfurien",
|
||||
"Title": "",
|
||||
"entry": 2962,
|
||||
"locale": "deDE"
|
||||
},
|
||||
"table": "creature_template_locale"
|
||||
},
|
||||
{
|
||||
"database": "cata_world",
|
||||
"row": {
|
||||
"Name": "Windhexe der Windfurien",
|
||||
"Title": "",
|
||||
"entry": 2963,
|
||||
"locale": "deDE"
|
||||
},
|
||||
"table": "creature_template_locale"
|
||||
},
|
||||
{
|
||||
"database": "cata_world",
|
||||
"row": {
|
||||
"Name": "Zauberin der Windfurien",
|
||||
"Title": "",
|
||||
"entry": 2964,
|
||||
"locale": "deDE"
|
||||
},
|
||||
"table": "creature_template_locale"
|
||||
},
|
||||
{
|
||||
"database": "cata_world",
|
||||
"row": {
|
||||
"Name": "Matriarchin der Windfurien",
|
||||
"Title": "",
|
||||
"entry": 2965,
|
||||
"locale": "deDE"
|
||||
},
|
||||
"table": "creature_template_locale"
|
||||
},
|
||||
{
|
||||
"database": "cata_world",
|
||||
"row": {
|
||||
"Name": "Harpyie der Blutfurien",
|
||||
"Title": "",
|
||||
"entry": 4022,
|
||||
"locale": "deDE"
|
||||
},
|
||||
"table": "creature_template_locale"
|
||||
},
|
||||
{
|
||||
"database": "cata_world",
|
||||
"row": {
|
||||
"Name": "Wildfeder der Blutfurien",
|
||||
"Title": "",
|
||||
"entry": 4023,
|
||||
"locale": "deDE"
|
||||
},
|
||||
"table": "creature_template_locale"
|
||||
},
|
||||
{
|
||||
"database": "cata_world",
|
||||
"row": {
|
||||
"Name": "Töterin der Blutfurien",
|
||||
"Title": "",
|
||||
"entry": 4024,
|
||||
"locale": "deDE"
|
||||
},
|
||||
"table": "creature_template_locale"
|
||||
},
|
||||
{
|
||||
"database": "cata_world",
|
||||
"row": {
|
||||
"Name": "Wegelagerin der Blutfurien",
|
||||
"Title": "",
|
||||
"entry": 4025,
|
||||
"locale": "deDE"
|
||||
},
|
||||
"table": "creature_template_locale"
|
||||
}
|
||||
],
|
||||
"next_offset": 8,
|
||||
"truncated": true
|
||||
}
|
||||
}
|
||||
],
|
||||
"candidates": [
|
||||
{
|
||||
"candidate_id": "K0001",
|
||||
"id": "35286",
|
||||
"name": "Furien",
|
||||
"row_index": 0,
|
||||
"search_index": 0,
|
||||
"type": "creature"
|
||||
},
|
||||
{
|
||||
"candidate_id": "K0002",
|
||||
"id": "35287",
|
||||
"name": "Furien's Mount",
|
||||
"row_index": 1,
|
||||
"search_index": 0,
|
||||
"type": "creature"
|
||||
},
|
||||
{
|
||||
"candidate_id": "K0003",
|
||||
"id": "35288",
|
||||
"name": "Furien's Dragonhawk",
|
||||
"row_index": 2,
|
||||
"search_index": 0,
|
||||
"type": "creature"
|
||||
},
|
||||
{
|
||||
"candidate_id": "K0004",
|
||||
"id": "35316",
|
||||
"name": "Furien's Dragonhawk",
|
||||
"row_index": 3,
|
||||
"search_index": 0,
|
||||
"type": "creature"
|
||||
},
|
||||
{
|
||||
"candidate_id": "K0005",
|
||||
"id": "51554",
|
||||
"name": "Furien's Research Assistant",
|
||||
"row_index": 4,
|
||||
"search_index": 0,
|
||||
"type": "creature"
|
||||
},
|
||||
{
|
||||
"candidate_id": "K0006",
|
||||
"id": "2962",
|
||||
"name": "Harpyie der Windfurien",
|
||||
"row_index": 0,
|
||||
"search_index": 1,
|
||||
"type": "creature"
|
||||
},
|
||||
{
|
||||
"candidate_id": "K0007",
|
||||
"id": "2963",
|
||||
"name": "Windhexe der Windfurien",
|
||||
"row_index": 1,
|
||||
"search_index": 1,
|
||||
"type": "creature"
|
||||
},
|
||||
{
|
||||
"candidate_id": "K0008",
|
||||
"id": "2964",
|
||||
"name": "Zauberin der Windfurien",
|
||||
"row_index": 2,
|
||||
"search_index": 1,
|
||||
"type": "creature"
|
||||
},
|
||||
{
|
||||
"candidate_id": "K0009",
|
||||
"id": "2965",
|
||||
"name": "Matriarchin der Windfurien",
|
||||
"row_index": 3,
|
||||
"search_index": 1,
|
||||
"type": "creature"
|
||||
},
|
||||
{
|
||||
"candidate_id": "K0010",
|
||||
"id": "4022",
|
||||
"name": "Harpyie der Blutfurien",
|
||||
"row_index": 4,
|
||||
"search_index": 1,
|
||||
"type": "creature"
|
||||
},
|
||||
{
|
||||
"candidate_id": "K0011",
|
||||
"id": "4023",
|
||||
"name": "Wildfeder der Blutfurien",
|
||||
"row_index": 5,
|
||||
"search_index": 1,
|
||||
"type": "creature"
|
||||
},
|
||||
{
|
||||
"candidate_id": "K0012",
|
||||
"id": "4024",
|
||||
"name": "Töterin der Blutfurien",
|
||||
"row_index": 6,
|
||||
"search_index": 1,
|
||||
"type": "creature"
|
||||
},
|
||||
{
|
||||
"candidate_id": "K0013",
|
||||
"id": "4025",
|
||||
"name": "Wegelagerin der Blutfurien",
|
||||
"row_index": 7,
|
||||
"search_index": 1,
|
||||
"type": "creature"
|
||||
}
|
||||
],
|
||||
"answer": {
|
||||
"resolutions": [
|
||||
{
|
||||
"candidate_id": "K0001",
|
||||
"reason": "Candidate K0001 (entry 35286, 'Furien') precisely matches the reported missing NPC name 'Furien' and corresponds to the quest target described in quest 28548 ('Report to Furien at Tethris Aran in Desolace'). The other candidates represent associated mounts or assistants rather than the NPC itself.",
|
||||
"search_index": 0,
|
||||
"source_ids": [
|
||||
"B0002",
|
||||
"F0015",
|
||||
"F0023",
|
||||
"O0001",
|
||||
"V0001"
|
||||
],
|
||||
"status": "selected"
|
||||
},
|
||||
{
|
||||
"candidate_id": null,
|
||||
"reason": "Capture V0002 was truncated, and the returned candidates are German harpies ('der Windfurien', 'der Blutfurien') rather than the NPC 'Furien'. Because the search was truncated and does not match the affected NPC entity, a candidate cannot be selected.",
|
||||
"search_index": 1,
|
||||
"source_ids": [
|
||||
"B0002",
|
||||
"F0015",
|
||||
"F0023",
|
||||
"O0001",
|
||||
"V0002"
|
||||
],
|
||||
"status": "no_match"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user