{
    "object_kind": "push",
    "event_name": "push",
    "before": "3dd1f851f77759c47fddb9eb1024215d90f9dbad",
    "after": "77d8d54bc2b3dc7dd2804868341ad7483107921c",
    "ref": "refs\/heads\/main",
    "ref_protected": true,
    "checkout_sha": "77d8d54bc2b3dc7dd2804868341ad7483107921c",
    "message": null,
    "user_id": 19,
    "user_name": "Bohunka Zsolt",
    "user_username": "bohunkazsolt",
    "user_email": "[REDACTED]",
    "user_avatar": "https:\/\/www.gravatar.com\/avatar\/495e14a024c9ddd64b339a3ee5bcce2be2e8468e23180b4ee001574938728865?s=80&d=identicon",
    "project_id": 206,
    "project": {
        "id": 206,
        "name": "leadmachine",
        "description": null,
        "web_url": "http:\/\/git.dunahousedev.hu\/leadmachine\/leadmachine",
        "avatar_url": null,
        "git_ssh_url": "git@git.dunahousedev.hu:leadmachine\/leadmachine.git",
        "git_http_url": "http:\/\/git.dunahousedev.hu\/leadmachine\/leadmachine.git",
        "namespace": "LeadMachine",
        "visibility_level": 0,
        "path_with_namespace": "leadmachine\/leadmachine",
        "default_branch": "main",
        "ci_config_path": "",
        "homepage": "http:\/\/git.dunahousedev.hu\/leadmachine\/leadmachine",
        "url": "git@git.dunahousedev.hu:leadmachine\/leadmachine.git",
        "ssh_url": "git@git.dunahousedev.hu:leadmachine\/leadmachine.git",
        "http_url": "http:\/\/git.dunahousedev.hu\/leadmachine\/leadmachine.git"
    },
    "commits": [
        {
            "id": "77d8d54bc2b3dc7dd2804868341ad7483107921c",
            "message": "Remove `AdminApi` and related implementations in `admin_api.dart`. Transition obsolete admin API logic to new mechanisms.\n",
            "title": "Remove `AdminApi` and related implementations in `admin_api.dart`. Transition...",
            "timestamp": "2026-10-11T16:30:42+02:00",
            "url": "http:\/\/git.dunahousedev.hu\/leadmachine\/leadmachine\/-\/commit\/77d8d54bc2b3dc7dd2804868341ad7483107921c",
            "author": {
                "name": "Bohunka Zsolt",
                "email": "bohunka.zsolt@dh.hu"
            },
            "added": [
                "backend\/app\/Console\/Commands\/AdminsCreateCommand.php",
                "backend\/app\/Domain\/Auth\/PasswordPolicy.php",
                "backend\/app\/Domain\/Auth\/TemporaryPassword.php",
                "backend\/app\/Domain\/Market\/MarketConfigActor.php",
                "backend\/app\/Domain\/Normalization\/PhoneFormatter.php",
                "backend\/app\/Http\/Controllers\/AdminWeb\/AssetController.php",
                "backend\/app\/Http\/Controllers\/AdminWeb\/ConfigExportController.php",
                "backend\/app\/Http\/Controllers\/AdminWeb\/LoginController.php",
                "backend\/app\/Http\/Controllers\/AdminWeb\/NoticeAudioController.php",
                "backend\/app\/Http\/Controllers\/AdminWeb\/PasswordController.php",
                "backend\/app\/Http\/Controllers\/AdminWeb\/ProductPageController.php",
                "backend\/app\/Http\/Middleware\/Admin\/AdminIdleTimeout.php",
                "backend\/app\/Http\/Middleware\/Admin\/AuthenticateAdmin.php",
                "backend\/app\/Http\/Middleware\/Admin\/EnsureActiveAdmin.php",
                "backend\/app\/Http\/Middleware\/Admin\/RedirectIfAdmin.php",
                "backend\/app\/Http\/Middleware\/Admin\/RequireAdminPasswordChange.php",
                "backend\/app\/Http\/Middleware\/Admin\/UseAdminLoginLocale.php",
                "backend\/app\/Http\/Middleware\/Admin\/UseAdminMarket.php",
                "backend\/app\/Http\/Middleware\/EnsureAgentPasswordChanged.php",
                "backend\/app\/Lab\/LabNumbers.php",
                "backend\/app\/Livewire\/Admin\/AdminComponent.php",
                "backend\/app\/Livewire\/Admin\/Admins\/AdminList.php",
                "backend\/app\/Livewire\/Admin\/Agents\/AgentList.php",
                "backend\/app\/Livewire\/Admin\/Changes\/ChangeList.php",
                "backend\/app\/Livewire\/Admin\/Lab\/PromptLab.php",
                "backend\/app\/Livewire\/Admin\/Leads\/LeadList.php",
                "backend\/app\/Livewire\/Admin\/Products\/BasicsTab.php",
                "backend\/app\/Livewire\/Admin\/Products\/DocumentsTab.php",
                "backend\/app\/Livewire\/Admin\/Products\/EligibilityTab.php",
                "backend\/app\/Livewire\/Admin\/Products\/ProductList.php",
                "backend\/app\/Livewire\/Admin\/Products\/ProductTab.php",
                "backend\/app\/Livewire\/Admin\/Products\/PromptTab.php",
                "backend\/app\/Livewire\/Admin\/Products\/QuestionsTab.php",
                "backend\/app\/Livewire\/Admin\/Rules\/RulesEditor.php",
                "backend\/app\/Models\/AdminUser.php",
                "backend\/app\/Services\/Admin\/AdminAccounts.php",
                "backend\/app\/Services\/Admin\/AdminAudit.php",
                "backend\/app\/Services\/Admin\/AdminInputRejected.php",
                "backend\/app\/Services\/Admin\/AdminLeads.php",
                "backend\/app\/Services\/Admin\/AdminNavigation.php",
                "backend\/app\/Services\/Admin\/AdminSessionGate.php",
                "backend\/app\/Services\/Admin\/AdminText.php",
                "backend\/app\/Services\/Admin\/AgentAccounts.php",
                "backend\/app\/Services\/Admin\/ConfigChanges.php",
                "backend\/app\/Services\/Admin\/LabWorkbench.php",
                "backend\/app\/Services\/Admin\/MarketRules.php",
                "backend\/app\/Services\/Admin\/Products\/ProductActor.php",
                "backend\/app\/Services\/Admin\/Products\/ProductCatalog.php",
                "backend\/app\/Services\/Admin\/Products\/ProductEditor.php",
                "backend\/app\/Services\/Admin\/Products\/ProductEligibility.php",
                "backend\/app\/Services\/Admin\/Products\/ProductLabels.php",
                "backend\/app\/Services\/Admin\/Products\/ProductPrompts.php",
                "backend\/config\/admin.php",
                "backend\/config\/livewire.php",
                "backend\/database\/migrations\/2026_10_11_000100_create_admin_users_table.php",
                "backend\/database\/migrations\/2026_10_11_000110_add_password_change_required_to_agents_table.php",
                "backend\/database\/migrations\/2026_10_11_000120_move_admin_agents_to_admin_users.php",
                "backend\/database\/migrations\/2026_10_11_000300_add_admin_user_id_to_market_config_tables.php",
                "backend\/lang\/en\/admin.php",
                "backend\/lang\/en\/admin_admins.php",
                "backend\/lang\/en\/admin_agents.php",
                "backend\/lang\/en\/admin_changes.php",
                "backend\/lang\/en\/admin_lab.php",
                "backend\/lang\/en\/admin_leads.php",
                "backend\/lang\/en\/admin_products.php",
                "backend\/lang\/en\/admin_rules.php",
                "backend\/lang\/hu\/admin.php",
                "backend\/lang\/hu\/admin_admins.php",
                "backend\/lang\/hu\/admin_agents.php",
                "backend\/lang\/hu\/admin_changes.php",
                "backend\/lang\/hu\/admin_lab.php",
                "backend\/lang\/hu\/admin_leads.php",
                "backend\/lang\/hu\/admin_products.php",
                "backend\/lang\/hu\/admin_rules.php",
                "backend\/lang\/hu\/validation.php",
                "backend\/lang\/it\/admin.php",
                "backend\/lang\/it\/admin_admins.php",
                "backend\/lang\/it\/admin_agents.php",
                "backend\/lang\/it\/admin_changes.php",
                "backend\/lang\/it\/admin_lab.php",
                "backend\/lang\/it\/admin_leads.php",
                "backend\/lang\/it\/admin_products.php",
                "backend\/lang\/it\/admin_rules.php",
                "backend\/lang\/it\/validation.php",
                "backend\/resources\/admin-assets\/admin.css",
                "backend\/resources\/admin-assets\/fonts\/Geist-Bold.ttf",
                "backend\/resources\/admin-assets\/fonts\/Geist-Medium.ttf",
                "backend\/resources\/admin-assets\/fonts\/Geist-Regular.ttf",
                "backend\/resources\/admin-assets\/fonts\/Geist-SemiBold.ttf",
                "backend\/resources\/admin-assets\/fonts\/GeistMono-Medium.ttf",
                "backend\/resources\/admin-assets\/fonts\/GeistMono-Regular.ttf",
                "backend\/resources\/admin-assets\/fonts\/OFL.txt",
                "backend\/resources\/admin-assets\/icons\/apple-touch-icon.png",
                "backend\/resources\/admin-assets\/icons\/favicon.png",
                "backend\/resources\/admin-assets\/icons\/favicon.svg",
                "backend\/resources\/views\/admin\/admins.blade.php",
                "backend\/resources\/views\/admin\/agents.blade.php",
                "backend\/resources\/views\/admin\/auth\/login.blade.php",
                "backend\/resources\/views\/admin\/auth\/password.blade.php",
                "backend\/resources\/views\/admin\/changes.blade.php",
                "backend\/resources\/views\/admin\/lab.blade.php",
                "backend\/resources\/views\/admin\/leads.blade.php",
                "backend\/resources\/views\/admin\/products\/index.blade.php",
                "backend\/resources\/views\/admin\/products\/show.blade.php",
                "backend\/resources\/views\/admin\/rules.blade.php",
                "backend\/resources\/views\/components\/admin\/account-menu.blade.php",
                "backend\/resources\/views\/components\/admin\/auth-layout.blade.php",
                "backend\/resources\/views\/components\/admin\/banner.blade.php",
                "backend\/resources\/views\/components\/admin\/button.blade.php",
                "backend\/resources\/views\/components\/admin\/card.blade.php",
                "backend\/resources\/views\/components\/admin\/chip.blade.php",
                "backend\/resources\/views\/components\/admin\/field.blade.php",
                "backend\/resources\/views\/components\/admin\/footer.blade.php",
                "backend\/resources\/views\/components\/admin\/head.blade.php",
                "backend\/resources\/views\/components\/admin\/icon.blade.php",
                "backend\/resources\/views\/components\/admin\/input.blade.php",
                "backend\/resources\/views\/components\/admin\/layout.blade.php",
                "backend\/resources\/views\/components\/admin\/link-button.blade.php",
                "backend\/resources\/views\/components\/admin\/locked.blade.php",
                "backend\/resources\/views\/components\/admin\/modal.blade.php",
                "backend\/resources\/views\/components\/admin\/page-header.blade.php",
                "backend\/resources\/views\/components\/admin\/pill.blade.php",
                "backend\/resources\/views\/components\/admin\/search.blade.php",
                "backend\/resources\/views\/components\/admin\/secret.blade.php",
                "backend\/resources\/views\/components\/admin\/select.blade.php",
                "backend\/resources\/views\/components\/admin\/sidebar.blade.php",
                "backend\/resources\/views\/components\/admin\/table.blade.php",
                "backend\/resources\/views\/components\/admin\/tabs.blade.php",
                "backend\/resources\/views\/livewire\/admin\/admins\/admin-list.blade.php",
                "backend\/resources\/views\/livewire\/admin\/agents\/agent-list.blade.php",
                "backend\/resources\/views\/livewire\/admin\/changes\/change-list.blade.php",
                "backend\/resources\/views\/livewire\/admin\/lab\/prompt-lab.blade.php",
                "backend\/resources\/views\/livewire\/admin\/leads\/lead-list.blade.php",
                "backend\/resources\/views\/livewire\/admin\/products\/basics-tab.blade.php",
                "backend\/resources\/views\/livewire\/admin\/products\/documents-tab.blade.php",
                "backend\/resources\/views\/livewire\/admin\/products\/eligibility-tab.blade.php",
                "backend\/resources\/views\/livewire\/admin\/products\/product-list.blade.php",
                "backend\/resources\/views\/livewire\/admin\/products\/prompt-tab.blade.php",
                "backend\/resources\/views\/livewire\/admin\/products\/questions-tab.blade.php",
                "backend\/resources\/views\/livewire\/admin\/rules\/rules-editor.blade.php",
                "backend\/routes\/admin.php",
                "backend\/tests\/Feature\/AdminServicesTest.php",
                "backend\/tests\/Feature\/AdminUserMigrationTest.php",
                "backend\/tests\/Feature\/AdminWebAdminsTest.php",
                "backend\/tests\/Feature\/AdminWebAgentsTest.php",
                "backend\/tests\/Feature\/AdminWebAssetsTest.php",
                "backend\/tests\/Feature\/AdminWebAuthTest.php",
                "backend\/tests\/Feature\/AdminWebChangesTest.php",
                "backend\/tests\/Feature\/AdminWebLabTest.php",
                "backend\/tests\/Feature\/AdminWebLeadsTest.php",
                "backend\/tests\/Feature\/AdminWebProductsTest.php",
                "backend\/tests\/Feature\/AdminWebRulesTest.php",
                "backend\/tests\/Feature\/AgentPasswordChangeTest.php",
                "frontend\/lib\/features\/login\/change_password_screen.dart",
                "frontend\/test\/change_password_test.dart"
            ],
            "modified": [
                ".env.example",
                "CLAUDE.md",
                "backend\/app\/Console\/Commands\/AgentsDevCreateCommand.php",
                "backend\/app\/Console\/Commands\/LeadsSeedSyntheticCommand.php",
                "backend\/app\/Http\/Controllers\/App\/AuthController.php",
                "backend\/app\/Http\/Controllers\/Crm\/AgentController.php",
                "backend\/app\/Http\/Controllers\/Lab\/CallLabController.php",
                "backend\/app\/Http\/Controllers\/Lab\/PromptLabController.php",
                "backend\/app\/Http\/Presenters\/AdminChangePresenter.php",
                "backend\/app\/Lab\/LabCallService.php",
                "backend\/app\/Models\/Agent.php",
                "backend\/app\/Models\/AgentSetting.php",
                "backend\/app\/Models\/MarketConfigAudit.php",
                "backend\/app\/Models\/MarketConfigVersion.php",
                "backend\/app\/Models\/MarketPrompt.php",
                "backend\/app\/Services\/Call\/AppCallService.php",
                "backend\/app\/Services\/Call\/InboundCallRouter.php",
                "backend\/bootstrap\/app.php",
                "backend\/composer.json",
                "backend\/composer.lock",
                "backend\/config\/auth.php",
                "backend\/config\/lab.php",
                "backend\/resources\/views\/lab\/call.blade.php",
                "backend\/resources\/views\/lab\/layout.blade.php",
                "backend\/routes\/app.php",
                "backend\/routes\/lab.php",
                "backend\/tests\/Feature\/CallLabTest.php",
                "backend\/tests\/Feature\/CrmLeadPushTest.php",
                "backend\/tests\/Feature\/InboundAppCallTest.php",
                "backend\/tests\/Feature\/InboundCallTest.php",
                "backend\/tests\/Feature\/LeadsSeedSyntheticTest.php",
                "backend\/tests\/Feature\/PromptLabSuiteTest.php",
                "backend\/tests\/Pest.php",
                "docs\/AI_PIPELINE.md",
                "docs\/API.md",
                "docs\/ARCHITECTURE.md",
                "docs\/DATA_MODEL.md",
                "docs\/DECISIONS.md",
                "docs\/DEPLOYMENT.md",
                "docs\/DEVELOPMENT.md",
                "docs\/M1_SPIKE.md",
                "docs\/MILESTONES.md",
                "docs\/OPEN_QUESTIONS.md",
                "docs\/SPEC.md",
                "frontend\/README.md",
                "frontend\/lib\/core\/api\/api_client.dart",
                "frontend\/lib\/core\/api\/api_providers.dart",
                "frontend\/lib\/core\/api\/lead_machine_api.dart",
                "frontend\/lib\/core\/api\/models\/auth_models.dart",
                "frontend\/lib\/core\/auth\/session.dart",
                "frontend\/lib\/core\/design\/README_REWORK.md",
                "frontend\/lib\/core\/design\/design.dart",
                "frontend\/lib\/core\/design\/lm_account.dart",
                "frontend\/lib\/core\/design\/lm_pickers.dart",
                "frontend\/lib\/core\/design\/lm_sidebar.dart",
                "frontend\/lib\/core\/design\/lm_text_field.dart",
                "frontend\/lib\/core\/router\/app_router.dart",
                "frontend\/lib\/core\/router\/routes.dart",
                "frontend\/lib\/core\/theme\/tokens.dart",
                "frontend\/lib\/core\/widgets\/account_menu.dart",
                "frontend\/lib\/core\/widgets\/app_shell.dart",
                "frontend\/lib\/features\/lead_detail\/lead_detail_screen.dart",
                "frontend\/lib\/features\/settings\/settings_screen.dart",
                "frontend\/lib\/l10n\/app_en.arb",
                "frontend\/lib\/l10n\/app_hu.arb",
                "frontend\/lib\/l10n\/app_it.arb",
                "frontend\/test\/api_client_test.dart",
                "frontend\/test\/design_overlays_test.dart",
                "frontend\/test\/lead_detail_fields_test.dart",
                "frontend\/test\/screenshots\/screens_test.dart",
                "frontend\/test\/settings_api_test.dart",
                "frontend\/test\/settings_screen_test.dart",
                "frontend\/test\/soft_phone_test.dart",
                "frontend\/test\/support\/fake_api.dart",
                "frontend\/test\/support\/test_app.dart",
                "infra\/env.template",
                "openapi\/app-api.yaml",
                "openapi\/crm-api.yaml"
            ],
            "removed": [
                "backend\/app\/Http\/Controllers\/Admin\/AdminController.php",
                "backend\/app\/Lab\/LabAllowlist.php",
                "backend\/tests\/Feature\/AdminTest.php",
                "frontend\/lib\/core\/design\/lm_month_day.dart",
                "frontend\/lib\/core\/design\/lm_tabs.dart",
                "frontend\/lib\/features\/admin\/admin_api.dart",
                "frontend\/lib\/features\/admin\/admin_changes_screen.dart",
                "frontend\/lib\/features\/admin\/admin_product_screen.dart",
                "frontend\/lib\/features\/admin\/admin_products_screen.dart",
                "frontend\/lib\/features\/admin\/admin_prompt_lab.dart",
                "frontend\/lib\/features\/admin\/admin_rule_forms.dart",
                "frontend\/lib\/features\/admin\/admin_rules_screen.dart",
                "frontend\/lib\/features\/admin\/admin_shell.dart",
                "frontend\/lib\/features\/admin\/admin_users_screen.dart",
                "frontend\/lib\/features\/admin\/open_url_stub.dart",
                "frontend\/lib\/features\/admin\/open_url_web.dart",
                "frontend\/lib\/features\/admin\/pick_file_stub.dart",
                "frontend\/lib\/features\/admin\/pick_file_web.dart",
                "frontend\/test\/admin_test.dart",
                "frontend\/test\/support\/fake_admin_api.dart"
            ]
        }
    ],
    "total_commits_count": 1,
    "push_options": [],
    "repository": {
        "name": "leadmachine",
        "url": "git@git.dunahousedev.hu:leadmachine\/leadmachine.git",
        "description": null,
        "homepage": "http:\/\/git.dunahousedev.hu\/leadmachine\/leadmachine",
        "git_http_url": "http:\/\/git.dunahousedev.hu\/leadmachine\/leadmachine.git",
        "git_ssh_url": "git@git.dunahousedev.hu:leadmachine\/leadmachine.git",
        "visibility_level": 0
    },
    "output": [
        "\/etc\/apache2\/sites-available\/bohunkazsolt.leadmachine.dunahousedev.hu.conf exists.",
        "\/etc\/apache2\/sites-available\/leadmachine.dunahousedev.hu.conf exists.",
        "Saving debug log to \/var\/log\/letsencrypt\/letsencrypt.log",
        "An unexpected error occurred:",
        "BrokenPipeError: [Errno 32] Broken pipe",
        "Ask for help or search for solutions at https:\/\/community.letsencrypt.org. See the logfile \/var\/log\/letsencrypt\/letsencrypt.log or re-run Certbot with -v for more details.",
        "Saving debug log to \/var\/log\/letsencrypt\/letsencrypt.log",
        "An unexpected error occurred:",
        "BrokenPipeError: [Errno 32] Broken pipe",
        "Ask for help or search for solutions at https:\/\/community.letsencrypt.org. See the logfile \/var\/log\/letsencrypt\/letsencrypt.log or re-run Certbot with -v for more details.",
        "Fetching origin",
        "From git.dunahousedev.hu:leadmachine\/leadmachine",
        "   3dd1f85..77d8d54  main       -> origin\/main",
        "HEAD is now at 77d8d54 Remove `AdminApi` and related implementations in `admin_api.dart`. Transition obsolete admin API logic to new mechanisms.",
        "--OK--"
    ]
}