{
    "object_kind": "push",
    "event_name": "push",
    "before": "fd43386b07600c773795cdde034eb073de03e440",
    "after": "819211298d55eafe825335d1f997ab12ed3e5d02",
    "ref": "refs\/heads\/main",
    "ref_protected": true,
    "checkout_sha": "819211298d55eafe825335d1f997ab12ed3e5d02",
    "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": "819211298d55eafe825335d1f997ab12ed3e5d02",
            "message": "Add commands for developer agent account creation and synthetic lead seeding. Introduce CallFacts, call summarization pipeline, and JSON schema analysis utilities for post-call processing.\n",
            "title": "Add commands for developer agent account creation and synthetic lead seeding....",
            "timestamp": "2026-10-06T11:16:50+02:00",
            "url": "http:\/\/git.dunahousedev.hu\/leadmachine\/leadmachine\/-\/commit\/819211298d55eafe825335d1f997ab12ed3e5d02",
            "author": {
                "name": "Bohunka Zsolt",
                "email": "bohunka.zsolt@dh.hu"
            },
            "added": [
                "backend\/app\/Console\/Commands\/AgentsDevCreateCommand.php",
                "backend\/app\/Console\/Commands\/LeadsSeedSyntheticCommand.php",
                "backend\/app\/Domain\/Analysis\/CallFacts.php",
                "backend\/app\/Domain\/Analysis\/CallSummaryResult.php",
                "backend\/app\/Domain\/Analysis\/CallSummarySchema.php",
                "backend\/app\/Domain\/Analysis\/ComposedPrompt.php",
                "backend\/app\/Domain\/Analysis\/PostCallSummarizer.php",
                "backend\/app\/Domain\/Analysis\/PromptLibrary.php",
                "backend\/app\/Domain\/Analysis\/Utterance.php",
                "backend\/app\/Domain\/Anonymization\/AnonymisedText.php",
                "backend\/app\/Domain\/Anonymization\/Anonymizer.php",
                "backend\/app\/Domain\/Crm\/CrmAdapter.php",
                "backend\/app\/Domain\/Crm\/CrmSendResult.php",
                "backend\/app\/Domain\/Crm\/MockCrmAdapter.php",
                "backend\/app\/Domain\/Lead\/CallEligibility.php",
                "backend\/app\/Domain\/Lead\/EligibilityDecision.php",
                "backend\/app\/Domain\/Lead\/LeadExclusion.php",
                "backend\/app\/Domain\/Lead\/LeadUpsertResult.php",
                "backend\/app\/Domain\/Lead\/LeadUpsertService.php",
                "backend\/app\/Domain\/Lead\/WorkQueue.php",
                "backend\/app\/Domain\/Llm\/FakeLlmProvider.php",
                "backend\/app\/Domain\/Llm\/JsonSchemaValidator.php",
                "backend\/app\/Domain\/Llm\/LlmException.php",
                "backend\/app\/Domain\/Llm\/LlmProvider.php",
                "backend\/app\/Domain\/Llm\/LlmRequest.php",
                "backend\/app\/Domain\/Llm\/LlmResponse.php",
                "backend\/app\/Domain\/Llm\/LlmTier.php",
                "backend\/app\/Domain\/Llm\/UnconfiguredLlmProvider.php",
                "backend\/app\/Domain\/Normalization\/NormalizedPhone.php",
                "backend\/app\/Domain\/Normalization\/PhoneNormalizer.php",
                "backend\/app\/Domain\/Stt\/GatewaySttConfig.php",
                "backend\/app\/Domain\/Stt\/SttProviderCatalog.php",
                "backend\/app\/Domain\/Telephony\/Announcements.php",
                "backend\/app\/Domain\/Telephony\/IncomingCall.php",
                "backend\/app\/Http\/Controllers\/App\/AuthController.php",
                "backend\/app\/Http\/Controllers\/App\/CallController.php",
                "backend\/app\/Http\/Controllers\/App\/LeadController.php",
                "backend\/app\/Http\/Controllers\/Crm\/AgentController.php",
                "backend\/app\/Http\/Controllers\/Crm\/LeadController.php",
                "backend\/app\/Http\/Middleware\/AuthenticateCrm.php",
                "backend\/app\/Http\/Middleware\/EnsureActiveAgent.php",
                "backend\/app\/Http\/Middleware\/IdempotentRequest.php",
                "backend\/app\/Http\/Presenters\/AppPresenter.php",
                "backend\/app\/Jobs\/AnalyzeCall.php",
                "backend\/app\/Jobs\/SendCrmOutbox.php",
                "backend\/app\/Jobs\/SummarizeLabCall.php",
                "backend\/app\/Services\/Call\/AppCallService.php",
                "backend\/app\/Services\/Call\/CallAnalysisService.php",
                "backend\/app\/Services\/Call\/CallConfirmationService.php",
                "backend\/app\/Services\/Call\/CallMediaStarter.php",
                "backend\/app\/Services\/Call\/CallNotAllowed.php",
                "backend\/app\/Services\/Call\/ConfirmationRejected.php",
                "backend\/app\/Services\/Call\/InboundCallRouter.php",
                "backend\/config\/app_api.php",
                "backend\/config\/crm.php",
                "backend\/config\/llm.php",
                "backend\/config\/sanctum.php",
                "backend\/config\/stt.php",
                "backend\/config\/suppression.php",
                "backend\/database\/migrations\/2026_10_06_000100_add_login_to_agents_table.php",
                "backend\/database\/migrations\/2026_10_06_000110_create_personal_access_tokens_table.php",
                "backend\/routes\/app.php",
                "backend\/routes\/crm.php",
                "backend\/tests\/Feature\/AnonymizerTest.php",
                "backend\/tests\/Feature\/AppCallFlowTest.php",
                "backend\/tests\/Feature\/CrmLeadPushTest.php",
                "backend\/tests\/Feature\/GatewaySttConfigTest.php",
                "backend\/tests\/Feature\/InboundCallTest.php",
                "backend\/tests\/Feature\/PostCallSummarizerTest.php",
                "fixtures\/leads\/synthetic-01.json",
                "fixtures\/leads\/synthetic-02.json",
                "fixtures\/leads\/synthetic-03.json",
                "fixtures\/leads\/synthetic-04.json",
                "fixtures\/leads\/synthetic-05.json",
                "frontend\/assets\/fonts\/Geist-Bold.ttf",
                "frontend\/assets\/fonts\/Geist-Italic.ttf",
                "frontend\/assets\/fonts\/Geist-Medium.ttf",
                "frontend\/assets\/fonts\/Geist-Regular.ttf",
                "frontend\/assets\/fonts\/Geist-SemiBold.ttf",
                "frontend\/assets\/fonts\/GeistMono-Medium.ttf",
                "frontend\/assets\/fonts\/GeistMono-Regular.ttf",
                "frontend\/assets\/fonts\/OFL.txt",
                "frontend\/lib\/core\/api\/api_client.dart",
                "frontend\/lib\/core\/api\/api_exception.dart",
                "frontend\/lib\/core\/api\/api_providers.dart",
                "frontend\/lib\/core\/api\/json.dart",
                "frontend\/lib\/core\/api\/lead_machine_api.dart",
                "frontend\/lib\/core\/api\/models.dart",
                "frontend\/lib\/core\/api\/models\/auth_models.dart",
                "frontend\/lib\/core\/api\/models\/call_models.dart",
                "frontend\/lib\/core\/api\/models\/lead_models.dart",
                "frontend\/lib\/core\/auth\/local_store.dart",
                "frontend\/lib\/core\/auth\/local_store_io.dart",
                "frontend\/lib\/core\/auth\/local_store_stub.dart",
                "frontend\/lib\/core\/auth\/local_store_web.dart",
                "frontend\/lib\/core\/auth\/session.dart",
                "frontend\/lib\/core\/auth\/token_store.dart",
                "frontend\/lib\/core\/config\/platform_info.dart",
                "frontend\/lib\/core\/design\/design.dart",
                "frontend\/lib\/core\/design\/lm_adaptive_shell.dart",
                "frontend\/lib\/core\/design\/lm_banner.dart",
                "frontend\/lib\/core\/design\/lm_button.dart",
                "frontend\/lib\/core\/design\/lm_call_controls.dart",
                "frontend\/lib\/core\/design\/lm_confirm_sheet.dart",
                "frontend\/lib\/core\/design\/lm_grouped_list.dart",
                "frontend\/lib\/core\/design\/lm_layout.dart",
                "frontend\/lib\/core\/design\/lm_navigation.dart",
                "frontend\/lib\/core\/design\/lm_pickers.dart",
                "frontend\/lib\/core\/design\/lm_segmented.dart",
                "frontend\/lib\/core\/design\/lm_sidebar.dart",
                "frontend\/lib\/core\/design\/lm_states.dart",
                "frontend\/lib\/core\/design\/lm_status_chip.dart",
                "frontend\/lib\/core\/design\/lm_tab_bar.dart",
                "frontend\/lib\/core\/design\/lm_text_field.dart",
                "frontend\/lib\/core\/design\/lm_transcript_bubble.dart",
                "frontend\/lib\/core\/l10n\/labels.dart",
                "frontend\/lib\/core\/l10n\/locale_controller.dart",
                "frontend\/lib\/core\/theme\/tokens.dart",
                "frontend\/lib\/core\/widgets\/api_error_view.dart",
                "frontend\/lib\/core\/widgets\/app_notice.dart",
                "frontend\/lib\/core\/widgets\/app_shell.dart",
                "frontend\/lib\/core\/widgets\/confidence_chip.dart",
                "frontend\/lib\/features\/call_history\/call_detail_screen.dart",
                "frontend\/lib\/features\/lead_detail\/lead_detail_providers.dart",
                "frontend\/lib\/features\/live_call\/transcript_view.dart",
                "frontend\/lib\/features\/login\/splash_screen.dart",
                "frontend\/lib\/features\/work_queue\/work_queue_providers.dart",
                "frontend\/lib\/features\/wrap_up\/wrap_up_draft.dart",
                "frontend\/test\/api_client_test.dart",
                "frontend\/test\/call_flow_test.dart",
                "frontend\/test\/design_system_test.dart",
                "frontend\/test\/l10n_test.dart",
                "frontend\/test\/session_flow_test.dart",
                "frontend\/test\/support\/fake_api.dart",
                "frontend\/test\/support\/test_app.dart",
                "frontend\/test\/transcript_test.dart",
                "frontend\/test\/work_queue_test.dart",
                "frontend\/test\/wrap_up_test.dart",
                "media-gateway\/src\/stt\/DeepgramSttProvider.test.ts",
                "media-gateway\/src\/stt\/DeepgramSttProvider.ts",
                "media-gateway\/src\/stt\/ElevenLabsSttProvider.test.ts",
                "media-gateway\/src\/stt\/ElevenLabsSttProvider.ts",
                "media-gateway\/src\/stt\/callSttConfig.test.ts",
                "media-gateway\/src\/stt\/callSttConfig.ts",
                "media-gateway\/src\/stt\/factory.ts",
                "prompts\/common\/prohibited.md",
                "prompts\/common\/summary.md"
            ],
            "modified": [
                "CLAUDE.md",
                "backend\/app\/Domain\/Telephony\/CallLegEventLog.php",
                "backend\/app\/Domain\/Telephony\/DialCommand.php",
                "backend\/app\/Domain\/Telephony\/FakeTelephonyProvider.php",
                "backend\/app\/Domain\/Telephony\/Providers\/TelnyxTelephonyProvider.php",
                "backend\/app\/Domain\/Telephony\/TelephonyProvider.php",
                "backend\/app\/Http\/Controllers\/Lab\/CallLabController.php",
                "backend\/app\/Http\/Controllers\/Webhooks\/TelephonyWebhookController.php",
                "backend\/app\/Http\/Middleware\/EnsureLabAccess.php",
                "backend\/app\/Lab\/LabCallPhase.php",
                "backend\/app\/Lab\/LabCallService.php",
                "backend\/app\/Models\/Agent.php",
                "backend\/app\/Models\/Call.php",
                "backend\/app\/Models\/CallConfirmation.php",
                "backend\/app\/Models\/CallResult.php",
                "backend\/app\/Models\/CallSummarySnapshot.php",
                "backend\/app\/Models\/CallUtterance.php",
                "backend\/app\/Models\/CrmOutbox.php",
                "backend\/app\/Models\/Device.php",
                "backend\/app\/Models\/Lead.php",
                "backend\/app\/Models\/LeadAssignment.php",
                "backend\/app\/Models\/StageEvent.php",
                "backend\/app\/Providers\/AppServiceProvider.php",
                "backend\/bootstrap\/app.php",
                "backend\/composer.json",
                "backend\/config\/analysis.php",
                "backend\/config\/auth.php",
                "backend\/config\/lab.php",
                "backend\/config\/markets.php",
                "backend\/config\/telephony.php",
                "backend\/phpunit.xml",
                "backend\/resources\/views\/lab\/call.blade.php",
                "backend\/routes\/lab.php",
                "backend\/tests\/Feature\/CallLabTest.php",
                "config\/markets\/IT.yaml",
                "config\/markets\/README.md",
                "docs\/AI_PIPELINE.md",
                "docs\/DECISIONS.md",
                "docs\/DEVELOPMENT.md",
                "docs\/DEV_GUIDELINES.md",
                "docs\/M1_SPIKE.md",
                "docs\/MILESTONES.md",
                "docs\/OPEN_QUESTIONS.md",
                "docs\/SPEC.md",
                "frontend\/README.md",
                "frontend\/lib\/app.dart",
                "frontend\/lib\/core\/router\/app_router.dart",
                "frontend\/lib\/core\/router\/routes.dart",
                "frontend\/lib\/core\/theme\/app_theme.dart",
                "frontend\/lib\/features\/call_history\/call_history_screen.dart",
                "frontend\/lib\/features\/lead_detail\/lead_detail_screen.dart",
                "frontend\/lib\/features\/live_call\/live_call_screen.dart",
                "frontend\/lib\/features\/login\/login_screen.dart",
                "frontend\/lib\/features\/notifications\/notifications_screen.dart",
                "frontend\/lib\/features\/settings\/settings_screen.dart",
                "frontend\/lib\/features\/work_queue\/work_queue_screen.dart",
                "frontend\/lib\/features\/wrap_up\/wrap_up_screen.dart",
                "frontend\/lib\/l10n\/app_en.arb",
                "frontend\/lib\/l10n\/app_hu.arb",
                "frontend\/lib\/l10n\/app_it.arb",
                "frontend\/lib\/main.dart",
                "frontend\/pubspec.lock",
                "frontend\/pubspec.yaml",
                "infra\/env.template",
                "media-gateway\/src\/config.ts",
                "media-gateway\/src\/index.ts",
                "media-gateway\/src\/stt\/SpeechmaticsSttProvider.ts",
                "media-gateway\/src\/stt\/UtteranceAssembler.ts",
                "openapi\/app-api.yaml"
            ],
            "removed": []
        }
    ],
    "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",
        "   fd43386..8192112  main       -> origin\/main",
        "HEAD is now at 8192112 Add commands for developer agent account creation and synthetic lead seeding. Introduce CallFacts, call summarization pipeline, and JSON schema analysis utilities for post-call processing.",
        "--OK--"
    ]
}