Reference verification
Review that the targeted function matches what the text describes.
| Report file | Line | Reference | Status | Targeted function |
|---|---|---|---|---|
| 00-summary_stable-2026.2.md | 50 | placement/wsgi/api.py:19-22 | OK | <module> |
| 00-summary_stable-2026.2.md | 50 | placement/wsgi/__init__.py:120-147 | OK | init_application |
| 00-summary_stable-2026.2.md | 50 | pyproject.toml | OK | |
| 00-summary_stable-2026.2.md | 50 | placement/deploy.py:122-130 | OK | update_database |
| 00-summary_stable-2026.2.md | 51 | pyproject.toml:56 | OK | <module> |
| 00-summary_stable-2026.2.md | 51 | placement/cmd/manage.py:213 | OK | main |
| 00-summary_stable-2026.2.md | 51 | placement/cmd/manage.py:166-209 | OK | add_db_command_parsers |
| 00-summary_stable-2026.2.md | 52 | placement/cmd/status.py:38-109 | OK | _check_missing_root_ids |
| 00-summary_stable-2026.2.md | 58 | placement/db_api.py:24-40 | OK | _get_db_conf |
| 00-summary_stable-2026.2.md | 58 | placement/conf/database.py:59 | OK | get_db_opts |
| 00-summary_stable-2026.2.md | 58 | placement/conf/database.py:109 | OK | get_db_opts |
| 00-summary_stable-2026.2.md | 59 | placement/conf/api.py:26 | OK | <module> |
| 00-summary_stable-2026.2.md | 59 | placement/deploy.py:43-47 | OK | <module> |
| 00-summary_stable-2026.2.md | 63 | placement/direct.py | OK | |
| 00-summary_stable-2026.2.md | 67 | placement/handler.py:51-133 | OK | <module> |
| 00-summary_stable-2026.2.md | 68 | placement/microversion.py:24-64 | OK | <module> |
| 00-summary_stable-2026.2.md | 70 | placement/errors.py:42-53 | OK | <module> |
| 00-summary_stable-2026.2.md | 79 | placement/objects/allocation.py:544-596 | OK | replace_all |
| 00-summary_stable-2026.2.md | 80 | placement/handlers/util.py:139-163 | OK | ensure_consumer |
| 00-summary_stable-2026.2.md | 81 | placement/objects/resource_provider.py:121-166,624-641 | OK | _update_inventory_for_provider |
| 00-summary_stable-2026.2.md | 81 | placement/objects/allocation.py:272-291 | OK | _check_capacity_exceeded |
| 00-summary_stable-2026.2.md | 82 | placement/handlers/inventory.py:240-245 | OK | delete_inventory |
| 00-summary_stable-2026.2.md | 82 | placement/handlers/inventory.py:365-367 | OK | set_inventories |
| 00-summary_stable-2026.2.md | 82 | placement/handlers/inventory.py:403 | OK | delete_inventories |
| 00-summary_stable-2026.2.md | 83 | placement/conf/placement.py:66-91 | OK | <module> |
| 00-summary_stable-2026.2.md | 84 | placement/policies/reshaper.py:23 | OK | <module> |
| 00-summary_stable-2026.2.md | 85 | placement/handlers/util.py:130-132 | OK | ensure_consumer |
| 00-summary_stable-2026.2.md | 86 | placement/deploy.py:122-130 | OK | update_database |
| 00-summary_stable-2026.2.md | 86 | placement/objects/trait.py:298 | OK | _trait_sync |
| 00-summary_stable-2026.2.md | 86 | placement/objects/resource_class.py:254 | OK | _resource_classes_sync |
| 00-summary_stable-2026.2.md | 87 | placement/handlers/trait.py:119 | OK | get_trait |
| 00-summary_stable-2026.2.md | 88 | placement/requestlog.py | OK | |
| 00-summary_stable-2026.2.md | 93 | placement/objects/research_context.py | OK | |
| 00-summary_stable-2026.2.md | 93 | placement/objects/allocation_candidate.py | OK | |
| 00-summary_stable-2026.2.md | 96 | placement/direct.py | OK | |
| 01-rest-api_stable-2026.2.md | 7 | placement/handler.py:51-133 | OK | <module> |
| 01-rest-api_stable-2026.2.md | 7 | placement/handler.py:136-174 | OK | dispatch |
| 01-rest-api_stable-2026.2.md | 8 | placement/deploy.py:62-82 | OK | deploy |
| 01-rest-api_stable-2026.2.md | 13 | placement/auth.py:93-116 | OK | PlacementAuthProtocol |
| 01-rest-api_stable-2026.2.md | 14 | placement/auth.py:75-90 | OK | PlacementKeystoneContext |
| 01-rest-api_stable-2026.2.md | 15 | placement/fault_wrap.py | OK | |
| 01-rest-api_stable-2026.2.md | 18 | placement/util.py | OK | |
| 01-rest-api_stable-2026.2.md | 18 | placement/microversion.py:130-170 | OK | _fully_qualified_name |
| 01-rest-api_stable-2026.2.md | 20 | placement/handler.py:209-218 | OK | call |
| 01-rest-api_stable-2026.2.md | 23 | placement/util.py:69-84,210-217 | OK | extract_json |
| 01-rest-api_stable-2026.2.md | 25 | placement/handler.py:226-229 | OK | call |
| 01-rest-api_stable-2026.2.md | 34 | placement/handlers/root.py:24 | OK | home |
| 01-rest-api_stable-2026.2.md | 35 | placement/handlers/resource_provider.py:212 | OK | list_resource_providers |
| 01-rest-api_stable-2026.2.md | 36 | placement/handlers/resource_provider.py:77 | OK | create_resource_provider |
| 01-rest-api_stable-2026.2.md | 37 | placement/handlers/resource_provider.py:184 | OK | get_resource_provider |
| 01-rest-api_stable-2026.2.md | 38 | placement/handlers/resource_provider.py:276 | OK | update_resource_provider |
| 01-rest-api_stable-2026.2.md | 39 | placement/handlers/resource_provider.py:152 | OK | delete_resource_provider |
| 01-rest-api_stable-2026.2.md | 40 | placement/handlers/inventory.py:259 | OK | get_inventories |
| 01-rest-api_stable-2026.2.md | 41 | placement/handlers/inventory.py:180 | OK | create_inventory |
| 01-rest-api_stable-2026.2.md | 42 | placement/handlers/inventory.py:312 | OK | set_inventories |
| 01-rest-api_stable-2026.2.md | 43 | placement/handlers/inventory.py:380 | OK | delete_inventories |
| 01-rest-api_stable-2026.2.md | 44 | placement/handlers/inventory.py:282 | OK | get_inventory |
| 01-rest-api_stable-2026.2.md | 45 | placement/handlers/inventory.py:415 | OK | update_inventory |
| 01-rest-api_stable-2026.2.md | 46 | placement/handlers/inventory.py:224 | OK | delete_inventory |
| 01-rest-api_stable-2026.2.md | 47 | placement/handlers/usage.py:40 | OK | list_usages |
| 01-rest-api_stable-2026.2.md | 48 | placement/handlers/aggregate.py:84 | OK | get_aggregates |
| 01-rest-api_stable-2026.2.md | 49 | placement/handlers/aggregate.py:105 | OK | set_aggregates |
| 01-rest-api_stable-2026.2.md | 50 | placement/handlers/allocation.py:291 | OK | list_for_resource_provider |
| 01-rest-api_stable-2026.2.md | 51 | placement/handlers/trait.py:184 | OK | list_traits_for_resource_provider |
| 01-rest-api_stable-2026.2.md | 52 | placement/handlers/trait.py:219 | OK | update_traits_for_resource_provider |
| 01-rest-api_stable-2026.2.md | 53 | placement/handlers/trait.py:260 | OK | delete_traits_for_resource_provider |
| 01-rest-api_stable-2026.2.md | 54 | placement/handlers/resource_class.py:146 | OK | list_resource_classes |
| 01-rest-api_stable-2026.2.md | 55 | placement/handlers/resource_class.py:58 | OK | create_resource_class |
| 01-rest-api_stable-2026.2.md | 56 | placement/handlers/resource_class.py:116 | OK | get_resource_class |
| 01-rest-api_stable-2026.2.md | 57 | placement/handlers/resource_class.py:171 | OK | update_resource_class |
| 01-rest-api_stable-2026.2.md | 57 | placement/handlers/resource_class.py:209 | OK | update_resource_class |
| 01-rest-api_stable-2026.2.md | 58 | placement/handlers/resource_class.py:90 | OK | delete_resource_class |
| 01-rest-api_stable-2026.2.md | 59 | placement/handlers/trait.py:152 | OK | list_traits |
| 01-rest-api_stable-2026.2.md | 60 | placement/handlers/trait.py:108 | OK | get_trait |
| 01-rest-api_stable-2026.2.md | 61 | placement/handlers/trait.py:67 | OK | put_trait |
| 01-rest-api_stable-2026.2.md | 62 | placement/handlers/trait.py:129 | OK | delete_trait |
| 01-rest-api_stable-2026.2.md | 63 | placement/handlers/allocation.py:262 | OK | list_for_consumer |
| 01-rest-api_stable-2026.2.md | 64 | placement/handlers/allocation.py:501-537 | OK | set_allocations_for_consumer |
| 01-rest-api_stable-2026.2.md | 65 | placement/handlers/allocation.py:607 | OK | delete_allocations |
| 01-rest-api_stable-2026.2.md | 66 | placement/handlers/allocation.py:543 | OK | set_allocations |
| 01-rest-api_stable-2026.2.md | 67 | placement/handlers/allocation_candidate.py:259 | OK | list_allocation_candidates |
| 01-rest-api_stable-2026.2.md | 68 | placement/handlers/usage.py:86 | OK | get_total_usages |
| 01-rest-api_stable-2026.2.md | 69 | placement/handlers/reshaper.py:45 | OK | reshape |
| 01-rest-api_stable-2026.2.md | 79 | placement/handlers/resource_provider.py:104-128 | OK | create_resource_provider |
| 01-rest-api_stable-2026.2.md | 79 | placement/handlers/resource_provider.py:95-100 | OK | create_resource_provider |
| 01-rest-api_stable-2026.2.md | 80 | placement/objects/resource_provider.py:690-724 | OK | increment_generation |
| 01-rest-api_stable-2026.2.md | 81 | placement/objects/resource_provider.py:780-876 | OK | _delete |
| 01-rest-api_stable-2026.2.md | 82 | placement/objects/resource_provider.py:735-778 | OK | _create_in_db |
| 01-rest-api_stable-2026.2.md | 83 | placement/objects/resource_provider.py:586-601 | OK | save |
| 01-rest-api_stable-2026.2.md | 84 | placement/handlers/resource_provider.py:220-253 | OK | list_resource_providers |
| 01-rest-api_stable-2026.2.md | 111 | placement/handlers/inventory.py:45-51 | OK | <module> |
| 01-rest-api_stable-2026.2.md | 112 | placement/objects/allocation.py:229-291 | OK | _check_capacity_exceeded |
| 01-rest-api_stable-2026.2.md | 113 | placement/handlers/inventory.py:152-176 | OK | _validate_inventory_capacity |
| 01-rest-api_stable-2026.2.md | 114 | placement/handlers/inventory.py:347-352 | OK | set_inventories |
| 01-rest-api_stable-2026.2.md | 115 | placement/objects/resource_provider.py:210-260 | OK | _delete_inventory |
| 01-rest-api_stable-2026.2.md | 115 | placement/objects/resource_provider.py:61-93 | OK | _delete_inventory_from_provider |
| 01-rest-api_stable-2026.2.md | 116 | placement/objects/resource_provider.py:121-166,624-641 | OK | _update_inventory_for_provider |
| 01-rest-api_stable-2026.2.md | 117 | placement/handlers/inventory.py:203-207 | OK | create_inventory |
| 01-rest-api_stable-2026.2.md | 118 | placement/handlers/inventory.py:240-245 | OK | delete_inventory |
| 01-rest-api_stable-2026.2.md | 119 | placement/objects/resource_provider.py:168-208,258 | OK | sum |
| 01-rest-api_stable-2026.2.md | 142 | placement/objects/allocation.py:544-556 | OK | replace_all |
| 01-rest-api_stable-2026.2.md | 142 | placement/handlers/allocation.py:543-603 | OK | set_allocations |
| 01-rest-api_stable-2026.2.md | 143 | placement/objects/allocation.py:108-295,372-410 | OK | _check_capacity_exceeded |
| 01-rest-api_stable-2026.2.md | 144 | placement/objects/allocation.py:272-284 | OK | _check_capacity_exceeded |
| 01-rest-api_stable-2026.2.md | 146 | placement/handlers/util.py:130-132 | OK | ensure_consumer |
| 01-rest-api_stable-2026.2.md | 147 | placement/handlers/util.py:33-50 | OK | get_or_create_consumer_type_id |
| 01-rest-api_stable-2026.2.md | 148 | placement/handlers/util.py:179-240 | OK | update_consumers |
| 01-rest-api_stable-2026.2.md | 149 | placement/handlers/util.py:139-163 | OK | ensure_consumer |
| 01-rest-api_stable-2026.2.md | 149 | placement/objects/allocation.py:451-452 | OK | _set_allocations |
| 01-rest-api_stable-2026.2.md | 150 | placement/handlers/allocation.py:430-441 | OK | _set_allocations_for_consumer |
| 01-rest-api_stable-2026.2.md | 150 | placement/objects/allocation.py:454-461 | OK | _set_allocations |
| 01-rest-api_stable-2026.2.md | 150 | placement/objects/consumer.py:66-87 | OK | create_incomplete_consumers |
| 01-rest-api_stable-2026.2.md | 151 | placement/objects/allocation.py:544-596 | OK | replace_all |
| 01-rest-api_stable-2026.2.md | 151 | placement/objects/allocation.py:372 | OK | _get_allocations_by_consumer_uuid |
| 01-rest-api_stable-2026.2.md | 152 | placement/db/sqlalchemy/models.py | OK | |
| 01-rest-api_stable-2026.2.md | 153 | placement/handlers/allocation.py:376-389,466-476 | OK | delete_consumers |
| 01-rest-api_stable-2026.2.md | 160 | placement/handlers/allocation.py:607-631 | OK | delete_allocations |
| 01-rest-api_stable-2026.2.md | 185 | placement/handlers/allocation_candidate.py:245-253 | OK | _get_schema |
| 01-rest-api_stable-2026.2.md | 185 | placement/lib.py:55-460 | OK | RequestGroup |
| 01-rest-api_stable-2026.2.md | 186 | placement/objects/research_context.py:1194-1300 | OK | get_sharing_providers |
| 01-rest-api_stable-2026.2.md | 188 | placement/handlers/allocation_candidate.py:274-281 | OK | list_allocation_candidates |
| 01-rest-api_stable-2026.2.md | 188 | placement/objects/allocation_candidate.py:978-1021 | OK | _satisfies_group_policy |
| 01-rest-api_stable-2026.2.md | 191 | placement/objects/research_context.py:447-501 | OK | get_providers_with_resource |
| 01-rest-api_stable-2026.2.md | 191 | placement/objects/research_context.py:435-446 | OK | _capacity_check_clause |
| 01-rest-api_stable-2026.2.md | 191 | placement/objects/research_context.py:1132-1192 | OK | get_provider_ids_for_traits_and_aggs |
| 01-rest-api_stable-2026.2.md | 191 | placement/objects/allocation_candidate.py:151-155 | OK | _get_by_requests |
| 01-rest-api_stable-2026.2.md | 191 | placement/objects/research_context.py:211-214 | OK | init |
| 01-rest-api_stable-2026.2.md | 192 | placement/objects/research_context.py:617-760 | OK | get_trees_matching_all |
| 01-rest-api_stable-2026.2.md | 193 | placement/objects/allocation_candidate.py:794-844 | OK | _pre_check_overall_capacity |
| 01-rest-api_stable-2026.2.md | 193 | placement/objects/allocation_candidate.py:747-791 | OK | _get_areq_list_generators |
| 01-rest-api_stable-2026.2.md | 194 | placement/objects/allocation_candidate.py:731-976 | OK | _get_product_generator |
| 01-rest-api_stable-2026.2.md | 195 | placement/objects/research_context.py:294-326 | OK | limit_results |
| 01-rest-api_stable-2026.2.md | 195 | placement/objects/allocation_candidate.py:495-588 | OK | _build_provider_summaries |
| 01-rest-api_stable-2026.2.md | 196 | placement/lib.py:153-232,420-455 | OK | _check_for_one_resources |
| 01-rest-api_stable-2026.2.md | 207 | placement/deploy.py:122-130 | OK | update_database |
| 01-rest-api_stable-2026.2.md | 207 | placement/objects/trait.py:125-147,265-299 | OK | ensure_sync |
| 01-rest-api_stable-2026.2.md | 208 | placement/handlers/trait.py:72-79 | OK | put_trait |
| 01-rest-api_stable-2026.2.md | 209 | placement/handlers/trait.py:129-145 | OK | delete_trait |
| 01-rest-api_stable-2026.2.md | 210 | placement/handlers/trait.py:219-253 | OK | update_traits_for_resource_provider |
| 01-rest-api_stable-2026.2.md | 211 | placement/handlers/trait.py:152-180 | OK | list_traits |
| 01-rest-api_stable-2026.2.md | 219 | placement/objects/resource_class.py:209-255 | OK | ensure_sync |
| 01-rest-api_stable-2026.2.md | 219 | placement/handlers/resource_class.py:101-107,193-196 | OK | delete_resource_class |
| 01-rest-api_stable-2026.2.md | 220 | placement/schemas/resource_class.py:24 | OK | <module> |
| 01-rest-api_stable-2026.2.md | 221 | placement/handlers/resource_class.py:70-80 | OK | create_resource_class |
| 01-rest-api_stable-2026.2.md | 223 | placement/handlers/resource_class.py:105-107 | OK | delete_resource_class |
| 01-rest-api_stable-2026.2.md | 230 | placement/handlers/aggregate.py:105-132 | OK | set_aggregates |
| 01-rest-api_stable-2026.2.md | 231 | placement/objects/resource_provider.py:309-410 | OK | _ensure_aggregate |
| 01-rest-api_stable-2026.2.md | 235 | placement/handlers/usage.py:40-82 | OK | list_usages |
| 01-rest-api_stable-2026.2.md | 236 | placement/handlers/usage.py:86-143 | OK | get_total_usages |
| 01-rest-api_stable-2026.2.md | 236 | placement/policies/usage.py:35 | OK | <module> |
| 01-rest-api_stable-2026.2.md | 241 | placement/policies/reshaper.py:23 | OK | <module> |
| 01-rest-api_stable-2026.2.md | 246 | placement/handlers/reshaper.py:45-149 | OK | reshape |
| 01-rest-api_stable-2026.2.md | 246 | placement/objects/reshaper.py | OK | |
| 01-rest-api_stable-2026.2.md | 250 | placement/auth.py:101-105 | OK | init |
| 01-rest-api_stable-2026.2.md | 250 | placement/handlers/root.py:24-48 | OK | home |
| 02-errors_stable-2026.2.md | 7 | placement/exception.py | OK | |
| 02-errors_stable-2026.2.md | 11 | placement/handler.py:219-229 | OK | call |
| 02-errors_stable-2026.2.md | 12 | placement/wsgi_wrapper.py | OK | |
| 02-errors_stable-2026.2.md | 13 | placement/deploy.py:58-60 | OK | deploy |
| 02-errors_stable-2026.2.md | 14 | placement/fault_wrap.py | OK | |
| 02-errors_stable-2026.2.md | 18 | placement/util.py | OK | |
| 02-errors_stable-2026.2.md | 26 | placement/util.py:30-32 | OK | <module> |
| 02-errors_stable-2026.2.md | 26 | placement/errors.py:42 | OK | <module> |
| 02-errors_stable-2026.2.md | 29 | placement/errors.py:42-53 | OK | <module> |
| 02-errors_stable-2026.2.md | 48 | placement/util.py:69-84 | OK | extract_json |
| 02-errors_stable-2026.2.md | 49 | placement/util.py:210-217 | OK | validate_query_params |
| 02-errors_stable-2026.2.md | 50 | placement/handler.py:209-218 | OK | call |
| 02-errors_stable-2026.2.md | 51 | placement/handlers/resource_provider.py:129-133 | OK | create_resource_provider |
| 02-errors_stable-2026.2.md | 51 | placement/objects/resource_provider.py:563-572,690-708 | OK | create |
| 02-errors_stable-2026.2.md | 52 | placement/objects/resource_provider.py:780-876 | OK | _delete |
| 02-errors_stable-2026.2.md | 52 | placement/handlers/resource_provider.py:310-313 | OK | update_resource_provider |
| 02-errors_stable-2026.2.md | 53 | placement/handlers/resource_provider.py:253-261 | OK | list_resource_providers |
| 02-errors_stable-2026.2.md | 53 | placement/handlers/allocation_candidate.py:286-294 | OK | list_allocation_candidates |
| 02-errors_stable-2026.2.md | 54 | placement/handlers/inventory.py:80-94,152-176,208-213 | OK | make_inventory_object |
| 02-errors_stable-2026.2.md | 55 | placement/handlers/inventory.py:347-352 | OK | set_inventories |
| 02-errors_stable-2026.2.md | 56 | placement/handlers/inventory.py:451-456 | OK | update_inventory |
| 02-errors_stable-2026.2.md | 57 | placement/handlers/allocation.py:329-352 | OK | _resource_providers_by_uuid |
| 02-errors_stable-2026.2.md | 58 | placement/handlers/allocation.py:479-483,586-588 | OK | _create_allocations |
| 02-errors_stable-2026.2.md | 59 | placement/handlers/allocation.py:395-398 | OK | _set_allocations_for_consumer |
| 02-errors_stable-2026.2.md | 60 | placement/handlers/allocation_candidate.py:274-281 | OK | list_allocation_candidates |
| 02-errors_stable-2026.2.md | 61 | placement/lib.py | OK | |
| 02-errors_stable-2026.2.md | 61 | placement/lib.py:153-232,420-455 | OK | _check_for_one_resources |
| 02-errors_stable-2026.2.md | 62 | placement/handlers/trait.py:139-140 | OK | delete_trait |
| 02-errors_stable-2026.2.md | 62 | placement/handlers/resource_class.py:101-104,193-196 | OK | delete_resource_class |
| 02-errors_stable-2026.2.md | 63 | placement/handlers/trait.py:72-79 | OK | put_trait |
| 02-errors_stable-2026.2.md | 64 | placement/handlers/trait.py:237-242 | OK | update_traits_for_resource_provider |
| 02-errors_stable-2026.2.md | 65 | placement/handlers/reshaper.py:64-72 | OK | reshape |
| 02-errors_stable-2026.2.md | 66 | placement/handlers/reshaper.py:133-136 | OK | _create_allocations |
| 02-errors_stable-2026.2.md | 71 | placement/auth.py:75-90,93-116 | OK | PlacementKeystoneContext |
| 02-errors_stable-2026.2.md | 72 | placement/handler.py:226-229 | OK | call |
| 02-errors_stable-2026.2.md | 73 | placement/microversion.py:130-170 | OK | _fully_qualified_name |
| 02-errors_stable-2026.2.md | 74 | placement/handler.py:149-174 | OK | dispatch |
| 02-errors_stable-2026.2.md | 74 | placement/handlers/inventory.py:378 | OK | set_inventories |
| 02-errors_stable-2026.2.md | 75 | placement/util.py | OK | |
| 02-errors_stable-2026.2.md | 76 | placement/util.py | OK | |
| 02-errors_stable-2026.2.md | 81 | placement/handlers/inventory.py:333-336,434-437 | OK | set_inventories |
| 02-errors_stable-2026.2.md | 81 | placement/handlers/trait.py:229-233 | OK | update_traits_for_resource_provider |
| 02-errors_stable-2026.2.md | 81 | placement/handlers/aggregate.py:118-125 | OK | set_aggregates |
| 02-errors_stable-2026.2.md | 81 | placement/handlers/reshaper.py:75-83 | OK | reshape |
| 02-errors_stable-2026.2.md | 82 | placement/objects/resource_provider.py:669-688 | OK | increment_generation |
| 02-errors_stable-2026.2.md | 83 | placement/handlers/util.py:139-163 | OK | ensure_consumer |
| 02-errors_stable-2026.2.md | 84 | placement/handlers/allocation.py:487-491,595-599 | OK | _create_allocations |
| 02-errors_stable-2026.2.md | 84 | placement/objects/allocation.py:592-596 | OK | replace_all |
| 02-errors_stable-2026.2.md | 85 | placement/handlers/allocation.py:484-486,592-594 | OK | _create_allocations |
| 02-errors_stable-2026.2.md | 85 | placement/objects/allocation.py:272-291 | OK | _check_capacity_exceeded |
| 02-errors_stable-2026.2.md | 86 | placement/objects/allocation.py:229-251 | OK | _check_capacity_exceeded |
| 02-errors_stable-2026.2.md | 87 | placement/objects/allocation.py:198-227 | OK | _check_capacity_exceeded |
| 02-errors_stable-2026.2.md | 88 | placement/handlers/inventory.py:364-367,401-404 | OK | set_inventories |
| 02-errors_stable-2026.2.md | 89 | placement/handlers/inventory.py:240-245 | OK | delete_inventory |
| 02-errors_stable-2026.2.md | 90 | placement/handlers/inventory.py:203-207 | OK | create_inventory |
| 02-errors_stable-2026.2.md | 91 | placement/handlers/inventory.py:353-358 | OK | set_inventories |
| 02-errors_stable-2026.2.md | 92 | placement/handlers/resource_provider.py:104-128,305-309 | OK | create_resource_provider |
| 02-errors_stable-2026.2.md | 93 | placement/handlers/resource_provider.py:164-168 | OK | delete_resource_provider |
| 02-errors_stable-2026.2.md | 94 | placement/handlers/resource_provider.py:172-176 | OK | delete_resource_provider |
| 02-errors_stable-2026.2.md | 95 | placement/handlers/resource_class.py:70-80,189-192 | OK | create_resource_class |
| 02-errors_stable-2026.2.md | 96 | placement/handlers/resource_class.py:105-107 | OK | delete_resource_class |
| 02-errors_stable-2026.2.md | 97 | placement/handlers/trait.py:141-142 | OK | delete_trait |
| 02-errors_stable-2026.2.md | 98 | placement/handlers/aggregate.py:76-78 | OK | _set_aggregates |
| 02-errors_stable-2026.2.md | 103 | placement/fault_wrap.py | OK | |
| 02-errors_stable-2026.2.md | 103 | placement/conf/database.py:87-94 | OK | get_db_opts |
| 02-errors_stable-2026.2.md | 103 | placement/objects/allocation.py:193-195 | OK | _check_capacity_exceeded |
| 02-errors_stable-2026.2.md | 108 | placement/deploy.py:122-130 | OK | update_database |
| 02-errors_stable-2026.2.md | 109 | placement/cmd/manage.py:70-131 | OK | db_online_data_migrations |
| 02-errors_stable-2026.2.md | 109 | placement/cmd/status.py:38-109 | OK | _check_missing_root_ids |
| 02-errors_stable-2026.2.md | 115 | placement/objects/resource_provider.py:628-641 | OK | set_inventory |
| 02-errors_stable-2026.2.md | 116 | placement/objects/allocation.py:285-291 | OK | _check_capacity_exceeded |
| 02-errors_stable-2026.2.md | 117 | placement/objects/allocation.py:278-284 | OK | _check_capacity_exceeded |
| 02-errors_stable-2026.2.md | 118 | placement/objects/allocation.py:236-246 | OK | _check_capacity_exceeded |
| 02-errors_stable-2026.2.md | 119 | placement/objects/allocation.py:594-595 | OK | replace_all |
| 02-errors_stable-2026.2.md | 120 | placement/objects/allocation.py:566-567 | OK | replace_all |
| 02-errors_stable-2026.2.md | 121 | placement/handlers/allocation.py:386-388 | OK | delete_consumers |
| 02-errors_stable-2026.2.md | 122 | placement/objects/resource_class.py:137 | OK | create |
| 02-errors_stable-2026.2.md | 123 | placement/fault_wrap.py | OK | |
| 03-interactions_stable-2026.2.md | 11 | placement/direct.py | OK | |
| 03-interactions_stable-2026.2.md | 17 | placement/wsgi/api.py | OK | |
| 03-interactions_stable-2026.2.md | 18 | placement/auth.py:93-116 | OK | PlacementAuthProtocol |
| 03-interactions_stable-2026.2.md | 19 | placement/deploy.py:58-60 | OK | deploy |
| 03-interactions_stable-2026.2.md | 20 | placement/util.py | OK | |
| 03-interactions_stable-2026.2.md | 21 | placement/util.py | OK | |
| 03-interactions_stable-2026.2.md | 23 | placement/requestlog.py | OK | |
| 03-interactions_stable-2026.2.md | 45 | placement/auth.py:93-116 | OK | PlacementAuthProtocol |
| 03-interactions_stable-2026.2.md | 51 | placement/conf/database.py:59-109 | OK | get_db_opts |
| 03-interactions_stable-2026.2.md | 52 | placement/db_api.py:24-40 | OK | _get_db_conf |
| 03-interactions_stable-2026.2.md | 52 | placement/objects/allocation.py:579-582 | OK | replace_all |
| 03-interactions_stable-2026.2.md | 53 | placement/cmd/manage.py:31-34 | OK | <module> |
| 03-interactions_stable-2026.2.md | 55 | placement/db/sqlalchemy/models.py | OK | |
| 03-interactions_stable-2026.2.md | 58 | placement/db/sqlalchemy/models.py:50-73 | OK | ResourceProvider |
| 03-interactions_stable-2026.2.md | 59 | placement/db/sqlalchemy/models.py:76-101 | OK | Inventory |
| 03-interactions_stable-2026.2.md | 60 | placement/db/sqlalchemy/models.py:104-126 | OK | Allocation |
| 03-interactions_stable-2026.2.md | 61 | placement/db/sqlalchemy/models.py:212-230 | OK | Consumer |
| 03-interactions_stable-2026.2.md | 62 | placement/db/sqlalchemy/models.py:182-209 | OK | Project |
| 03-interactions_stable-2026.2.md | 63 | placement/db/sqlalchemy/models.py:233-239 | OK | ConsumerType |
| 03-interactions_stable-2026.2.md | 64 | placement/db/sqlalchemy/models.py:38-47 | OK | ResourceClass |
| 03-interactions_stable-2026.2.md | 65 | placement/db/sqlalchemy/models.py:153-179 | OK | Trait |
| 03-interactions_stable-2026.2.md | 66 | placement/db/sqlalchemy/models.py:129-150 | OK | ResourceProviderAggregate |
| 03-interactions_stable-2026.2.md | 69 | placement/objects/resource_provider.py:669-688 | OK | increment_generation |
| 03-interactions_stable-2026.2.md | 75 | placement/objects/consumer.py:221-240 | OK | increment_generation |
| 03-interactions_stable-2026.2.md | 77 | placement/objects/allocation.py:372-461 | OK | _get_allocations_by_consumer_uuid |
| 03-interactions_stable-2026.2.md | 98 | placement/objects/allocation.py:544-596 | OK | replace_all |
| 03-interactions_stable-2026.2.md | 98 | placement/handlers/allocation.py:454-461 | OK | _set_allocations_for_consumer |
| 03-interactions_stable-2026.2.md | 100 | placement/objects/research_context.py:421-501 | OK | _usage_select |
| 03-interactions_stable-2026.2.md | 111 | placement/objects/research_context.py:1319 | OK | get_usages_by_provider_trees |
| 03-interactions_stable-2026.2.md | 111 | placement/objects/allocation_candidate.py:794-844 | OK | _pre_check_overall_capacity |
| 03-interactions_stable-2026.2.md | 116 | placement/context.py:26-27 | OK | init |
| 03-interactions_stable-2026.2.md | 116 | placement/attribute_cache.py | OK | |
| 05-async-processing_stable-2026.2.md | 13 | placement/context.py:26-27 | OK | init |
| 05-async-processing_stable-2026.2.md | 13 | placement/attribute_cache.py | OK | |
| 05-async-processing_stable-2026.2.md | 34 | placement/deploy.py:122-127 | OK | update_database |
| 05-async-processing_stable-2026.2.md | 35 | placement/deploy.py:129 | OK | update_database |
| 05-async-processing_stable-2026.2.md | 35 | placement/objects/trait.py:125-147,265-299 | OK | ensure_sync |
| 05-async-processing_stable-2026.2.md | 36 | placement/deploy.py:130 | OK | update_database |
| 05-async-processing_stable-2026.2.md | 36 | placement/objects/resource_class.py:209-255 | OK | ensure_sync |
| 05-async-processing_stable-2026.2.md | 37 | placement/deploy.py:140-150 | OK | loadapp |
| 05-async-processing_stable-2026.2.md | 37 | placement/policy.py | OK | |
| 05-async-processing_stable-2026.2.md | 47 | placement/cmd/manage.py:57-60 | OK | db_sync |
| 05-async-processing_stable-2026.2.md | 48 | placement/cmd/manage.py:62-68 | OK | db_version |
| 05-async-processing_stable-2026.2.md | 49 | placement/objects/resource_provider.py:494-524 | OK | _has_child_providers |
| 05-async-processing_stable-2026.2.md | 49 | placement/objects/consumer.py:26-64 | OK | <module> |
| 05-async-processing_stable-2026.2.md | 49 | placement/cmd/manage.py:31-34,70-163 | OK | <module> |
| 05-async-processing_stable-2026.2.md | 50 | placement/cmd/status.py:33-109 | OK | init |
| 06-change-history_stable-2026.2.md | 13 | pyproject.toml:14 | OK | <module> |
| 06-change-history_stable-2026.2.md | 29 | pyproject.toml:14 | OK | <module> |
| 06-change-history_stable-2026.2.md | 29 | .zuul.yaml | OK | |
| 06-change-history_stable-2026.2.md | 29 | tox.ini | OK | |
| 06-change-history_stable-2026.2.md | 32 | releasenotes/notes/drop-python-3-10-be063878f26fe3a7.yaml | OK | |
| 06-change-history_stable-2026.2.md | 33 | pyproject.toml | OK | |
| 06-change-history_stable-2026.2.md | 33 | .zuul.yaml | OK | |
| 06-change-history_stable-2026.2.md | 33 | tox.ini | OK | |
| 06-change-history_stable-2026.2.md | 38 | placement/deploy.py | OK | |
| 06-change-history_stable-2026.2.md | 41 | placement/deploy.py:45-119 | OK | deploy |
| 06-change-history_stable-2026.2.md | 45 | placement/tests/functional/fixtures/placement.py | OK | |
| 06-change-history_stable-2026.2.md | 52 | placement/policies/base.py:45-71 | OK | <module> |
| 06-change-history_stable-2026.2.md | 55 | releasenotes/notes/remove-disabling-rbac-scope-enforcement-4827620a50299038.yaml | OK | |
| 06-change-history_stable-2026.2.md | 66 | releasenotes/notes/bug-2160721-wide-symmetric-tree-performance-1c34375ee02a111c.yaml | OK | |
| 06-change-history_stable-2026.2.md | 69 | placement/objects/allocation_candidate.py:794-844 | OK | _pre_check_overall_capacity |
| 06-change-history_stable-2026.2.md | 69 | placement/objects/allocation_candidate.py:747-791 | OK | _get_areq_list_generators |
| 06-change-history_stable-2026.2.md | 70 | placement/objects/allocation_candidate.py:151-155 | OK | _get_by_requests |
| 06-change-history_stable-2026.2.md | 70 | placement/objects/research_context.py:214 | OK | init |
| 06-change-history_stable-2026.2.md | 76 | placement/tests/unit/objects/test_allocation_candidate.py | OK | |
| 06-change-history_stable-2026.2.md | 76 | placement/tests/functional/test_allocation_candidates.py | OK | |
| 06-change-history_stable-2026.2.md | 89 | pyproject.toml | OK | |
| 06-change-history_stable-2026.2.md | 89 | pyproject.toml:60-61 | OK | <module> |
| 06-change-history_stable-2026.2.md | 103 | tox.ini | OK | |
| 06-change-history_stable-2026.2.md | 117 | pyproject.toml | OK | |
| 07-rewrite-pack_stable-2026.2.md | 13 | placement/handler.py | OK | |
| 07-rewrite-pack_stable-2026.2.md | 14 | placement/microversion.py | OK | |
| 07-rewrite-pack_stable-2026.2.md | 31 | placement/tests/functional/db/test_allocation_candidates.py | OK | |
| 07-rewrite-pack_stable-2026.2.md | 31 | placement/tests/functional/test_allocation_candidates.py | OK | |
| 07-rewrite-pack_stable-2026.2.md | 41 | placement/deploy.py:76-119 | OK | deploy |
| 07-rewrite-pack_stable-2026.2.md | 45 | placement/requestlog.py | OK | |
| 07-rewrite-pack_stable-2026.2.md | 47 | placement/auth.py:90-116 | OK | PlacementAuthProtocol |
| 07-rewrite-pack_stable-2026.2.md | 47 | placement/auth.py:42 | OK | call |
| 07-rewrite-pack_stable-2026.2.md | 48 | placement/auth.py:76-88 | OK | call |
| 07-rewrite-pack_stable-2026.2.md | 50 | placement/deploy.py:85-87 | OK | deploy |
| 07-rewrite-pack_stable-2026.2.md | 56 | placement/util.py | OK | |
| 07-rewrite-pack_stable-2026.2.md | 64 | placement/util.py:135-146 | OK | pick_last_modified |
| 07-rewrite-pack_stable-2026.2.md | 70 | placement/handlers/allocation_candidate.py:259 | OK | list_allocation_candidates |
| 07-rewrite-pack_stable-2026.2.md | 73 | placement/lib.py:236 | OK | dict_from_request |
| 07-rewrite-pack_stable-2026.2.md | 75 | placement/lib.py:126 | OK | _parse_request_items |
| 07-rewrite-pack_stable-2026.2.md | 77 | placement/lib.py:405-445 | OK | from_request |
| 07-rewrite-pack_stable-2026.2.md | 77 | placement/handlers/allocation_candidate.py:275-281 | OK | list_allocation_candidates |
| 07-rewrite-pack_stable-2026.2.md | 79 | placement/lib.py:153-232 | OK | _check_for_one_resources |
| 07-rewrite-pack_stable-2026.2.md | 80 | placement/lib.py:153-170 | OK | _check_for_one_resources |
| 07-rewrite-pack_stable-2026.2.md | 92 | placement/objects/allocation_candidate.py:571-578 | OK | _build_provider_summaries |
| 07-rewrite-pack_stable-2026.2.md | 96 | placement/objects/research_context.py:421-501 | OK | _usage_select |
| 07-rewrite-pack_stable-2026.2.md | 102 | placement/objects/research_context.py:1194 | OK | get_sharing_providers |
| 07-rewrite-pack_stable-2026.2.md | 107 | placement/objects/allocation_candidate.py:162-165 | OK | _get_by_requests |
| 07-rewrite-pack_stable-2026.2.md | 111 | placement/objects/research_context.py:262-292 | OK | exclude_nested_providers |
| 07-rewrite-pack_stable-2026.2.md | 114 | placement/objects/allocation_candidate.py:135-182 | OK | _get_by_requests |
| 07-rewrite-pack_stable-2026.2.md | 116 | placement/objects/allocation_candidate.py:84-131 | OK | _get_by_one_request |
| 07-rewrite-pack_stable-2026.2.md | 117 | placement/objects/research_context.py:617 | OK | get_trees_matching_all |
| 07-rewrite-pack_stable-2026.2.md | 117 | placement/objects/allocation_candidate.py:300-396 | OK | _alloc_candidates_multiple_providers |
| 07-rewrite-pack_stable-2026.2.md | 117 | placement/objects/allocation_candidate.py:590 | OK | _check_traits_for_alloc_request |
| 07-rewrite-pack_stable-2026.2.md | 118 | placement/objects/research_context.py:530 | OK | get_provider_ids_matching |
| 07-rewrite-pack_stable-2026.2.md | 118 | placement/objects/allocation_candidate.py:397-462 | OK | _alloc_candidates_single_provider |
| 07-rewrite-pack_stable-2026.2.md | 119 | placement/objects/research_context.py:1257 | OK | anchors_for_sharing_providers |
| 07-rewrite-pack_stable-2026.2.md | 119 | placement/objects/research_context.py:223-260 | OK | _process_anchor_traits |
| 07-rewrite-pack_stable-2026.2.md | 121 | placement/objects/allocation_candidate.py:867-976 | OK | _merge_candidates |
| 07-rewrite-pack_stable-2026.2.md | 123 | placement/objects/allocation_candidate.py:794-844 | OK | _pre_check_overall_capacity |
| 07-rewrite-pack_stable-2026.2.md | 124 | placement/objects/allocation_candidate.py:747-791 | OK | _get_areq_list_generators |
| 07-rewrite-pack_stable-2026.2.md | 125 | placement/conf/placement.py:93 | OK | <module> |
| 07-rewrite-pack_stable-2026.2.md | 125 | placement/objects/allocation_candidate.py:847-864 | OK | _generate_areq_lists |
| 07-rewrite-pack_stable-2026.2.md | 126 | placement/conf/workarounds.py:30 | OK | <module> |
| 07-rewrite-pack_stable-2026.2.md | 128 | placement/objects/allocation_candidate.py:978-1020 | OK | _satisfies_group_policy |
| 07-rewrite-pack_stable-2026.2.md | 129 | placement/objects/allocation_candidate.py:1023-1064 | OK | _satisfies_same_subtree |
| 07-rewrite-pack_stable-2026.2.md | 130 | placement/objects/allocation_candidate.py:658-694 | OK | _consolidate_allocation_requests |
| 07-rewrite-pack_stable-2026.2.md | 131 | placement/objects/research_context.py:348-372 | OK | exceeds_capacity |
| 07-rewrite-pack_stable-2026.2.md | 135 | placement/objects/research_context.py:294-326 | OK | limit_results |
| 07-rewrite-pack_stable-2026.2.md | 152 | placement/handlers/allocation_candidate.py:38-243 | OK | _transform_allocation_requests_dict |
| 07-rewrite-pack_stable-2026.2.md | 158 | placement/tests/functional/db/test_allocation_candidates.py | OK | |
| 07-rewrite-pack_stable-2026.2.md | 158 | placement/tests/functional/test_allocation_candidates.py | OK | |
| 07-rewrite-pack_stable-2026.2.md | 168 | placement/tests/functional/test_allocation_candidates.py | OK | |
| 07-rewrite-pack_stable-2026.2.md | 171 | placement/objects/research_context.py:348-372 | OK | exceeds_capacity |
| 07-rewrite-pack_stable-2026.2.md | 179 | nova:nova/scheduler/client/report.py:46-53 | OK | <module> |
| 07-rewrite-pack_stable-2026.2.md | 179 | nova:nova/scheduler/client/report.py:343-345 | OK | get_allocation_candidates |
| 07-rewrite-pack_stable-2026.2.md | 180 | nova:nova/scheduler/client/report.py:612-614 | OK | _create_resource_provider |
| 07-rewrite-pack_stable-2026.2.md | 181 | nova:nova/scheduler/client/report.py:1040 | OK | do_put |
| 07-rewrite-pack_stable-2026.2.md | 182 | nova:nova/scheduler/client/report.py:1337 | OK | _reshape |
| 07-rewrite-pack_stable-2026.2.md | 182 | nova:nova/scheduler/client/report.py:1722 | OK | claim_resources |
| 07-rewrite-pack_stable-2026.2.md | 182 | nova:nova/scheduler/client/report.py:1818 | OK | _add_resources_to_instance_allocation |
| 07-rewrite-pack_stable-2026.2.md | 182 | nova:nova/scheduler/client/report.py:1960 | OK | _remove_resources_from_instance_allocation |
| 07-rewrite-pack_stable-2026.2.md | 182 | nova:nova/scheduler/client/report.py:2109 | OK | move_allocations |
| 07-rewrite-pack_stable-2026.2.md | 182 | nova:nova/scheduler/client/report.py:2160 | OK | put_allocations |
| 07-rewrite-pack_stable-2026.2.md | 183 | nova:nova/scheduler/client/report.py:2224-2230 | OK | delete_allocation_for_instance |
| 07-rewrite-pack_stable-2026.2.md | 184 | nova:nova/scheduler/client/report.py:49 | OK | <module> |
| 07-rewrite-pack_stable-2026.2.md | 194 | placement/objects/resource_class.py:35 | OK | ResourceClass |
| 07-rewrite-pack_stable-2026.2.md | 196 | placement/objects/allocation.py:579-582 | OK | replace_all |
| 07-rewrite-pack_stable-2026.2.md | 202 | placement/auth.py:42-66 | OK | call |
| 07-rewrite-pack_stable-2026.2.md | 217 | placement/tests/functional/gabbits/cors.yaml | OK | |
| 07-rewrite-pack_stable-2026.2.md | 220 | placement/tests/functional/fixtures/gabbits.py | OK | |
| 07-rewrite-pack_stable-2026.2.md | 224 | placement/tests/functional/fixtures/gabbits.py:66 | OK | APIFixture |
| 07-rewrite-pack_stable-2026.2.md | 225 | placement/tests/functional/fixtures/gabbits.py:157 | OK | AllocationFixture |
| 07-rewrite-pack_stable-2026.2.md | 226 | placement/tests/functional/fixtures/gabbits.py:224 | OK | SharedStorageFixture |
| 07-rewrite-pack_stable-2026.2.md | 227 | placement/tests/functional/fixtures/gabbits.py:315 | OK | NUMAAggregateFixture |
| 07-rewrite-pack_stable-2026.2.md | 228 | placement/tests/functional/fixtures/gabbits.py:394 | OK | NUMANetworkFixture |
| 07-rewrite-pack_stable-2026.2.md | 229 | placement/tests/functional/fixtures/gabbits.py:608 | OK | DeepNUMANetworkFixture |
| 07-rewrite-pack_stable-2026.2.md | 230 | placement/tests/functional/fixtures/gabbits.py:628 | OK | NonSharedStorageFixture |
| 07-rewrite-pack_stable-2026.2.md | 231 | placement/tests/functional/fixtures/gabbits.py:658 | OK | CORSFixture |
| 07-rewrite-pack_stable-2026.2.md | 232 | placement/tests/functional/fixtures/gabbits.py:672 | OK | GranularFixture |
| 07-rewrite-pack_stable-2026.2.md | 233 | placement/tests/functional/fixtures/gabbits.py:764 | OK | OpenPolicyFixture |
| 07-rewrite-pack_stable-2026.2.md | 234 | placement/tests/functional/fixtures/gabbits.py:786 | OK | SecureRBACPolicyFixture |
| 07-rewrite-pack_stable-2026.2.md | 234 | placement/tests/functional/fixtures/gabbits.py:796 | OK | LegacyRBACPolicyFixture |
| 07-rewrite-pack_stable-2026.2.md | 235 | placement/tests/functional/fixtures/gabbits.py:802 | OK | NeutronQoSMultiSegmentFixture |
| 07-rewrite-pack_stable-2026.2.md | 245 | placement/handlers/inventory.py:180-212 | OK | create_inventory |
| 07-rewrite-pack_stable-2026.2.md | 251 | placement/tests/functional/test_allocation_candidates.py | OK |
Source: reverse-spec-placement/_verification_stable-2026.2.md. The _rewrite/ and _inventory/ files are not published on the site.