Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
18 commits
Select commit Hold shift + click to select a range
10cff0b
chore: restore formatting and import order masked by stale ruff cache
sadrultoaha Jul 16, 2026
d7fed12
fix: remove dead code and repair latent bugs surfaced by F821/F841 audit
sadrultoaha Jul 16, 2026
205543f
chore: enforce E722/F821/F841/E741 by removing stale ruff ignores
sadrultoaha Jul 16, 2026
c36f59a
refactor: apply safe readability fixes across src/ and scripts/
sadrultoaha Jul 16, 2026
5234af2
fix: make date defaults timezone-deterministic
sadrultoaha Jul 16, 2026
70f8cac
fix: pass a concrete Session to GAMOrdersService in sync API
sadrultoaha Jul 16, 2026
f300cc2
test: repair collection errors left by the 2.0 refactor and SDK bumps
sadrultoaha Jul 16, 2026
e17f6ac
docs: session report — improvements, gate state, pre-existing debt map
sadrultoaha Jul 16, 2026
9114585
refactor: eliminate all 86 no-any-return sites and enable warn_return…
sadrultoaha Jul 16, 2026
31668d1
refactor: decompose activity formatter and share relative-time helper
sadrultoaha Jul 16, 2026
4067ce8
docs: extend session report with mypy strictness and dedup results
sadrultoaha Jul 16, 2026
b4f8fb1
fix: correct Broadstreet empty-body handling and mock simulation flag
sadrultoaha Jul 16, 2026
5e971b5
refactor: decompose auth resolver and admin form parsers (SRP/KISS)
sadrultoaha Jul 16, 2026
d6bf7ae
docs: record SOLID/KISS/DRY pass results and spend-limit blockers
sadrultoaha Jul 16, 2026
afbb3a7
perf: single windowed query for revenue trend; hoist repeated work
sadrultoaha Jul 16, 2026
715b05c
perf: load media-buy delivery metrics asynchronously after page render
sadrultoaha Jul 16, 2026
6cfc1c0
fix: propagate ADCP_SALES_PORT authoritatively in run_server launcher
sadrultoaha Jul 16, 2026
733edb7
Merge branch 'develop' into feature/refactor-all
sadrultoaha Jul 23, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .claude/scripts/inspect_bdd_steps.py
Original file line number Diff line number Diff line change
Expand Up @@ -273,7 +273,7 @@ def _collect_context_for_step(step: BddStepInfo) -> str:
full_source = Path(step.file_path).read_text()
# Only include imports and helper functions, not the full file
lines = full_source.splitlines()
imports = [l for l in lines if l.startswith(("import ", "from "))]
imports = [line for line in lines if line.startswith(("import ", "from "))]
if imports:
context_parts.append("## Imports in step file\n" + "\n".join(imports))
except OSError:
Expand Down
27 changes: 20 additions & 7 deletions .duplication-baseline
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@
"src.adapters.gam.managers.reporting,src.services.delivery_simulator",
"src.adapters.gam.managers.sync,src.admin.sync_api",
"src.admin.api_schemas.tenant_management,src.admin.services.adapter_connection_tester",
"src.admin.blueprints.api,src.admin.blueprints.gam",
"src.admin.blueprints.auth,src.admin.tests.unit.test_auth",
"src.admin.blueprints.buyer_routing,src.admin.tenant_management_api",
"src.admin.blueprints.creative_agents,src.admin.blueprints.signals_agents",
Expand All @@ -13,10 +12,10 @@
"src.admin.blueprints.products,src.core.creative_agent_registry",
"src.admin.blueprints.products,src.core.database.product_pricing",
"src.admin.blueprints.products,src.core.format_resolver",
"src.core.auth,src.core.testing_hooks",
"src.core.creative_agent_registry,src.core.format_resolver",
"src.core.creative_agent_registry,src.core.signals_agent_registry",
"src.core.schemas._base,src.core.schemas.account",
"src.core.tools.media_buy_create,src.services.order_approval_service",
"src.services.delivery_webhook_scheduler,src.services.media_buy_status_scheduler"
],
"tests": [
Expand All @@ -25,43 +24,52 @@
"tests.conftest_db,tests.fixtures.integration_db",
"tests.e2e.test_a2a_adcp_compliance,tests.e2e.test_a2a_webhook_payload_types",
"tests.e2e.test_a2a_adcp_compliance,tests.e2e.test_adcp_schema_compliance",
"tests.e2e.test_a2a_webhook_payload_types,tests.e2e.test_adcp_reference_implementation",
"tests.e2e.test_a2a_webhook_payload_types,tests.e2e.test_delivery_webhooks_e2e",
"tests.e2e.test_adcp_full_lifecycle,tests.e2e.test_adcp_reference_implementation",
"tests.e2e.test_adcp_reference_implementation,tests.e2e.test_creative_assignment_e2e",
"tests.e2e.test_adcp_reference_implementation,tests.e2e.test_delivery_webhooks_e2e",
"tests.integration._embedded_helpers,tests.integration.test_buyer_routing_page",
"tests.integration._embedded_helpers,tests.integration.test_embed_breadcrumbs",
"tests.integration._embedded_helpers,tests.integration.test_managed_mode_auth_bypass",
"tests.integration.conftest,tests.integration.test_delivery_v3",
"tests.integration.conftest,tests.integration.test_product_format_validation",
"tests.integration.test_account_provisioning,tests.integration.test_sync_accounts_premap",
"tests.integration.test_adapter_config_repository,tests.integration.test_gam_adapter_auth",
"tests.integration.test_adapter_factory,tests.integration.test_gam_adapter_auth",
"tests.integration.test_basic_media_buy_lifecycle,tests.integration.test_create_media_buy_creation_paths",
"tests.integration.test_basic_media_buy_lifecycle,tests.integration.test_gam_real_media_buy_lifecycle",
"tests.integration.test_basic_media_buy_lifecycle,tests.integration.test_targeting_overlay_roundtrip",
"tests.integration.test_buyer_advertiser_routing,tests.integration.test_gam_advertisers_cache",
"tests.integration.test_buyer_routing_page,tests.integration.test_embed_breadcrumbs",
"tests.integration.test_buyer_routing_page,tests.integration.test_managed_mode_auth_bypass",
"tests.integration.test_create_media_buy_creation_paths,tests.integration.test_targeting_overlay_roundtrip",
"tests.integration.test_create_media_buy_creative_validation,tests.integration.test_create_media_buy_integration",
"tests.integration.test_creative_assignment_principal_id,tests.integration.test_media_buy_v3",
"tests.integration.test_creative_async_lifecycle_obligations,tests.integration.test_creative_sync_processing",
"tests.integration.test_creative_formats_behavioral,tests.integration.test_creative_formats_protocol",
"tests.integration.test_database_health_integration,tests.unit.test_database_health",
"tests.integration.test_database_integration,tests.integration.test_tenant_settings_comprehensive",
"tests.integration.test_delivery_service_behavioral,tests.unit.test_delivery_service_behavioral",
"tests.integration.test_delivery_v3,tests.integration.test_media_buy_status_scheduler",
"tests.integration.test_delivery_v3,tests.unit.test_delivery",
"tests.integration.test_delivery_v3,tests.unit.test_property_list_schema",
"tests.integration.test_delivery_webhooks_force,tests.integration.test_delivery_webhooks_integration",
"tests.integration.test_embed_breadcrumbs,tests.integration.test_managed_mode_auth_bypass",
"tests.integration.test_embed_breadcrumbs,tests.integration.test_managed_tenant_api",
"tests.integration.test_embed_breadcrumbs,tests.integration.test_managed_tenant_api_sprint3",
"tests.integration.test_error_paths,tests.unit.test_error_boundary_translation",
"tests.integration.test_format_conversion_approval,tests.integration.test_media_buy_readiness",
"tests.integration.test_gam_advertisers_cache,tests.integration.test_managed_tenant_api",
"tests.integration.test_gam_advertisers_cache,tests.integration.test_managed_tenant_api_sprint3",
"tests.integration.test_gam_advertisers_cache,tests.integration.test_managed_tenant_api_sprint6",
"tests.integration.test_gam_pricing_models_integration,tests.integration.test_gam_pricing_restriction",
"tests.integration.test_gam_pricing_restriction,tests.integration.test_pricing_models_integration",
"tests.integration.test_get_products_anonymous_pricing,tests.integration.test_get_products_behavioral",
"tests.integration.test_get_products_anonymous_pricing,tests.integration.test_product_principal_access_pipeline",
"tests.integration.test_get_products_behavioral,tests.integration.test_get_products_policy_obligations",
"tests.integration.test_get_products_behavioral,tests.integration.test_get_products_response_constraints",
"tests.integration.test_get_products_policy_obligations,tests.integration.test_product_principal_access_pipeline",
"tests.integration.test_inventory_profile_updates,tests.unit.test_inventory_profile_adcp_compliance",
"tests.integration.test_managed_tenant_api_sprint3,tests.integration.test_managed_tenant_api_sprint6",
"tests.integration.test_mcp_tool_roundtrip_validation,tests.integration.test_schema_database_mapping",
"tests.integration.test_media_buy_v3,tests.unit.test_media_buy",
"tests.integration.test_mock_adapter,tests.unit.helpers.gam_mock_factory",
"tests.integration.test_product_pricing_options_required,tests.integration.test_product_repository",
"tests.integration.test_product_principal_access,tests.integration.test_product_with_inventory_profile",
Expand All @@ -78,20 +86,25 @@
"tests.unit.test_architecture_bdd_no_duplicate_steps,tests.unit.test_architecture_bdd_no_trivial_assertions",
"tests.unit.test_architecture_bdd_no_pass_steps,tests.unit.test_architecture_bdd_no_silent_env",
"tests.unit.test_architecture_bdd_no_silent_env,tests.unit.test_architecture_bdd_no_trivial_assertions",
"tests.unit.test_architecture_boundary_completeness,tests.unit.test_boundary_field_forwarding",
"tests.unit.test_architecture_no_raw_media_package_select,tests.unit.test_architecture_no_raw_select",
"tests.unit.test_architecture_no_raw_select,tests.unit.test_creative_query_tenant_isolation",
"tests.unit.test_architecture_no_raw_select,tests.unit.test_cross_tenant_query_isolation",
"tests.unit.test_architecture_query_type_safety,tests.unit.test_no_toolerror_in_impl",
"tests.unit.test_architecture_repository_pattern,tests.unit.test_architecture_weak_mock_assertions",
"tests.unit.test_architecture_role_policy_declared,tests.unit.test_architecture_tenant_routes_decorated",
"tests.unit.test_auth_context_middleware_population,tests.unit.test_rest_depends_auth",
"tests.unit.test_auth_requirements,tests.unit.test_sync_creatives_auth",
"tests.unit.test_create_media_buy_behavioral,tests.unit.test_create_media_buy_request_validation",
"tests.unit.test_create_media_buy_behavioral,tests.unit.test_media_buy",
"tests.unit.test_creative_query_tenant_isolation,tests.unit.test_cross_tenant_query_isolation",
"tests.unit.test_creative_response_serialization,tests.unit.test_list_creatives_serialization",
"tests.unit.test_delivery,tests.unit.test_media_buy",
"tests.unit.test_delivery_measurement_enforcement,tests.unit.test_product_schema_obligations",
"tests.unit.test_format_id_dimension_merging,tests.unit.test_formatid_media_package",
"tests.unit.test_gam_currency_detection,tests.unit.test_gam_orders_manager_advertisers",
"tests.unit.test_gam_placement_targeting,tests.unit.test_performance_index_behavioral",
"tests.unit.test_get_products_impl_coverage,tests.unit.test_quiet_failure_propagation"
"tests.unit.test_get_products_impl_coverage,tests.unit.test_quiet_failure_propagation",
"tests.unit.test_product_mcp_wrapper,tests.unit.test_products_transport_wrappers"
]
}
2 changes: 1 addition & 1 deletion .pre-commit-hooks/check_import_usage.py
Original file line number Diff line number Diff line change
Expand Up @@ -94,7 +94,7 @@ def _get_name(self, node) -> str | None:
"""Extract name from node (handles Name and Attribute)."""
if isinstance(node, ast.Name):
return node.id
elif isinstance(node, ast.Attribute):
if isinstance(node, ast.Attribute):
# For chained attributes like foo.bar.Baz, just get the first part
# since that's what needs to be imported
base = node
Expand Down
14 changes: 7 additions & 7 deletions .pre-commit-hooks/check_type_ignore_count.py
Original file line number Diff line number Diff line change
Expand Up @@ -94,16 +94,16 @@ def main() -> int:
print(" Run: mypy src/your_file.py --config-file=mypy.ini", file=sys.stderr)
return 1

elif current_count == baseline_count:
if current_count == baseline_count:
print(f"✓ Type ignore count unchanged: {current_count}")
return 0

else: # current_count < baseline_count
decrease = baseline_count - current_count
print(f"🎉 Type ignore count decreased from {baseline_count} to {current_count} (-{decrease})!")
print(f" Automatically updating {BASELINE_FILE}...")
write_baseline(baseline_file, current_count)
return 0
# current_count < baseline_count
decrease = baseline_count - current_count
print(f"🎉 Type ignore count decreased from {baseline_count} to {current_count} (-{decrease})!")
print(f" Automatically updating {BASELINE_FILE}...")
write_baseline(baseline_file, current_count)
return 0


if __name__ == "__main__":
Expand Down
Loading