|
70620
|
1662
|
5
|
2026-04-22T10:59:34.905365+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-22/1776 /Users/lukas/.screenpipe/data/data/2026-04-22/1776855574905_m1.jpg...
|
PhpStorm
|
faVsco.js – RequestGenerateAskJiminnyReportJob.php
|
1
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
Project: faVsco.js, menu
JY-20157-AJ-report-not-se Project: faVsco.js, menu
JY-20157-AJ-report-not-send-notification, menu
Start Listening for PHP Debug Connections
AskJiminnyReportActivityServiceTest
Run 'AskJiminnyReportActivityServiceTest'
Debug 'AskJiminnyReportActivityServiceTest'
More Actions
JetBrains AI
Search Everywhere
IDE and Project Settings
Code changed:
Hide
Sync Changes
Hide This Notification
1
3
3
Previous Highlighted Error
Next Highlighted Error
<?php
declare(strict_types=1);
namespace Jiminny\Jobs\AutomatedReports;
use Carbon\Carbon;
use Illuminate\Bus\Queueable;
use Illuminate\Contracts\Queue\ShouldBeUnique;
use Illuminate\Contracts\Queue\ShouldQueue;
use Illuminate\Contracts\Routing\UrlGenerator;
use Illuminate\Queue\InteractsWithQueue;
use Jiminny\Component\ProphetAi\Exceptions\ProphetException;
use Jiminny\Component\ProphetAi\ProphetClient;
use Jiminny\Component\Queue\Constants;
use Jiminny\Jobs\JobDispatcherInterface;
use Jiminny\Models\AutomatedReport;
use Jiminny\Models\AutomatedReportResult;
use Jiminny\Models\Team;
use Jiminny\Services\Kiosk\AutomatedReports\AskJiminnyReportActivityService;
use Jiminny\Services\Kiosk\AutomatedReports\AutomatedReportsService;
use Psr\Log\LoggerInterface;
use Throwable;
class RequestGenerateAskJiminnyReportJob implements ShouldQueue, ShouldBeUnique
{
use InteractsWithQueue;
use Queueable;
private const string LOG_PREFIX = '[AskJiminnyReport:Generate]';
private const int MIN_ACTIVITIES_COUNT = 1;
public int $tries = 2;
private ?AutomatedReportResult $reportResult = null;
public function __construct(private readonly string $reportUuid)
{
$this->onQueue(Constants::QUEUE_ANALYTICS);
}
public function uniqueId(): string
{
return $this->reportUuid;
}
public function handle(
AutomatedReportsService $reportService,
AskJiminnyReportActivityService $activityService,
ProphetClient $prophetClient,
LoggerInterface $logger,
UrlGenerator $urlGenerator,
JobDispatcherInterface $jobDispatcher,
): void {
$logger->info(self::LOG_PREFIX . ' Started', [
'automatedReportUuid' => $this->reportUuid,
]);
try {
$automatedReport = $reportService->getReport($this->reportUuid);
$this->dispatchNotGeneratedNotifications(
$automatedReport,
$reportService,
$urlGenerator,
$jobDispatcher,
$logger,
);
return;
if (! $this->validateReport($automatedReport, $logger)) {
return;
}
$creator = $automatedReport->getCreator();
if ($creator === null) {
$logger->warning(self::LOG_PREFIX . ' Skipped, report creator not found', [
'automatedReportUuid' => $this->reportUuid,
]);
return;
}
$savedSearch = $automatedReport->getSavedSearch();
if ($savedSearch === null) {
$logger->warning(self::LOG_PREFIX . ' Skipped, saved search not found', [
'automatedReportUuid' => $this->reportUuid,
]);
return;
}
$prompt = $automatedReport->getAskAnythingPrompt();
if ($prompt === null) {
$logger->warning(self::LOG_PREFIX . ' Skipped, ask anything prompt not found', [
'automatedReportUuid' => $this->reportUuid,
]);
return;
}
$this->reportResult = $reportService->getOrCreateReportResult(
automatedReport: $automatedReport,
data: [
'status' => AutomatedReportResult::STATUS_DEFAULT,
'media_type' => AutomatedReportsService::MEDIA_TYPE_PDF,
]
);
$activityIds = $activityService->getActivityIdsForSavedSearch(
savedSearch: $savedSearch,
user: $creator,
frequency: $automatedReport->getFrequency(),
);
$logger->info(self::LOG_PREFIX . ' Fetched activity IDs', [
'automatedReportUuid' => $this->reportUuid,
'activityCount' => count($activityIds),
]);
if (count($activityIds) < self::MIN_ACTIVITIES_COUNT) {
$this->failReport(AutomatedReportResult::REASON_NOT_ENOUGH_ACTIVITIES);
$logger->info(self::LOG_PREFIX . ' Not enough activities, skipped', [
'automatedReportUuid' => $this->reportUuid,
'activityCount' => count($activityIds),
]);
$this->dispatchNotGeneratedNotifications(
$automatedReport,
$reportService,
$urlGenerator,
$jobDispatcher,
$logger,
);
return;
}
$payload = $reportService->getAskJiminnyGenerateReportPayload(
automatedReport: $automatedReport,
reportResult: $this->reportResult,
activityIds: $activityIds,
);
$this->reportResult->update([
'name' => $reportService->getReportFileName($this->reportResult),
'payload' => $payload,
'status' => AutomatedReportResult::STATUS_REQUESTED,
'requested_at' => Carbon::now()->toDateTimeString(),
]);
$logger->info(self::LOG_PREFIX . ' Request sent', [
'automatedReportUuid' => $this->reportUuid,
'reportUuid' => $this->reportResult->getUuid(),
'payload' => $payload,
]);
$response = $prophetClient->sendRequest(
endpoint: ProphetClient::ASK_JIMINNY_REPORT,
requestArray: $payload,
);
$logger->info(self::LOG_PREFIX . ' Response received', [
'response' => $response->getContent(),
]);
} catch (Throwable $exception) {
$reason = $exception instanceof ProphetException
? AutomatedReportResult::REASON_PROPHET_API_ERROR
: AutomatedReportResult::REASON_DEFAULT;
$this->failReport($reason);
$logger->error(self::LOG_PREFIX . ' Error', [
'automatedReportUuid' => $this->reportUuid,
'reportUuid' => $this->reportResult?->getUuid(),
'code' => $exception->getCode(),
'message' => $exception->getMessage(),
]);
if ($this->attempts() < $this->tries) {
$logger->info(self::LOG_PREFIX . ' Retry scheduled', [
'attempts' => $this->attempts(),
]);
$this->release(30);
} else {
$this->fail($exception);
}
}
}
private function validateReport(AutomatedReport $automatedReport, LoggerInterface $logger): bool
{
if ($automatedReport->getType() !== AutomatedReportsService::TYPE_ASK_JIMINNY) {
$logger->warning(self::LOG_PREFIX . ' Skipped, not an ask_jiminny report', [
'automatedReportUuid' => $this->reportUuid,
'type' => $automatedReport->getType(),
]);
return false;
}
if (! $automatedReport->getStatus()) {
$logger->info(self::LOG_PREFIX . ' Skipped, report is not active', [
'automatedReportUuid' => $this->reportUuid,
]);
return false;
}
if ($automatedReport->getTeam()->getStatus() !== Team::STATUS_ACTIVE) {
$logger->info(self::LOG_PREFIX . ' Skipped, team is inactive', [
'automatedReportUuid' => $this->reportUuid,
]);
return false;
}
return true;
}
private function failReport(int $reason): void
{
$this->reportResult?->update([
'status' => AutomatedReportResult::STATUS_FAILED,
'reason' => $reason,
]);
}
private function dispatchNotGeneratedNotifications(
AutomatedReport $automatedReport,
AutomatedReportsService $reportService,
UrlGenerator $urlGenerator,
JobDispatcherInterface $jobDispatcher,
LoggerInterface $logger,
): void {
if ($this->reportResult === null) {
return;
}
$recipients = $reportService->getValidRecipientUsers($automatedReport);
if (empty($recipients)) {
$logger->info(self::LOG_PREFIX . ' No recipients to notify about missing report', [
'automatedReportUuid' => $this->reportUuid,
]);
return;
}
$reportName = $automatedReport->getCustomName()
?: $reportService->getReportTypeName($this->reportResult);
$periodName = $reportService->getReportPeriodName($this->reportResult);
$reportsPageUrl = $urlGenerator->route('ai.reports.show');
foreach ($recipients as $recipient) {
$jobDispatcher->dispatch(new SendReportNotGeneratedMailJob(
reportUuid: $this->reportResult->getUuid(),
recipientEmail: $recipient['email'],
recipientName: $recipient['name'] ?? null,
reportName: $reportName,
periodName: $periodName,
reportsPageUrl: $reportsPageUrl,
));
}
$logger->info(self::LOG_PREFIX . ' Dispatched not-generated notifications', [
'automatedReportUuid' => $this->reportUuid,
'recipientsCount' => count($recipients),
]);
}
}
Execute
Explain Plan
Browse Query History
View Parameters
Open Query Execution Settings…
In-Editor Results
Tx: Auto
Cancel Running Statements
Playground
jiminny
Sync Changes
Hide This Notification
Code changed:
Hide
18
14
2
4
Previous Highlighted Error
Next Highlighted Error
SELECT a.id, a.uuid, a.actual_start_time, o.id, o.uuid FROM opportunities o
JOIN activities a ON o.id = a.opportunity_id
WHERE a.crm_configuration_id = 39
AND a.actual_start_time > '2025-10-13'
AND a.type IN ('conference', 'softphone-inbound', 'softphone-outbound')
;
SELECT * FROM activities
WHERE crm_configuration_id = 39 and user_id = 143
and actual_start_time >= '2025-10-13'
AND type IN ('conference', 'softphone-inbound', 'softphone-outbound')
;
SELECT * FROM opportunities WHERE account_id IN (178);
select * from activities where id IN (620137, 620187, 620188, 620189, 620230);
# HS
SELECT * FROM opportunities WHERE id IN (238);
select * from activities where id IN (477,2076);
select * from users;
SELECT COUNT(*) FROM users;
SELECT COUNT(*) FROM activities;
SELECT COUNT(*) FROM opportunities;
UPDATE activities
SET
actual_start_time = '2025-12-19 09:00:00',
actual_end_time = '2025-12-19 10:30:00',
scheduled_start_time = '2025-12-19 09:00:00',
scheduled_end_time = '2025-12-19 10:30:00'
WHERE id IN (407509,407375);
select * from partners;
SELECT id, uuid, type, actual_start_time, user_id, crm_configuration_id
FROM activities
WHERE user_id = 143
AND actual_start_time >= '2025-10-13 00:00:00'
AND actual_start_time <= '2026-01-13 23:59:59'
ORDER BY actual_start_time DESC;
SELECT * FROM activities WHERE uuid_to_bin('78eda160-3086-435f-88a5-bb0c71b6008d') = uuid;
SELECT * FROM crm_layouts where crm_configuration_id = 39;
SELECT * FROM crm_layout_entities WHERE crm_layout_id = 282;
# lead_id
# account_id 177
# contact_id 3969
# opportunity_id
# stage_id 203
SELECT * FROM opportunities WHERE opportunities.crm_configuration_id = id = 282;
SELECT * FROM activities where crm_configuration_id = 39 AND type = 'conference'
AND user_id = 143 and actual_start_time >= '2025-10-13';
SELECT * FROM activities a
# JOIN opportunities o ON a.opportunity_id = o.id
WHERE a.crm_configuration_id = 39 AND a.type = 'conference'
and status = 'completed' and recording_state = 'recorded'
and a.actual_start_time >= '2025-10-13'
AND a.user_id = 143
;
select * from leads
where crm_configuration_id = 39; # 112 -> ac. 178, 109 => op. 1707
SELECT * FROM activities WHERE id IN (356013,616188,616202,616310,407509,407375,356001,356008);
SELECT * FROM activities WHERE id IN (356013,616188,616202,616310);
SELECT * FROM activities WHERE id IN (407509,407375); # leads: 112, 109 | status - 198
SELECT * FROM activities WHERE id IN (356001, 356008); # contacts:
SELECT * FROM opportunities WHERE id IN (1707);
SELECT * FROM stages where id IN (204, 198);
SELECT * FROM opportunities WHERE account_id IN (178);
SELECT * FROM opportunities WHERE crm_configuration_id = 39 AND created_at > '2025-01-01';
SELECT * FROM contacts WHERE account_id IN (178); # 4118 Musaibe, 4448 Ceco Personal
SELECT * FROM activities where crm_configuration_id = 39
AND opportunity_id IS NULL
AND is_internal = false
and status = 'completed' and recording_state = 'recorded'
AND actual_start_time >= '2025-10-13'
AND (lead_id IS NOT NULL OR contact_id IS NOT NULL OR account_id IS NOT NULL)
# AND lead_id IN (112, 109)
;
SELECT * FROM crm_profiles WHERE user_id = 143;
select * from inboxes; # 212
select * from users where id = 143; # 143
select * from inbox_email_batches where inbox_id = 212
and updated_at >= '2026-01-28 00:00:00' order by id desc;
select * from inbox_emails where inbox_id = 212
and batch_id = 95885 order by id desc;
select * from email_messages where origin_user_id = 143;
select * from activities where user_id = 143 and updated_at >= '2026-01-28 00:00:00';
select * from participants where activity_id = 620247;
select * from crm_profiles where user_id = 143;
SELECT * FROM activities WHERE uuid_to_bin('458cf915-b914-4000-b083-5687b32b2956') = uuid; # 356001
select * from transcription where activity_id = 356001; # 6943
select * from ai_prompts where transcription_id = 6943;
SELECT * FROM activity_summary_logs where activity_id = 356001;
SELECT * FROM social_accounts WHERE sociable_id = 143;
# [PASSWORD_DOTS]
SELECT * FROM activities WHERE uuid_to_bin('0164a4fb-cb95-454e-9edd-4d804e4999bd') = uuid;
# 422515 softphone tr. 8100
SELECT * FROM activities WHERE uuid_to_bin('7520add8-8d87-41a5-98e5-fc4edf96f21e') = uuid;
# 407509 conference tr. 7670 crmId: 00UD1000002J9aTMAS
select * from ai_prompts where transcription_id IN (8100, 7670);
select * from activity_summary_logs where activity_id = 407509;
select * from sidekick_settings;
select * from default_activity_types;
SELECT * FROM contacts WHERE crm_configuration_id = 39 and email = '[EMAIL]';
SELECT * FROM leads WHERE crm_configuration_id = 39 and email = '[EMAIL]';
SELECT * FROM activity_searches where user_id = 143;
SELECT * FROM groups where team_id = 1;
select * from teams where id = 1;
select * from groups where team_id = 1; # 1150 - 7e75f8025c22
select id, name, group_id, status, deleted_at, email
from users where team_id = 1 order by group_id desc ;
select * from activity_searches where id in (1977, 1978, 1979);
select * from activity_search_filters where activity_search_id IN (1977, 1978, 1979);
select * from activity_search_filters where filter = 'group_id' and value = '443f26b8-8512-437e-a9f9-7e75f8025c22'; # 10268, 10272, 10277
select * from nudges where activity_search_id IN (1977, 1978, 1979); # 877, 878, 879
INSERT INTO `activity_search_filters`
(`activity_search_id`, `filter`, `value`) VALUES
(1977, 'group_id', '443f26b8-8512-437e-a9f9-7e75f8025c22'),
(1978, 'group_id', '443f26b8-8512-437e-a9f9-7e75f8025c22'),
(1979, 'group_id', '443f26b8-8512-437e-a9f9-7e75f8025c22')
;
select * from crm_configurations where id = 39;
select sa.* from users u JOIN social_accounts sa on u.id = sa.sociable_id
where u.team_id = 1;
SELECT * FROM social_accounts WHERE sociable_id = 1635;
SELECT * FROM users WHERE id = 1635;
select * from teams where id = 1;
select * from users where team_id = 1;
select * from team_features where team_id = 1;
select * from features;
SELECT * FROM activity_searches where id = 1982; # 1981
SELECT * FROM activity_search_filters WHERE activity_search_id = 1982;
SELECT * FROM automated_reports where id = 69;
UPDATE automated_reports set playbook_categories = NULL where id = 68;
SELECT * FROM automated_report_results where id = 275;
SELECT * FROM automated_reports order by id desc;
SELECT * FROM automated_report_results order by id desc;
select * from activity_searches where user_id = 143;
select * from ask_anything_prompts;
SELECT * FROM groups WHERE id = 1439;
SELECT * FROM users WHERE group_id = 1439;
select * from permissions; # 158
select * from roles;
select * from permission_role
select * from teams where id = 1;
select * from groups g JOIN playbooks p on g.playbook_id = p.id where g.team_id = 1;
select * from groups where id = 28;
select * from playbooks where team_id = 1;
select * from playbooks where id = 179;
select * from playbook_categories where id = 1391;
select * from users where id = 143;
select * from crm_profiles where user_id = 143;
select * from activities where crm_configuration_id = 39 and type = 'conference'
and crm_provider_id IS NOT NULL ORDER by id desc;
select * from activities where id = 422003; # 00UO400000pB6fpMAC
SELECT ar.id, ar.uuid, ar.media_type, ar.status, a.type
FROM automated_report_results ar
JOIN automated_reports a ON a.id = ar.report_id
WHERE a.type = 'ask_jiminny'
LIMIT 10;
SELECT `automated_report_results`.* FROM `automated_report_results`
INNER JOIN `automated_reports`
ON `automated_report_results`.`report_id` = `automated_reports`.`id`
WHERE `automated_report_results`.`generated_at` IS NOT NULL
AND `automated_reports`.`team_id` = 1
AND JSON_CONTAINS(`automated_reports`.`recipients`, 1635, '$."users"')
;
select * from teams where id = 3143;
select * from crm_configurations where id = 500;
select * from users where name = 'Integration Account'; # 1695
SELECT * FROM social_accounts WHERE sociable_id = 1695;
select * from activities where crm_configuration_id = 39
and recording_state = 'recorded' and duration > 60
and status = 'completed' and actual_start_time >= '2025-12-01';
SELECT * FROM activities WHERE uuid_to_bin('458cf915-b914-4000-b083-5687b32b2956') = uuid;
select * from leads;
Project
Project
New File or Directory…
Expand Selected
Collapse All
Options
Hide...
|
[{"role":"AXButton","text" [{"role":"AXButton","text":"Project: faVsco.js, menu","depth":5,"help_text":"~/jiminny/app","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"JY-20157-AJ-report-not-send-notification, menu","depth":5,"help_text":"Git Branch: JY-20157-AJ-report-not-send-notification","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Start Listening for PHP Debug Connections","depth":5,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"AskJiminnyReportActivityServiceTest","depth":6,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Run 'AskJiminnyReportActivityServiceTest'","depth":6,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Debug 'AskJiminnyReportActivityServiceTest'","depth":6,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"More Actions","depth":6,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"JetBrains AI","depth":5,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Search Everywhere","depth":5,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"IDE and Project Settings","depth":5,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Code changed:","depth":4,"bounds":{"left":0.0,"top":0.0,"width":0.088194445,"height":0.027777778},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Hide","depth":4,"bounds":{"left":0.0,"top":0.0,"width":0.018055556,"height":0.026666667},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Sync Changes","depth":4,"bounds":{"left":0.0,"top":0.0,"width":0.018055556,"height":0.026666667},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Hide This Notification","depth":4,"bounds":{"left":0.0,"top":0.0,"width":0.018055556,"height":0.026666667},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"1","depth":4,"role_description":"text"},{"role":"AXStaticText","text":"3","depth":4,"role_description":"text"},{"role":"AXStaticText","text":"3","depth":4,"role_description":"text"},{"role":"AXButton","text":"Previous Highlighted Error","depth":4,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Next Highlighted Error","depth":4,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"<?php\n\ndeclare(strict_types=1);\n\nnamespace Jiminny\\Jobs\\AutomatedReports;\n\nuse Carbon\\Carbon;\nuse Illuminate\\Bus\\Queueable;\nuse Illuminate\\Contracts\\Queue\\ShouldBeUnique;\nuse Illuminate\\Contracts\\Queue\\ShouldQueue;\nuse Illuminate\\Contracts\\Routing\\UrlGenerator;\nuse Illuminate\\Queue\\InteractsWithQueue;\nuse Jiminny\\Component\\ProphetAi\\Exceptions\\ProphetException;\nuse Jiminny\\Component\\ProphetAi\\ProphetClient;\nuse Jiminny\\Component\\Queue\\Constants;\nuse Jiminny\\Jobs\\JobDispatcherInterface;\nuse Jiminny\\Models\\AutomatedReport;\nuse Jiminny\\Models\\AutomatedReportResult;\nuse Jiminny\\Models\\Team;\nuse Jiminny\\Services\\Kiosk\\AutomatedReports\\AskJiminnyReportActivityService;\nuse Jiminny\\Services\\Kiosk\\AutomatedReports\\AutomatedReportsService;\nuse Psr\\Log\\LoggerInterface;\nuse Throwable;\n\nclass RequestGenerateAskJiminnyReportJob implements ShouldQueue, ShouldBeUnique\n{\n use InteractsWithQueue;\n use Queueable;\n\n private const string LOG_PREFIX = '[AskJiminnyReport:Generate]';\n\n private const int MIN_ACTIVITIES_COUNT = 1;\n\n public int $tries = 2;\n\n private ?AutomatedReportResult $reportResult = null;\n\n public function __construct(private readonly string $reportUuid)\n {\n $this->onQueue(Constants::QUEUE_ANALYTICS);\n }\n\n public function uniqueId(): string\n {\n return $this->reportUuid;\n }\n\n public function handle(\n AutomatedReportsService $reportService,\n AskJiminnyReportActivityService $activityService,\n ProphetClient $prophetClient,\n LoggerInterface $logger,\n UrlGenerator $urlGenerator,\n JobDispatcherInterface $jobDispatcher,\n ): void {\n $logger->info(self::LOG_PREFIX . ' Started', [\n 'automatedReportUuid' => $this->reportUuid,\n ]);\n\n try {\n $automatedReport = $reportService->getReport($this->reportUuid);\n\n $this->dispatchNotGeneratedNotifications(\n $automatedReport,\n $reportService,\n $urlGenerator,\n $jobDispatcher,\n $logger,\n );\n\n return;\n\n if (! $this->validateReport($automatedReport, $logger)) {\n return;\n }\n\n $creator = $automatedReport->getCreator();\n if ($creator === null) {\n $logger->warning(self::LOG_PREFIX . ' Skipped, report creator not found', [\n 'automatedReportUuid' => $this->reportUuid,\n ]);\n\n return;\n }\n\n $savedSearch = $automatedReport->getSavedSearch();\n if ($savedSearch === null) {\n $logger->warning(self::LOG_PREFIX . ' Skipped, saved search not found', [\n 'automatedReportUuid' => $this->reportUuid,\n ]);\n\n return;\n }\n\n $prompt = $automatedReport->getAskAnythingPrompt();\n if ($prompt === null) {\n $logger->warning(self::LOG_PREFIX . ' Skipped, ask anything prompt not found', [\n 'automatedReportUuid' => $this->reportUuid,\n ]);\n\n return;\n }\n\n $this->reportResult = $reportService->getOrCreateReportResult(\n automatedReport: $automatedReport,\n data: [\n 'status' => AutomatedReportResult::STATUS_DEFAULT,\n 'media_type' => AutomatedReportsService::MEDIA_TYPE_PDF,\n ]\n );\n\n $activityIds = $activityService->getActivityIdsForSavedSearch(\n savedSearch: $savedSearch,\n user: $creator,\n frequency: $automatedReport->getFrequency(),\n );\n\n $logger->info(self::LOG_PREFIX . ' Fetched activity IDs', [\n 'automatedReportUuid' => $this->reportUuid,\n 'activityCount' => count($activityIds),\n ]);\n\n if (count($activityIds) < self::MIN_ACTIVITIES_COUNT) {\n $this->failReport(AutomatedReportResult::REASON_NOT_ENOUGH_ACTIVITIES);\n\n $logger->info(self::LOG_PREFIX . ' Not enough activities, skipped', [\n 'automatedReportUuid' => $this->reportUuid,\n 'activityCount' => count($activityIds),\n ]);\n\n $this->dispatchNotGeneratedNotifications(\n $automatedReport,\n $reportService,\n $urlGenerator,\n $jobDispatcher,\n $logger,\n );\n\n return;\n }\n\n $payload = $reportService->getAskJiminnyGenerateReportPayload(\n automatedReport: $automatedReport,\n reportResult: $this->reportResult,\n activityIds: $activityIds,\n );\n\n $this->reportResult->update([\n 'name' => $reportService->getReportFileName($this->reportResult),\n 'payload' => $payload,\n 'status' => AutomatedReportResult::STATUS_REQUESTED,\n 'requested_at' => Carbon::now()->toDateTimeString(),\n ]);\n\n $logger->info(self::LOG_PREFIX . ' Request sent', [\n 'automatedReportUuid' => $this->reportUuid,\n 'reportUuid' => $this->reportResult->getUuid(),\n 'payload' => $payload,\n ]);\n\n $response = $prophetClient->sendRequest(\n endpoint: ProphetClient::ASK_JIMINNY_REPORT,\n requestArray: $payload,\n );\n\n $logger->info(self::LOG_PREFIX . ' Response received', [\n 'response' => $response->getContent(),\n ]);\n } catch (Throwable $exception) {\n $reason = $exception instanceof ProphetException\n ? AutomatedReportResult::REASON_PROPHET_API_ERROR\n : AutomatedReportResult::REASON_DEFAULT;\n\n $this->failReport($reason);\n\n $logger->error(self::LOG_PREFIX . ' Error', [\n 'automatedReportUuid' => $this->reportUuid,\n 'reportUuid' => $this->reportResult?->getUuid(),\n 'code' => $exception->getCode(),\n 'message' => $exception->getMessage(),\n ]);\n\n if ($this->attempts() < $this->tries) {\n $logger->info(self::LOG_PREFIX . ' Retry scheduled', [\n 'attempts' => $this->attempts(),\n ]);\n\n $this->release(30);\n } else {\n $this->fail($exception);\n }\n }\n }\n\n private function validateReport(AutomatedReport $automatedReport, LoggerInterface $logger): bool\n {\n if ($automatedReport->getType() !== AutomatedReportsService::TYPE_ASK_JIMINNY) {\n $logger->warning(self::LOG_PREFIX . ' Skipped, not an ask_jiminny report', [\n 'automatedReportUuid' => $this->reportUuid,\n 'type' => $automatedReport->getType(),\n ]);\n\n return false;\n }\n\n if (! $automatedReport->getStatus()) {\n $logger->info(self::LOG_PREFIX . ' Skipped, report is not active', [\n 'automatedReportUuid' => $this->reportUuid,\n ]);\n\n return false;\n }\n\n if ($automatedReport->getTeam()->getStatus() !== Team::STATUS_ACTIVE) {\n $logger->info(self::LOG_PREFIX . ' Skipped, team is inactive', [\n 'automatedReportUuid' => $this->reportUuid,\n ]);\n\n return false;\n }\n\n return true;\n }\n\n private function failReport(int $reason): void\n {\n $this->reportResult?->update([\n 'status' => AutomatedReportResult::STATUS_FAILED,\n 'reason' => $reason,\n ]);\n }\n\n private function dispatchNotGeneratedNotifications(\n AutomatedReport $automatedReport,\n AutomatedReportsService $reportService,\n UrlGenerator $urlGenerator,\n JobDispatcherInterface $jobDispatcher,\n LoggerInterface $logger,\n ): void {\n if ($this->reportResult === null) {\n return;\n }\n\n $recipients = $reportService->getValidRecipientUsers($automatedReport);\n if (empty($recipients)) {\n $logger->info(self::LOG_PREFIX . ' No recipients to notify about missing report', [\n 'automatedReportUuid' => $this->reportUuid,\n ]);\n\n return;\n }\n\n $reportName = $automatedReport->getCustomName()\n ?: $reportService->getReportTypeName($this->reportResult);\n $periodName = $reportService->getReportPeriodName($this->reportResult);\n $reportsPageUrl = $urlGenerator->route('ai.reports.show');\n\n foreach ($recipients as $recipient) {\n $jobDispatcher->dispatch(new SendReportNotGeneratedMailJob(\n reportUuid: $this->reportResult->getUuid(),\n recipientEmail: $recipient['email'],\n recipientName: $recipient['name'] ?? null,\n reportName: $reportName,\n periodName: $periodName,\n reportsPageUrl: $reportsPageUrl,\n ));\n }\n\n $logger->info(self::LOG_PREFIX . ' Dispatched not-generated notifications', [\n 'automatedReportUuid' => $this->reportUuid,\n 'recipientsCount' => count($recipients),\n ]);\n }\n}","depth":4,"value":"<?php\n\ndeclare(strict_types=1);\n\nnamespace Jiminny\\Jobs\\AutomatedReports;\n\nuse Carbon\\Carbon;\nuse Illuminate\\Bus\\Queueable;\nuse Illuminate\\Contracts\\Queue\\ShouldBeUnique;\nuse Illuminate\\Contracts\\Queue\\ShouldQueue;\nuse Illuminate\\Contracts\\Routing\\UrlGenerator;\nuse Illuminate\\Queue\\InteractsWithQueue;\nuse Jiminny\\Component\\ProphetAi\\Exceptions\\ProphetException;\nuse Jiminny\\Component\\ProphetAi\\ProphetClient;\nuse Jiminny\\Component\\Queue\\Constants;\nuse Jiminny\\Jobs\\JobDispatcherInterface;\nuse Jiminny\\Models\\AutomatedReport;\nuse Jiminny\\Models\\AutomatedReportResult;\nuse Jiminny\\Models\\Team;\nuse Jiminny\\Services\\Kiosk\\AutomatedReports\\AskJiminnyReportActivityService;\nuse Jiminny\\Services\\Kiosk\\AutomatedReports\\AutomatedReportsService;\nuse Psr\\Log\\LoggerInterface;\nuse Throwable;\n\nclass RequestGenerateAskJiminnyReportJob implements ShouldQueue, ShouldBeUnique\n{\n use InteractsWithQueue;\n use Queueable;\n\n private const string LOG_PREFIX = '[AskJiminnyReport:Generate]';\n\n private const int MIN_ACTIVITIES_COUNT = 1;\n\n public int $tries = 2;\n\n private ?AutomatedReportResult $reportResult = null;\n\n public function __construct(private readonly string $reportUuid)\n {\n $this->onQueue(Constants::QUEUE_ANALYTICS);\n }\n\n public function uniqueId(): string\n {\n return $this->reportUuid;\n }\n\n public function handle(\n AutomatedReportsService $reportService,\n AskJiminnyReportActivityService $activityService,\n ProphetClient $prophetClient,\n LoggerInterface $logger,\n UrlGenerator $urlGenerator,\n JobDispatcherInterface $jobDispatcher,\n ): void {\n $logger->info(self::LOG_PREFIX . ' Started', [\n 'automatedReportUuid' => $this->reportUuid,\n ]);\n\n try {\n $automatedReport = $reportService->getReport($this->reportUuid);\n\n $this->dispatchNotGeneratedNotifications(\n $automatedReport,\n $reportService,\n $urlGenerator,\n $jobDispatcher,\n $logger,\n );\n\n return;\n\n if (! $this->validateReport($automatedReport, $logger)) {\n return;\n }\n\n $creator = $automatedReport->getCreator();\n if ($creator === null) {\n $logger->warning(self::LOG_PREFIX . ' Skipped, report creator not found', [\n 'automatedReportUuid' => $this->reportUuid,\n ]);\n\n return;\n }\n\n $savedSearch = $automatedReport->getSavedSearch();\n if ($savedSearch === null) {\n $logger->warning(self::LOG_PREFIX . ' Skipped, saved search not found', [\n 'automatedReportUuid' => $this->reportUuid,\n ]);\n\n return;\n }\n\n $prompt = $automatedReport->getAskAnythingPrompt();\n if ($prompt === null) {\n $logger->warning(self::LOG_PREFIX . ' Skipped, ask anything prompt not found', [\n 'automatedReportUuid' => $this->reportUuid,\n ]);\n\n return;\n }\n\n $this->reportResult = $reportService->getOrCreateReportResult(\n automatedReport: $automatedReport,\n data: [\n 'status' => AutomatedReportResult::STATUS_DEFAULT,\n 'media_type' => AutomatedReportsService::MEDIA_TYPE_PDF,\n ]\n );\n\n $activityIds = $activityService->getActivityIdsForSavedSearch(\n savedSearch: $savedSearch,\n user: $creator,\n frequency: $automatedReport->getFrequency(),\n );\n\n $logger->info(self::LOG_PREFIX . ' Fetched activity IDs', [\n 'automatedReportUuid' => $this->reportUuid,\n 'activityCount' => count($activityIds),\n ]);\n\n if (count($activityIds) < self::MIN_ACTIVITIES_COUNT) {\n $this->failReport(AutomatedReportResult::REASON_NOT_ENOUGH_ACTIVITIES);\n\n $logger->info(self::LOG_PREFIX . ' Not enough activities, skipped', [\n 'automatedReportUuid' => $this->reportUuid,\n 'activityCount' => count($activityIds),\n ]);\n\n $this->dispatchNotGeneratedNotifications(\n $automatedReport,\n $reportService,\n $urlGenerator,\n $jobDispatcher,\n $logger,\n );\n\n return;\n }\n\n $payload = $reportService->getAskJiminnyGenerateReportPayload(\n automatedReport: $automatedReport,\n reportResult: $this->reportResult,\n activityIds: $activityIds,\n );\n\n $this->reportResult->update([\n 'name' => $reportService->getReportFileName($this->reportResult),\n 'payload' => $payload,\n 'status' => AutomatedReportResult::STATUS_REQUESTED,\n 'requested_at' => Carbon::now()->toDateTimeString(),\n ]);\n\n $logger->info(self::LOG_PREFIX . ' Request sent', [\n 'automatedReportUuid' => $this->reportUuid,\n 'reportUuid' => $this->reportResult->getUuid(),\n 'payload' => $payload,\n ]);\n\n $response = $prophetClient->sendRequest(\n endpoint: ProphetClient::ASK_JIMINNY_REPORT,\n requestArray: $payload,\n );\n\n $logger->info(self::LOG_PREFIX . ' Response received', [\n 'response' => $response->getContent(),\n ]);\n } catch (Throwable $exception) {\n $reason = $exception instanceof ProphetException\n ? AutomatedReportResult::REASON_PROPHET_API_ERROR\n : AutomatedReportResult::REASON_DEFAULT;\n\n $this->failReport($reason);\n\n $logger->error(self::LOG_PREFIX . ' Error', [\n 'automatedReportUuid' => $this->reportUuid,\n 'reportUuid' => $this->reportResult?->getUuid(),\n 'code' => $exception->getCode(),\n 'message' => $exception->getMessage(),\n ]);\n\n if ($this->attempts() < $this->tries) {\n $logger->info(self::LOG_PREFIX . ' Retry scheduled', [\n 'attempts' => $this->attempts(),\n ]);\n\n $this->release(30);\n } else {\n $this->fail($exception);\n }\n }\n }\n\n private function validateReport(AutomatedReport $automatedReport, LoggerInterface $logger): bool\n {\n if ($automatedReport->getType() !== AutomatedReportsService::TYPE_ASK_JIMINNY) {\n $logger->warning(self::LOG_PREFIX . ' Skipped, not an ask_jiminny report', [\n 'automatedReportUuid' => $this->reportUuid,\n 'type' => $automatedReport->getType(),\n ]);\n\n return false;\n }\n\n if (! $automatedReport->getStatus()) {\n $logger->info(self::LOG_PREFIX . ' Skipped, report is not active', [\n 'automatedReportUuid' => $this->reportUuid,\n ]);\n\n return false;\n }\n\n if ($automatedReport->getTeam()->getStatus() !== Team::STATUS_ACTIVE) {\n $logger->info(self::LOG_PREFIX . ' Skipped, team is inactive', [\n 'automatedReportUuid' => $this->reportUuid,\n ]);\n\n return false;\n }\n\n return true;\n }\n\n private function failReport(int $reason): void\n {\n $this->reportResult?->update([\n 'status' => AutomatedReportResult::STATUS_FAILED,\n 'reason' => $reason,\n ]);\n }\n\n private function dispatchNotGeneratedNotifications(\n AutomatedReport $automatedReport,\n AutomatedReportsService $reportService,\n UrlGenerator $urlGenerator,\n JobDispatcherInterface $jobDispatcher,\n LoggerInterface $logger,\n ): void {\n if ($this->reportResult === null) {\n return;\n }\n\n $recipients = $reportService->getValidRecipientUsers($automatedReport);\n if (empty($recipients)) {\n $logger->info(self::LOG_PREFIX . ' No recipients to notify about missing report', [\n 'automatedReportUuid' => $this->reportUuid,\n ]);\n\n return;\n }\n\n $reportName = $automatedReport->getCustomName()\n ?: $reportService->getReportTypeName($this->reportResult);\n $periodName = $reportService->getReportPeriodName($this->reportResult);\n $reportsPageUrl = $urlGenerator->route('ai.reports.show');\n\n foreach ($recipients as $recipient) {\n $jobDispatcher->dispatch(new SendReportNotGeneratedMailJob(\n reportUuid: $this->reportResult->getUuid(),\n recipientEmail: $recipient['email'],\n recipientName: $recipient['name'] ?? null,\n reportName: $reportName,\n periodName: $periodName,\n reportsPageUrl: $reportsPageUrl,\n ));\n }\n\n $logger->info(self::LOG_PREFIX . ' Dispatched not-generated notifications', [\n 'automatedReportUuid' => $this->reportUuid,\n 'recipientsCount' => count($recipients),\n ]);\n }\n}","role_description":"text entry area","is_enabled":true,"is_focused":true,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Execute","depth":4,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Explain Plan","depth":4,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Browse Query History","depth":4,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"View Parameters","depth":4,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Open Query Execution Settings…","depth":4,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"In-Editor Results","depth":4,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Tx: Auto","depth":4,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Cancel Running Statements","depth":4,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Playground","depth":4,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"jiminny","depth":4,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Sync Changes","depth":4,"bounds":{"left":0.0,"top":0.0,"width":0.018055556,"height":0.026666667},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Hide This Notification","depth":4,"bounds":{"left":0.0,"top":0.0,"width":0.018055556,"height":0.026666667},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Code changed:","depth":4,"bounds":{"left":0.0,"top":0.0,"width":0.088194445,"height":0.027777778},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Hide","depth":4,"bounds":{"left":0.0,"top":0.0,"width":0.018055556,"height":0.026666667},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"18","depth":4,"role_description":"text"},{"role":"AXStaticText","text":"14","depth":4,"role_description":"text"},{"role":"AXStaticText","text":"2","depth":4,"role_description":"text"},{"role":"AXStaticText","text":"4","depth":4,"role_description":"text"},{"role":"AXButton","text":"Previous Highlighted Error","depth":4,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Next Highlighted Error","depth":4,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"SELECT a.id, a.uuid, a.actual_start_time, o.id, o.uuid FROM opportunities o\nJOIN activities a ON o.id = a.opportunity_id\nWHERE a.crm_configuration_id = 39\nAND a.actual_start_time > '2025-10-13'\nAND a.type IN ('conference', 'softphone-inbound', 'softphone-outbound')\n;\n\nSELECT * FROM activities\nWHERE crm_configuration_id = 39 and user_id = 143\nand actual_start_time >= '2025-10-13'\nAND type IN ('conference', 'softphone-inbound', 'softphone-outbound')\n;\n\nSELECT * FROM opportunities WHERE account_id IN (178);\nselect * from activities where id IN (620137, 620187, 620188, 620189, 620230);\n\n# HS\nSELECT * FROM opportunities WHERE id IN (238);\nselect * from activities where id IN (477,2076);\n\nselect * from users;\n\nSELECT COUNT(*) FROM users;\nSELECT COUNT(*) FROM activities;\nSELECT COUNT(*) FROM opportunities;\n\nUPDATE activities\nSET\n actual_start_time = '2025-12-19 09:00:00',\n actual_end_time = '2025-12-19 10:30:00',\n scheduled_start_time = '2025-12-19 09:00:00',\n scheduled_end_time = '2025-12-19 10:30:00'\nWHERE id IN (407509,407375);\n\nselect * from partners;\n\nSELECT id, uuid, type, actual_start_time, user_id, crm_configuration_id\nFROM activities\nWHERE user_id = 143\nAND actual_start_time >= '2025-10-13 00:00:00'\nAND actual_start_time <= '2026-01-13 23:59:59'\nORDER BY actual_start_time DESC;\n\nSELECT * FROM activities WHERE uuid_to_bin('78eda160-3086-435f-88a5-bb0c71b6008d') = uuid;\nSELECT * FROM crm_layouts where crm_configuration_id = 39;\nSELECT * FROM crm_layout_entities WHERE crm_layout_id = 282;\n# lead_id\n# account_id 177\n# contact_id 3969\n# opportunity_id\n# stage_id 203\n\nSELECT * FROM opportunities WHERE opportunities.crm_configuration_id = id = 282;\n\nSELECT * FROM activities where crm_configuration_id = 39 AND type = 'conference'\nAND user_id = 143 and actual_start_time >= '2025-10-13';\n\nSELECT * FROM activities a\n# JOIN opportunities o ON a.opportunity_id = o.id\nWHERE a.crm_configuration_id = 39 AND a.type = 'conference'\nand status = 'completed' and recording_state = 'recorded'\nand a.actual_start_time >= '2025-10-13'\nAND a.user_id = 143\n;\n\nselect * from leads\nwhere crm_configuration_id = 39; # 112 -> ac. 178, 109 => op. 1707\n\nSELECT * FROM activities WHERE id IN (356013,616188,616202,616310,407509,407375,356001,356008);\nSELECT * FROM activities WHERE id IN (356013,616188,616202,616310);\nSELECT * FROM activities WHERE id IN (407509,407375); # leads: 112, 109 | status - 198\nSELECT * FROM activities WHERE id IN (356001, 356008); # contacts:\n\nSELECT * FROM opportunities WHERE id IN (1707);\nSELECT * FROM stages where id IN (204, 198);\nSELECT * FROM opportunities WHERE account_id IN (178);\nSELECT * FROM opportunities WHERE crm_configuration_id = 39 AND created_at > '2025-01-01';\nSELECT * FROM contacts WHERE account_id IN (178); # 4118 Musaibe, 4448 Ceco Personal\n\nSELECT * FROM activities where crm_configuration_id = 39\nAND opportunity_id IS NULL\nAND is_internal = false\nand status = 'completed' and recording_state = 'recorded'\nAND actual_start_time >= '2025-10-13'\nAND (lead_id IS NOT NULL OR contact_id IS NOT NULL OR account_id IS NOT NULL)\n# AND lead_id IN (112, 109)\n;\n\nSELECT * FROM crm_profiles WHERE user_id = 143;\n\nselect * from inboxes; # 212\nselect * from users where id = 143; # 143\nselect * from inbox_email_batches where inbox_id = 212\nand updated_at >= '2026-01-28 00:00:00' order by id desc;\nselect * from inbox_emails where inbox_id = 212\nand batch_id = 95885 order by id desc;\nselect * from email_messages where origin_user_id = 143;\nselect * from activities where user_id = 143 and updated_at >= '2026-01-28 00:00:00';\nselect * from participants where activity_id = 620247;\n\nselect * from crm_profiles where user_id = 143;\n\nSELECT * FROM activities WHERE uuid_to_bin('458cf915-b914-4000-b083-5687b32b2956') = uuid; # 356001\nselect * from transcription where activity_id = 356001; # 6943\nselect * from ai_prompts where transcription_id = 6943;\nSELECT * FROM activity_summary_logs where activity_id = 356001;\n\nSELECT * FROM social_accounts WHERE sociable_id = 143;\n\n# ************************************************************************************\nSELECT * FROM activities WHERE uuid_to_bin('0164a4fb-cb95-454e-9edd-4d804e4999bd') = uuid;\n# 422515 softphone tr. 8100\n\nSELECT * FROM activities WHERE uuid_to_bin('7520add8-8d87-41a5-98e5-fc4edf96f21e') = uuid;\n# 407509 conference tr. 7670 crmId: 00UD1000002J9aTMAS\n\nselect * from ai_prompts where transcription_id IN (8100, 7670);\nselect * from activity_summary_logs where activity_id = 407509;\n\nselect * from sidekick_settings;\nselect * from default_activity_types;\n\nSELECT * FROM contacts WHERE crm_configuration_id = 39 and email = 'm.kogoj@gmx.at';\nSELECT * FROM leads WHERE crm_configuration_id = 39 and email = 'm.kogoj@gmx.at';\n\nSELECT * FROM activity_searches where user_id = 143;\nSELECT * FROM groups where team_id = 1;\n\nselect * from teams where id = 1;\nselect * from groups where team_id = 1; # 1150 - 7e75f8025c22\nselect id, name, group_id, status, deleted_at, email\nfrom users where team_id = 1 order by group_id desc ;\n\nselect * from activity_searches where id in (1977, 1978, 1979);\nselect * from activity_search_filters where activity_search_id IN (1977, 1978, 1979);\nselect * from activity_search_filters where filter = 'group_id' and value = '443f26b8-8512-437e-a9f9-7e75f8025c22'; # 10268, 10272, 10277\nselect * from nudges where activity_search_id IN (1977, 1978, 1979); # 877, 878, 879\n\nINSERT INTO `activity_search_filters`\n(`activity_search_id`, `filter`, `value`) VALUES\n(1977, 'group_id', '443f26b8-8512-437e-a9f9-7e75f8025c22'),\n(1978, 'group_id', '443f26b8-8512-437e-a9f9-7e75f8025c22'),\n(1979, 'group_id', '443f26b8-8512-437e-a9f9-7e75f8025c22')\n;\n\nselect * from crm_configurations where id = 39;\n\n\nselect sa.* from users u JOIN social_accounts sa on u.id = sa.sociable_id\nwhere u.team_id = 1;\nSELECT * FROM social_accounts WHERE sociable_id = 1635;\nSELECT * FROM users WHERE id = 1635;\n\nselect * from teams where id = 1;\nselect * from users where team_id = 1;\nselect * from team_features where team_id = 1;\nselect * from features;\n\nSELECT * FROM activity_searches where id = 1982; # 1981\nSELECT * FROM activity_search_filters WHERE activity_search_id = 1982;\n\nSELECT * FROM automated_reports where id = 69;\nUPDATE automated_reports set playbook_categories = NULL where id = 68;\nSELECT * FROM automated_report_results where id = 275;\n\nSELECT * FROM automated_reports order by id desc;\nSELECT * FROM automated_report_results order by id desc;\nselect * from activity_searches where user_id = 143;\nselect * from ask_anything_prompts;\n\nSELECT * FROM groups WHERE id = 1439;\nSELECT * FROM users WHERE group_id = 1439;\n\nselect * from permissions; # 158\nselect * from roles;\nselect * from permission_role\n\nselect * from teams where id = 1;\nselect * from groups g JOIN playbooks p on g.playbook_id = p.id where g.team_id = 1;\nselect * from groups where id = 28;\nselect * from playbooks where team_id = 1;\nselect * from playbooks where id = 179;\nselect * from playbook_categories where id = 1391;\nselect * from users where id = 143;\nselect * from crm_profiles where user_id = 143;\nselect * from activities where crm_configuration_id = 39 and type = 'conference'\nand crm_provider_id IS NOT NULL ORDER by id desc;\nselect * from activities where id = 422003; # 00UO400000pB6fpMAC\n\nSELECT ar.id, ar.uuid, ar.media_type, ar.status, a.type\nFROM automated_report_results ar\nJOIN automated_reports a ON a.id = ar.report_id\nWHERE a.type = 'ask_jiminny'\nLIMIT 10;\n\nSELECT `automated_report_results`.* FROM `automated_report_results`\nINNER JOIN `automated_reports`\n ON `automated_report_results`.`report_id` = `automated_reports`.`id`\nWHERE `automated_report_results`.`generated_at` IS NOT NULL\n AND `automated_reports`.`team_id` = 1\n AND JSON_CONTAINS(`automated_reports`.`recipients`, 1635, '$.\"users\"')\n;\n\n\nselect * from teams where id = 3143;\nselect * from crm_configurations where id = 500;\nselect * from users where name = 'Integration Account'; # 1695\nSELECT * FROM social_accounts WHERE sociable_id = 1695;\n\nselect * from activities where crm_configuration_id = 39\nand recording_state = 'recorded' and duration > 60\nand status = 'completed' and actual_start_time >= '2025-12-01';\n\nSELECT * FROM activities WHERE uuid_to_bin('458cf915-b914-4000-b083-5687b32b2956') = uuid;\n\nselect * from leads;","depth":4,"value":"SELECT a.id, a.uuid, a.actual_start_time, o.id, o.uuid FROM opportunities o\nJOIN activities a ON o.id = a.opportunity_id\nWHERE a.crm_configuration_id = 39\nAND a.actual_start_time > '2025-10-13'\nAND a.type IN ('conference', 'softphone-inbound', 'softphone-outbound')\n;\n\nSELECT * FROM activities\nWHERE crm_configuration_id = 39 and user_id = 143\nand actual_start_time >= '2025-10-13'\nAND type IN ('conference', 'softphone-inbound', 'softphone-outbound')\n;\n\nSELECT * FROM opportunities WHERE account_id IN (178);\nselect * from activities where id IN (620137, 620187, 620188, 620189, 620230);\n\n# HS\nSELECT * FROM opportunities WHERE id IN (238);\nselect * from activities where id IN (477,2076);\n\nselect * from users;\n\nSELECT COUNT(*) FROM users;\nSELECT COUNT(*) FROM activities;\nSELECT COUNT(*) FROM opportunities;\n\nUPDATE activities\nSET\n actual_start_time = '2025-12-19 09:00:00',\n actual_end_time = '2025-12-19 10:30:00',\n scheduled_start_time = '2025-12-19 09:00:00',\n scheduled_end_time = '2025-12-19 10:30:00'\nWHERE id IN (407509,407375);\n\nselect * from partners;\n\nSELECT id, uuid, type, actual_start_time, user_id, crm_configuration_id\nFROM activities\nWHERE user_id = 143\nAND actual_start_time >= '2025-10-13 00:00:00'\nAND actual_start_time <= '2026-01-13 23:59:59'\nORDER BY actual_start_time DESC;\n\nSELECT * FROM activities WHERE uuid_to_bin('78eda160-3086-435f-88a5-bb0c71b6008d') = uuid;\nSELECT * FROM crm_layouts where crm_configuration_id = 39;\nSELECT * FROM crm_layout_entities WHERE crm_layout_id = 282;\n# lead_id\n# account_id 177\n# contact_id 3969\n# opportunity_id\n# stage_id 203\n\nSELECT * FROM opportunities WHERE opportunities.crm_configuration_id = id = 282;\n\nSELECT * FROM activities where crm_configuration_id = 39 AND type = 'conference'\nAND user_id = 143 and actual_start_time >= '2025-10-13';\n\nSELECT * FROM activities a\n# JOIN opportunities o ON a.opportunity_id = o.id\nWHERE a.crm_configuration_id = 39 AND a.type = 'conference'\nand status = 'completed' and recording_state = 'recorded'\nand a.actual_start_time >= '2025-10-13'\nAND a.user_id = 143\n;\n\nselect * from leads\nwhere crm_configuration_id = 39; # 112 -> ac. 178, 109 => op. 1707\n\nSELECT * FROM activities WHERE id IN (356013,616188,616202,616310,407509,407375,356001,356008);\nSELECT * FROM activities WHERE id IN (356013,616188,616202,616310);\nSELECT * FROM activities WHERE id IN (407509,407375); # leads: 112, 109 | status - 198\nSELECT * FROM activities WHERE id IN (356001, 356008); # contacts:\n\nSELECT * FROM opportunities WHERE id IN (1707);\nSELECT * FROM stages where id IN (204, 198);\nSELECT * FROM opportunities WHERE account_id IN (178);\nSELECT * FROM opportunities WHERE crm_configuration_id = 39 AND created_at > '2025-01-01';\nSELECT * FROM contacts WHERE account_id IN (178); # 4118 Musaibe, 4448 Ceco Personal\n\nSELECT * FROM activities where crm_configuration_id = 39\nAND opportunity_id IS NULL\nAND is_internal = false\nand status = 'completed' and recording_state = 'recorded'\nAND actual_start_time >= '2025-10-13'\nAND (lead_id IS NOT NULL OR contact_id IS NOT NULL OR account_id IS NOT NULL)\n# AND lead_id IN (112, 109)\n;\n\nSELECT * FROM crm_profiles WHERE user_id = 143;\n\nselect * from inboxes; # 212\nselect * from users where id = 143; # 143\nselect * from inbox_email_batches where inbox_id = 212\nand updated_at >= '2026-01-28 00:00:00' order by id desc;\nselect * from inbox_emails where inbox_id = 212\nand batch_id = 95885 order by id desc;\nselect * from email_messages where origin_user_id = 143;\nselect * from activities where user_id = 143 and updated_at >= '2026-01-28 00:00:00';\nselect * from participants where activity_id = 620247;\n\nselect * from crm_profiles where user_id = 143;\n\nSELECT * FROM activities WHERE uuid_to_bin('458cf915-b914-4000-b083-5687b32b2956') = uuid; # 356001\nselect * from transcription where activity_id = 356001; # 6943\nselect * from ai_prompts where transcription_id = 6943;\nSELECT * FROM activity_summary_logs where activity_id = 356001;\n\nSELECT * FROM social_accounts WHERE sociable_id = 143;\n\n# ************************************************************************************\nSELECT * FROM activities WHERE uuid_to_bin('0164a4fb-cb95-454e-9edd-4d804e4999bd') = uuid;\n# 422515 softphone tr. 8100\n\nSELECT * FROM activities WHERE uuid_to_bin('7520add8-8d87-41a5-98e5-fc4edf96f21e') = uuid;\n# 407509 conference tr. 7670 crmId: 00UD1000002J9aTMAS\n\nselect * from ai_prompts where transcription_id IN (8100, 7670);\nselect * from activity_summary_logs where activity_id = 407509;\n\nselect * from sidekick_settings;\nselect * from default_activity_types;\n\nSELECT * FROM contacts WHERE crm_configuration_id = 39 and email = 'm.kogoj@gmx.at';\nSELECT * FROM leads WHERE crm_configuration_id = 39 and email = 'm.kogoj@gmx.at';\n\nSELECT * FROM activity_searches where user_id = 143;\nSELECT * FROM groups where team_id = 1;\n\nselect * from teams where id = 1;\nselect * from groups where team_id = 1; # 1150 - 7e75f8025c22\nselect id, name, group_id, status, deleted_at, email\nfrom users where team_id = 1 order by group_id desc ;\n\nselect * from activity_searches where id in (1977, 1978, 1979);\nselect * from activity_search_filters where activity_search_id IN (1977, 1978, 1979);\nselect * from activity_search_filters where filter = 'group_id' and value = '443f26b8-8512-437e-a9f9-7e75f8025c22'; # 10268, 10272, 10277\nselect * from nudges where activity_search_id IN (1977, 1978, 1979); # 877, 878, 879\n\nINSERT INTO `activity_search_filters`\n(`activity_search_id`, `filter`, `value`) VALUES\n(1977, 'group_id', '443f26b8-8512-437e-a9f9-7e75f8025c22'),\n(1978, 'group_id', '443f26b8-8512-437e-a9f9-7e75f8025c22'),\n(1979, 'group_id', '443f26b8-8512-437e-a9f9-7e75f8025c22')\n;\n\nselect * from crm_configurations where id = 39;\n\n\nselect sa.* from users u JOIN social_accounts sa on u.id = sa.sociable_id\nwhere u.team_id = 1;\nSELECT * FROM social_accounts WHERE sociable_id = 1635;\nSELECT * FROM users WHERE id = 1635;\n\nselect * from teams where id = 1;\nselect * from users where team_id = 1;\nselect * from team_features where team_id = 1;\nselect * from features;\n\nSELECT * FROM activity_searches where id = 1982; # 1981\nSELECT * FROM activity_search_filters WHERE activity_search_id = 1982;\n\nSELECT * FROM automated_reports where id = 69;\nUPDATE automated_reports set playbook_categories = NULL where id = 68;\nSELECT * FROM automated_report_results where id = 275;\n\nSELECT * FROM automated_reports order by id desc;\nSELECT * FROM automated_report_results order by id desc;\nselect * from activity_searches where user_id = 143;\nselect * from ask_anything_prompts;\n\nSELECT * FROM groups WHERE id = 1439;\nSELECT * FROM users WHERE group_id = 1439;\n\nselect * from permissions; # 158\nselect * from roles;\nselect * from permission_role\n\nselect * from teams where id = 1;\nselect * from groups g JOIN playbooks p on g.playbook_id = p.id where g.team_id = 1;\nselect * from groups where id = 28;\nselect * from playbooks where team_id = 1;\nselect * from playbooks where id = 179;\nselect * from playbook_categories where id = 1391;\nselect * from users where id = 143;\nselect * from crm_profiles where user_id = 143;\nselect * from activities where crm_configuration_id = 39 and type = 'conference'\nand crm_provider_id IS NOT NULL ORDER by id desc;\nselect * from activities where id = 422003; # 00UO400000pB6fpMAC\n\nSELECT ar.id, ar.uuid, ar.media_type, ar.status, a.type\nFROM automated_report_results ar\nJOIN automated_reports a ON a.id = ar.report_id\nWHERE a.type = 'ask_jiminny'\nLIMIT 10;\n\nSELECT `automated_report_results`.* FROM `automated_report_results`\nINNER JOIN `automated_reports`\n ON `automated_report_results`.`report_id` = `automated_reports`.`id`\nWHERE `automated_report_results`.`generated_at` IS NOT NULL\n AND `automated_reports`.`team_id` = 1\n AND JSON_CONTAINS(`automated_reports`.`recipients`, 1635, '$.\"users\"')\n;\n\n\nselect * from teams where id = 3143;\nselect * from crm_configurations where id = 500;\nselect * from users where name = 'Integration Account'; # 1695\nSELECT * FROM social_accounts WHERE sociable_id = 1695;\n\nselect * from activities where crm_configuration_id = 39\nand recording_state = 'recorded' and duration > 60\nand status = 'completed' and actual_start_time >= '2025-12-01';\n\nSELECT * FROM activities WHERE uuid_to_bin('458cf915-b914-4000-b083-5687b32b2956') = uuid;\n\nselect * from leads;","role_description":"text entry area","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Project","depth":3,"role_description":"text"},{"role":"AXButton","text":"Project","depth":3,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"New File or Directory…","depth":4,"bounds":{"left":0.0,"top":0.0,"width":0.018055556,"height":0.026666667},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Expand Selected","depth":4,"bounds":{"left":0.0,"top":0.0,"width":0.018055556,"height":0.026666667},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Collapse All","depth":4,"bounds":{"left":0.0,"top":0.0,"width":0.018055556,"height":0.026666667},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Options","depth":4,"bounds":{"left":0.0,"top":0.0,"width":0.018055556,"height":0.026666667},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Hide","depth":4,"bounds":{"left":0.0,"top":0.0,"width":0.018055556,"height":0.026666667},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false}]...
|
-9000098260144748274
|
-2536901465727692211
|
idle
|
accessibility
|
NULL
|
Project: faVsco.js, menu
JY-20157-AJ-report-not-se Project: faVsco.js, menu
JY-20157-AJ-report-not-send-notification, menu
Start Listening for PHP Debug Connections
AskJiminnyReportActivityServiceTest
Run 'AskJiminnyReportActivityServiceTest'
Debug 'AskJiminnyReportActivityServiceTest'
More Actions
JetBrains AI
Search Everywhere
IDE and Project Settings
Code changed:
Hide
Sync Changes
Hide This Notification
1
3
3
Previous Highlighted Error
Next Highlighted Error
<?php
declare(strict_types=1);
namespace Jiminny\Jobs\AutomatedReports;
use Carbon\Carbon;
use Illuminate\Bus\Queueable;
use Illuminate\Contracts\Queue\ShouldBeUnique;
use Illuminate\Contracts\Queue\ShouldQueue;
use Illuminate\Contracts\Routing\UrlGenerator;
use Illuminate\Queue\InteractsWithQueue;
use Jiminny\Component\ProphetAi\Exceptions\ProphetException;
use Jiminny\Component\ProphetAi\ProphetClient;
use Jiminny\Component\Queue\Constants;
use Jiminny\Jobs\JobDispatcherInterface;
use Jiminny\Models\AutomatedReport;
use Jiminny\Models\AutomatedReportResult;
use Jiminny\Models\Team;
use Jiminny\Services\Kiosk\AutomatedReports\AskJiminnyReportActivityService;
use Jiminny\Services\Kiosk\AutomatedReports\AutomatedReportsService;
use Psr\Log\LoggerInterface;
use Throwable;
class RequestGenerateAskJiminnyReportJob implements ShouldQueue, ShouldBeUnique
{
use InteractsWithQueue;
use Queueable;
private const string LOG_PREFIX = '[AskJiminnyReport:Generate]';
private const int MIN_ACTIVITIES_COUNT = 1;
public int $tries = 2;
private ?AutomatedReportResult $reportResult = null;
public function __construct(private readonly string $reportUuid)
{
$this->onQueue(Constants::QUEUE_ANALYTICS);
}
public function uniqueId(): string
{
return $this->reportUuid;
}
public function handle(
AutomatedReportsService $reportService,
AskJiminnyReportActivityService $activityService,
ProphetClient $prophetClient,
LoggerInterface $logger,
UrlGenerator $urlGenerator,
JobDispatcherInterface $jobDispatcher,
): void {
$logger->info(self::LOG_PREFIX . ' Started', [
'automatedReportUuid' => $this->reportUuid,
]);
try {
$automatedReport = $reportService->getReport($this->reportUuid);
$this->dispatchNotGeneratedNotifications(
$automatedReport,
$reportService,
$urlGenerator,
$jobDispatcher,
$logger,
);
return;
if (! $this->validateReport($automatedReport, $logger)) {
return;
}
$creator = $automatedReport->getCreator();
if ($creator === null) {
$logger->warning(self::LOG_PREFIX . ' Skipped, report creator not found', [
'automatedReportUuid' => $this->reportUuid,
]);
return;
}
$savedSearch = $automatedReport->getSavedSearch();
if ($savedSearch === null) {
$logger->warning(self::LOG_PREFIX . ' Skipped, saved search not found', [
'automatedReportUuid' => $this->reportUuid,
]);
return;
}
$prompt = $automatedReport->getAskAnythingPrompt();
if ($prompt === null) {
$logger->warning(self::LOG_PREFIX . ' Skipped, ask anything prompt not found', [
'automatedReportUuid' => $this->reportUuid,
]);
return;
}
$this->reportResult = $reportService->getOrCreateReportResult(
automatedReport: $automatedReport,
data: [
'status' => AutomatedReportResult::STATUS_DEFAULT,
'media_type' => AutomatedReportsService::MEDIA_TYPE_PDF,
]
);
$activityIds = $activityService->getActivityIdsForSavedSearch(
savedSearch: $savedSearch,
user: $creator,
frequency: $automatedReport->getFrequency(),
);
$logger->info(self::LOG_PREFIX . ' Fetched activity IDs', [
'automatedReportUuid' => $this->reportUuid,
'activityCount' => count($activityIds),
]);
if (count($activityIds) < self::MIN_ACTIVITIES_COUNT) {
$this->failReport(AutomatedReportResult::REASON_NOT_ENOUGH_ACTIVITIES);
$logger->info(self::LOG_PREFIX . ' Not enough activities, skipped', [
'automatedReportUuid' => $this->reportUuid,
'activityCount' => count($activityIds),
]);
$this->dispatchNotGeneratedNotifications(
$automatedReport,
$reportService,
$urlGenerator,
$jobDispatcher,
$logger,
);
return;
}
$payload = $reportService->getAskJiminnyGenerateReportPayload(
automatedReport: $automatedReport,
reportResult: $this->reportResult,
activityIds: $activityIds,
);
$this->reportResult->update([
'name' => $reportService->getReportFileName($this->reportResult),
'payload' => $payload,
'status' => AutomatedReportResult::STATUS_REQUESTED,
'requested_at' => Carbon::now()->toDateTimeString(),
]);
$logger->info(self::LOG_PREFIX . ' Request sent', [
'automatedReportUuid' => $this->reportUuid,
'reportUuid' => $this->reportResult->getUuid(),
'payload' => $payload,
]);
$response = $prophetClient->sendRequest(
endpoint: ProphetClient::ASK_JIMINNY_REPORT,
requestArray: $payload,
);
$logger->info(self::LOG_PREFIX . ' Response received', [
'response' => $response->getContent(),
]);
} catch (Throwable $exception) {
$reason = $exception instanceof ProphetException
? AutomatedReportResult::REASON_PROPHET_API_ERROR
: AutomatedReportResult::REASON_DEFAULT;
$this->failReport($reason);
$logger->error(self::LOG_PREFIX . ' Error', [
'automatedReportUuid' => $this->reportUuid,
'reportUuid' => $this->reportResult?->getUuid(),
'code' => $exception->getCode(),
'message' => $exception->getMessage(),
]);
if ($this->attempts() < $this->tries) {
$logger->info(self::LOG_PREFIX . ' Retry scheduled', [
'attempts' => $this->attempts(),
]);
$this->release(30);
} else {
$this->fail($exception);
}
}
}
private function validateReport(AutomatedReport $automatedReport, LoggerInterface $logger): bool
{
if ($automatedReport->getType() !== AutomatedReportsService::TYPE_ASK_JIMINNY) {
$logger->warning(self::LOG_PREFIX . ' Skipped, not an ask_jiminny report', [
'automatedReportUuid' => $this->reportUuid,
'type' => $automatedReport->getType(),
]);
return false;
}
if (! $automatedReport->getStatus()) {
$logger->info(self::LOG_PREFIX . ' Skipped, report is not active', [
'automatedReportUuid' => $this->reportUuid,
]);
return false;
}
if ($automatedReport->getTeam()->getStatus() !== Team::STATUS_ACTIVE) {
$logger->info(self::LOG_PREFIX . ' Skipped, team is inactive', [
'automatedReportUuid' => $this->reportUuid,
]);
return false;
}
return true;
}
private function failReport(int $reason): void
{
$this->reportResult?->update([
'status' => AutomatedReportResult::STATUS_FAILED,
'reason' => $reason,
]);
}
private function dispatchNotGeneratedNotifications(
AutomatedReport $automatedReport,
AutomatedReportsService $reportService,
UrlGenerator $urlGenerator,
JobDispatcherInterface $jobDispatcher,
LoggerInterface $logger,
): void {
if ($this->reportResult === null) {
return;
}
$recipients = $reportService->getValidRecipientUsers($automatedReport);
if (empty($recipients)) {
$logger->info(self::LOG_PREFIX . ' No recipients to notify about missing report', [
'automatedReportUuid' => $this->reportUuid,
]);
return;
}
$reportName = $automatedReport->getCustomName()
?: $reportService->getReportTypeName($this->reportResult);
$periodName = $reportService->getReportPeriodName($this->reportResult);
$reportsPageUrl = $urlGenerator->route('ai.reports.show');
foreach ($recipients as $recipient) {
$jobDispatcher->dispatch(new SendReportNotGeneratedMailJob(
reportUuid: $this->reportResult->getUuid(),
recipientEmail: $recipient['email'],
recipientName: $recipient['name'] ?? null,
reportName: $reportName,
periodName: $periodName,
reportsPageUrl: $reportsPageUrl,
));
}
$logger->info(self::LOG_PREFIX . ' Dispatched not-generated notifications', [
'automatedReportUuid' => $this->reportUuid,
'recipientsCount' => count($recipients),
]);
}
}
Execute
Explain Plan
Browse Query History
View Parameters
Open Query Execution Settings…
In-Editor Results
Tx: Auto
Cancel Running Statements
Playground
jiminny
Sync Changes
Hide This Notification
Code changed:
Hide
18
14
2
4
Previous Highlighted Error
Next Highlighted Error
SELECT a.id, a.uuid, a.actual_start_time, o.id, o.uuid FROM opportunities o
JOIN activities a ON o.id = a.opportunity_id
WHERE a.crm_configuration_id = 39
AND a.actual_start_time > '2025-10-13'
AND a.type IN ('conference', 'softphone-inbound', 'softphone-outbound')
;
SELECT * FROM activities
WHERE crm_configuration_id = 39 and user_id = 143
and actual_start_time >= '2025-10-13'
AND type IN ('conference', 'softphone-inbound', 'softphone-outbound')
;
SELECT * FROM opportunities WHERE account_id IN (178);
select * from activities where id IN (620137, 620187, 620188, 620189, 620230);
# HS
SELECT * FROM opportunities WHERE id IN (238);
select * from activities where id IN (477,2076);
select * from users;
SELECT COUNT(*) FROM users;
SELECT COUNT(*) FROM activities;
SELECT COUNT(*) FROM opportunities;
UPDATE activities
SET
actual_start_time = '2025-12-19 09:00:00',
actual_end_time = '2025-12-19 10:30:00',
scheduled_start_time = '2025-12-19 09:00:00',
scheduled_end_time = '2025-12-19 10:30:00'
WHERE id IN (407509,407375);
select * from partners;
SELECT id, uuid, type, actual_start_time, user_id, crm_configuration_id
FROM activities
WHERE user_id = 143
AND actual_start_time >= '2025-10-13 00:00:00'
AND actual_start_time <= '2026-01-13 23:59:59'
ORDER BY actual_start_time DESC;
SELECT * FROM activities WHERE uuid_to_bin('78eda160-3086-435f-88a5-bb0c71b6008d') = uuid;
SELECT * FROM crm_layouts where crm_configuration_id = 39;
SELECT * FROM crm_layout_entities WHERE crm_layout_id = 282;
# lead_id
# account_id 177
# contact_id 3969
# opportunity_id
# stage_id 203
SELECT * FROM opportunities WHERE opportunities.crm_configuration_id = id = 282;
SELECT * FROM activities where crm_configuration_id = 39 AND type = 'conference'
AND user_id = 143 and actual_start_time >= '2025-10-13';
SELECT * FROM activities a
# JOIN opportunities o ON a.opportunity_id = o.id
WHERE a.crm_configuration_id = 39 AND a.type = 'conference'
and status = 'completed' and recording_state = 'recorded'
and a.actual_start_time >= '2025-10-13'
AND a.user_id = 143
;
select * from leads
where crm_configuration_id = 39; # 112 -> ac. 178, 109 => op. 1707
SELECT * FROM activities WHERE id IN (356013,616188,616202,616310,407509,407375,356001,356008);
SELECT * FROM activities WHERE id IN (356013,616188,616202,616310);
SELECT * FROM activities WHERE id IN (407509,407375); # leads: 112, 109 | status - 198
SELECT * FROM activities WHERE id IN (356001, 356008); # contacts:
SELECT * FROM opportunities WHERE id IN (1707);
SELECT * FROM stages where id IN (204, 198);
SELECT * FROM opportunities WHERE account_id IN (178);
SELECT * FROM opportunities WHERE crm_configuration_id = 39 AND created_at > '2025-01-01';
SELECT * FROM contacts WHERE account_id IN (178); # 4118 Musaibe, 4448 Ceco Personal
SELECT * FROM activities where crm_configuration_id = 39
AND opportunity_id IS NULL
AND is_internal = false
and status = 'completed' and recording_state = 'recorded'
AND actual_start_time >= '2025-10-13'
AND (lead_id IS NOT NULL OR contact_id IS NOT NULL OR account_id IS NOT NULL)
# AND lead_id IN (112, 109)
;
SELECT * FROM crm_profiles WHERE user_id = 143;
select * from inboxes; # 212
select * from users where id = 143; # 143
select * from inbox_email_batches where inbox_id = 212
and updated_at >= '2026-01-28 00:00:00' order by id desc;
select * from inbox_emails where inbox_id = 212
and batch_id = 95885 order by id desc;
select * from email_messages where origin_user_id = 143;
select * from activities where user_id = 143 and updated_at >= '2026-01-28 00:00:00';
select * from participants where activity_id = 620247;
select * from crm_profiles where user_id = 143;
SELECT * FROM activities WHERE uuid_to_bin('458cf915-b914-4000-b083-5687b32b2956') = uuid; # 356001
select * from transcription where activity_id = 356001; # 6943
select * from ai_prompts where transcription_id = 6943;
SELECT * FROM activity_summary_logs where activity_id = 356001;
SELECT * FROM social_accounts WHERE sociable_id = 143;
# [PASSWORD_DOTS]
SELECT * FROM activities WHERE uuid_to_bin('0164a4fb-cb95-454e-9edd-4d804e4999bd') = uuid;
# 422515 softphone tr. 8100
SELECT * FROM activities WHERE uuid_to_bin('7520add8-8d87-41a5-98e5-fc4edf96f21e') = uuid;
# 407509 conference tr. 7670 crmId: 00UD1000002J9aTMAS
select * from ai_prompts where transcription_id IN (8100, 7670);
select * from activity_summary_logs where activity_id = 407509;
select * from sidekick_settings;
select * from default_activity_types;
SELECT * FROM contacts WHERE crm_configuration_id = 39 and email = '[EMAIL]';
SELECT * FROM leads WHERE crm_configuration_id = 39 and email = '[EMAIL]';
SELECT * FROM activity_searches where user_id = 143;
SELECT * FROM groups where team_id = 1;
select * from teams where id = 1;
select * from groups where team_id = 1; # 1150 - 7e75f8025c22
select id, name, group_id, status, deleted_at, email
from users where team_id = 1 order by group_id desc ;
select * from activity_searches where id in (1977, 1978, 1979);
select * from activity_search_filters where activity_search_id IN (1977, 1978, 1979);
select * from activity_search_filters where filter = 'group_id' and value = '443f26b8-8512-437e-a9f9-7e75f8025c22'; # 10268, 10272, 10277
select * from nudges where activity_search_id IN (1977, 1978, 1979); # 877, 878, 879
INSERT INTO `activity_search_filters`
(`activity_search_id`, `filter`, `value`) VALUES
(1977, 'group_id', '443f26b8-8512-437e-a9f9-7e75f8025c22'),
(1978, 'group_id', '443f26b8-8512-437e-a9f9-7e75f8025c22'),
(1979, 'group_id', '443f26b8-8512-437e-a9f9-7e75f8025c22')
;
select * from crm_configurations where id = 39;
select sa.* from users u JOIN social_accounts sa on u.id = sa.sociable_id
where u.team_id = 1;
SELECT * FROM social_accounts WHERE sociable_id = 1635;
SELECT * FROM users WHERE id = 1635;
select * from teams where id = 1;
select * from users where team_id = 1;
select * from team_features where team_id = 1;
select * from features;
SELECT * FROM activity_searches where id = 1982; # 1981
SELECT * FROM activity_search_filters WHERE activity_search_id = 1982;
SELECT * FROM automated_reports where id = 69;
UPDATE automated_reports set playbook_categories = NULL where id = 68;
SELECT * FROM automated_report_results where id = 275;
SELECT * FROM automated_reports order by id desc;
SELECT * FROM automated_report_results order by id desc;
select * from activity_searches where user_id = 143;
select * from ask_anything_prompts;
SELECT * FROM groups WHERE id = 1439;
SELECT * FROM users WHERE group_id = 1439;
select * from permissions; # 158
select * from roles;
select * from permission_role
select * from teams where id = 1;
select * from groups g JOIN playbooks p on g.playbook_id = p.id where g.team_id = 1;
select * from groups where id = 28;
select * from playbooks where team_id = 1;
select * from playbooks where id = 179;
select * from playbook_categories where id = 1391;
select * from users where id = 143;
select * from crm_profiles where user_id = 143;
select * from activities where crm_configuration_id = 39 and type = 'conference'
and crm_provider_id IS NOT NULL ORDER by id desc;
select * from activities where id = 422003; # 00UO400000pB6fpMAC
SELECT ar.id, ar.uuid, ar.media_type, ar.status, a.type
FROM automated_report_results ar
JOIN automated_reports a ON a.id = ar.report_id
WHERE a.type = 'ask_jiminny'
LIMIT 10;
SELECT `automated_report_results`.* FROM `automated_report_results`
INNER JOIN `automated_reports`
ON `automated_report_results`.`report_id` = `automated_reports`.`id`
WHERE `automated_report_results`.`generated_at` IS NOT NULL
AND `automated_reports`.`team_id` = 1
AND JSON_CONTAINS(`automated_reports`.`recipients`, 1635, '$."users"')
;
select * from teams where id = 3143;
select * from crm_configurations where id = 500;
select * from users where name = 'Integration Account'; # 1695
SELECT * FROM social_accounts WHERE sociable_id = 1695;
select * from activities where crm_configuration_id = 39
and recording_state = 'recorded' and duration > 60
and status = 'completed' and actual_start_time >= '2025-12-01';
SELECT * FROM activities WHERE uuid_to_bin('458cf915-b914-4000-b083-5687b32b2956') = uuid;
select * from leads;
Project
Project
New File or Directory…
Expand Selected
Collapse All
Options
Hide...
|
70614
|
|
70622
|
1663
|
7
|
2026-04-22T10:59:55.984867+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-22/1776 /Users/lukas/.screenpipe/data/data/2026-04-22/1776855595984_m2.jpg...
|
PhpStorm
|
faVsco.js – SF [jiminny@localhost]
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
Project: faVsco.js, menu
JY-20157-AJ-report-not-se Project: faVsco.js, menu
JY-20157-AJ-report-not-send-notification, menu
Start Listening for PHP Debug Connections
AskJiminnyReportActivityServiceTest
Run 'AskJiminnyReportActivityServiceTest'
Debug 'AskJiminnyReportActivityServiceTest'
More Actions
JetBrains AI
Search Everywhere
IDE and Project Settings
Code changed:
Hide
Sync Changes
Hide This Notification
1
3
3
Previous Highlighted Error
Next Highlighted Error
<?php
declare(strict_types=1);
namespace Jiminny\Jobs\AutomatedReports;
use Carbon\Carbon;
use Illuminate\Bus\Queueable;
use Illuminate\Contracts\Queue\ShouldBeUnique;
use Illuminate\Contracts\Queue\ShouldQueue;
use Illuminate\Contracts\Routing\UrlGenerator;
use Illuminate\Queue\InteractsWithQueue;
use Jiminny\Component\ProphetAi\Exceptions\ProphetException;
use Jiminny\Component\ProphetAi\ProphetClient;
use Jiminny\Component\Queue\Constants;
use Jiminny\Jobs\JobDispatcherInterface;
use Jiminny\Models\AutomatedReport;
use Jiminny\Models\AutomatedReportResult;
use Jiminny\Models\Team;
use Jiminny\Services\Kiosk\AutomatedReports\AskJiminnyReportActivityService;
use Jiminny\Services\Kiosk\AutomatedReports\AutomatedReportsService;
use Psr\Log\LoggerInterface;
use Throwable;
class RequestGenerateAskJiminnyReportJob implements ShouldQueue, ShouldBeUnique
{
use InteractsWithQueue;
use Queueable;
private const string LOG_PREFIX = '[AskJiminnyReport:Generate]';
private const int MIN_ACTIVITIES_COUNT = 1;
public int $tries = 2;
private ?AutomatedReportResult $reportResult = null;
public function __construct(private readonly string $reportUuid)
{
$this->onQueue(Constants::QUEUE_ANALYTICS);
}
public function uniqueId(): string
{
return $this->reportUuid;
}
public function handle(
AutomatedReportsService $reportService,
AskJiminnyReportActivityService $activityService,
ProphetClient $prophetClient,
LoggerInterface $logger,
UrlGenerator $urlGenerator,
JobDispatcherInterface $jobDispatcher,
): void {
$logger->info(self::LOG_PREFIX . ' Started', [
'automatedReportUuid' => $this->reportUuid,
]);
try {
$automatedReport = $reportService->getReport($this->reportUuid);
$this->dispatchNotGeneratedNotifications(
$automatedReport,
$reportService,
$urlGenerator,
$jobDispatcher,
$logger,
);
return;
if (! $this->validateReport($automatedReport, $logger)) {
return;
}
$creator = $automatedReport->getCreator();
if ($creator === null) {
$logger->warning(self::LOG_PREFIX . ' Skipped, report creator not found', [
'automatedReportUuid' => $this->reportUuid,
]);
return;
}
$savedSearch = $automatedReport->getSavedSearch();
if ($savedSearch === null) {
$logger->warning(self::LOG_PREFIX . ' Skipped, saved search not found', [
'automatedReportUuid' => $this->reportUuid,
]);
return;
}
$prompt = $automatedReport->getAskAnythingPrompt();
if ($prompt === null) {
$logger->warning(self::LOG_PREFIX . ' Skipped, ask anything prompt not found', [
'automatedReportUuid' => $this->reportUuid,
]);
return;
}
$this->reportResult = $reportService->getOrCreateReportResult(
automatedReport: $automatedReport,
data: [
'status' => AutomatedReportResult::STATUS_DEFAULT,
'media_type' => AutomatedReportsService::MEDIA_TYPE_PDF,
]
);
$activityIds = $activityService->getActivityIdsForSavedSearch(
savedSearch: $savedSearch,
user: $creator,
frequency: $automatedReport->getFrequency(),
);
$logger->info(self::LOG_PREFIX . ' Fetched activity IDs', [
'automatedReportUuid' => $this->reportUuid,
'activityCount' => count($activityIds),
]);
if (count($activityIds) < self::MIN_ACTIVITIES_COUNT) {
$this->failReport(AutomatedReportResult::REASON_NOT_ENOUGH_ACTIVITIES);
$logger->info(self::LOG_PREFIX . ' Not enough activities, skipped', [
'automatedReportUuid' => $this->reportUuid,
'activityCount' => count($activityIds),
]);
$this->dispatchNotGeneratedNotifications(
$automatedReport,
$reportService,
$urlGenerator,
$jobDispatcher,
$logger,
);
return;
}
$payload = $reportService->getAskJiminnyGenerateReportPayload(
automatedReport: $automatedReport,
reportResult: $this->reportResult,
activityIds: $activityIds,
);
$this->reportResult->update([
'name' => $reportService->getReportFileName($this->reportResult),
'payload' => $payload,
'status' => AutomatedReportResult::STATUS_REQUESTED,
'requested_at' => Carbon::now()->toDateTimeString(),
]);
$logger->info(self::LOG_PREFIX . ' Request sent', [
'automatedReportUuid' => $this->reportUuid,
'reportUuid' => $this->reportResult->getUuid(),
'payload' => $payload,
]);
$response = $prophetClient->sendRequest(
endpoint: ProphetClient::ASK_JIMINNY_REPORT,
requestArray: $payload,
);
$logger->info(self::LOG_PREFIX . ' Response received', [
'response' => $response->getContent(),
]);
} catch (Throwable $exception) {
$reason = $exception instanceof ProphetException
? AutomatedReportResult::REASON_PROPHET_API_ERROR
: AutomatedReportResult::REASON_DEFAULT;
$this->failReport($reason);
$logger->error(self::LOG_PREFIX . ' Error', [
'automatedReportUuid' => $this->reportUuid,
'reportUuid' => $this->reportResult?->getUuid(),
'code' => $exception->getCode(),
'message' => $exception->getMessage(),
]);
if ($this->attempts() < $this->tries) {
$logger->info(self::LOG_PREFIX . ' Retry scheduled', [
'attempts' => $this->attempts(),
]);
$this->release(30);
} else {
$this->fail($exception);
}
}
}
private function validateReport(AutomatedReport $automatedReport, LoggerInterface $logger): bool
{
if ($automatedReport->getType() !== AutomatedReportsService::TYPE_ASK_JIMINNY) {
$logger->warning(self::LOG_PREFIX . ' Skipped, not an ask_jiminny report', [
'automatedReportUuid' => $this->reportUuid,
'type' => $automatedReport->getType(),
]);
return false;
}
if (! $automatedReport->getStatus()) {
$logger->info(self::LOG_PREFIX . ' Skipped, report is not active', [
'automatedReportUuid' => $this->reportUuid,
]);
return false;
}
if ($automatedReport->getTeam()->getStatus() !== Team::STATUS_ACTIVE) {
$logger->info(self::LOG_PREFIX . ' Skipped, team is inactive', [
'automatedReportUuid' => $this->reportUuid,
]);
return false;
}
return true;
}
private function failReport(int $reason): void
{
$this->reportResult?->update([
'status' => AutomatedReportResult::STATUS_FAILED,
'reason' => $reason,
]);
}
private function dispatchNotGeneratedNotifications(
AutomatedReport $automatedReport,
AutomatedReportsService $reportService,
UrlGenerator $urlGenerator,
JobDispatcherInterface $jobDispatcher,
LoggerInterface $logger,
): void {
if ($this->reportResult === null) {
return;
}
$recipients = $reportService->getValidRecipientUsers($automatedReport);
if (empty($recipients)) {
$logger->info(self::LOG_PREFIX . ' No recipients to notify about missing report', [
'automatedReportUuid' => $this->reportUuid,
]);
return;
}
$reportName = $automatedReport->getCustomName()
?: $reportService->getReportTypeName($this->reportResult);
$periodName = $reportService->getReportPeriodName($this->reportResult);
$reportsPageUrl = $urlGenerator->route('ai.reports.show');
foreach ($recipients as $recipient) {
$jobDispatcher->dispatch(new SendReportNotGeneratedMailJob(
reportUuid: $this->reportResult->getUuid(),
recipientEmail: $recipient['email'],
recipientName: $recipient['name'] ?? null,
reportName: $reportName,
periodName: $periodName,
reportsPageUrl: $reportsPageUrl,
));
}
$logger->info(self::LOG_PREFIX . ' Dispatched not-generated notifications', [
'automatedReportUuid' => $this->reportUuid,
'recipientsCount' => count($recipients),
]);
}
}
Execute
Explain Plan
Browse Query History
View Parameters
Open Query Execution Settings…
In-Editor Results
Tx: Auto
Cancel Running Statements
Playground
jiminny
Sync Changes
Hide This Notification
Code changed:
Hide
18
14
2
4
Previous Highlighted Error
Next Highlighted Error
SELECT a.id, a.uuid, a.actual_start_time, o.id, o.uuid FROM opportunities o
JOIN activities a ON o.id = a.opportunity_id
WHERE a.crm_configuration_id = 39
AND a.actual_start_time > '2025-10-13'
AND a.type IN ('conference', 'softphone-inbound', 'softphone-outbound')
;
SELECT * FROM activities
WHERE crm_configuration_id = 39 and user_id = 143
and actual_start_time >= '2025-10-13'
AND type IN ('conference', 'softphone-inbound', 'softphone-outbound')
;
SELECT * FROM opportunities WHERE account_id IN (178);
select * from activities where id IN (620137, 620187, 620188, 620189, 620230);
# HS
SELECT * FROM opportunities WHERE id IN (238);
select * from activities where id IN (477,2076);
select * from users;
SELECT COUNT(*) FROM users;
SELECT COUNT(*) FROM activities;
SELECT COUNT(*) FROM opportunities;
UPDATE activities
SET
actual_start_time = '2025-12-19 09:00:00',
actual_end_time = '2025-12-19 10:30:00',
scheduled_start_time = '2025-12-19 09:00:00',
scheduled_end_time = '2025-12-19 10:30:00'
WHERE id IN (407509,407375);
select * from partners;
SELECT id, uuid, type, actual_start_time, user_id, crm_configuration_id
FROM activities
WHERE user_id = 143
AND actual_start_time >= '2025-10-13 00:00:00'
AND actual_start_time <= '2026-01-13 23:59:59'
ORDER BY actual_start_time DESC;
SELECT * FROM activities WHERE uuid_to_bin('78eda160-3086-435f-88a5-bb0c71b6008d') = uuid;
SELECT * FROM crm_layouts where crm_configuration_id = 39;
SELECT * FROM crm_layout_entities WHERE crm_layout_id = 282;
# lead_id
# account_id 177
# contact_id 3969
# opportunity_id
# stage_id 203
SELECT * FROM opportunities WHERE opportunities.crm_configuration_id = id = 282;
SELECT * FROM activities where crm_configuration_id = 39 AND type = 'conference'
AND user_id = 143 and actual_start_time >= '2025-10-13';
SELECT * FROM activities a
# JOIN opportunities o ON a.opportunity_id = o.id
WHERE a.crm_configuration_id = 39 AND a.type = 'conference'
and status = 'completed' and recording_state = 'recorded'
and a.actual_start_time >= '2025-10-13'
AND a.user_id = 143
;
select * from leads
where crm_configuration_id = 39; # 112 -> ac. 178, 109 => op. 1707
SELECT * FROM activities WHERE id IN (356013,616188,616202,616310,407509,407375,356001,356008);
SELECT * FROM activities WHERE id IN (356013,616188,616202,616310);
SELECT * FROM activities WHERE id IN (407509,407375); # leads: 112, 109 | status - 198
SELECT * FROM activities WHERE id IN (356001, 356008); # contacts:
SELECT * FROM opportunities WHERE id IN (1707);
SELECT * FROM stages where id IN (204, 198);
SELECT * FROM opportunities WHERE account_id IN (178);
SELECT * FROM opportunities WHERE crm_configuration_id = 39 AND created_at > '2025-01-01';
SELECT * FROM contacts WHERE account_id IN (178); # 4118 Musaibe, 4448 Ceco Personal
SELECT * FROM activities where crm_configuration_id = 39
AND opportunity_id IS NULL
AND is_internal = false
and status = 'completed' and recording_state = 'recorded'
AND actual_start_time >= '2025-10-13'
AND (lead_id IS NOT NULL OR contact_id IS NOT NULL OR account_id IS NOT NULL)
# AND lead_id IN (112, 109)
;
SELECT * FROM crm_profiles WHERE user_id = 143;
select * from inboxes; # 212
select * from users where id = 143; # 143
select * from inbox_email_batches where inbox_id = 212
and updated_at >= '2026-01-28 00:00:00' order by id desc;
select * from inbox_emails where inbox_id = 212
and batch_id = 95885 order by id desc;
select * from email_messages where origin_user_id = 143;
select * from activities where user_id = 143 and updated_at >= '2026-01-28 00:00:00';
select * from participants where activity_id = 620247;
select * from crm_profiles where user_id = 143;
SELECT * FROM activities WHERE uuid_to_bin('458cf915-b914-4000-b083-5687b32b2956') = uuid; # 356001
select * from transcription where activity_id = 356001; # 6943
select * from ai_prompts where transcription_id = 6943;
SELECT * FROM activity_summary_logs where activity_id = 356001;
SELECT * FROM social_accounts WHERE sociable_id = 143;
# [PASSWORD_DOTS]
SELECT * FROM activities WHERE uuid_to_bin('0164a4fb-cb95-454e-9edd-4d804e4999bd') = uuid;
# 422515 softphone tr. 8100
SELECT * FROM activities WHERE uuid_to_bin('7520add8-8d87-41a5-98e5-fc4edf96f21e') = uuid;
# 407509 conference tr. 7670 crmId: 00UD1000002J9aTMAS
select * from ai_prompts where transcription_id IN (8100, 7670);
select * from activity_summary_logs where activity_id = 407509;
select * from sidekick_settings;
select * from default_activity_types;
SELECT * FROM contacts WHERE crm_configuration_id = 39 and email = '[EMAIL]';
SELECT * FROM leads WHERE crm_configuration_id = 39 and email = '[EMAIL]';
SELECT * FROM activity_searches where user_id = 143;
SELECT * FROM groups where team_id = 1;
select * from teams where id = 1;
select * from groups where team_id = 1; # 1150 - 7e75f8025c22
select id, name, group_id, status, deleted_at, email
from users where team_id = 1 order by group_id desc ;
select * from activity_searches where id in (1977, 1978, 1979);
select * from activity_search_filters where activity_search_id IN (1977, 1978, 1979);
select * from activity_search_filters where filter = 'group_id' and value = '443f26b8-8512-437e-a9f9-7e75f8025c22'; # 10268, 10272, 10277
select * from nudges where activity_search_id IN (1977, 1978, 1979); # 877, 878, 879
INSERT INTO `activity_search_filters`
(`activity_search_id`, `filter`, `value`) VALUES
(1977, 'group_id', '443f26b8-8512-437e-a9f9-7e75f8025c22'),
(1978, 'group_id', '443f26b8-8512-437e-a9f9-7e75f8025c22'),
(1979, 'group_id', '443f26b8-8512-437e-a9f9-7e75f8025c22')
;
select * from crm_configurations where id = 39;
select sa.* from users u JOIN social_accounts sa on u.id = sa.sociable_id
where u.team_id = 1;
SELECT * FROM social_accounts WHERE sociable_id = 1635;
SELECT * FROM users WHERE id = 1635;
select * from teams where id = 1;
select * from users where team_id = 1;
select * from team_features where team_id = 1;
select * from features;
SELECT * FROM activity_searches where id = 1982; # 1981
SELECT * FROM activity_search_filters WHERE activity_search_id = 1982;
SELECT * FROM automated_reports where id = 69;
UPDATE automated_reports set playbook_categories = NULL where id = 68;
SELECT * FROM automated_report_results where id = 275;
SELECT * FROM automated_reports order by id desc;
SELECT * FROM automated_report_results order by id desc;
select * from activity_searches where user_id = 143;
select * from ask_anything_prompts;
SELECT * FROM groups WHERE id = 1439;
SELECT * FROM users WHERE group_id = 1439;
select * from permissions; # 158
select * from roles;
select * from permission_role
select * from teams where id = 1;
select * from groups g JOIN playbooks p on g.playbook_id = p.id where g.team_id = 1;
select * from groups where id = 28;
select * from playbooks where team_id = 1;
select * from playbooks where id = 179;
select * from playbook_categories where id = 1391;
select * from users where id = 143;
select * from crm_profiles where user_id = 143;
select * from activities where crm_configuration_id = 39 and type = 'conference'
and crm_provider_id IS NOT NULL ORDER by id desc;
select * from activities where id = 422003; # 00UO400000pB6fpMAC
SELECT ar.id, ar.uuid, ar.media_type, ar.status, a.type
FROM automated_report_results ar
JOIN automated_reports a ON a.id = ar.report_id
WHERE a.type = 'ask_jiminny'
LIMIT 10;
SELECT `automated_report_results`.* FROM `automated_report_results`
INNER JOIN `automated_reports`
ON `automated_report_results`.`report_id` = `automated_reports`.`id`
WHERE `automated_report_results`.`generated_at` IS NOT NULL
AND `automated_reports`.`team_id` = 1
AND JSON_CONTAINS(`automated_reports`.`recipients`, 1635, '$."users"')
;
select * from teams where id = 3143;
select * from crm_configurations where id = 500;
select * from users where name = 'Integration Account'; # 1695
SELECT * FROM social_accounts WHERE sociable_id = 1695;
select * from activities where crm_configuration_id = 39
and recording_state = 'recorded' and duration > 60
and status = 'completed' and actual_start_time >= '2025-12-01';
SELECT * FROM activities WHERE uuid_to_bin('458cf915-b914-4000-b083-5687b32b2956') = uuid;
select * from leads;
Project
Project
New File or Directory…
Expand Selected
Collapse All
Options
Hide...
|
[{"role":"AXButton","text" [{"role":"AXButton","text":"Project: faVsco.js, menu","depth":5,"bounds":{"left":0.25797874,"top":0.019952115,"width":0.03856383,"height":0.025538707},"help_text":"~/jiminny/app","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"JY-20157-AJ-report-not-send-notification, menu","depth":5,"bounds":{"left":0.29654256,"top":0.019952115,"width":0.10139628,"height":0.025538707},"help_text":"Git Branch: JY-20157-AJ-report-not-send-notification","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Start Listening for PHP Debug Connections","depth":5,"bounds":{"left":0.8081782,"top":0.019952115,"width":0.011303191,"height":0.025538707},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"AskJiminnyReportActivityServiceTest","depth":6,"bounds":{"left":0.8234708,"top":0.019952115,"width":0.09208777,"height":0.025538707},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Run 'AskJiminnyReportActivityServiceTest'","depth":6,"bounds":{"left":0.9155585,"top":0.019952115,"width":0.011303191,"height":0.025538707},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Debug 'AskJiminnyReportActivityServiceTest'","depth":6,"bounds":{"left":0.9268617,"top":0.019952115,"width":0.011303191,"height":0.025538707},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"More Actions","depth":6,"bounds":{"left":0.9381649,"top":0.019952115,"width":0.011303191,"height":0.025538707},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"JetBrains AI","depth":5,"bounds":{"left":0.96609044,"top":0.019952115,"width":0.011303191,"height":0.025538707},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Search Everywhere","depth":5,"bounds":{"left":0.9773936,"top":0.019952115,"width":0.011303191,"height":0.025538707},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"IDE and Project Settings","depth":5,"bounds":{"left":0.9886968,"top":0.019952115,"width":0.011303186,"height":0.025538707},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Code changed:","depth":4,"bounds":{"left":0.27027926,"top":1.0,"width":0.042220745,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Hide","depth":4,"bounds":{"left":0.27027926,"top":1.0,"width":0.008643617,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Sync Changes","depth":4,"bounds":{"left":0.27027926,"top":1.0,"width":0.008643617,"height":0.0},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Hide This Notification","depth":4,"bounds":{"left":0.27027926,"top":1.0,"width":0.008643617,"height":0.0},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"1","depth":4,"bounds":{"left":0.61269945,"top":0.15003991,"width":0.00731383,"height":0.015163607},"role_description":"text"},{"role":"AXStaticText","text":"3","depth":4,"bounds":{"left":0.62200797,"top":0.15003991,"width":0.007978723,"height":0.015163607},"role_description":"text"},{"role":"AXStaticText","text":"3","depth":4,"bounds":{"left":0.6319814,"top":0.15003991,"width":0.007978723,"height":0.015163607},"role_description":"text"},{"role":"AXButton","text":"Previous Highlighted Error","depth":4,"bounds":{"left":0.64162236,"top":0.14844373,"width":0.00731383,"height":0.018355945},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Next Highlighted Error","depth":4,"bounds":{"left":0.64893615,"top":0.14844373,"width":0.006981383,"height":0.018355945},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"<?php\n\ndeclare(strict_types=1);\n\nnamespace Jiminny\\Jobs\\AutomatedReports;\n\nuse Carbon\\Carbon;\nuse Illuminate\\Bus\\Queueable;\nuse Illuminate\\Contracts\\Queue\\ShouldBeUnique;\nuse Illuminate\\Contracts\\Queue\\ShouldQueue;\nuse Illuminate\\Contracts\\Routing\\UrlGenerator;\nuse Illuminate\\Queue\\InteractsWithQueue;\nuse Jiminny\\Component\\ProphetAi\\Exceptions\\ProphetException;\nuse Jiminny\\Component\\ProphetAi\\ProphetClient;\nuse Jiminny\\Component\\Queue\\Constants;\nuse Jiminny\\Jobs\\JobDispatcherInterface;\nuse Jiminny\\Models\\AutomatedReport;\nuse Jiminny\\Models\\AutomatedReportResult;\nuse Jiminny\\Models\\Team;\nuse Jiminny\\Services\\Kiosk\\AutomatedReports\\AskJiminnyReportActivityService;\nuse Jiminny\\Services\\Kiosk\\AutomatedReports\\AutomatedReportsService;\nuse Psr\\Log\\LoggerInterface;\nuse Throwable;\n\nclass RequestGenerateAskJiminnyReportJob implements ShouldQueue, ShouldBeUnique\n{\n use InteractsWithQueue;\n use Queueable;\n\n private const string LOG_PREFIX = '[AskJiminnyReport:Generate]';\n\n private const int MIN_ACTIVITIES_COUNT = 1;\n\n public int $tries = 2;\n\n private ?AutomatedReportResult $reportResult = null;\n\n public function __construct(private readonly string $reportUuid)\n {\n $this->onQueue(Constants::QUEUE_ANALYTICS);\n }\n\n public function uniqueId(): string\n {\n return $this->reportUuid;\n }\n\n public function handle(\n AutomatedReportsService $reportService,\n AskJiminnyReportActivityService $activityService,\n ProphetClient $prophetClient,\n LoggerInterface $logger,\n UrlGenerator $urlGenerator,\n JobDispatcherInterface $jobDispatcher,\n ): void {\n $logger->info(self::LOG_PREFIX . ' Started', [\n 'automatedReportUuid' => $this->reportUuid,\n ]);\n\n try {\n $automatedReport = $reportService->getReport($this->reportUuid);\n\n $this->dispatchNotGeneratedNotifications(\n $automatedReport,\n $reportService,\n $urlGenerator,\n $jobDispatcher,\n $logger,\n );\n\n return;\n\n if (! $this->validateReport($automatedReport, $logger)) {\n return;\n }\n\n $creator = $automatedReport->getCreator();\n if ($creator === null) {\n $logger->warning(self::LOG_PREFIX . ' Skipped, report creator not found', [\n 'automatedReportUuid' => $this->reportUuid,\n ]);\n\n return;\n }\n\n $savedSearch = $automatedReport->getSavedSearch();\n if ($savedSearch === null) {\n $logger->warning(self::LOG_PREFIX . ' Skipped, saved search not found', [\n 'automatedReportUuid' => $this->reportUuid,\n ]);\n\n return;\n }\n\n $prompt = $automatedReport->getAskAnythingPrompt();\n if ($prompt === null) {\n $logger->warning(self::LOG_PREFIX . ' Skipped, ask anything prompt not found', [\n 'automatedReportUuid' => $this->reportUuid,\n ]);\n\n return;\n }\n\n $this->reportResult = $reportService->getOrCreateReportResult(\n automatedReport: $automatedReport,\n data: [\n 'status' => AutomatedReportResult::STATUS_DEFAULT,\n 'media_type' => AutomatedReportsService::MEDIA_TYPE_PDF,\n ]\n );\n\n $activityIds = $activityService->getActivityIdsForSavedSearch(\n savedSearch: $savedSearch,\n user: $creator,\n frequency: $automatedReport->getFrequency(),\n );\n\n $logger->info(self::LOG_PREFIX . ' Fetched activity IDs', [\n 'automatedReportUuid' => $this->reportUuid,\n 'activityCount' => count($activityIds),\n ]);\n\n if (count($activityIds) < self::MIN_ACTIVITIES_COUNT) {\n $this->failReport(AutomatedReportResult::REASON_NOT_ENOUGH_ACTIVITIES);\n\n $logger->info(self::LOG_PREFIX . ' Not enough activities, skipped', [\n 'automatedReportUuid' => $this->reportUuid,\n 'activityCount' => count($activityIds),\n ]);\n\n $this->dispatchNotGeneratedNotifications(\n $automatedReport,\n $reportService,\n $urlGenerator,\n $jobDispatcher,\n $logger,\n );\n\n return;\n }\n\n $payload = $reportService->getAskJiminnyGenerateReportPayload(\n automatedReport: $automatedReport,\n reportResult: $this->reportResult,\n activityIds: $activityIds,\n );\n\n $this->reportResult->update([\n 'name' => $reportService->getReportFileName($this->reportResult),\n 'payload' => $payload,\n 'status' => AutomatedReportResult::STATUS_REQUESTED,\n 'requested_at' => Carbon::now()->toDateTimeString(),\n ]);\n\n $logger->info(self::LOG_PREFIX . ' Request sent', [\n 'automatedReportUuid' => $this->reportUuid,\n 'reportUuid' => $this->reportResult->getUuid(),\n 'payload' => $payload,\n ]);\n\n $response = $prophetClient->sendRequest(\n endpoint: ProphetClient::ASK_JIMINNY_REPORT,\n requestArray: $payload,\n );\n\n $logger->info(self::LOG_PREFIX . ' Response received', [\n 'response' => $response->getContent(),\n ]);\n } catch (Throwable $exception) {\n $reason = $exception instanceof ProphetException\n ? AutomatedReportResult::REASON_PROPHET_API_ERROR\n : AutomatedReportResult::REASON_DEFAULT;\n\n $this->failReport($reason);\n\n $logger->error(self::LOG_PREFIX . ' Error', [\n 'automatedReportUuid' => $this->reportUuid,\n 'reportUuid' => $this->reportResult?->getUuid(),\n 'code' => $exception->getCode(),\n 'message' => $exception->getMessage(),\n ]);\n\n if ($this->attempts() < $this->tries) {\n $logger->info(self::LOG_PREFIX . ' Retry scheduled', [\n 'attempts' => $this->attempts(),\n ]);\n\n $this->release(30);\n } else {\n $this->fail($exception);\n }\n }\n }\n\n private function validateReport(AutomatedReport $automatedReport, LoggerInterface $logger): bool\n {\n if ($automatedReport->getType() !== AutomatedReportsService::TYPE_ASK_JIMINNY) {\n $logger->warning(self::LOG_PREFIX . ' Skipped, not an ask_jiminny report', [\n 'automatedReportUuid' => $this->reportUuid,\n 'type' => $automatedReport->getType(),\n ]);\n\n return false;\n }\n\n if (! $automatedReport->getStatus()) {\n $logger->info(self::LOG_PREFIX . ' Skipped, report is not active', [\n 'automatedReportUuid' => $this->reportUuid,\n ]);\n\n return false;\n }\n\n if ($automatedReport->getTeam()->getStatus() !== Team::STATUS_ACTIVE) {\n $logger->info(self::LOG_PREFIX . ' Skipped, team is inactive', [\n 'automatedReportUuid' => $this->reportUuid,\n ]);\n\n return false;\n }\n\n return true;\n }\n\n private function failReport(int $reason): void\n {\n $this->reportResult?->update([\n 'status' => AutomatedReportResult::STATUS_FAILED,\n 'reason' => $reason,\n ]);\n }\n\n private function dispatchNotGeneratedNotifications(\n AutomatedReport $automatedReport,\n AutomatedReportsService $reportService,\n UrlGenerator $urlGenerator,\n JobDispatcherInterface $jobDispatcher,\n LoggerInterface $logger,\n ): void {\n if ($this->reportResult === null) {\n return;\n }\n\n $recipients = $reportService->getValidRecipientUsers($automatedReport);\n if (empty($recipients)) {\n $logger->info(self::LOG_PREFIX . ' No recipients to notify about missing report', [\n 'automatedReportUuid' => $this->reportUuid,\n ]);\n\n return;\n }\n\n $reportName = $automatedReport->getCustomName()\n ?: $reportService->getReportTypeName($this->reportResult);\n $periodName = $reportService->getReportPeriodName($this->reportResult);\n $reportsPageUrl = $urlGenerator->route('ai.reports.show');\n\n foreach ($recipients as $recipient) {\n $jobDispatcher->dispatch(new SendReportNotGeneratedMailJob(\n reportUuid: $this->reportResult->getUuid(),\n recipientEmail: $recipient['email'],\n recipientName: $recipient['name'] ?? null,\n reportName: $reportName,\n periodName: $periodName,\n reportsPageUrl: $reportsPageUrl,\n ));\n }\n\n $logger->info(self::LOG_PREFIX . ' Dispatched not-generated notifications', [\n 'automatedReportUuid' => $this->reportUuid,\n 'recipientsCount' => count($recipients),\n ]);\n }\n}","depth":4,"value":"<?php\n\ndeclare(strict_types=1);\n\nnamespace Jiminny\\Jobs\\AutomatedReports;\n\nuse Carbon\\Carbon;\nuse Illuminate\\Bus\\Queueable;\nuse Illuminate\\Contracts\\Queue\\ShouldBeUnique;\nuse Illuminate\\Contracts\\Queue\\ShouldQueue;\nuse Illuminate\\Contracts\\Routing\\UrlGenerator;\nuse Illuminate\\Queue\\InteractsWithQueue;\nuse Jiminny\\Component\\ProphetAi\\Exceptions\\ProphetException;\nuse Jiminny\\Component\\ProphetAi\\ProphetClient;\nuse Jiminny\\Component\\Queue\\Constants;\nuse Jiminny\\Jobs\\JobDispatcherInterface;\nuse Jiminny\\Models\\AutomatedReport;\nuse Jiminny\\Models\\AutomatedReportResult;\nuse Jiminny\\Models\\Team;\nuse Jiminny\\Services\\Kiosk\\AutomatedReports\\AskJiminnyReportActivityService;\nuse Jiminny\\Services\\Kiosk\\AutomatedReports\\AutomatedReportsService;\nuse Psr\\Log\\LoggerInterface;\nuse Throwable;\n\nclass RequestGenerateAskJiminnyReportJob implements ShouldQueue, ShouldBeUnique\n{\n use InteractsWithQueue;\n use Queueable;\n\n private const string LOG_PREFIX = '[AskJiminnyReport:Generate]';\n\n private const int MIN_ACTIVITIES_COUNT = 1;\n\n public int $tries = 2;\n\n private ?AutomatedReportResult $reportResult = null;\n\n public function __construct(private readonly string $reportUuid)\n {\n $this->onQueue(Constants::QUEUE_ANALYTICS);\n }\n\n public function uniqueId(): string\n {\n return $this->reportUuid;\n }\n\n public function handle(\n AutomatedReportsService $reportService,\n AskJiminnyReportActivityService $activityService,\n ProphetClient $prophetClient,\n LoggerInterface $logger,\n UrlGenerator $urlGenerator,\n JobDispatcherInterface $jobDispatcher,\n ): void {\n $logger->info(self::LOG_PREFIX . ' Started', [\n 'automatedReportUuid' => $this->reportUuid,\n ]);\n\n try {\n $automatedReport = $reportService->getReport($this->reportUuid);\n\n $this->dispatchNotGeneratedNotifications(\n $automatedReport,\n $reportService,\n $urlGenerator,\n $jobDispatcher,\n $logger,\n );\n\n return;\n\n if (! $this->validateReport($automatedReport, $logger)) {\n return;\n }\n\n $creator = $automatedReport->getCreator();\n if ($creator === null) {\n $logger->warning(self::LOG_PREFIX . ' Skipped, report creator not found', [\n 'automatedReportUuid' => $this->reportUuid,\n ]);\n\n return;\n }\n\n $savedSearch = $automatedReport->getSavedSearch();\n if ($savedSearch === null) {\n $logger->warning(self::LOG_PREFIX . ' Skipped, saved search not found', [\n 'automatedReportUuid' => $this->reportUuid,\n ]);\n\n return;\n }\n\n $prompt = $automatedReport->getAskAnythingPrompt();\n if ($prompt === null) {\n $logger->warning(self::LOG_PREFIX . ' Skipped, ask anything prompt not found', [\n 'automatedReportUuid' => $this->reportUuid,\n ]);\n\n return;\n }\n\n $this->reportResult = $reportService->getOrCreateReportResult(\n automatedReport: $automatedReport,\n data: [\n 'status' => AutomatedReportResult::STATUS_DEFAULT,\n 'media_type' => AutomatedReportsService::MEDIA_TYPE_PDF,\n ]\n );\n\n $activityIds = $activityService->getActivityIdsForSavedSearch(\n savedSearch: $savedSearch,\n user: $creator,\n frequency: $automatedReport->getFrequency(),\n );\n\n $logger->info(self::LOG_PREFIX . ' Fetched activity IDs', [\n 'automatedReportUuid' => $this->reportUuid,\n 'activityCount' => count($activityIds),\n ]);\n\n if (count($activityIds) < self::MIN_ACTIVITIES_COUNT) {\n $this->failReport(AutomatedReportResult::REASON_NOT_ENOUGH_ACTIVITIES);\n\n $logger->info(self::LOG_PREFIX . ' Not enough activities, skipped', [\n 'automatedReportUuid' => $this->reportUuid,\n 'activityCount' => count($activityIds),\n ]);\n\n $this->dispatchNotGeneratedNotifications(\n $automatedReport,\n $reportService,\n $urlGenerator,\n $jobDispatcher,\n $logger,\n );\n\n return;\n }\n\n $payload = $reportService->getAskJiminnyGenerateReportPayload(\n automatedReport: $automatedReport,\n reportResult: $this->reportResult,\n activityIds: $activityIds,\n );\n\n $this->reportResult->update([\n 'name' => $reportService->getReportFileName($this->reportResult),\n 'payload' => $payload,\n 'status' => AutomatedReportResult::STATUS_REQUESTED,\n 'requested_at' => Carbon::now()->toDateTimeString(),\n ]);\n\n $logger->info(self::LOG_PREFIX . ' Request sent', [\n 'automatedReportUuid' => $this->reportUuid,\n 'reportUuid' => $this->reportResult->getUuid(),\n 'payload' => $payload,\n ]);\n\n $response = $prophetClient->sendRequest(\n endpoint: ProphetClient::ASK_JIMINNY_REPORT,\n requestArray: $payload,\n );\n\n $logger->info(self::LOG_PREFIX . ' Response received', [\n 'response' => $response->getContent(),\n ]);\n } catch (Throwable $exception) {\n $reason = $exception instanceof ProphetException\n ? AutomatedReportResult::REASON_PROPHET_API_ERROR\n : AutomatedReportResult::REASON_DEFAULT;\n\n $this->failReport($reason);\n\n $logger->error(self::LOG_PREFIX . ' Error', [\n 'automatedReportUuid' => $this->reportUuid,\n 'reportUuid' => $this->reportResult?->getUuid(),\n 'code' => $exception->getCode(),\n 'message' => $exception->getMessage(),\n ]);\n\n if ($this->attempts() < $this->tries) {\n $logger->info(self::LOG_PREFIX . ' Retry scheduled', [\n 'attempts' => $this->attempts(),\n ]);\n\n $this->release(30);\n } else {\n $this->fail($exception);\n }\n }\n }\n\n private function validateReport(AutomatedReport $automatedReport, LoggerInterface $logger): bool\n {\n if ($automatedReport->getType() !== AutomatedReportsService::TYPE_ASK_JIMINNY) {\n $logger->warning(self::LOG_PREFIX . ' Skipped, not an ask_jiminny report', [\n 'automatedReportUuid' => $this->reportUuid,\n 'type' => $automatedReport->getType(),\n ]);\n\n return false;\n }\n\n if (! $automatedReport->getStatus()) {\n $logger->info(self::LOG_PREFIX . ' Skipped, report is not active', [\n 'automatedReportUuid' => $this->reportUuid,\n ]);\n\n return false;\n }\n\n if ($automatedReport->getTeam()->getStatus() !== Team::STATUS_ACTIVE) {\n $logger->info(self::LOG_PREFIX . ' Skipped, team is inactive', [\n 'automatedReportUuid' => $this->reportUuid,\n ]);\n\n return false;\n }\n\n return true;\n }\n\n private function failReport(int $reason): void\n {\n $this->reportResult?->update([\n 'status' => AutomatedReportResult::STATUS_FAILED,\n 'reason' => $reason,\n ]);\n }\n\n private function dispatchNotGeneratedNotifications(\n AutomatedReport $automatedReport,\n AutomatedReportsService $reportService,\n UrlGenerator $urlGenerator,\n JobDispatcherInterface $jobDispatcher,\n LoggerInterface $logger,\n ): void {\n if ($this->reportResult === null) {\n return;\n }\n\n $recipients = $reportService->getValidRecipientUsers($automatedReport);\n if (empty($recipients)) {\n $logger->info(self::LOG_PREFIX . ' No recipients to notify about missing report', [\n 'automatedReportUuid' => $this->reportUuid,\n ]);\n\n return;\n }\n\n $reportName = $automatedReport->getCustomName()\n ?: $reportService->getReportTypeName($this->reportResult);\n $periodName = $reportService->getReportPeriodName($this->reportResult);\n $reportsPageUrl = $urlGenerator->route('ai.reports.show');\n\n foreach ($recipients as $recipient) {\n $jobDispatcher->dispatch(new SendReportNotGeneratedMailJob(\n reportUuid: $this->reportResult->getUuid(),\n recipientEmail: $recipient['email'],\n recipientName: $recipient['name'] ?? null,\n reportName: $reportName,\n periodName: $periodName,\n reportsPageUrl: $reportsPageUrl,\n ));\n }\n\n $logger->info(self::LOG_PREFIX . ' Dispatched not-generated notifications', [\n 'automatedReportUuid' => $this->reportUuid,\n 'recipientsCount' => count($recipients),\n ]);\n }\n}","role_description":"text entry area","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Execute","depth":4,"bounds":{"left":0.6575798,"top":0.09896249,"width":0.008643617,"height":0.01915403},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Explain Plan","depth":4,"bounds":{"left":0.6662234,"top":0.09896249,"width":0.008643617,"height":0.01915403},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Browse Query History","depth":4,"bounds":{"left":0.6771942,"top":0.09896249,"width":0.008643617,"height":0.01915403},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"View Parameters","depth":4,"bounds":{"left":0.68583775,"top":0.09896249,"width":0.008643617,"height":0.01915403},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Open Query Execution Settings…","depth":4,"bounds":{"left":0.6944814,"top":0.09896249,"width":0.008643617,"height":0.01915403},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"In-Editor Results","depth":4,"bounds":{"left":0.70545214,"top":0.09896249,"width":0.008643617,"height":0.01915403},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Tx: Auto","depth":4,"bounds":{"left":0.71642286,"top":0.09896249,"width":0.024268618,"height":0.01915403},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Cancel Running Statements","depth":4,"bounds":{"left":0.7430186,"top":0.09896249,"width":0.008643617,"height":0.01915403},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Playground","depth":4,"bounds":{"left":0.75398934,"top":0.09896249,"width":0.029587766,"height":0.01915403},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"jiminny","depth":4,"bounds":{"left":0.9587766,"top":0.09896249,"width":0.02825798,"height":0.01915403},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Sync Changes","depth":4,"bounds":{"left":0.27027926,"top":1.0,"width":0.008643617,"height":0.0},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Hide This Notification","depth":4,"bounds":{"left":0.27027926,"top":1.0,"width":0.008643617,"height":0.0},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Code changed:","depth":4,"bounds":{"left":0.27027926,"top":1.0,"width":0.042220745,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Hide","depth":4,"bounds":{"left":0.27027926,"top":1.0,"width":0.008643617,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"18","depth":4,"bounds":{"left":0.9311835,"top":0.123703115,"width":0.009640957,"height":0.015163607},"role_description":"text"},{"role":"AXStaticText","text":"14","depth":4,"bounds":{"left":0.9428192,"top":0.123703115,"width":0.009640957,"height":0.015163607},"role_description":"text"},{"role":"AXStaticText","text":"2","depth":4,"bounds":{"left":0.9544548,"top":0.123703115,"width":0.007978723,"height":0.015163607},"role_description":"text"},{"role":"AXStaticText","text":"4","depth":4,"bounds":{"left":0.9644282,"top":0.123703115,"width":0.007978723,"height":0.015163607},"role_description":"text"},{"role":"AXButton","text":"Previous Highlighted Error","depth":4,"bounds":{"left":0.9740692,"top":0.12210695,"width":0.00731383,"height":0.018355945},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Next Highlighted Error","depth":4,"bounds":{"left":0.98138297,"top":0.12210695,"width":0.006981383,"height":0.018355945},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"SELECT a.id, a.uuid, a.actual_start_time, o.id, o.uuid FROM opportunities o\nJOIN activities a ON o.id = a.opportunity_id\nWHERE a.crm_configuration_id = 39\nAND a.actual_start_time > '2025-10-13'\nAND a.type IN ('conference', 'softphone-inbound', 'softphone-outbound')\n;\n\nSELECT * FROM activities\nWHERE crm_configuration_id = 39 and user_id = 143\nand actual_start_time >= '2025-10-13'\nAND type IN ('conference', 'softphone-inbound', 'softphone-outbound')\n;\n\nSELECT * FROM opportunities WHERE account_id IN (178);\nselect * from activities where id IN (620137, 620187, 620188, 620189, 620230);\n\n# HS\nSELECT * FROM opportunities WHERE id IN (238);\nselect * from activities where id IN (477,2076);\n\nselect * from users;\n\nSELECT COUNT(*) FROM users;\nSELECT COUNT(*) FROM activities;\nSELECT COUNT(*) FROM opportunities;\n\nUPDATE activities\nSET\n actual_start_time = '2025-12-19 09:00:00',\n actual_end_time = '2025-12-19 10:30:00',\n scheduled_start_time = '2025-12-19 09:00:00',\n scheduled_end_time = '2025-12-19 10:30:00'\nWHERE id IN (407509,407375);\n\nselect * from partners;\n\nSELECT id, uuid, type, actual_start_time, user_id, crm_configuration_id\nFROM activities\nWHERE user_id = 143\nAND actual_start_time >= '2025-10-13 00:00:00'\nAND actual_start_time <= '2026-01-13 23:59:59'\nORDER BY actual_start_time DESC;\n\nSELECT * FROM activities WHERE uuid_to_bin('78eda160-3086-435f-88a5-bb0c71b6008d') = uuid;\nSELECT * FROM crm_layouts where crm_configuration_id = 39;\nSELECT * FROM crm_layout_entities WHERE crm_layout_id = 282;\n# lead_id\n# account_id 177\n# contact_id 3969\n# opportunity_id\n# stage_id 203\n\nSELECT * FROM opportunities WHERE opportunities.crm_configuration_id = id = 282;\n\nSELECT * FROM activities where crm_configuration_id = 39 AND type = 'conference'\nAND user_id = 143 and actual_start_time >= '2025-10-13';\n\nSELECT * FROM activities a\n# JOIN opportunities o ON a.opportunity_id = o.id\nWHERE a.crm_configuration_id = 39 AND a.type = 'conference'\nand status = 'completed' and recording_state = 'recorded'\nand a.actual_start_time >= '2025-10-13'\nAND a.user_id = 143\n;\n\nselect * from leads\nwhere crm_configuration_id = 39; # 112 -> ac. 178, 109 => op. 1707\n\nSELECT * FROM activities WHERE id IN (356013,616188,616202,616310,407509,407375,356001,356008);\nSELECT * FROM activities WHERE id IN (356013,616188,616202,616310);\nSELECT * FROM activities WHERE id IN (407509,407375); # leads: 112, 109 | status - 198\nSELECT * FROM activities WHERE id IN (356001, 356008); # contacts:\n\nSELECT * FROM opportunities WHERE id IN (1707);\nSELECT * FROM stages where id IN (204, 198);\nSELECT * FROM opportunities WHERE account_id IN (178);\nSELECT * FROM opportunities WHERE crm_configuration_id = 39 AND created_at > '2025-01-01';\nSELECT * FROM contacts WHERE account_id IN (178); # 4118 Musaibe, 4448 Ceco Personal\n\nSELECT * FROM activities where crm_configuration_id = 39\nAND opportunity_id IS NULL\nAND is_internal = false\nand status = 'completed' and recording_state = 'recorded'\nAND actual_start_time >= '2025-10-13'\nAND (lead_id IS NOT NULL OR contact_id IS NOT NULL OR account_id IS NOT NULL)\n# AND lead_id IN (112, 109)\n;\n\nSELECT * FROM crm_profiles WHERE user_id = 143;\n\nselect * from inboxes; # 212\nselect * from users where id = 143; # 143\nselect * from inbox_email_batches where inbox_id = 212\nand updated_at >= '2026-01-28 00:00:00' order by id desc;\nselect * from inbox_emails where inbox_id = 212\nand batch_id = 95885 order by id desc;\nselect * from email_messages where origin_user_id = 143;\nselect * from activities where user_id = 143 and updated_at >= '2026-01-28 00:00:00';\nselect * from participants where activity_id = 620247;\n\nselect * from crm_profiles where user_id = 143;\n\nSELECT * FROM activities WHERE uuid_to_bin('458cf915-b914-4000-b083-5687b32b2956') = uuid; # 356001\nselect * from transcription where activity_id = 356001; # 6943\nselect * from ai_prompts where transcription_id = 6943;\nSELECT * FROM activity_summary_logs where activity_id = 356001;\n\nSELECT * FROM social_accounts WHERE sociable_id = 143;\n\n# ************************************************************************************\nSELECT * FROM activities WHERE uuid_to_bin('0164a4fb-cb95-454e-9edd-4d804e4999bd') = uuid;\n# 422515 softphone tr. 8100\n\nSELECT * FROM activities WHERE uuid_to_bin('7520add8-8d87-41a5-98e5-fc4edf96f21e') = uuid;\n# 407509 conference tr. 7670 crmId: 00UD1000002J9aTMAS\n\nselect * from ai_prompts where transcription_id IN (8100, 7670);\nselect * from activity_summary_logs where activity_id = 407509;\n\nselect * from sidekick_settings;\nselect * from default_activity_types;\n\nSELECT * FROM contacts WHERE crm_configuration_id = 39 and email = 'm.kogoj@gmx.at';\nSELECT * FROM leads WHERE crm_configuration_id = 39 and email = 'm.kogoj@gmx.at';\n\nSELECT * FROM activity_searches where user_id = 143;\nSELECT * FROM groups where team_id = 1;\n\nselect * from teams where id = 1;\nselect * from groups where team_id = 1; # 1150 - 7e75f8025c22\nselect id, name, group_id, status, deleted_at, email\nfrom users where team_id = 1 order by group_id desc ;\n\nselect * from activity_searches where id in (1977, 1978, 1979);\nselect * from activity_search_filters where activity_search_id IN (1977, 1978, 1979);\nselect * from activity_search_filters where filter = 'group_id' and value = '443f26b8-8512-437e-a9f9-7e75f8025c22'; # 10268, 10272, 10277\nselect * from nudges where activity_search_id IN (1977, 1978, 1979); # 877, 878, 879\n\nINSERT INTO `activity_search_filters`\n(`activity_search_id`, `filter`, `value`) VALUES\n(1977, 'group_id', '443f26b8-8512-437e-a9f9-7e75f8025c22'),\n(1978, 'group_id', '443f26b8-8512-437e-a9f9-7e75f8025c22'),\n(1979, 'group_id', '443f26b8-8512-437e-a9f9-7e75f8025c22')\n;\n\nselect * from crm_configurations where id = 39;\n\n\nselect sa.* from users u JOIN social_accounts sa on u.id = sa.sociable_id\nwhere u.team_id = 1;\nSELECT * FROM social_accounts WHERE sociable_id = 1635;\nSELECT * FROM users WHERE id = 1635;\n\nselect * from teams where id = 1;\nselect * from users where team_id = 1;\nselect * from team_features where team_id = 1;\nselect * from features;\n\nSELECT * FROM activity_searches where id = 1982; # 1981\nSELECT * FROM activity_search_filters WHERE activity_search_id = 1982;\n\nSELECT * FROM automated_reports where id = 69;\nUPDATE automated_reports set playbook_categories = NULL where id = 68;\nSELECT * FROM automated_report_results where id = 275;\n\nSELECT * FROM automated_reports order by id desc;\nSELECT * FROM automated_report_results order by id desc;\nselect * from activity_searches where user_id = 143;\nselect * from ask_anything_prompts;\n\nSELECT * FROM groups WHERE id = 1439;\nSELECT * FROM users WHERE group_id = 1439;\n\nselect * from permissions; # 158\nselect * from roles;\nselect * from permission_role\n\nselect * from teams where id = 1;\nselect * from groups g JOIN playbooks p on g.playbook_id = p.id where g.team_id = 1;\nselect * from groups where id = 28;\nselect * from playbooks where team_id = 1;\nselect * from playbooks where id = 179;\nselect * from playbook_categories where id = 1391;\nselect * from users where id = 143;\nselect * from crm_profiles where user_id = 143;\nselect * from activities where crm_configuration_id = 39 and type = 'conference'\nand crm_provider_id IS NOT NULL ORDER by id desc;\nselect * from activities where id = 422003; # 00UO400000pB6fpMAC\n\nSELECT ar.id, ar.uuid, ar.media_type, ar.status, a.type\nFROM automated_report_results ar\nJOIN automated_reports a ON a.id = ar.report_id\nWHERE a.type = 'ask_jiminny'\nLIMIT 10;\n\nSELECT `automated_report_results`.* FROM `automated_report_results`\nINNER JOIN `automated_reports`\n ON `automated_report_results`.`report_id` = `automated_reports`.`id`\nWHERE `automated_report_results`.`generated_at` IS NOT NULL\n AND `automated_reports`.`team_id` = 1\n AND JSON_CONTAINS(`automated_reports`.`recipients`, 1635, '$.\"users\"')\n;\n\n\nselect * from teams where id = 3143;\nselect * from crm_configurations where id = 500;\nselect * from users where name = 'Integration Account'; # 1695\nSELECT * FROM social_accounts WHERE sociable_id = 1695;\n\nselect * from activities where crm_configuration_id = 39\nand recording_state = 'recorded' and duration > 60\nand status = 'completed' and actual_start_time >= '2025-12-01';\n\nSELECT * FROM activities WHERE uuid_to_bin('458cf915-b914-4000-b083-5687b32b2956') = uuid;\n\nselect * from leads;","depth":4,"value":"SELECT a.id, a.uuid, a.actual_start_time, o.id, o.uuid FROM opportunities o\nJOIN activities a ON o.id = a.opportunity_id\nWHERE a.crm_configuration_id = 39\nAND a.actual_start_time > '2025-10-13'\nAND a.type IN ('conference', 'softphone-inbound', 'softphone-outbound')\n;\n\nSELECT * FROM activities\nWHERE crm_configuration_id = 39 and user_id = 143\nand actual_start_time >= '2025-10-13'\nAND type IN ('conference', 'softphone-inbound', 'softphone-outbound')\n;\n\nSELECT * FROM opportunities WHERE account_id IN (178);\nselect * from activities where id IN (620137, 620187, 620188, 620189, 620230);\n\n# HS\nSELECT * FROM opportunities WHERE id IN (238);\nselect * from activities where id IN (477,2076);\n\nselect * from users;\n\nSELECT COUNT(*) FROM users;\nSELECT COUNT(*) FROM activities;\nSELECT COUNT(*) FROM opportunities;\n\nUPDATE activities\nSET\n actual_start_time = '2025-12-19 09:00:00',\n actual_end_time = '2025-12-19 10:30:00',\n scheduled_start_time = '2025-12-19 09:00:00',\n scheduled_end_time = '2025-12-19 10:30:00'\nWHERE id IN (407509,407375);\n\nselect * from partners;\n\nSELECT id, uuid, type, actual_start_time, user_id, crm_configuration_id\nFROM activities\nWHERE user_id = 143\nAND actual_start_time >= '2025-10-13 00:00:00'\nAND actual_start_time <= '2026-01-13 23:59:59'\nORDER BY actual_start_time DESC;\n\nSELECT * FROM activities WHERE uuid_to_bin('78eda160-3086-435f-88a5-bb0c71b6008d') = uuid;\nSELECT * FROM crm_layouts where crm_configuration_id = 39;\nSELECT * FROM crm_layout_entities WHERE crm_layout_id = 282;\n# lead_id\n# account_id 177\n# contact_id 3969\n# opportunity_id\n# stage_id 203\n\nSELECT * FROM opportunities WHERE opportunities.crm_configuration_id = id = 282;\n\nSELECT * FROM activities where crm_configuration_id = 39 AND type = 'conference'\nAND user_id = 143 and actual_start_time >= '2025-10-13';\n\nSELECT * FROM activities a\n# JOIN opportunities o ON a.opportunity_id = o.id\nWHERE a.crm_configuration_id = 39 AND a.type = 'conference'\nand status = 'completed' and recording_state = 'recorded'\nand a.actual_start_time >= '2025-10-13'\nAND a.user_id = 143\n;\n\nselect * from leads\nwhere crm_configuration_id = 39; # 112 -> ac. 178, 109 => op. 1707\n\nSELECT * FROM activities WHERE id IN (356013,616188,616202,616310,407509,407375,356001,356008);\nSELECT * FROM activities WHERE id IN (356013,616188,616202,616310);\nSELECT * FROM activities WHERE id IN (407509,407375); # leads: 112, 109 | status - 198\nSELECT * FROM activities WHERE id IN (356001, 356008); # contacts:\n\nSELECT * FROM opportunities WHERE id IN (1707);\nSELECT * FROM stages where id IN (204, 198);\nSELECT * FROM opportunities WHERE account_id IN (178);\nSELECT * FROM opportunities WHERE crm_configuration_id = 39 AND created_at > '2025-01-01';\nSELECT * FROM contacts WHERE account_id IN (178); # 4118 Musaibe, 4448 Ceco Personal\n\nSELECT * FROM activities where crm_configuration_id = 39\nAND opportunity_id IS NULL\nAND is_internal = false\nand status = 'completed' and recording_state = 'recorded'\nAND actual_start_time >= '2025-10-13'\nAND (lead_id IS NOT NULL OR contact_id IS NOT NULL OR account_id IS NOT NULL)\n# AND lead_id IN (112, 109)\n;\n\nSELECT * FROM crm_profiles WHERE user_id = 143;\n\nselect * from inboxes; # 212\nselect * from users where id = 143; # 143\nselect * from inbox_email_batches where inbox_id = 212\nand updated_at >= '2026-01-28 00:00:00' order by id desc;\nselect * from inbox_emails where inbox_id = 212\nand batch_id = 95885 order by id desc;\nselect * from email_messages where origin_user_id = 143;\nselect * from activities where user_id = 143 and updated_at >= '2026-01-28 00:00:00';\nselect * from participants where activity_id = 620247;\n\nselect * from crm_profiles where user_id = 143;\n\nSELECT * FROM activities WHERE uuid_to_bin('458cf915-b914-4000-b083-5687b32b2956') = uuid; # 356001\nselect * from transcription where activity_id = 356001; # 6943\nselect * from ai_prompts where transcription_id = 6943;\nSELECT * FROM activity_summary_logs where activity_id = 356001;\n\nSELECT * FROM social_accounts WHERE sociable_id = 143;\n\n# ************************************************************************************\nSELECT * FROM activities WHERE uuid_to_bin('0164a4fb-cb95-454e-9edd-4d804e4999bd') = uuid;\n# 422515 softphone tr. 8100\n\nSELECT * FROM activities WHERE uuid_to_bin('7520add8-8d87-41a5-98e5-fc4edf96f21e') = uuid;\n# 407509 conference tr. 7670 crmId: 00UD1000002J9aTMAS\n\nselect * from ai_prompts where transcription_id IN (8100, 7670);\nselect * from activity_summary_logs where activity_id = 407509;\n\nselect * from sidekick_settings;\nselect * from default_activity_types;\n\nSELECT * FROM contacts WHERE crm_configuration_id = 39 and email = 'm.kogoj@gmx.at';\nSELECT * FROM leads WHERE crm_configuration_id = 39 and email = 'm.kogoj@gmx.at';\n\nSELECT * FROM activity_searches where user_id = 143;\nSELECT * FROM groups where team_id = 1;\n\nselect * from teams where id = 1;\nselect * from groups where team_id = 1; # 1150 - 7e75f8025c22\nselect id, name, group_id, status, deleted_at, email\nfrom users where team_id = 1 order by group_id desc ;\n\nselect * from activity_searches where id in (1977, 1978, 1979);\nselect * from activity_search_filters where activity_search_id IN (1977, 1978, 1979);\nselect * from activity_search_filters where filter = 'group_id' and value = '443f26b8-8512-437e-a9f9-7e75f8025c22'; # 10268, 10272, 10277\nselect * from nudges where activity_search_id IN (1977, 1978, 1979); # 877, 878, 879\n\nINSERT INTO `activity_search_filters`\n(`activity_search_id`, `filter`, `value`) VALUES\n(1977, 'group_id', '443f26b8-8512-437e-a9f9-7e75f8025c22'),\n(1978, 'group_id', '443f26b8-8512-437e-a9f9-7e75f8025c22'),\n(1979, 'group_id', '443f26b8-8512-437e-a9f9-7e75f8025c22')\n;\n\nselect * from crm_configurations where id = 39;\n\n\nselect sa.* from users u JOIN social_accounts sa on u.id = sa.sociable_id\nwhere u.team_id = 1;\nSELECT * FROM social_accounts WHERE sociable_id = 1635;\nSELECT * FROM users WHERE id = 1635;\n\nselect * from teams where id = 1;\nselect * from users where team_id = 1;\nselect * from team_features where team_id = 1;\nselect * from features;\n\nSELECT * FROM activity_searches where id = 1982; # 1981\nSELECT * FROM activity_search_filters WHERE activity_search_id = 1982;\n\nSELECT * FROM automated_reports where id = 69;\nUPDATE automated_reports set playbook_categories = NULL where id = 68;\nSELECT * FROM automated_report_results where id = 275;\n\nSELECT * FROM automated_reports order by id desc;\nSELECT * FROM automated_report_results order by id desc;\nselect * from activity_searches where user_id = 143;\nselect * from ask_anything_prompts;\n\nSELECT * FROM groups WHERE id = 1439;\nSELECT * FROM users WHERE group_id = 1439;\n\nselect * from permissions; # 158\nselect * from roles;\nselect * from permission_role\n\nselect * from teams where id = 1;\nselect * from groups g JOIN playbooks p on g.playbook_id = p.id where g.team_id = 1;\nselect * from groups where id = 28;\nselect * from playbooks where team_id = 1;\nselect * from playbooks where id = 179;\nselect * from playbook_categories where id = 1391;\nselect * from users where id = 143;\nselect * from crm_profiles where user_id = 143;\nselect * from activities where crm_configuration_id = 39 and type = 'conference'\nand crm_provider_id IS NOT NULL ORDER by id desc;\nselect * from activities where id = 422003; # 00UO400000pB6fpMAC\n\nSELECT ar.id, ar.uuid, ar.media_type, ar.status, a.type\nFROM automated_report_results ar\nJOIN automated_reports a ON a.id = ar.report_id\nWHERE a.type = 'ask_jiminny'\nLIMIT 10;\n\nSELECT `automated_report_results`.* FROM `automated_report_results`\nINNER JOIN `automated_reports`\n ON `automated_report_results`.`report_id` = `automated_reports`.`id`\nWHERE `automated_report_results`.`generated_at` IS NOT NULL\n AND `automated_reports`.`team_id` = 1\n AND JSON_CONTAINS(`automated_reports`.`recipients`, 1635, '$.\"users\"')\n;\n\n\nselect * from teams where id = 3143;\nselect * from crm_configurations where id = 500;\nselect * from users where name = 'Integration Account'; # 1695\nSELECT * FROM social_accounts WHERE sociable_id = 1695;\n\nselect * from activities where crm_configuration_id = 39\nand recording_state = 'recorded' and duration > 60\nand status = 'completed' and actual_start_time >= '2025-12-01';\n\nSELECT * FROM activities WHERE uuid_to_bin('458cf915-b914-4000-b083-5687b32b2956') = uuid;\n\nselect * from leads;","role_description":"text entry area","is_enabled":true,"is_focused":true,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Project","depth":3,"role_description":"text"},{"role":"AXButton","text":"Project","depth":3,"bounds":{"left":0.24401596,"top":0.047885075,"width":0.024268618,"height":0.024740623},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"New File or Directory…","depth":4,"bounds":{"left":0.27027926,"top":1.0,"width":0.008643617,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Expand Selected","depth":4,"bounds":{"left":0.27027926,"top":1.0,"width":0.008643617,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Collapse All","depth":4,"bounds":{"left":0.27027926,"top":1.0,"width":0.008643617,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Options","depth":4,"bounds":{"left":0.27027926,"top":1.0,"width":0.008643617,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Hide","depth":4,"bounds":{"left":0.27027926,"top":1.0,"width":0.008643617,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false}]...
|
-9000098260144748274
|
-2536901465727692211
|
visual_change
|
accessibility
|
NULL
|
Project: faVsco.js, menu
JY-20157-AJ-report-not-se Project: faVsco.js, menu
JY-20157-AJ-report-not-send-notification, menu
Start Listening for PHP Debug Connections
AskJiminnyReportActivityServiceTest
Run 'AskJiminnyReportActivityServiceTest'
Debug 'AskJiminnyReportActivityServiceTest'
More Actions
JetBrains AI
Search Everywhere
IDE and Project Settings
Code changed:
Hide
Sync Changes
Hide This Notification
1
3
3
Previous Highlighted Error
Next Highlighted Error
<?php
declare(strict_types=1);
namespace Jiminny\Jobs\AutomatedReports;
use Carbon\Carbon;
use Illuminate\Bus\Queueable;
use Illuminate\Contracts\Queue\ShouldBeUnique;
use Illuminate\Contracts\Queue\ShouldQueue;
use Illuminate\Contracts\Routing\UrlGenerator;
use Illuminate\Queue\InteractsWithQueue;
use Jiminny\Component\ProphetAi\Exceptions\ProphetException;
use Jiminny\Component\ProphetAi\ProphetClient;
use Jiminny\Component\Queue\Constants;
use Jiminny\Jobs\JobDispatcherInterface;
use Jiminny\Models\AutomatedReport;
use Jiminny\Models\AutomatedReportResult;
use Jiminny\Models\Team;
use Jiminny\Services\Kiosk\AutomatedReports\AskJiminnyReportActivityService;
use Jiminny\Services\Kiosk\AutomatedReports\AutomatedReportsService;
use Psr\Log\LoggerInterface;
use Throwable;
class RequestGenerateAskJiminnyReportJob implements ShouldQueue, ShouldBeUnique
{
use InteractsWithQueue;
use Queueable;
private const string LOG_PREFIX = '[AskJiminnyReport:Generate]';
private const int MIN_ACTIVITIES_COUNT = 1;
public int $tries = 2;
private ?AutomatedReportResult $reportResult = null;
public function __construct(private readonly string $reportUuid)
{
$this->onQueue(Constants::QUEUE_ANALYTICS);
}
public function uniqueId(): string
{
return $this->reportUuid;
}
public function handle(
AutomatedReportsService $reportService,
AskJiminnyReportActivityService $activityService,
ProphetClient $prophetClient,
LoggerInterface $logger,
UrlGenerator $urlGenerator,
JobDispatcherInterface $jobDispatcher,
): void {
$logger->info(self::LOG_PREFIX . ' Started', [
'automatedReportUuid' => $this->reportUuid,
]);
try {
$automatedReport = $reportService->getReport($this->reportUuid);
$this->dispatchNotGeneratedNotifications(
$automatedReport,
$reportService,
$urlGenerator,
$jobDispatcher,
$logger,
);
return;
if (! $this->validateReport($automatedReport, $logger)) {
return;
}
$creator = $automatedReport->getCreator();
if ($creator === null) {
$logger->warning(self::LOG_PREFIX . ' Skipped, report creator not found', [
'automatedReportUuid' => $this->reportUuid,
]);
return;
}
$savedSearch = $automatedReport->getSavedSearch();
if ($savedSearch === null) {
$logger->warning(self::LOG_PREFIX . ' Skipped, saved search not found', [
'automatedReportUuid' => $this->reportUuid,
]);
return;
}
$prompt = $automatedReport->getAskAnythingPrompt();
if ($prompt === null) {
$logger->warning(self::LOG_PREFIX . ' Skipped, ask anything prompt not found', [
'automatedReportUuid' => $this->reportUuid,
]);
return;
}
$this->reportResult = $reportService->getOrCreateReportResult(
automatedReport: $automatedReport,
data: [
'status' => AutomatedReportResult::STATUS_DEFAULT,
'media_type' => AutomatedReportsService::MEDIA_TYPE_PDF,
]
);
$activityIds = $activityService->getActivityIdsForSavedSearch(
savedSearch: $savedSearch,
user: $creator,
frequency: $automatedReport->getFrequency(),
);
$logger->info(self::LOG_PREFIX . ' Fetched activity IDs', [
'automatedReportUuid' => $this->reportUuid,
'activityCount' => count($activityIds),
]);
if (count($activityIds) < self::MIN_ACTIVITIES_COUNT) {
$this->failReport(AutomatedReportResult::REASON_NOT_ENOUGH_ACTIVITIES);
$logger->info(self::LOG_PREFIX . ' Not enough activities, skipped', [
'automatedReportUuid' => $this->reportUuid,
'activityCount' => count($activityIds),
]);
$this->dispatchNotGeneratedNotifications(
$automatedReport,
$reportService,
$urlGenerator,
$jobDispatcher,
$logger,
);
return;
}
$payload = $reportService->getAskJiminnyGenerateReportPayload(
automatedReport: $automatedReport,
reportResult: $this->reportResult,
activityIds: $activityIds,
);
$this->reportResult->update([
'name' => $reportService->getReportFileName($this->reportResult),
'payload' => $payload,
'status' => AutomatedReportResult::STATUS_REQUESTED,
'requested_at' => Carbon::now()->toDateTimeString(),
]);
$logger->info(self::LOG_PREFIX . ' Request sent', [
'automatedReportUuid' => $this->reportUuid,
'reportUuid' => $this->reportResult->getUuid(),
'payload' => $payload,
]);
$response = $prophetClient->sendRequest(
endpoint: ProphetClient::ASK_JIMINNY_REPORT,
requestArray: $payload,
);
$logger->info(self::LOG_PREFIX . ' Response received', [
'response' => $response->getContent(),
]);
} catch (Throwable $exception) {
$reason = $exception instanceof ProphetException
? AutomatedReportResult::REASON_PROPHET_API_ERROR
: AutomatedReportResult::REASON_DEFAULT;
$this->failReport($reason);
$logger->error(self::LOG_PREFIX . ' Error', [
'automatedReportUuid' => $this->reportUuid,
'reportUuid' => $this->reportResult?->getUuid(),
'code' => $exception->getCode(),
'message' => $exception->getMessage(),
]);
if ($this->attempts() < $this->tries) {
$logger->info(self::LOG_PREFIX . ' Retry scheduled', [
'attempts' => $this->attempts(),
]);
$this->release(30);
} else {
$this->fail($exception);
}
}
}
private function validateReport(AutomatedReport $automatedReport, LoggerInterface $logger): bool
{
if ($automatedReport->getType() !== AutomatedReportsService::TYPE_ASK_JIMINNY) {
$logger->warning(self::LOG_PREFIX . ' Skipped, not an ask_jiminny report', [
'automatedReportUuid' => $this->reportUuid,
'type' => $automatedReport->getType(),
]);
return false;
}
if (! $automatedReport->getStatus()) {
$logger->info(self::LOG_PREFIX . ' Skipped, report is not active', [
'automatedReportUuid' => $this->reportUuid,
]);
return false;
}
if ($automatedReport->getTeam()->getStatus() !== Team::STATUS_ACTIVE) {
$logger->info(self::LOG_PREFIX . ' Skipped, team is inactive', [
'automatedReportUuid' => $this->reportUuid,
]);
return false;
}
return true;
}
private function failReport(int $reason): void
{
$this->reportResult?->update([
'status' => AutomatedReportResult::STATUS_FAILED,
'reason' => $reason,
]);
}
private function dispatchNotGeneratedNotifications(
AutomatedReport $automatedReport,
AutomatedReportsService $reportService,
UrlGenerator $urlGenerator,
JobDispatcherInterface $jobDispatcher,
LoggerInterface $logger,
): void {
if ($this->reportResult === null) {
return;
}
$recipients = $reportService->getValidRecipientUsers($automatedReport);
if (empty($recipients)) {
$logger->info(self::LOG_PREFIX . ' No recipients to notify about missing report', [
'automatedReportUuid' => $this->reportUuid,
]);
return;
}
$reportName = $automatedReport->getCustomName()
?: $reportService->getReportTypeName($this->reportResult);
$periodName = $reportService->getReportPeriodName($this->reportResult);
$reportsPageUrl = $urlGenerator->route('ai.reports.show');
foreach ($recipients as $recipient) {
$jobDispatcher->dispatch(new SendReportNotGeneratedMailJob(
reportUuid: $this->reportResult->getUuid(),
recipientEmail: $recipient['email'],
recipientName: $recipient['name'] ?? null,
reportName: $reportName,
periodName: $periodName,
reportsPageUrl: $reportsPageUrl,
));
}
$logger->info(self::LOG_PREFIX . ' Dispatched not-generated notifications', [
'automatedReportUuid' => $this->reportUuid,
'recipientsCount' => count($recipients),
]);
}
}
Execute
Explain Plan
Browse Query History
View Parameters
Open Query Execution Settings…
In-Editor Results
Tx: Auto
Cancel Running Statements
Playground
jiminny
Sync Changes
Hide This Notification
Code changed:
Hide
18
14
2
4
Previous Highlighted Error
Next Highlighted Error
SELECT a.id, a.uuid, a.actual_start_time, o.id, o.uuid FROM opportunities o
JOIN activities a ON o.id = a.opportunity_id
WHERE a.crm_configuration_id = 39
AND a.actual_start_time > '2025-10-13'
AND a.type IN ('conference', 'softphone-inbound', 'softphone-outbound')
;
SELECT * FROM activities
WHERE crm_configuration_id = 39 and user_id = 143
and actual_start_time >= '2025-10-13'
AND type IN ('conference', 'softphone-inbound', 'softphone-outbound')
;
SELECT * FROM opportunities WHERE account_id IN (178);
select * from activities where id IN (620137, 620187, 620188, 620189, 620230);
# HS
SELECT * FROM opportunities WHERE id IN (238);
select * from activities where id IN (477,2076);
select * from users;
SELECT COUNT(*) FROM users;
SELECT COUNT(*) FROM activities;
SELECT COUNT(*) FROM opportunities;
UPDATE activities
SET
actual_start_time = '2025-12-19 09:00:00',
actual_end_time = '2025-12-19 10:30:00',
scheduled_start_time = '2025-12-19 09:00:00',
scheduled_end_time = '2025-12-19 10:30:00'
WHERE id IN (407509,407375);
select * from partners;
SELECT id, uuid, type, actual_start_time, user_id, crm_configuration_id
FROM activities
WHERE user_id = 143
AND actual_start_time >= '2025-10-13 00:00:00'
AND actual_start_time <= '2026-01-13 23:59:59'
ORDER BY actual_start_time DESC;
SELECT * FROM activities WHERE uuid_to_bin('78eda160-3086-435f-88a5-bb0c71b6008d') = uuid;
SELECT * FROM crm_layouts where crm_configuration_id = 39;
SELECT * FROM crm_layout_entities WHERE crm_layout_id = 282;
# lead_id
# account_id 177
# contact_id 3969
# opportunity_id
# stage_id 203
SELECT * FROM opportunities WHERE opportunities.crm_configuration_id = id = 282;
SELECT * FROM activities where crm_configuration_id = 39 AND type = 'conference'
AND user_id = 143 and actual_start_time >= '2025-10-13';
SELECT * FROM activities a
# JOIN opportunities o ON a.opportunity_id = o.id
WHERE a.crm_configuration_id = 39 AND a.type = 'conference'
and status = 'completed' and recording_state = 'recorded'
and a.actual_start_time >= '2025-10-13'
AND a.user_id = 143
;
select * from leads
where crm_configuration_id = 39; # 112 -> ac. 178, 109 => op. 1707
SELECT * FROM activities WHERE id IN (356013,616188,616202,616310,407509,407375,356001,356008);
SELECT * FROM activities WHERE id IN (356013,616188,616202,616310);
SELECT * FROM activities WHERE id IN (407509,407375); # leads: 112, 109 | status - 198
SELECT * FROM activities WHERE id IN (356001, 356008); # contacts:
SELECT * FROM opportunities WHERE id IN (1707);
SELECT * FROM stages where id IN (204, 198);
SELECT * FROM opportunities WHERE account_id IN (178);
SELECT * FROM opportunities WHERE crm_configuration_id = 39 AND created_at > '2025-01-01';
SELECT * FROM contacts WHERE account_id IN (178); # 4118 Musaibe, 4448 Ceco Personal
SELECT * FROM activities where crm_configuration_id = 39
AND opportunity_id IS NULL
AND is_internal = false
and status = 'completed' and recording_state = 'recorded'
AND actual_start_time >= '2025-10-13'
AND (lead_id IS NOT NULL OR contact_id IS NOT NULL OR account_id IS NOT NULL)
# AND lead_id IN (112, 109)
;
SELECT * FROM crm_profiles WHERE user_id = 143;
select * from inboxes; # 212
select * from users where id = 143; # 143
select * from inbox_email_batches where inbox_id = 212
and updated_at >= '2026-01-28 00:00:00' order by id desc;
select * from inbox_emails where inbox_id = 212
and batch_id = 95885 order by id desc;
select * from email_messages where origin_user_id = 143;
select * from activities where user_id = 143 and updated_at >= '2026-01-28 00:00:00';
select * from participants where activity_id = 620247;
select * from crm_profiles where user_id = 143;
SELECT * FROM activities WHERE uuid_to_bin('458cf915-b914-4000-b083-5687b32b2956') = uuid; # 356001
select * from transcription where activity_id = 356001; # 6943
select * from ai_prompts where transcription_id = 6943;
SELECT * FROM activity_summary_logs where activity_id = 356001;
SELECT * FROM social_accounts WHERE sociable_id = 143;
# [PASSWORD_DOTS]
SELECT * FROM activities WHERE uuid_to_bin('0164a4fb-cb95-454e-9edd-4d804e4999bd') = uuid;
# 422515 softphone tr. 8100
SELECT * FROM activities WHERE uuid_to_bin('7520add8-8d87-41a5-98e5-fc4edf96f21e') = uuid;
# 407509 conference tr. 7670 crmId: 00UD1000002J9aTMAS
select * from ai_prompts where transcription_id IN (8100, 7670);
select * from activity_summary_logs where activity_id = 407509;
select * from sidekick_settings;
select * from default_activity_types;
SELECT * FROM contacts WHERE crm_configuration_id = 39 and email = '[EMAIL]';
SELECT * FROM leads WHERE crm_configuration_id = 39 and email = '[EMAIL]';
SELECT * FROM activity_searches where user_id = 143;
SELECT * FROM groups where team_id = 1;
select * from teams where id = 1;
select * from groups where team_id = 1; # 1150 - 7e75f8025c22
select id, name, group_id, status, deleted_at, email
from users where team_id = 1 order by group_id desc ;
select * from activity_searches where id in (1977, 1978, 1979);
select * from activity_search_filters where activity_search_id IN (1977, 1978, 1979);
select * from activity_search_filters where filter = 'group_id' and value = '443f26b8-8512-437e-a9f9-7e75f8025c22'; # 10268, 10272, 10277
select * from nudges where activity_search_id IN (1977, 1978, 1979); # 877, 878, 879
INSERT INTO `activity_search_filters`
(`activity_search_id`, `filter`, `value`) VALUES
(1977, 'group_id', '443f26b8-8512-437e-a9f9-7e75f8025c22'),
(1978, 'group_id', '443f26b8-8512-437e-a9f9-7e75f8025c22'),
(1979, 'group_id', '443f26b8-8512-437e-a9f9-7e75f8025c22')
;
select * from crm_configurations where id = 39;
select sa.* from users u JOIN social_accounts sa on u.id = sa.sociable_id
where u.team_id = 1;
SELECT * FROM social_accounts WHERE sociable_id = 1635;
SELECT * FROM users WHERE id = 1635;
select * from teams where id = 1;
select * from users where team_id = 1;
select * from team_features where team_id = 1;
select * from features;
SELECT * FROM activity_searches where id = 1982; # 1981
SELECT * FROM activity_search_filters WHERE activity_search_id = 1982;
SELECT * FROM automated_reports where id = 69;
UPDATE automated_reports set playbook_categories = NULL where id = 68;
SELECT * FROM automated_report_results where id = 275;
SELECT * FROM automated_reports order by id desc;
SELECT * FROM automated_report_results order by id desc;
select * from activity_searches where user_id = 143;
select * from ask_anything_prompts;
SELECT * FROM groups WHERE id = 1439;
SELECT * FROM users WHERE group_id = 1439;
select * from permissions; # 158
select * from roles;
select * from permission_role
select * from teams where id = 1;
select * from groups g JOIN playbooks p on g.playbook_id = p.id where g.team_id = 1;
select * from groups where id = 28;
select * from playbooks where team_id = 1;
select * from playbooks where id = 179;
select * from playbook_categories where id = 1391;
select * from users where id = 143;
select * from crm_profiles where user_id = 143;
select * from activities where crm_configuration_id = 39 and type = 'conference'
and crm_provider_id IS NOT NULL ORDER by id desc;
select * from activities where id = 422003; # 00UO400000pB6fpMAC
SELECT ar.id, ar.uuid, ar.media_type, ar.status, a.type
FROM automated_report_results ar
JOIN automated_reports a ON a.id = ar.report_id
WHERE a.type = 'ask_jiminny'
LIMIT 10;
SELECT `automated_report_results`.* FROM `automated_report_results`
INNER JOIN `automated_reports`
ON `automated_report_results`.`report_id` = `automated_reports`.`id`
WHERE `automated_report_results`.`generated_at` IS NOT NULL
AND `automated_reports`.`team_id` = 1
AND JSON_CONTAINS(`automated_reports`.`recipients`, 1635, '$."users"')
;
select * from teams where id = 3143;
select * from crm_configurations where id = 500;
select * from users where name = 'Integration Account'; # 1695
SELECT * FROM social_accounts WHERE sociable_id = 1695;
select * from activities where crm_configuration_id = 39
and recording_state = 'recorded' and duration > 60
and status = 'completed' and actual_start_time >= '2025-12-01';
SELECT * FROM activities WHERE uuid_to_bin('458cf915-b914-4000-b083-5687b32b2956') = uuid;
select * from leads;
Project
Project
New File or Directory…
Expand Selected
Collapse All
Options
Hide...
|
NULL
|
|
72685
|
1772
|
23
|
2026-04-22T16:03:57.465713+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-22/1776 /Users/lukas/.screenpipe/data/data/2026-04-22/1776873837465_m1.jpg...
|
QuickTime Player
|
compact_monitor_2_1776785731509.mp4
|
1
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
(JY-20372] Al Reports » Empty p
M Jiminny Mail
© P (JY-20372] Al Reports » Empty p
M Jiminny Mail
© Pipelines - minnylapp
• Formalre
(SRO-6793) Les Mils activty type
New Too
bookmarks
Profiles
Tools
Window
Help
app.staging.jiminny.com/al-reports
Al Reports
Q
目
NAME 수
Share With Team Test - Mar 2026
Only Recorded Monthly - Ves Calls - Mar 2026
Only Recorded Monthly - Ves Calls - Mar 2026
Onlv Recorded Monthly • Vec Calls - Mar 2026
Only Recorded Monthly - Ves Calls - Mar 2026
Expires On - 20 April - New - 13 - 19 Apr 2026
Exoires On - 20 April - New - 13 - 19 Aor 2026
Expires On - 20 April - New - 13 - 19 Apr 2026
Hes5・0515Anr2026
Test 6 - 15 Apr 2026
Test 500707
Ask Jiminny Test Report - 15 Apr 2026
Request falled with status code 503
ed-reports-ask-iminm = 874522
© Clear all
Coaching Protiles
Product Feedback *
FREQUENCY
Monthly
Monthly
Monthly
Monthly
Monthly
Monthly
Monthly
Monthly
Monthly
Weekly
Daily
Daily
Daily
Daily
Daily
Owe
EWS
Ows
DATE +
21/04/2026
2704/20261
21/04/2026
21/04/2026
21/04/2026
707047076
20/04/2026
20/04/2026
20/04/2026
16/04/2026
16/04/2026
16/04/2026
14/04/2026
E3 Ask Jiminny reports
$ 0
印
GO Inspector
因 congole
Debugger
↑ Natwork
() Style Editor
Performance
O Momory »
Aa HTML CSS
603
200
GET
Atloge-in.com
A app staging iminny.
Arlogi-in.com
exat/pistform-stagingSe=6-01900076-935d-7 xhr
automated-reportatpage: 18sort_columnegenerated shr
Taponxat/platform-stagings+6-019d6076-9356-3 shr
Tue 21 Apr 18:23:56
090- • ** X
08 (m
ACTIONS
이 300m
Analyse Image
rewind
play/pause
fast forward
More Controls
toggle full screen
show external playback menu
show external playback menu
show media selection menu
toggle picture-in-picture playback
show action menu
share
show chapter menu
zoom
zoom
playback speed
03:48
toggle elapsed time, timecode and framecount
05:19
toggle duration and remaining time
document actions
compact_monitor_2_1776785731509.mp4...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"(JY-20372] Al Reports » Empty p","depth":2,"bounds":{"left":0.004360475,"top":0.17638889,"width":0.06686045,"height":0.0075},"value":"(JY-20372] Al Reports » Empty p","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"M Jiminny Mail","depth":2,"bounds":{"left":0.004360468,"top":0.28597948,"width":0.030523252,"height":0.0070760744},"value":"M Jiminny Mail","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"© Pipelines - minnylapp","depth":2,"bounds":{"left":0.0043604644,"top":0.3696032,"width":0.049418606,"height":0.011785715},"value":"© Pipelines - minnylapp","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"• Formalre","depth":2,"bounds":{"left":0.005813955,"top":0.39283198,"width":0.02616279,"height":0.009390243},"value":"• Formalre","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"(SRO-6793) Les Mils activty type","depth":2,"bounds":{"left":0.005813952,"top":0.4137379,"width":0.068313956,"height":0.011817654},"value":"(SRO-6793) Les Mils activty type","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"New Too","depth":2,"bounds":{"left":0.005813953,"top":0.5043302,"width":0.021802325,"height":0.0046457606},"value":"New Too","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"bookmarks","depth":2,"bounds":{"left":0.10465116,"top":0.08853465,"width":0.0247093,"height":0.00464576},"value":"bookmarks","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"Profiles\nTools\nWindow\nHelp\napp.staging.jiminny.com/al-reports","depth":2,"bounds":{"left":0.11918605,"top":0.08388889,"width":0.093023255,"height":0.030197445},"value":"Profiles\nTools\nWindow\nHelp\napp.staging.jiminny.com/al-reports","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"Al Reports","depth":2,"bounds":{"left":0.10755814,"top":0.13034649,"width":0.034883723,"height":0.0139372805},"value":"Al Reports","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"Q","depth":2,"bounds":{"left":0.08430233,"top":0.1651897,"width":0.010174419,"height":0.016260162},"value":"Q","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"目","depth":2,"bounds":{"left":0.08575582,"top":0.33011422,"width":0.00872093,"height":0.013937281},"value":"目","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"NAME 수","depth":2,"bounds":{"left":0.10755814,"top":0.22790748,"width":0.023255814,"height":0.01181475},"value":"NAME 수","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"Share With Team Test - Mar 2026","depth":2,"bounds":{"left":0.12063953,"top":0.26472223,"width":0.072674416,"height":0.011965738},"value":"Share With Team Test - Mar 2026","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"Only Recorded Monthly - Ves Calls - Mar 2026","depth":2,"bounds":{"left":0.12063954,"top":0.29972222,"width":0.09883721,"height":0.005},"value":"Only Recorded Monthly - Ves Calls - Mar 2026","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"Only Recorded Monthly - Ves Calls - Mar 2026","depth":2,"bounds":{"left":0.12063954,"top":0.32779133,"width":0.100290686,"height":0.011930894},"value":"Only Recorded Monthly - Ves Calls - Mar 2026","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"Onlv Recorded Monthly • Vec Calls - Mar 2026","depth":2,"bounds":{"left":0.12063954,"top":0.36222222,"width":0.09883721,"height":0.005058072},"value":"Onlv Recorded Monthly • Vec Calls - Mar 2026","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"Only Recorded Monthly - Ves Calls - Mar 2026","depth":2,"bounds":{"left":0.12063953,"top":0.3905091,"width":0.10029069,"height":0.011713124},"value":"Only Recorded Monthly - Ves Calls - Mar 2026","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"Expires On - 20 April - New - 13 - 19 Apr 2026","depth":2,"bounds":{"left":0.12063954,"top":0.45305556,"width":0.098837204,"height":0.011785714},"value":"Expires On - 20 April - New - 13 - 19 Apr 2026","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"Exoires On - 20 April - New - 13 - 19 Aor 2026","depth":2,"bounds":{"left":0.12063954,"top":0.48805556,"width":0.09738371,"height":0.005},"value":"Exoires On - 20 April - New - 13 - 19 Aor 2026","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"Expires On - 20 April - New - 13 - 19 Apr 2026","depth":2,"bounds":{"left":0.12063954,"top":0.51555556,"width":0.098837204,"height":0.012003484},"value":"Expires On - 20 April - New - 13 - 19 Apr 2026","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"Hes5・0515Anr2026","depth":2,"bounds":{"left":0.12063953,"top":0.5505555,"width":0.052325584,"height":0.005},"value":"Hes5・0515Anr2026","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"Test 6 - 15 Apr 2026","depth":2,"bounds":{"left":0.12063953,"top":0.5786624,"width":0.04505814,"height":0.011893148},"value":"Test 6 - 15 Apr 2026","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"Test 500707","depth":2,"bounds":{"left":0.12063953,"top":0.6135056,"width":0.04360465,"height":0.0046457606},"value":"Test 500707","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"Ask Jiminny Test Report - 15 Apr 2026","depth":2,"bounds":{"left":0.12063953,"top":0.6413802,"width":0.08430232,"height":0.011675377},"value":"Ask Jiminny Test Report - 15 Apr 2026","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"Request falled with status code 503\ned-reports-ask-iminm = 874522","depth":2,"bounds":{"left":0.11627908,"top":0.72035813,"width":0.0857558,"height":0.027874565},"value":"Request falled with status code 503\ned-reports-ask-iminm = 874522","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"© Clear all","depth":2,"bounds":{"left":0.34156978,"top":0.15805556,"width":0.029069768,"height":0.011779907},"value":"© Clear all","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"Coaching Protiles\nProduct Feedback *","depth":2,"bounds":{"left":0.26889536,"top":0.17888889,"width":0.049418606,"height":0.021144018},"value":"Coaching Protiles\nProduct Feedback *","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"FREQUENCY","depth":2,"bounds":{"left":0.35755813,"top":0.2255846,"width":0.036337208,"height":0.013937281},"value":"FREQUENCY","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"Monthly","depth":2,"bounds":{"left":0.35610464,"top":0.26507357,"width":0.020348838,"height":0.011614402},"value":"Monthly","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"Monthly","depth":2,"bounds":{"left":0.35610464,"top":0.295271,"width":0.020348836,"height":0.011614402},"value":"Monthly","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"Monthly","depth":2,"bounds":{"left":0.35610464,"top":0.32779133,"width":0.020348836,"height":0.011614402},"value":"Monthly","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"Monthly","depth":2,"bounds":{"left":0.35610464,"top":0.35798877,"width":0.020348836,"height":0.011614402},"value":"Monthly","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"Monthly","depth":2,"bounds":{"left":0.35610464,"top":0.3905091,"width":0.020348836,"height":0.011614402},"value":"Monthly","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"Monthly","depth":2,"bounds":{"left":0.35610464,"top":0.42070654,"width":0.020348836,"height":0.011614402},"value":"Monthly","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"Monthly","depth":2,"bounds":{"left":0.35610464,"top":0.45322686,"width":0.020348836,"height":0.011614402},"value":"Monthly","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"Monthly","depth":2,"bounds":{"left":0.35610464,"top":0.4834243,"width":0.020348836,"height":0.011614402},"value":"Monthly","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"Monthly","depth":2,"bounds":{"left":0.35610464,"top":0.51594466,"width":0.020348836,"height":0.011614402},"value":"Monthly","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"Weekly","depth":2,"bounds":{"left":0.35610464,"top":0.5461421,"width":0.018895349,"height":0.011614402},"value":"Weekly","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"Daily","depth":2,"bounds":{"left":0.35610464,"top":0.5786624,"width":0.013081395,"height":0.011614402},"value":"Daily","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"Daily","depth":2,"bounds":{"left":0.35610464,"top":0.60885984,"width":0.013081395,"height":0.011614402},"value":"Daily","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"Daily","depth":2,"bounds":{"left":0.35610464,"top":0.6413802,"width":0.013081395,"height":0.009291521},"value":"Daily","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"Daily","depth":2,"bounds":{"left":0.35610464,"top":0.67157763,"width":0.013081395,"height":0.011614402},"value":"Daily","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"Daily","depth":2,"bounds":{"left":0.35755813,"top":0.7038889,"width":0.011627907,"height":0.009500581},"value":"Daily","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"Owe","depth":2,"bounds":{"left":0.44040698,"top":0.41838366,"width":0.020348838,"height":0.020905923},"value":"Owe","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"EWS\nOws","depth":2,"bounds":{"left":0.44040698,"top":0.4834243,"width":0.018895349,"height":0.048780486},"value":"EWS\nOws","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"DATE +","depth":2,"bounds":{"left":0.5232558,"top":0.22555555,"width":0.021802325,"height":0.014166667},"value":"DATE +","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"21/04/2026","depth":2,"bounds":{"left":0.5232558,"top":0.26507357,"width":0.027616277,"height":0.011614402},"value":"21/04/2026","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"2704/20261","depth":2,"bounds":{"left":0.5232558,"top":0.29991677,"width":0.02616279,"height":0.0046457606},"value":"2704/20261","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"21/04/2026","depth":2,"bounds":{"left":0.5231672,"top":0.3272275,"width":0.027793515,"height":0.012742053},"value":"21/04/2026","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"21/04/2026","depth":2,"bounds":{"left":0.5232416,"top":0.35790178,"width":0.027644727,"height":0.011788382},"value":"21/04/2026","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"21/04/2026","depth":2,"bounds":{"left":0.5232347,"top":0.39037964,"width":0.02765847,"height":0.011873323},"value":"21/04/2026","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"707047076","depth":2,"bounds":{"left":0.5232558,"top":0.4253523,"width":0.02616279,"height":0.0046457606},"value":"707047076","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"20/04/2026","depth":2,"bounds":{"left":0.5232558,"top":0.45322686,"width":0.027616277,"height":0.011614402},"value":"20/04/2026","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"20/04/2026","depth":2,"bounds":{"left":0.5232558,"top":0.4834243,"width":0.027616277,"height":0.011614402},"value":"20/04/2026","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"20/04/2026","depth":2,"bounds":{"left":0.5232347,"top":0.5158152,"width":0.02765847,"height":0.011873323},"value":"20/04/2026","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"16/04/2026","depth":2,"bounds":{"left":0.5232558,"top":0.5461421,"width":0.027616277,"height":0.011614402},"value":"16/04/2026","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"16/04/2026","depth":2,"bounds":{"left":0.5232558,"top":0.5786624,"width":0.027616277,"height":0.011614402},"value":"16/04/2026","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"16/04/2026","depth":2,"bounds":{"left":0.5232558,"top":0.60885984,"width":0.027616277,"height":0.011614402},"value":"16/04/2026","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"14/04/2026","depth":2,"bounds":{"left":0.5232558,"top":0.67157763,"width":0.027616277,"height":0.011614402},"value":"14/04/2026","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"E3 Ask Jiminny reports","depth":2,"bounds":{"left":0.62936044,"top":0.13034649,"width":0.05377907,"height":0.011875725},"value":"E3 Ask Jiminny reports","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"$ 0","depth":2,"bounds":{"left":0.8357558,"top":0.08388889,"width":0.013081395,"height":0.011666667},"value":"$ 0","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"印","depth":2,"bounds":{"left":0.8866279,"top":0.08388889,"width":0.00872093,"height":0.011614402},"value":"印","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"GO Inspector","depth":2,"bounds":{"left":0.6947674,"top":0.12105498,"width":0.039244182,"height":0.01200058},"value":"GO Inspector","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"因 congole\nDebugger","depth":2,"bounds":{"left":0.7369186,"top":0.12105498,"width":0.05523256,"height":0.01200058},"value":"因 congole\nDebugger","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"↑ Natwork\n() Style Editor","depth":2,"bounds":{"left":0.79505813,"top":0.12105498,"width":0.06104651,"height":0.01200058},"value":"↑ Natwork\n() Style Editor","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"Performance","depth":2,"bounds":{"left":0.85901165,"top":0.12105498,"width":0.03343023,"height":0.009291521},"value":"Performance","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"O Momory »","depth":2,"bounds":{"left":0.89534885,"top":0.12105498,"width":0.03343023,"height":0.01200058},"value":"O Momory »","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"Aa HTML CSS","depth":2,"bounds":{"left":0.6976744,"top":0.15125242,"width":0.036337208,"height":0.011803136},"value":"Aa HTML CSS","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"603\n200","depth":2,"bounds":{"left":0.6947674,"top":0.19306427,"width":0.010174419,"height":0.023228804},"value":"603\n200","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"GET","depth":2,"bounds":{"left":0.7122093,"top":0.19306427,"width":0.011627907,"height":0.009291521},"value":"GET","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"Atloge-in.com\nA app staging iminny.\nArlogi-in.com","depth":2,"bounds":{"left":0.7311047,"top":0.17912698,"width":0.043604653,"height":0.037166085},"value":"Atloge-in.com\nA app staging iminny.\nArlogi-in.com","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"exat/pistform-stagingSe=6-01900076-935d-7 xhr\nautomated-reportatpage: 18sort_columnegenerated shr\nTaponxat/platform-stagings+6-019d6076-9356-3 shr","depth":2,"bounds":{"left":0.7790698,"top":0.17888889,"width":0.10174419,"height":0.0375},"value":"exat/pistform-stagingSe=6-01900076-935d-7 xhr\nautomated-reportatpage: 18sort_columnegenerated shr\nTaponxat/platform-stagings+6-019d6076-9356-3 shr","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"Tue 21 Apr 18:23:56","depth":2,"bounds":{"left":0.9491279,"top":0.08388889,"width":0.04505814,"height":0.011666667},"value":"Tue 21 Apr 18:23:56","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"090- • ** X","depth":2,"bounds":{"left":0.95494187,"top":0.12105498,"width":0.04215116,"height":0.009500581},"value":"090- • ** X","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"08 (m","depth":2,"bounds":{"left":0.97965115,"top":0.20467867,"width":0.018895349,"height":0.01171022},"value":"08 (m","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"ACTIONS","depth":2,"bounds":{"left":0.60755813,"top":0.22790748,"width":0.021802325,"height":0.009291521},"value":"ACTIONS","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"이 300m","depth":2,"bounds":{"left":0.69622093,"top":0.73638886,"width":0.029069765,"height":0.011843787},"value":"이 300m","role_description":"text entry area","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Analyse Image","depth":2,"bounds":{"left":0.975,"top":0.71055555,"width":0.018055556,"height":0.028888889},"role_description":"button","is_enabled":true,"is_focused":false},{"role":"AXButton","text":"rewind","depth":1,"bounds":{"left":0.4652778,"top":0.5883333,"width":0.017361112,"height":0.017777778},"role_description":"button","is_enabled":true,"is_focused":false},{"role":"AXCheckBox","text":"play/pause","depth":1,"bounds":{"left":0.48993057,"top":0.5788889,"width":0.02013889,"height":0.037777778},"role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false},{"role":"AXButton","text":"fast forward","depth":1,"bounds":{"left":0.51770836,"top":0.5883333,"width":0.017361112,"height":0.017777778},"role_description":"button","is_enabled":true,"is_focused":false},{"role":"AXButton","text":"More Controls","depth":1,"bounds":{"left":0.6392361,"top":0.5877778,"width":0.0125,"height":0.017777778},"role_description":"button","is_enabled":true,"is_focused":false},{"role":"AXCheckBox","text":"toggle full screen","depth":1,"bounds":{"left":0.5767361,"top":0.5938889,"width":0.013888889,"height":0.022222223},"role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false},{"role":"AXButton","text":"show external playback menu","depth":1,"bounds":{"left":0.5767361,"top":0.58666664,"width":0.013888889,"height":0.022222223},"role_description":"button","is_focused":false},{"role":"AXButton","text":"show external playback menu","depth":2,"bounds":{"left":0.5767361,"top":0.58666664,"width":0.013888889,"height":0.022222223},"role_description":"button","is_enabled":true,"is_focused":false},{"role":"AXButton","text":"show media selection menu","depth":1,"bounds":{"left":0.5767361,"top":0.5938889,"width":0.015277778,"height":0.022222223},"role_description":"button","is_enabled":true,"is_focused":false},{"role":"AXButton","text":"toggle picture-in-picture playback","depth":1,"bounds":{"left":0.603125,"top":0.5861111,"width":0.017361112,"height":0.022222223},"role_description":"button","is_enabled":true,"is_focused":false},{"role":"AXButton","text":"show action menu","depth":1,"bounds":{"left":0.5767361,"top":0.5933333,"width":0.014583333,"height":0.023333333},"role_description":"button","is_enabled":true,"is_focused":false},{"role":"AXButton","text":"share","depth":1,"bounds":{"left":0.6329861,"top":0.5827778,"width":0.013541667,"height":0.025555555},"role_description":"button","is_enabled":true,"is_focused":false},{"role":"AXButton","text":"show chapter menu","depth":1,"bounds":{"left":0.5767361,"top":0.5966667,"width":0.014583333,"height":0.016666668},"role_description":"button","is_enabled":true,"is_focused":false},{"role":"AXCheckBox","text":"zoom","depth":1,"bounds":{"left":0.5767361,"top":0.59166664,"width":0.013888889,"height":0.026666667},"role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false},{"role":"AXCheckBox","text":"zoom","depth":1,"bounds":{"left":0.5767361,"top":0.59444445,"width":0.017361112,"height":0.02111111},"role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false},{"role":"AXButton","text":"playback speed","depth":1,"bounds":{"left":0.5767361,"top":0.59444445,"width":0.013194445,"height":0.02111111},"role_description":"button","is_enabled":true,"is_focused":false},{"role":"AXStaticText","text":"03:48","depth":1,"bounds":{"left":0.3482639,"top":0.625,"width":0.02638889,"height":0.016666668},"role_description":"text"},{"role":"AXCheckBox","text":"toggle elapsed time, timecode and framecount","depth":1,"bounds":{"left":0.34965277,"top":0.625,"width":0.023611112,"height":0.016666668},"role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false},{"role":"AXStaticText","text":"05:19","depth":1,"bounds":{"left":0.6201389,"top":0.625,"width":0.031597223,"height":0.016666668},"role_description":"text"},{"role":"AXCheckBox","text":"toggle duration and remaining time","depth":1,"bounds":{"left":0.6215278,"top":0.625,"width":0.028819444,"height":0.016666668},"role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false},{"role":"AXMenuButton","text":"document actions","depth":1,"bounds":{"left":0.60347223,"top":0.08888889,"width":0.0069444445,"height":0.017777778},"role_description":"menu button","is_enabled":false,"is_focused":false},{"role":"AXStaticText","text":"compact_monitor_2_1776785731509.mp4","depth":1,"bounds":{"left":0.40902779,"top":0.08888889,"width":0.19444445,"height":0.017777778},"role_description":"text"}]...
|
-8999863887602570613
|
7300159703322511742
|
click
|
accessibility
|
NULL
|
(JY-20372] Al Reports » Empty p
M Jiminny Mail
© P (JY-20372] Al Reports » Empty p
M Jiminny Mail
© Pipelines - minnylapp
• Formalre
(SRO-6793) Les Mils activty type
New Too
bookmarks
Profiles
Tools
Window
Help
app.staging.jiminny.com/al-reports
Al Reports
Q
目
NAME 수
Share With Team Test - Mar 2026
Only Recorded Monthly - Ves Calls - Mar 2026
Only Recorded Monthly - Ves Calls - Mar 2026
Onlv Recorded Monthly • Vec Calls - Mar 2026
Only Recorded Monthly - Ves Calls - Mar 2026
Expires On - 20 April - New - 13 - 19 Apr 2026
Exoires On - 20 April - New - 13 - 19 Aor 2026
Expires On - 20 April - New - 13 - 19 Apr 2026
Hes5・0515Anr2026
Test 6 - 15 Apr 2026
Test 500707
Ask Jiminny Test Report - 15 Apr 2026
Request falled with status code 503
ed-reports-ask-iminm = 874522
© Clear all
Coaching Protiles
Product Feedback *
FREQUENCY
Monthly
Monthly
Monthly
Monthly
Monthly
Monthly
Monthly
Monthly
Monthly
Weekly
Daily
Daily
Daily
Daily
Daily
Owe
EWS
Ows
DATE +
21/04/2026
2704/20261
21/04/2026
21/04/2026
21/04/2026
707047076
20/04/2026
20/04/2026
20/04/2026
16/04/2026
16/04/2026
16/04/2026
14/04/2026
E3 Ask Jiminny reports
$ 0
印
GO Inspector
因 congole
Debugger
↑ Natwork
() Style Editor
Performance
O Momory »
Aa HTML CSS
603
200
GET
Atloge-in.com
A app staging iminny.
Arlogi-in.com
exat/pistform-stagingSe=6-01900076-935d-7 xhr
automated-reportatpage: 18sort_columnegenerated shr
Taponxat/platform-stagings+6-019d6076-9356-3 shr
Tue 21 Apr 18:23:56
090- • ** X
08 (m
ACTIONS
이 300m
Analyse Image
rewind
play/pause
fast forward
More Controls
toggle full screen
show external playback menu
show external playback menu
show media selection menu
toggle picture-in-picture playback
show action menu
share
show chapter menu
zoom
zoom
playback speed
03:48
toggle elapsed time, timecode and framecount
05:19
toggle duration and remaining time
document actions
compact_monitor_2_1776785731509.mp4...
|
NULL
|
|
40972
|
873
|
15
|
2026-04-17T05:57:57.157286+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-17/1776 /Users/lukas/.screenpipe/data/data/2026-04-17/1776405477157_m2.jpg...
|
NULL
|
NULL
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
Firefox FileEoitView•••+→Platform Sprint 2 Q2 - Firefox FileEoitView•••+→Platform Sprint 2 Q2 - Platform Te:History BookmarksProfilesToolsWindow Helpjiminny.atlassian.net/jira/servicedesk/projects/SRD/queues/custom/37O JIMINNY© Service-Desk - Queues - Platfc X+ New TabQ Search+ CreateCє MOA 10%98 Fi17Ar 8:57:56*C ASkRoVO A® sộ 1@ For you• Recent& Starred0÷ Apps|O, SpacesRecentJiminny (New)( Service-DeskE Queues+ ...v Team Priority# All open tic…..Unassigne... =@ Support te….kaised Dy ...-# Assigned t...E Service re... -1 Platform te... 3& Processing...-E Site reliabil...-New featur...-E InfoSec is...-Ready for ….Resolved ti... -= View all que... ›E Service requestsA IncidentsWl ReportsC Operations# Knowledge Base& Customers@ Channels• Email logs⅘› Developer escalati...is Slack integration& Reporting CenterCj Add shortcutArchived work items= More spaces= FiltersB DashboardsC: OperationsSpaces / Service-Desk / QueuesPlatform team:= ListQ Search works work lemsKeySRD-6793SRD-6789SRD-6787Request typeStatusAssignee vSummaryLes Mills activity types not pulling in[Team insights] Filter gets reset automaticallyIssue with reconnecting Zoho*More filtersPriority levelP2 MediumP2 MediumP2 MediumSeverity levelS2S2S2ReporterStoyan TomovIliyana NetsevaStoyan TanevAssignee@ Lukas KovalikNikolay YankovLukas KovalikStatusANALYZINGVREADY FOR CUSTOMERIN PROGRESSTriageCreatedI16/Apr/2615/Apr/2615/Apr/26...
|
NULL
|
-8999069612921378929
|
NULL
|
visual_change
|
ocr
|
NULL
|
Firefox FileEoitView•••+→Platform Sprint 2 Q2 - Firefox FileEoitView•••+→Platform Sprint 2 Q2 - Platform Te:History BookmarksProfilesToolsWindow Helpjiminny.atlassian.net/jira/servicedesk/projects/SRD/queues/custom/37O JIMINNY© Service-Desk - Queues - Platfc X+ New TabQ Search+ CreateCє MOA 10%98 Fi17Ar 8:57:56*C ASkRoVO A® sộ 1@ For you• Recent& Starred0÷ Apps|O, SpacesRecentJiminny (New)( Service-DeskE Queues+ ...v Team Priority# All open tic…..Unassigne... =@ Support te….kaised Dy ...-# Assigned t...E Service re... -1 Platform te... 3& Processing...-E Site reliabil...-New featur...-E InfoSec is...-Ready for ….Resolved ti... -= View all que... ›E Service requestsA IncidentsWl ReportsC Operations# Knowledge Base& Customers@ Channels• Email logs⅘› Developer escalati...is Slack integration& Reporting CenterCj Add shortcutArchived work items= More spaces= FiltersB DashboardsC: OperationsSpaces / Service-Desk / QueuesPlatform team:= ListQ Search works work lemsKeySRD-6793SRD-6789SRD-6787Request typeStatusAssignee vSummaryLes Mills activity types not pulling in[Team insights] Filter gets reset automaticallyIssue with reconnecting Zoho*More filtersPriority levelP2 MediumP2 MediumP2 MediumSeverity levelS2S2S2ReporterStoyan TomovIliyana NetsevaStoyan TanevAssignee@ Lukas KovalikNikolay YankovLukas KovalikStatusANALYZINGVREADY FOR CUSTOMERIN PROGRESSTriageCreatedI16/Apr/2615/Apr/2615/Apr/26...
|
40970
|
|
41065
|
873
|
69
|
2026-04-17T06:00:41.889768+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-17/1776 /Users/lukas/.screenpipe/data/data/2026-04-17/1776405641889_m2.jpg...
|
NULL
|
NULL
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
FirefoxFileEoitViewHistoryBookmarksProfilesToolsWi FirefoxFileEoitViewHistoryBookmarksProfilesToolsWindowHelp, 0hihljiminny.sentry.io/issues/6873095751/events/26d2294b8bf2410bb5da08e0fd82cdef/- Platform Sprint 2 Q2 - Platform TeccllAc[SRD-6793] Les Mills activity type:FeedNew TabIssues / C APP-1DTFSymfony\Component\Debug\Exception\FatalThrowableErrorI League\Flysystem\Filesystem::has(: Argument #1 (Slocation) must be of type string, null given, called in /home/jiminny/vendor/laravel/framework/src/Illuminate/Filesystem/FilesystemAdapter.php on line 218Unoe nelapp/Jobs/AutomatedReports/SendReportJob.pho in Jimnn voos Auiomalcencors ocnorcoonvoornanoleiaUUIcKrXssuesErrors & OutagesSymfony|Component|Debugle *Breached MetricsResolvearcnive+ New TabexplorewalmailnesAll EnvsvQ Filter events...08DashboardsUser FeedbackEventsAll Viewsusersmisigtien llConfigureJan 31 10:00 PMFeb 28 10:00 PMMar 31 9:00 PMreleaseenvironmentlaravel_versionhandledView all tags15% 8695190o% slaging-mars56% 12.33.0100% yesAicilsEvents v in this issueRecommendedYew more Eventsucooy as vsetungsID: 26d2294b13 hours ago | JSONJump to: HighlightsStack Tracelrdcelagswontextphp php 8.3.30. Linux 6.1.141-155.222.amzn2023.aarch64 872394 © productionv Highlightse EditnanoledleveluransaccionyeserrorurlTrace.race I0388ce431d4c468f8d35f77c3700008ev Stack TraceDisplayO Copy asSymfony\Component\Debug\Exception\FatalThrowableErrorLeague\Flysystem\Filesystem: :has(): Argument #1 ($location) must be of type string, null given, called in /home/jiminny/vendor/laravel/framework/src/Illuminate/Filesystem/FilesystemAdapter.php on line 218mecnanismgenericnano eocodeurasneeinnon-aoo./venaor/ledouenysystem/sre/rllesystem.ongzh Leaouerlysystem.rilesystem..ndsShow 1 more frame/app/Jobs/AutomatedReports/SendReportJob.php:80 in Jiminny\Jobs\AutomatedReports\SendReportJob:handleIn App$s3Path = SautomatedReportsService->getMediaPath(Sreport);// Verify the file exists in S3if (! Storage::disk('client-data-cloud')-›exists(Ss3Path) ) {Slogger->error (self::LOG_PREFIXReport file not found in S3', ['uuid' => Sthis->reportUuid,ssrath => ssspach,1):automatedReportsSerObject Jiminny\Services\Kiosk\AutomatedReports\AutomatedReportsServicevicejobDispatcherObject Jiminny\Jobs\JobDispatcherloggerObject Illuminate\Log\LogManager(**)Called from:/vendor/laravel/framework/src/llluminate/Container/BoundMethod.php in IIluminate\Container\BoundMethod:Illuminate\Containerclosure>Show 14 more frames/app/Queue/Worker/Worker.php:72 in Jiminny Queue Worker Worker:processCalled from: /vendor/laravel/framework/src/Illuminate/Queue/Worker.php in Illuminate\Queue\Worker:runJobShow 17 more framesLKA100% CS•Fri 17 Apr 9:00:41Events (total)1KUsers (90d)Priority ol~Assignee CNikolav NikolovvLast seen 13 hours agoIn release o1zoy4First seen 7 months agomnrelease foyeyv Seer Autofix ®€ Root Cause"SendReportJob passes a potentiallynull ss path to storage::existsywithout a null guard, crashing whenAuromateo reoortresut nas no tiee Upen seervssue eckineGitHub# Jirav ACtiVItyAco a comment....• Marked as Ongoingautomatically by sentryRegressedby Sentry in 757713.v Resolvedby Martin PetkovView 3 more5 months ago5 months ago5 months agov PeopleMPIN participatingSOSSIK IN viewedSimilar IssuesViewMerged IssuesVIew...
|
NULL
|
-8998997071506339314
|
NULL
|
click
|
ocr
|
NULL
|
FirefoxFileEoitViewHistoryBookmarksProfilesToolsWi FirefoxFileEoitViewHistoryBookmarksProfilesToolsWindowHelp, 0hihljiminny.sentry.io/issues/6873095751/events/26d2294b8bf2410bb5da08e0fd82cdef/- Platform Sprint 2 Q2 - Platform TeccllAc[SRD-6793] Les Mills activity type:FeedNew TabIssues / C APP-1DTFSymfony\Component\Debug\Exception\FatalThrowableErrorI League\Flysystem\Filesystem::has(: Argument #1 (Slocation) must be of type string, null given, called in /home/jiminny/vendor/laravel/framework/src/Illuminate/Filesystem/FilesystemAdapter.php on line 218Unoe nelapp/Jobs/AutomatedReports/SendReportJob.pho in Jimnn voos Auiomalcencors ocnorcoonvoornanoleiaUUIcKrXssuesErrors & OutagesSymfony|Component|Debugle *Breached MetricsResolvearcnive+ New TabexplorewalmailnesAll EnvsvQ Filter events...08DashboardsUser FeedbackEventsAll Viewsusersmisigtien llConfigureJan 31 10:00 PMFeb 28 10:00 PMMar 31 9:00 PMreleaseenvironmentlaravel_versionhandledView all tags15% 8695190o% slaging-mars56% 12.33.0100% yesAicilsEvents v in this issueRecommendedYew more Eventsucooy as vsetungsID: 26d2294b13 hours ago | JSONJump to: HighlightsStack Tracelrdcelagswontextphp php 8.3.30. Linux 6.1.141-155.222.amzn2023.aarch64 872394 © productionv Highlightse EditnanoledleveluransaccionyeserrorurlTrace.race I0388ce431d4c468f8d35f77c3700008ev Stack TraceDisplayO Copy asSymfony\Component\Debug\Exception\FatalThrowableErrorLeague\Flysystem\Filesystem: :has(): Argument #1 ($location) must be of type string, null given, called in /home/jiminny/vendor/laravel/framework/src/Illuminate/Filesystem/FilesystemAdapter.php on line 218mecnanismgenericnano eocodeurasneeinnon-aoo./venaor/ledouenysystem/sre/rllesystem.ongzh Leaouerlysystem.rilesystem..ndsShow 1 more frame/app/Jobs/AutomatedReports/SendReportJob.php:80 in Jiminny\Jobs\AutomatedReports\SendReportJob:handleIn App$s3Path = SautomatedReportsService->getMediaPath(Sreport);// Verify the file exists in S3if (! Storage::disk('client-data-cloud')-›exists(Ss3Path) ) {Slogger->error (self::LOG_PREFIXReport file not found in S3', ['uuid' => Sthis->reportUuid,ssrath => ssspach,1):automatedReportsSerObject Jiminny\Services\Kiosk\AutomatedReports\AutomatedReportsServicevicejobDispatcherObject Jiminny\Jobs\JobDispatcherloggerObject Illuminate\Log\LogManager(**)Called from:/vendor/laravel/framework/src/llluminate/Container/BoundMethod.php in IIluminate\Container\BoundMethod:Illuminate\Containerclosure>Show 14 more frames/app/Queue/Worker/Worker.php:72 in Jiminny Queue Worker Worker:processCalled from: /vendor/laravel/framework/src/Illuminate/Queue/Worker.php in Illuminate\Queue\Worker:runJobShow 17 more framesLKA100% CS•Fri 17 Apr 9:00:41Events (total)1KUsers (90d)Priority ol~Assignee CNikolav NikolovvLast seen 13 hours agoIn release o1zoy4First seen 7 months agomnrelease foyeyv Seer Autofix ®€ Root Cause"SendReportJob passes a potentiallynull ss path to storage::existsywithout a null guard, crashing whenAuromateo reoortresut nas no tiee Upen seervssue eckineGitHub# Jirav ACtiVItyAco a comment....• Marked as Ongoingautomatically by sentryRegressedby Sentry in 757713.v Resolvedby Martin PetkovView 3 more5 months ago5 months ago5 months agov PeopleMPIN participatingSOSSIK IN viewedSimilar IssuesViewMerged IssuesVIew...
|
NULL
|
|
37280
|
766
|
30
|
2026-04-16T12:23:55.798526+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-16/1776 /Users/lukas/.screenpipe/data/data/2026-04-16/1776342235798_m1.jpg...
|
Finder
|
screenpipe
|
1
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
Favourites
jiminny
AirDrop
Recents
Applications
Do Favourites
jiminny
AirDrop
Recents
Applications
Documents
Desktop
Downloads
lukas
iCloud
iCloud Drive
Sync folder
Locations
DXP4800PLUS-B5F8
Eject
Network
Tags
CRM
Orange
Red
Yellow
Green
Blue
Purple
All Tags…
Name
Date Modified
Size
Kind
db.sqlite-shm
Yesterday at 19:06
33 KB
Document
#recycle
14 Apr 2026 at 20:54
634,9 MB
Folder
db.sqlite
14 Apr 2026 at 20:49
1,42 GB...
|
[{"role":"AXStaticText","text& [{"role":"AXStaticText","text":"Favourites","depth":6,"automation_id":"xSidebarHeader","role_description":"text"},{"role":"AXStaticText","text":"jiminny","depth":6,"role_description":"text"},{"role":"AXStaticText","text":"AirDrop","depth":6,"role_description":"text"},{"role":"AXStaticText","text":"Recents","depth":6,"role_description":"text"},{"role":"AXStaticText","text":"Applications","depth":6,"role_description":"text"},{"role":"AXStaticText","text":"Documents","depth":6,"role_description":"text"},{"role":"AXStaticText","text":"Desktop","depth":6,"role_description":"text"},{"role":"AXStaticText","text":"Downloads","depth":6,"role_description":"text"},{"role":"AXStaticText","text":"lukas","depth":6,"role_description":"text"},{"role":"AXStaticText","text":"iCloud","depth":6,"automation_id":"xSidebarHeader","role_description":"text"},{"role":"AXStaticText","text":"iCloud Drive","depth":6,"role_description":"text"},{"role":"AXStaticText","text":"Sync folder","depth":6,"role_description":"text"},{"role":"AXStaticText","text":"Locations","depth":6,"automation_id":"xSidebarHeader","role_description":"text"},{"role":"AXStaticText","text":"DXP4800PLUS-B5F8","depth":6,"role_description":"text"},{"role":"AXButton","text":"Eject","depth":6,"role_description":"button","is_enabled":true,"is_focused":false},{"role":"AXStaticText","text":"Network","depth":6,"role_description":"text"},{"role":"AXStaticText","text":"Tags","depth":6,"automation_id":"xSidebarHeader","role_description":"text"},{"role":"AXStaticText","text":"CRM","depth":6,"role_description":"text"},{"role":"AXStaticText","text":"Orange","depth":6,"role_description":"text"},{"role":"AXStaticText","text":"Red","depth":6,"role_description":"text"},{"role":"AXStaticText","text":"Yellow","depth":6,"role_description":"text"},{"role":"AXStaticText","text":"Green","depth":6,"role_description":"text"},{"role":"AXStaticText","text":"Blue","depth":6,"role_description":"text"},{"role":"AXStaticText","text":"Purple","depth":6,"role_description":"text"},{"role":"AXStaticText","text":"All Tags…","depth":6,"role_description":"text"},{"role":"AXStaticText","text":"Name","depth":7,"role_description":"text"},{"role":"AXStaticText","text":"Date Modified","depth":7,"role_description":"text"},{"role":"AXStaticText","text":"Size","depth":7,"role_description":"text"},{"role":"AXStaticText","text":"Kind","depth":7,"role_description":"text"},{"role":"AXTextField","text":"db.sqlite-shm","depth":7,"value":"db.sqlite-shm","role_description":"text field","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Yesterday at 19:06","depth":7,"role_description":"text"},{"role":"AXStaticText","text":"33 KB","depth":7,"role_description":"text"},{"role":"AXStaticText","text":"Document","depth":7,"role_description":"text"},{"role":"AXTextField","text":"#recycle","depth":7,"value":"#recycle","role_description":"text field","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"14 Apr 2026 at 20:54","depth":7,"role_description":"text"},{"role":"AXStaticText","text":"634,9 MB","depth":7,"role_description":"text"},{"role":"AXStaticText","text":"Folder","depth":7,"role_description":"text"},{"role":"AXTextField","text":"db.sqlite","depth":7,"value":"db.sqlite","role_description":"text field","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"14 Apr 2026 at 20:49","depth":7,"role_description":"text"},{"role":"AXStaticText","text":"1,42 GB","depth":7,"role_description":"text"}]...
|
-8998886350653842599
|
-1165866832822734898
|
click
|
accessibility
|
NULL
|
Favourites
jiminny
AirDrop
Recents
Applications
Do Favourites
jiminny
AirDrop
Recents
Applications
Documents
Desktop
Downloads
lukas
iCloud
iCloud Drive
Sync folder
Locations
DXP4800PLUS-B5F8
Eject
Network
Tags
CRM
Orange
Red
Yellow
Green
Blue
Purple
All Tags…
Name
Date Modified
Size
Kind
db.sqlite-shm
Yesterday at 19:06
33 KB
Document
#recycle
14 Apr 2026 at 20:54
634,9 MB
Folder
db.sqlite
14 Apr 2026 at 20:49
1,42 GB...
|
37278
|
|
9027
|
172
|
57
|
2026-04-14T07:14:56.779321+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776150896779_m1.jpg...
|
NULL
|
NULL
|
1
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
iTerm2ShellEditViewSessionProfilesWindowHelpallSup iTerm2ShellEditViewSessionProfilesWindowHelpallSupport Daily - in 4h 46m100% <47Tue 14 Apr 10:14:56DOCKER881DEV (-zsh)882APP (-zsh)-zsh84-zsh11DOCKER (docker-compose)gins""taskManager""taskManager"],"pid":7,"message": "TaskManager is identified by thebf01f365-e094-4cde-940d-3e0db65fa22a"}DOCKER (docker-compose)-zshT2PROD (-zsh)Last login: Sat Apr 11 11:13:58 on console86-zshO x7* Unable to acce...O x8KibanaUUID:elasticsearch{"type""server""timestamp":"INFO""component" :"O.e.C.m.MetadataIndexTemplateService","2026-04-14T07:14:43,651Z""level":Poetry could not find a pyproject.toml file in /Users/lukas or its parentsPROD"cluster.name":"docker-cluster""node.name":"e802ad473a4f""message" :"adding template [-management-beats]for index patterns [-management-beats]",cluster.uuid":"e2ZKzgw4Q4aCf2w5ljWr1A""8uhZw1CUSGyWYR_OvaKx6g", "no{"type":"log""@timestamp":"2026-04-14T07:14:43Z""crossClusterReplication"],"pid","tags":["info"Poetry could not find a pyproject.toml file in /Users/lukas or its parentslukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ |X L3 EU (-zsh)Last login: Sat Apr 11 11:13:58 on console"message": "Your basic licensedoes not supporcrossClusterReplication.Please upgrade your license.{"type": "log""@timestamp":"2026-04-14T07:14:43Z","tags" : ["info", "pluPoetry could not find a pyproject.toml file in /Users/lukas or its parents"watcher'"],'"message": "Your basic license does not support watcher. Please upgradeyourLicense."?kibana{"type": "log""@timestamp":"2026-04-14T07:14:43Z"Poetry could not find a pyproject.tomlfile in /Users/lukas or its parents@Lukas-Kovaliks-MacBook-Pro-Jiminny,"tags":["info","plugins""monitoring""monitoring""kibana-monitoring"], "pid":7, "message": "Starting monitoringstatscollection"}{"type": "log""@timestamp":"2026-04-14T07:14:44Z","tags": ["error"T4 STAGE (-zsh)Last login: Sat Apr 11 11:13:58 on consoleasticsearch", "data"], "pid":7,'"message":"[version_conflict_engine_exception]: [task:Lens-lens_telemetry]: version conflict, document already exists (current version [727])"}Poetry could not find a pyproject.toml file in /Users/lukas or its parentsSTAGE1 {"type": "log","@timestamp":"2026-04-14T07:14:44Z", "tags" : ["error"asticsearch".,"data"],"pid":7,""message": "[version_conflict_engine_exception]: [task:endpoint:user-artifact-packager:1.0.0]: version conflict, document already exists (current version [306248])"}1 {"'type":"log""@timestamp":"2026-04-14T07:14:44Z","tags": ["error"Poetry could not find a pyproject.toml file in /Users/lukas or its parentslukas@Lukas-Kovaliks-MacBook-Pro-Jiminny$T5 QA (-zsh)Last login: Sat Apr 11 12:38:35 on ttys003asticsearch", "data"], "pid":7,'"message":"[version_conflict_engine_exception]: [task:Actions-actions_telemetry]: version conflict, document already exists (current version [727])"}Poetry could not find a pyproject.toml file in /Users/lukas or its parentskibanaI {"type" : "log", "@timestamp":"2026-04-14T07:14:447".,"tags" : ["error","elasticsearch", "data"], "pid" :7, "message": "[version_conflict_engine_exception]: [task:AlePoetry could not find a pyproject.tomlfile in /Users/lukas or its parentsrting-alerting_telemetry]: version conflict, document already exists (current version(727])"3kibanaI {"type": "log", "@timestamp": "2026-04-14T07:14:44Z", "tags" : ["error","elasticsearch", "data"], "pid" :7, "message": "[version_conflict_engine_exception]: [task:apm-telemetry-task]: version conflict,document already exists (current version [1204])"}XT6 FE (-zsh)Last login: Sat Apr 11 12:38:35 on ttys004Poetry could not find a pyproject.toml file in /Users/lukas or its parents RONTENDkibana1 {"type": "log",,"@timestamp":"2026-04-14T07:14:44Z", "tags" :["listening","info"], "pid":7, "message" : "Server running at [URL_WITH_CREDENTIALS] ["info", "http", "server","Kibana"], "pid" :7, "message": "http server running at [URL_WITH_CREDENTIALS] ~ $ IX T7 EXT (-zsh)kibana1 {"type" : "log","@timestamp":"2026-04-14T07:14:46Z","tags" : ["warning","plugins", "reporting"], "pid":7, "message": "Enabling the Chromium sandbox provides an additional layer of protection. "}Poetry could not find a pyproject.toml file in /Users/lukas or its parentsEXTENSION181Poetry could not find a pyproject.toml file in /Users/lukas or its parentsukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ [|View in Docker Desktop• View ConfigEnable Watch...
|
NULL
|
-8998347822025059293
|
NULL
|
click
|
ocr
|
NULL
|
iTerm2ShellEditViewSessionProfilesWindowHelpallSup iTerm2ShellEditViewSessionProfilesWindowHelpallSupport Daily - in 4h 46m100% <47Tue 14 Apr 10:14:56DOCKER881DEV (-zsh)882APP (-zsh)-zsh84-zsh11DOCKER (docker-compose)gins""taskManager""taskManager"],"pid":7,"message": "TaskManager is identified by thebf01f365-e094-4cde-940d-3e0db65fa22a"}DOCKER (docker-compose)-zshT2PROD (-zsh)Last login: Sat Apr 11 11:13:58 on console86-zshO x7* Unable to acce...O x8KibanaUUID:elasticsearch{"type""server""timestamp":"INFO""component" :"O.e.C.m.MetadataIndexTemplateService","2026-04-14T07:14:43,651Z""level":Poetry could not find a pyproject.toml file in /Users/lukas or its parentsPROD"cluster.name":"docker-cluster""node.name":"e802ad473a4f""message" :"adding template [-management-beats]for index patterns [-management-beats]",cluster.uuid":"e2ZKzgw4Q4aCf2w5ljWr1A""8uhZw1CUSGyWYR_OvaKx6g", "no{"type":"log""@timestamp":"2026-04-14T07:14:43Z""crossClusterReplication"],"pid","tags":["info"Poetry could not find a pyproject.toml file in /Users/lukas or its parentslukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ |X L3 EU (-zsh)Last login: Sat Apr 11 11:13:58 on console"message": "Your basic licensedoes not supporcrossClusterReplication.Please upgrade your license.{"type": "log""@timestamp":"2026-04-14T07:14:43Z","tags" : ["info", "pluPoetry could not find a pyproject.toml file in /Users/lukas or its parents"watcher'"],'"message": "Your basic license does not support watcher. Please upgradeyourLicense."?kibana{"type": "log""@timestamp":"2026-04-14T07:14:43Z"Poetry could not find a pyproject.tomlfile in /Users/lukas or its parents@Lukas-Kovaliks-MacBook-Pro-Jiminny,"tags":["info","plugins""monitoring""monitoring""kibana-monitoring"], "pid":7, "message": "Starting monitoringstatscollection"}{"type": "log""@timestamp":"2026-04-14T07:14:44Z","tags": ["error"T4 STAGE (-zsh)Last login: Sat Apr 11 11:13:58 on consoleasticsearch", "data"], "pid":7,'"message":"[version_conflict_engine_exception]: [task:Lens-lens_telemetry]: version conflict, document already exists (current version [727])"}Poetry could not find a pyproject.toml file in /Users/lukas or its parentsSTAGE1 {"type": "log","@timestamp":"2026-04-14T07:14:44Z", "tags" : ["error"asticsearch".,"data"],"pid":7,""message": "[version_conflict_engine_exception]: [task:endpoint:user-artifact-packager:1.0.0]: version conflict, document already exists (current version [306248])"}1 {"'type":"log""@timestamp":"2026-04-14T07:14:44Z","tags": ["error"Poetry could not find a pyproject.toml file in /Users/lukas or its parentslukas@Lukas-Kovaliks-MacBook-Pro-Jiminny$T5 QA (-zsh)Last login: Sat Apr 11 12:38:35 on ttys003asticsearch", "data"], "pid":7,'"message":"[version_conflict_engine_exception]: [task:Actions-actions_telemetry]: version conflict, document already exists (current version [727])"}Poetry could not find a pyproject.toml file in /Users/lukas or its parentskibanaI {"type" : "log", "@timestamp":"2026-04-14T07:14:447".,"tags" : ["error","elasticsearch", "data"], "pid" :7, "message": "[version_conflict_engine_exception]: [task:AlePoetry could not find a pyproject.tomlfile in /Users/lukas or its parentsrting-alerting_telemetry]: version conflict, document already exists (current version(727])"3kibanaI {"type": "log", "@timestamp": "2026-04-14T07:14:44Z", "tags" : ["error","elasticsearch", "data"], "pid" :7, "message": "[version_conflict_engine_exception]: [task:apm-telemetry-task]: version conflict,document already exists (current version [1204])"}XT6 FE (-zsh)Last login: Sat Apr 11 12:38:35 on ttys004Poetry could not find a pyproject.toml file in /Users/lukas or its parents RONTENDkibana1 {"type": "log",,"@timestamp":"2026-04-14T07:14:44Z", "tags" :["listening","info"], "pid":7, "message" : "Server running at [URL_WITH_CREDENTIALS] ["info", "http", "server","Kibana"], "pid" :7, "message": "http server running at [URL_WITH_CREDENTIALS] ~ $ IX T7 EXT (-zsh)kibana1 {"type" : "log","@timestamp":"2026-04-14T07:14:46Z","tags" : ["warning","plugins", "reporting"], "pid":7, "message": "Enabling the Chromium sandbox provides an additional layer of protection. "}Poetry could not find a pyproject.toml file in /Users/lukas or its parentsEXTENSION181Poetry could not find a pyproject.toml file in /Users/lukas or its parentsukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ [|View in Docker Desktop• View ConfigEnable Watch...
|
9024
|
|
34929
|
712
|
19
|
2026-04-16T09:26:04.717605+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-16/1776 /Users/lukas/.screenpipe/data/data/2026-04-16/1776331564717_m1.jpg...
|
NULL
|
NULL
|
1
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
FirefoxFileEditViewHistoryBookmarksProfilesToolsWi FirefoxFileEditViewHistoryBookmarksProfilesToolsWindowHelpSupport Daily - in 2h 34 m100% <478Thu 16 Apr 12:26:04-zshDOCKER• 8812026-04-16711:47:07.854850Z2026-04-16T11:47:09.544446Z2026-04-16T11:47:12.785911Z2026-04-16T11:50:53.949646Z2026-04-16T11:52:16.266043Z\nFROM\nframes \nWHERE\n-3.464891083s2026-04-16T11:52:16.266769Z2026-04-16T11:52:19.048528Z2026-04-16T11:52:24.793563Z2026-04-16711:57:24.97237522026-04-16T11:57:27.250981Z2026-04-16T11:57:30.491852Z2026-04-16112:02:32.9329602\nFROM\nframes\nWHERE\nd=2.425023041s2026-04-16T12:02:32.933357Z2026-04-16T12:02:39.409221Z2026-04-16T12:02:54.944437Z2026-04-16T12:05:57.651378Z2026-04-16T12:07:55.052631Z2026-04-16T12:07:55.949632Z2026-04-16T12:07:56.805212Z2026-04-16T12:12:58.144484Z2026-04-16T12:12:58.921555Z\nFROM\nframes\nWHERE\n=2.123106542s2026-04-16T12:12:58.922167Z2026-04-16T12:12:58.957831Z2026-04-16T12:13:00.673457Z2026-04-16T12:13:01.277553Z2026-04-1612:13:01.32745372026-04-1612:13:05.16177442026-04-16T12:17:33.113054Z2026-04-16T12:17:33.114482Z2026-04-16T12:18:08..118639Z\nFROM\nframes\nWHERE\n2.793811083s2026-04-16T12:18:08.118863Z2026-04-16T12:18:09.355761Z2026-04-16T12:18:11.425262Z2026-04-16T12:23:11.510538Z2026-04-1612:23:13107603872026-04-16T12:23:16.818128ZDEV (docker)282APP (-zsh)83ec2-user@ip-10-30-.₴84-zsh|• 85-zsh86-zsh₴7* Unable to acce...O x8INFOscreenpipe_engine::snapshot_compaction:snapshotcompaction:found 70eligibleframesINFOscreenpipe_engine::snapshot_compaction: snapshotcompaction: 26 frames,8. 8MB→ 1.0MB (9.2x), 26 JPEGs deletedINFOscreenpipe_engine::snapshot_compaction: snapshotcompaction:42 frames,10.5MB4.7MB (2.2x), 42 JPEGs deletedINFOscreenpipe_engine::event_driven_capture:content dedup:WARNsqlx:: query:summary="SELECT id,skippingcapturefor monitor 1 (hash=-7465795543963075308, trigger=click)snapshot_path, device_name,db.statement="\n\nSELECT\n id,\nsnapshot_path, \ndevice_name, \ntimestampsnapshot_path IS NOTNULL\nAND timestamp < ?1\nORDER BY\ndevice_name, \ntimestamp ASC\nLIMIT\n5000\n*rows_affected=0 rows_returned=61 elapsedINFOscreenpipe_engine::snapshot_compaction: snapshotcompaction: found 61eligible framesINFOscreenpipe_engine::snapshot_compaction: snapshotcompaction: 28 frames, 9.6MB→ 1.4MB (6.7x), 28 JPEGs deletedINFOscreenpipe_engine::snapshot_compaction: snapshotcompaction: 31 frames,8.9MB → 2.1MB (4.2x), 31 JPEGs deletedINFOscreenpipe_engine::snapshot_compaction: snapshotcompaction:found 33eligibleframesINFOscreenpipe_engine::snapshot_compaction: snapshotcompaction: 15 frames,5.2MB1.1MB (4.8x), 15 JPEGSdeletedINFOscreenpipe_engzne::snapshot_compactzon:snapshotcompaction: 16 frames,4.6MB1.2MB (3.8x), 16 JPEGs deletedWARNsqlx::query:summary="SELECT id,snapshot_path, device_name,db.statement="\n\nSELECT\nid, \nsnapshot_path, \ndevice_name, \ntimestampsnapshot_path IS NOT NULL\nAND timestamp < ?1\nORDER BY\ndevice_name, \ntimestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned-112 elapseINFOscreenpipe_engine::snapshot_compaction: snapshotcompaction: found 112eligible framesINFOscreenpipe_engine::snapshot_compaction: snapshotcompaction: 49 frames,14.5MB → 2.7MB(5.4x), 49 JPEGs deletedINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 13.6MB 4.6MB (2.9x), 61 JPEGSdeletedINFOscreenpipe_engine::event_driven_capture: content dedup:skipping capture for monitor 2 (hash=-7465795543963075308, trigger=click)INFOscreenpipe_engine::snapshot_compaction: snapshotcompaction: found 22 eligible framesINFOINFOscreenpipe_engine: :snapshot_compaction: snapshot compaction: 10 frames, 3.4MB → 0.8MB (4.4x), 10 JPEGs deletedscreenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames,2.7MB → 0.4MB (6.4x), 10 JPEGs deletedINFO screenpipe_engine::event_driven_capture: content dedup:skipping capture for monitor 2 (hash=5333893760344929860, trigger=visual_change)WARNsqlx::query:summary="SELECT id, snapshot_path, device_name,snapshot_path IS NOT NULL\nAND timestamp < ?1\nORDER BY\n-"db.statement="\n\nSELECT\nid, \nsnapshot_path, \ndevice_name, \ntimestampdevice_name, \ntimestamp ASC\nLIMIT\n5000\n"rows_affected=0 rows_returned=64 elapsedINFOscreenpipe_engine::snapshot_compaction:snapshotcompaction: found 64eligible framesWARNsalx::query:summary="PRAGMA wal_checkpoint(TRUNCATE)"db.statement=""rows_affected=0 rows_returned-1 elapsed=1.761321875sINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 25 frames, 8.6MB → 1.3MB (6.8x), 25 JPEGS deletedINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5333893760344929860, trigger=click)INFOINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5333893760344929860, trigger=click)screenpipe_engine::snapshot_compaction: snapshotcompaction: 37 frames,7.8MB → 3.3MB (2.4x), 37 JPEGs deletedINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8888940631032850566, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8888940631032850566, trigger=click)WARNsqlx::query:summary-"SELECT id, snapshot_path, device_name, _"db.statement="\n\nSELECT\n id, \nsnapshot_path, \ndevice_name, \ntimestampsnapshot_path IS NOT NULL\nAND timestamp < ?1\nORDER BY\ndevice_name, \ntimestamp ASC\nLIMIT\n5000\n" rows_affected-0 rows_returned-35 elapsedINFOscreenpipe_engine::snapshot_compaction:snapshotcompaction: found 35eligible framesINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 14 frames, 4.8MB 1.1MB (4.6x), 14 JPEGs deletedINFOINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 19 frames, 4. 8MB+ 1.9MB (2.5X), 19 JPEGs deletedINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible framesscreenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 8.4MB → 0.9MB (9.2x), 24 JPEGs deletedINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 9.6MB → 4.7MB (2.0x), 44 JPEGs deleted...
|
NULL
|
-8997752526267146193
|
NULL
|
click
|
ocr
|
NULL
|
FirefoxFileEditViewHistoryBookmarksProfilesToolsWi FirefoxFileEditViewHistoryBookmarksProfilesToolsWindowHelpSupport Daily - in 2h 34 m100% <478Thu 16 Apr 12:26:04-zshDOCKER• 8812026-04-16711:47:07.854850Z2026-04-16T11:47:09.544446Z2026-04-16T11:47:12.785911Z2026-04-16T11:50:53.949646Z2026-04-16T11:52:16.266043Z\nFROM\nframes \nWHERE\n-3.464891083s2026-04-16T11:52:16.266769Z2026-04-16T11:52:19.048528Z2026-04-16T11:52:24.793563Z2026-04-16711:57:24.97237522026-04-16T11:57:27.250981Z2026-04-16T11:57:30.491852Z2026-04-16112:02:32.9329602\nFROM\nframes\nWHERE\nd=2.425023041s2026-04-16T12:02:32.933357Z2026-04-16T12:02:39.409221Z2026-04-16T12:02:54.944437Z2026-04-16T12:05:57.651378Z2026-04-16T12:07:55.052631Z2026-04-16T12:07:55.949632Z2026-04-16T12:07:56.805212Z2026-04-16T12:12:58.144484Z2026-04-16T12:12:58.921555Z\nFROM\nframes\nWHERE\n=2.123106542s2026-04-16T12:12:58.922167Z2026-04-16T12:12:58.957831Z2026-04-16T12:13:00.673457Z2026-04-16T12:13:01.277553Z2026-04-1612:13:01.32745372026-04-1612:13:05.16177442026-04-16T12:17:33.113054Z2026-04-16T12:17:33.114482Z2026-04-16T12:18:08..118639Z\nFROM\nframes\nWHERE\n2.793811083s2026-04-16T12:18:08.118863Z2026-04-16T12:18:09.355761Z2026-04-16T12:18:11.425262Z2026-04-16T12:23:11.510538Z2026-04-1612:23:13107603872026-04-16T12:23:16.818128ZDEV (docker)282APP (-zsh)83ec2-user@ip-10-30-.₴84-zsh|• 85-zsh86-zsh₴7* Unable to acce...O x8INFOscreenpipe_engine::snapshot_compaction:snapshotcompaction:found 70eligibleframesINFOscreenpipe_engine::snapshot_compaction: snapshotcompaction: 26 frames,8. 8MB→ 1.0MB (9.2x), 26 JPEGs deletedINFOscreenpipe_engine::snapshot_compaction: snapshotcompaction:42 frames,10.5MB4.7MB (2.2x), 42 JPEGs deletedINFOscreenpipe_engine::event_driven_capture:content dedup:WARNsqlx:: query:summary="SELECT id,skippingcapturefor monitor 1 (hash=-7465795543963075308, trigger=click)snapshot_path, device_name,db.statement="\n\nSELECT\n id,\nsnapshot_path, \ndevice_name, \ntimestampsnapshot_path IS NOTNULL\nAND timestamp < ?1\nORDER BY\ndevice_name, \ntimestamp ASC\nLIMIT\n5000\n*rows_affected=0 rows_returned=61 elapsedINFOscreenpipe_engine::snapshot_compaction: snapshotcompaction: found 61eligible framesINFOscreenpipe_engine::snapshot_compaction: snapshotcompaction: 28 frames, 9.6MB→ 1.4MB (6.7x), 28 JPEGs deletedINFOscreenpipe_engine::snapshot_compaction: snapshotcompaction: 31 frames,8.9MB → 2.1MB (4.2x), 31 JPEGs deletedINFOscreenpipe_engine::snapshot_compaction: snapshotcompaction:found 33eligibleframesINFOscreenpipe_engine::snapshot_compaction: snapshotcompaction: 15 frames,5.2MB1.1MB (4.8x), 15 JPEGSdeletedINFOscreenpipe_engzne::snapshot_compactzon:snapshotcompaction: 16 frames,4.6MB1.2MB (3.8x), 16 JPEGs deletedWARNsqlx::query:summary="SELECT id,snapshot_path, device_name,db.statement="\n\nSELECT\nid, \nsnapshot_path, \ndevice_name, \ntimestampsnapshot_path IS NOT NULL\nAND timestamp < ?1\nORDER BY\ndevice_name, \ntimestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned-112 elapseINFOscreenpipe_engine::snapshot_compaction: snapshotcompaction: found 112eligible framesINFOscreenpipe_engine::snapshot_compaction: snapshotcompaction: 49 frames,14.5MB → 2.7MB(5.4x), 49 JPEGs deletedINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 13.6MB 4.6MB (2.9x), 61 JPEGSdeletedINFOscreenpipe_engine::event_driven_capture: content dedup:skipping capture for monitor 2 (hash=-7465795543963075308, trigger=click)INFOscreenpipe_engine::snapshot_compaction: snapshotcompaction: found 22 eligible framesINFOINFOscreenpipe_engine: :snapshot_compaction: snapshot compaction: 10 frames, 3.4MB → 0.8MB (4.4x), 10 JPEGs deletedscreenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames,2.7MB → 0.4MB (6.4x), 10 JPEGs deletedINFO screenpipe_engine::event_driven_capture: content dedup:skipping capture for monitor 2 (hash=5333893760344929860, trigger=visual_change)WARNsqlx::query:summary="SELECT id, snapshot_path, device_name,snapshot_path IS NOT NULL\nAND timestamp < ?1\nORDER BY\n-"db.statement="\n\nSELECT\nid, \nsnapshot_path, \ndevice_name, \ntimestampdevice_name, \ntimestamp ASC\nLIMIT\n5000\n"rows_affected=0 rows_returned=64 elapsedINFOscreenpipe_engine::snapshot_compaction:snapshotcompaction: found 64eligible framesWARNsalx::query:summary="PRAGMA wal_checkpoint(TRUNCATE)"db.statement=""rows_affected=0 rows_returned-1 elapsed=1.761321875sINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 25 frames, 8.6MB → 1.3MB (6.8x), 25 JPEGS deletedINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5333893760344929860, trigger=click)INFOINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5333893760344929860, trigger=click)screenpipe_engine::snapshot_compaction: snapshotcompaction: 37 frames,7.8MB → 3.3MB (2.4x), 37 JPEGs deletedINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8888940631032850566, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8888940631032850566, trigger=click)WARNsqlx::query:summary-"SELECT id, snapshot_path, device_name, _"db.statement="\n\nSELECT\n id, \nsnapshot_path, \ndevice_name, \ntimestampsnapshot_path IS NOT NULL\nAND timestamp < ?1\nORDER BY\ndevice_name, \ntimestamp ASC\nLIMIT\n5000\n" rows_affected-0 rows_returned-35 elapsedINFOscreenpipe_engine::snapshot_compaction:snapshotcompaction: found 35eligible framesINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 14 frames, 4.8MB 1.1MB (4.6x), 14 JPEGs deletedINFOINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 19 frames, 4. 8MB+ 1.9MB (2.5X), 19 JPEGs deletedINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible framesscreenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 8.4MB → 0.9MB (9.2x), 24 JPEGs deletedINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 9.6MB → 4.7MB (2.0x), 44 JPEGs deleted...
|
NULL
|
|
77689
|
1962
|
4
|
2026-04-24T10:27:33.113670+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-24/1777 /Users/lukas/.screenpipe/data/data/2026-04-24/1777026453113_m2.jpg...
|
Firefox
|
[JY-20738] Debug AJ report User Pilot tracking - J [JY-20738] Debug AJ report User Pilot tracking - Jira — Work...
|
1
|
jiminny.atlassian.net/browse/JY-20738
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
[JY-20738] Debug AJ report User Pilot tracking - J [JY-20738] Debug AJ report User Pilot tracking - Jira
JY-20489 | Optimize Nudges - Phase 2 by yalokin-jiminny · Pull Request #11997 · jiminny/app
JY-20489 | Optimize Nudges - Phase 2 by yalokin-jiminny · Pull Request #11997 · jiminny/app
New Tab
New Tab
AI reports promotion pages by nikolay-yankov · Pull Request #11998 · jiminny/app
AI reports promotion pages by nikolay-yankov · Pull Request #11998 · jiminny/app
JY-20738 add debug logs on AJ report UP tracking by LakyLak · Pull Request #12013 · jiminny/app
JY-20738 add debug logs on AJ report UP tracking by LakyLak · Pull Request #12013 · jiminny/app
JY-20157 add not enough activities notification by LakyLak · Pull Request #12011 · jiminny/app
JY-20157 add not enough activities notification by LakyLak · Pull Request #12011 · jiminny/app
Jiminny
Jiminny
Userpilot | Nudge-created
Userpilot | Nudge-created
Pipelines - jiminny/app
Pipelines - jiminny/app
Your 'Not enpough activities' report wasn't generated - [EMAIL] - Jiminny Mail
Your 'Not enpough activities' report wasn't generated - [EMAIL] - Jiminny Mail
Login | Salesforce
Login | Salesforce
New Tab
Customize sidebar
Open Google Gemini (⌃X)
Tabs from other devices
Open history (⇧⌘H)
Open bookmarks (⌘B)
Skip to:
Sidebar
Sidebar
Top Bar
Top Bar
Main Content
Main Content
Collapse sidebar [
Collapse sidebar [
Switch sites or apps
Switch sites or apps
Go to your Jira homepage
Search, press enter to navigate to advanced search with your text query
Create
Create
Rovo Ask Rovo
Ask Rovo
Notifications
Notifications
Notifications
Notifications
Only show unread
Only show unread
Open notifications in a new tab
more
Direct
Direct
Watching
Watching
Yesterday
Yesterday
Nikolay Yankov changed a subtask from Ready for Dev to Done 1 day ago
More information about this user
Nikolay Yankov changed a subtask from Ready for Dev to Done1 day ago
Nikolay Yankov changed a subtask from Ready for Dev to Done
1 day ago
[BE] Endpoint for "I'm interested"
[BE] Endpoint for "I'm interested"
JY-20674 • Done
JY-20674 • Done
Mark as read
+1 assignee update from Nikolay Yankov
+1 assignee update from Nikolay Yankov
Older
Older
Aneliya Angelova changed a work item from In Dev to Done 2 days ago
More information about this user
Aneliya Angelova changed a work item from In Dev to Done2 days ago
Aneliya Angelova changed a work item from In Dev to Done
2 days ago
Generated reports are not listed in AI Reports page for team members when report is shared with a team
Generated reports are not listed in AI Reports page for team members when report is shared with a team
JY-20712 • Done
JY-20712 • Done
Mark as read
+1 assignee update from Aneliya Angelova
+1 assignee update from Aneliya Angelova
Aneliya Angelova changed a work item from Ready for Dev to Done 2 days ago
More information about this user
Aneliya Angelova changed a work item from Ready for Dev to Done2 days ago
Aneliya Angelova changed a work item from Ready for Dev to Done
2 days ago
Recipient of the AI Report is not able to view/download the report from AI Reports page
Recipient of the AI Report is not able to view/download the report from AI Reports page
JY-20720 • Done
JY-20720 • Done
Mark as read
+1 assignee update from Aneliya Angelova
+1 assignee update from Aneliya Angelova
Aneliya Angelova changed a work item from Ready for Dev to Done 3 days ago
More information about this user
Aneliya Angelova changed a work item from Ready for Dev to Done3 days ago
Aneliya Angelova changed a work item from Ready for Dev to Done
3 days ago
Automated reports (kiosk) incorectly displays Teams in AI Reports page > SHARED column
Automated reports (kiosk) incorectly displays Teams in AI Reports page > SHARED column
JY-20719 • Done
JY-20719 • Done
Mark as read...
|
[{"role":"AXRadioButton","text [{"role":"AXRadioButton","text":"[JY-20738] Debug AJ report User Pilot tracking - Jira","depth":4,"bounds":{"left":0.23287898,"top":0.0518755,"width":0.07596409,"height":0.032721467},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":true},{"role":"AXRadioButton","text":"JY-20489 | Optimize Nudges - Phase 2 by yalokin-jiminny · Pull Request #11997 · jiminny/app","depth":4,"bounds":{"left":0.23105054,"top":0.09497207,"width":0.07962101,"height":0.032721467},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"JY-20489 | Optimize Nudges - Phase 2 by yalokin-jiminny · Pull Request #11997 · jiminny/app","depth":5,"bounds":{"left":0.2443484,"top":0.10614525,"width":0.1619016,"height":0.010774142},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"New Tab","depth":4,"bounds":{"left":0.23105054,"top":0.12769353,"width":0.07962101,"height":0.032721467},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"New Tab","depth":5,"bounds":{"left":0.2443484,"top":0.13886672,"width":0.014960106,"height":0.010774142},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"AI reports promotion pages by nikolay-yankov · Pull Request #11998 · jiminny/app","depth":4,"bounds":{"left":0.23105054,"top":0.16041501,"width":0.07962101,"height":0.032721467},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"AI reports promotion pages by nikolay-yankov · Pull Request #11998 · jiminny/app","depth":5,"bounds":{"left":0.2443484,"top":0.17158818,"width":0.14128989,"height":0.010774142},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"JY-20738 add debug logs on AJ report UP tracking by LakyLak · Pull Request #12013 · jiminny/app","depth":4,"bounds":{"left":0.23105054,"top":0.19313647,"width":0.07962101,"height":0.032721467},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"JY-20738 add debug logs on AJ report UP tracking by LakyLak · Pull Request #12013 · jiminny/app","depth":5,"bounds":{"left":0.2443484,"top":0.20430966,"width":0.17087767,"height":0.010774142},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"JY-20157 add not enough activities notification by LakyLak · Pull Request #12011 · jiminny/app","depth":4,"bounds":{"left":0.23105054,"top":0.22585794,"width":0.07962101,"height":0.032721467},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"JY-20157 add not enough activities notification by LakyLak · Pull Request #12011 · jiminny/app","depth":5,"bounds":{"left":0.2443484,"top":0.23703113,"width":0.16356383,"height":0.010774142},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Jiminny","depth":4,"bounds":{"left":0.23105054,"top":0.2585794,"width":0.07962101,"height":0.032721467},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Jiminny","depth":5,"bounds":{"left":0.2443484,"top":0.2697526,"width":0.013131649,"height":0.010774142},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Userpilot | Nudge-created","depth":4,"bounds":{"left":0.23105054,"top":0.29130086,"width":0.07962101,"height":0.032721467},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Userpilot | Nudge-created","depth":5,"bounds":{"left":0.2443484,"top":0.30247405,"width":0.04537899,"height":0.010774142},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Pipelines - jiminny/app","depth":4,"bounds":{"left":0.23105054,"top":0.32402235,"width":0.07962101,"height":0.032721467},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Pipelines - jiminny/app","depth":5,"bounds":{"left":0.2443484,"top":0.33519554,"width":0.039228722,"height":0.010774142},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Your 'Not enpough activities' report wasn't generated - lukas.kovalik@jiminny.com - Jiminny Mail","depth":4,"bounds":{"left":0.23105054,"top":0.3567438,"width":0.07962101,"height":0.032721467},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Your 'Not enpough activities' report wasn't generated - lukas.kovalik@jiminny.com - Jiminny Mail","depth":5,"bounds":{"left":0.2443484,"top":0.367917,"width":0.16821809,"height":0.010774142},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Login | Salesforce","depth":4,"bounds":{"left":0.23105054,"top":0.38946527,"width":0.07962101,"height":0.032721467},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Login | Salesforce","depth":5,"bounds":{"left":0.2443484,"top":0.40063846,"width":0.030917553,"height":0.010774142},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"New Tab","depth":4,"bounds":{"left":0.23387633,"top":0.4237829,"width":0.07413564,"height":0.025538707},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Customize sidebar","depth":6,"bounds":{"left":0.23387633,"top":0.97007185,"width":0.010638298,"height":0.025538707},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open Google Gemini (⌃X)","depth":6,"bounds":{"left":0.24484707,"top":0.97007185,"width":0.010638298,"height":0.025538707},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Tabs from other devices","depth":6,"bounds":{"left":0.25598404,"top":0.97007185,"width":0.010638298,"height":0.025538707},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open history (⇧⌘H)","depth":6,"bounds":{"left":0.26712102,"top":0.97007185,"width":0.010638298,"height":0.025538707},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open bookmarks (⌘B)","depth":6,"bounds":{"left":0.27825797,"top":0.97007185,"width":0.010638298,"height":0.025538707},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Skip to:","depth":9,"bounds":{"left":0.32130983,"top":0.07861133,"width":0.016954787,"height":0.01396648},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"Sidebar","depth":10,"bounds":{"left":0.32130983,"top":0.097765364,"width":0.016954787,"height":0.01396648},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Sidebar","depth":11,"bounds":{"left":0.32130983,"top":0.097765364,"width":0.016954787,"height":0.01396648},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"Top Bar","depth":10,"bounds":{"left":0.32130983,"top":0.11691939,"width":0.016954787,"height":0.01396648},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Top Bar","depth":11,"bounds":{"left":0.32130983,"top":0.11691939,"width":0.016954787,"height":0.01396648},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"Main Content","depth":10,"bounds":{"left":0.32130983,"top":0.13607343,"width":0.029421542,"height":0.01396648},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Main Content","depth":11,"bounds":{"left":0.32130983,"top":0.13607343,"width":0.029421542,"height":0.01396648},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Collapse sidebar [","depth":9,"bounds":{"left":0.3146609,"top":0.057861134,"width":0.010638298,"height":0.025538707},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Collapse sidebar [","depth":11,"bounds":{"left":0.31981382,"top":0.06344773,"width":0.039727394,"height":0.01396648},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXMenuButton","text":"Switch sites or apps","depth":10,"bounds":{"left":0.32662898,"top":0.057861134,"width":0.010638298,"height":0.025538707},"help_text":"","role_description":"menu button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Switch sites or apps","depth":12,"bounds":{"left":0.33178192,"top":0.06344773,"width":0.044215426,"height":0.01396648},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"Go to your Jira homepage","depth":9,"bounds":{"left":0.33992687,"top":0.057861134,"width":0.029421542,"height":0.025538707},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXComboBox","text":"Search, press enter to navigate to advanced search with your text query","depth":11,"bounds":{"left":0.52011305,"top":0.06264964,"width":0.24268617,"height":0.015961692},"help_text":"","placeholder":"Search","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Create","depth":10,"bounds":{"left":0.77111036,"top":0.057861134,"width":0.030086435,"height":0.025538707},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Create","depth":12,"bounds":{"left":0.78241354,"top":0.06384677,"width":0.014793883,"height":0.01396648},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Rovo Ask Rovo","depth":12,"bounds":{"left":0.9119016,"top":0.057861134,"width":0.035904255,"height":0.025538707},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Ask Rovo","depth":14,"bounds":{"left":0.9232048,"top":0.06384677,"width":0.020611702,"height":0.01396648},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Notifications","depth":12,"bounds":{"left":0.94913566,"top":0.057861134,"width":0.010638298,"height":0.025538707},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Notifications","depth":14,"bounds":{"left":0.95428854,"top":0.06344773,"width":0.027759308,"height":0.01396648},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXHeading","text":"Notifications","depth":14,"bounds":{"left":0.78806514,"top":0.11053472,"width":0.048204787,"height":0.022346368},"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Notifications","depth":15,"bounds":{"left":0.78806514,"top":0.110135674,"width":0.048204787,"height":0.023543496},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Only show unread","depth":15,"bounds":{"left":0.87333775,"top":0.114924185,"width":0.039727394,"height":0.01396648},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXCheckBox","text":"Only show unread","depth":15,"bounds":{"left":0.91638964,"top":0.11731844,"width":0.004654255,"height":0.011173184},"help_text":"","role_description":"checkbox","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXLink","text":"Open notifications in a new tab","depth":15,"bounds":{"left":0.9310173,"top":0.108938545,"width":0.010638298,"height":0.025538707},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXMenuButton","text":"more","depth":14,"bounds":{"left":0.94365025,"top":0.108938545,"width":0.010638298,"height":0.025538707},"help_text":"","role_description":"menu button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"Direct","depth":17,"bounds":{"left":0.7854056,"top":0.14724661,"width":0.01861702,"height":0.025538707},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":true},{"role":"AXStaticText","text":"Direct","depth":19,"bounds":{"left":0.78806514,"top":0.15323225,"width":0.013297873,"height":0.01396648},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Watching","depth":17,"bounds":{"left":0.8040226,"top":0.14724661,"width":0.026263298,"height":0.025538707},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Watching","depth":19,"bounds":{"left":0.80668217,"top":0.15323225,"width":0.020944148,"height":0.01396648},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXHeading","text":"Yesterday","depth":18,"bounds":{"left":0.78806514,"top":0.1859537,"width":0.019281914,"height":0.012769354},"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Yesterday","depth":19,"bounds":{"left":0.78806514,"top":0.18635276,"width":0.019281914,"height":0.011971269},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"Nikolay Yankov changed a subtask from Ready for Dev to Done 1 day ago","depth":22,"bounds":{"left":0.7854056,"top":0.20869912,"width":0.16888298,"height":0.114924185},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXMenuButton","text":"More information about this user","depth":23,"bounds":{"left":0.78806514,"top":0.23743017,"width":0.01462766,"height":0.01396648},"help_text":"","role_description":"menu button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXHeading","text":"Nikolay Yankov changed a subtask from Ready for Dev to Done1 day ago","depth":22,"bounds":{"left":0.8053524,"top":0.2150838,"width":0.1356383,"height":0.031923383},"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Nikolay Yankov changed a subtask from Ready for Dev to Done","depth":23,"bounds":{"left":0.8053524,"top":0.21628092,"width":0.12699468,"height":0.029928172},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"1 day ago","depth":23,"bounds":{"left":0.81831783,"top":0.23224261,"width":0.020777926,"height":0.01396648},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"[BE] Endpoint for \"I'm interested\"","depth":22,"bounds":{"left":0.8053524,"top":0.24700718,"width":0.07912234,"height":0.015961692},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"[BE] Endpoint for \"I'm interested\"","depth":25,"bounds":{"left":0.81067157,"top":0.2482043,"width":0.073803194,"height":0.01396648},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"JY-20674 • Done","depth":22,"bounds":{"left":0.8053524,"top":0.26296887,"width":0.032912236,"height":0.015961692},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"JY-20674 • Done","depth":24,"bounds":{"left":0.8053524,"top":0.26496407,"width":0.032912236,"height":0.011971269},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXCheckBox","text":"Mark as read","depth":22,"bounds":{"left":0.9409907,"top":0.2150838,"width":0.010638298,"height":0.025538707},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"+1 assignee update from Nikolay Yankov","depth":23,"bounds":{"left":0.8166556,"top":0.29169992,"width":0.0887633,"height":0.015961692},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"+1 assignee update from Nikolay Yankov","depth":25,"bounds":{"left":0.8166556,"top":0.29289705,"width":0.0887633,"height":0.01396648},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXHeading","text":"Older","depth":18,"bounds":{"left":0.78806514,"top":0.3367917,"width":0.010472074,"height":0.012769354},"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Older","depth":19,"bounds":{"left":0.78806514,"top":0.33719075,"width":0.010472074,"height":0.011971269},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"Aneliya Angelova changed a work item from In Dev to Done 2 days ago","depth":22,"bounds":{"left":0.7854056,"top":0.35953712,"width":0.16888298,"height":0.13088587},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXMenuButton","text":"More information about this user","depth":23,"bounds":{"left":0.78806514,"top":0.38826814,"width":0.01462766,"height":0.01396648},"help_text":"","role_description":"menu button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXHeading","text":"Aneliya Angelova changed a work item from In Dev to Done2 days ago","depth":22,"bounds":{"left":0.8053524,"top":0.3659218,"width":0.1356383,"height":0.031923383},"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Aneliya Angelova changed a work item from In Dev to Done","depth":23,"bounds":{"left":0.8053524,"top":0.36711892,"width":0.11968085,"height":0.029928172},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"2 days ago","depth":23,"bounds":{"left":0.81831783,"top":0.3830806,"width":0.024268618,"height":0.01396648},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"Generated reports are not listed in AI Reports page for team members when report is shared with a team","depth":22,"bounds":{"left":0.8053524,"top":0.39784518,"width":0.1356383,"height":0.031923383},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Generated reports are not listed in AI Reports page for team members when report is shared with a team","depth":25,"bounds":{"left":0.81067157,"top":0.3990423,"width":0.119847074,"height":0.029928172},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"JY-20712 • Done","depth":22,"bounds":{"left":0.8053524,"top":0.42976856,"width":0.032081116,"height":0.015961692},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"JY-20712 • Done","depth":24,"bounds":{"left":0.8053524,"top":0.43176377,"width":0.032081116,"height":0.011971269},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXCheckBox","text":"Mark as read","depth":22,"bounds":{"left":0.9409907,"top":0.3659218,"width":0.010638298,"height":0.025538707},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"+1 assignee update from Aneliya Angelova","depth":23,"bounds":{"left":0.8166556,"top":0.4584996,"width":0.093417555,"height":0.015961692},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"+1 assignee update from Aneliya Angelova","depth":25,"bounds":{"left":0.8166556,"top":0.45969674,"width":0.093417555,"height":0.01396648},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"Aneliya Angelova changed a work item from Ready for Dev to Done 2 days ago","depth":22,"bounds":{"left":0.7854056,"top":0.50319237,"width":0.16888298,"height":0.13088587},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXMenuButton","text":"More information about this user","depth":23,"bounds":{"left":0.78806514,"top":0.5319234,"width":0.01462766,"height":0.01396648},"help_text":"","role_description":"menu button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXHeading","text":"Aneliya Angelova changed a work item from Ready for Dev to Done2 days ago","depth":22,"bounds":{"left":0.8053524,"top":0.50957704,"width":0.1356383,"height":0.031923383},"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Aneliya Angelova changed a work item from Ready for Dev to Done","depth":23,"bounds":{"left":0.8053524,"top":0.51077414,"width":0.13048537,"height":0.029928172},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"2 days ago","depth":23,"bounds":{"left":0.8239694,"top":0.52673584,"width":0.024102394,"height":0.01396648},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"Recipient of the AI Report is not able to view/download the report from AI Reports page","depth":22,"bounds":{"left":0.8053524,"top":0.5415004,"width":0.1356383,"height":0.031923383},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Recipient of the AI Report is not able to view/download the report from AI Reports page","depth":25,"bounds":{"left":0.81067157,"top":0.54269755,"width":0.12948804,"height":0.029928172},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"JY-20720 • Done","depth":22,"bounds":{"left":0.8053524,"top":0.5734238,"width":0.032912236,"height":0.015961692},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"JY-20720 • Done","depth":24,"bounds":{"left":0.8053524,"top":0.575419,"width":0.032912236,"height":0.011971269},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXCheckBox","text":"Mark as read","depth":22,"bounds":{"left":0.9409907,"top":0.50957704,"width":0.010638298,"height":0.025538707},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"+1 assignee update from Aneliya Angelova","depth":23,"bounds":{"left":0.8166556,"top":0.60215485,"width":0.093417555,"height":0.015961692},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"+1 assignee update from Aneliya Angelova","depth":25,"bounds":{"left":0.8166556,"top":0.60335195,"width":0.093417555,"height":0.01396648},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"Aneliya Angelova changed a work item from Ready for Dev to Done 3 days ago","depth":22,"bounds":{"left":0.7854056,"top":0.64684755,"width":0.16888298,"height":0.13088587},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXMenuButton","text":"More information about this user","depth":23,"bounds":{"left":0.78806514,"top":0.6755786,"width":0.01462766,"height":0.01396648},"help_text":"","role_description":"menu button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXHeading","text":"Aneliya Angelova changed a work item from Ready for Dev to Done3 days ago","depth":22,"bounds":{"left":0.8053524,"top":0.6532322,"width":0.1356383,"height":0.031923383},"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Aneliya Angelova changed a work item from Ready for Dev to Done","depth":23,"bounds":{"left":0.8053524,"top":0.6544294,"width":0.13048537,"height":0.029928172},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"3 days ago","depth":23,"bounds":{"left":0.8239694,"top":0.6703911,"width":0.024268618,"height":0.01396648},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"Automated reports (kiosk) incorectly displays Teams in AI Reports page > SHARED column","depth":22,"bounds":{"left":0.8053524,"top":0.68515563,"width":0.1356383,"height":0.031923383},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Automated reports (kiosk) incorectly displays Teams in AI Reports page > SHARED column","depth":25,"bounds":{"left":0.81067157,"top":0.6863527,"width":0.1271609,"height":0.029928172},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"JY-20719 • Done","depth":22,"bounds":{"left":0.8053524,"top":0.717079,"width":0.032081116,"height":0.015961692},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"JY-20719 • Done","depth":24,"bounds":{"left":0.8053524,"top":0.71907425,"width":0.032081116,"height":0.011971269},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXCheckBox","text":"Mark as read","depth":22,"bounds":{"left":0.9409907,"top":0.6532322,"width":0.010638298,"height":0.025538707},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false}]...
|
-8997101393745471283
|
-5854298779922509076
|
visual_change
|
accessibility
|
NULL
|
[JY-20738] Debug AJ report User Pilot tracking - J [JY-20738] Debug AJ report User Pilot tracking - Jira
JY-20489 | Optimize Nudges - Phase 2 by yalokin-jiminny · Pull Request #11997 · jiminny/app
JY-20489 | Optimize Nudges - Phase 2 by yalokin-jiminny · Pull Request #11997 · jiminny/app
New Tab
New Tab
AI reports promotion pages by nikolay-yankov · Pull Request #11998 · jiminny/app
AI reports promotion pages by nikolay-yankov · Pull Request #11998 · jiminny/app
JY-20738 add debug logs on AJ report UP tracking by LakyLak · Pull Request #12013 · jiminny/app
JY-20738 add debug logs on AJ report UP tracking by LakyLak · Pull Request #12013 · jiminny/app
JY-20157 add not enough activities notification by LakyLak · Pull Request #12011 · jiminny/app
JY-20157 add not enough activities notification by LakyLak · Pull Request #12011 · jiminny/app
Jiminny
Jiminny
Userpilot | Nudge-created
Userpilot | Nudge-created
Pipelines - jiminny/app
Pipelines - jiminny/app
Your 'Not enpough activities' report wasn't generated - [EMAIL] - Jiminny Mail
Your 'Not enpough activities' report wasn't generated - [EMAIL] - Jiminny Mail
Login | Salesforce
Login | Salesforce
New Tab
Customize sidebar
Open Google Gemini (⌃X)
Tabs from other devices
Open history (⇧⌘H)
Open bookmarks (⌘B)
Skip to:
Sidebar
Sidebar
Top Bar
Top Bar
Main Content
Main Content
Collapse sidebar [
Collapse sidebar [
Switch sites or apps
Switch sites or apps
Go to your Jira homepage
Search, press enter to navigate to advanced search with your text query
Create
Create
Rovo Ask Rovo
Ask Rovo
Notifications
Notifications
Notifications
Notifications
Only show unread
Only show unread
Open notifications in a new tab
more
Direct
Direct
Watching
Watching
Yesterday
Yesterday
Nikolay Yankov changed a subtask from Ready for Dev to Done 1 day ago
More information about this user
Nikolay Yankov changed a subtask from Ready for Dev to Done1 day ago
Nikolay Yankov changed a subtask from Ready for Dev to Done
1 day ago
[BE] Endpoint for "I'm interested"
[BE] Endpoint for "I'm interested"
JY-20674 • Done
JY-20674 • Done
Mark as read
+1 assignee update from Nikolay Yankov
+1 assignee update from Nikolay Yankov
Older
Older
Aneliya Angelova changed a work item from In Dev to Done 2 days ago
More information about this user
Aneliya Angelova changed a work item from In Dev to Done2 days ago
Aneliya Angelova changed a work item from In Dev to Done
2 days ago
Generated reports are not listed in AI Reports page for team members when report is shared with a team
Generated reports are not listed in AI Reports page for team members when report is shared with a team
JY-20712 • Done
JY-20712 • Done
Mark as read
+1 assignee update from Aneliya Angelova
+1 assignee update from Aneliya Angelova
Aneliya Angelova changed a work item from Ready for Dev to Done 2 days ago
More information about this user
Aneliya Angelova changed a work item from Ready for Dev to Done2 days ago
Aneliya Angelova changed a work item from Ready for Dev to Done
2 days ago
Recipient of the AI Report is not able to view/download the report from AI Reports page
Recipient of the AI Report is not able to view/download the report from AI Reports page
JY-20720 • Done
JY-20720 • Done
Mark as read
+1 assignee update from Aneliya Angelova
+1 assignee update from Aneliya Angelova
Aneliya Angelova changed a work item from Ready for Dev to Done 3 days ago
More information about this user
Aneliya Angelova changed a work item from Ready for Dev to Done3 days ago
Aneliya Angelova changed a work item from Ready for Dev to Done
3 days ago
Automated reports (kiosk) incorectly displays Teams in AI Reports page > SHARED column
Automated reports (kiosk) incorectly displays Teams in AI Reports page > SHARED column
JY-20719 • Done
JY-20719 • Done
Mark as read...
|
77688
|
|
15079
|
338
|
5
|
2026-04-14T14:22:39.465976+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776176559465_m1.jpg...
|
NULL
|
NULL
|
1
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
FirefoxFileEdit→ViewHistoryBookmarksProfilesToolsW FirefoxFileEdit→ViewHistoryBookmarksProfilesToolsWindowHelpmeet.google.com/bdj-nvho-b1ah|sinny.comRetro - Platform • 53 m left100% 278•Tue 14 Apr 17:22:3921:46õ0Aneliya AngelovaNikolay YankovSteliyan GeorgievNikolay lvanoyLukas Kovalik5:22 PM | Retro - Platform...
|
NULL
|
-8995753269656008256
|
NULL
|
visual_change
|
ocr
|
NULL
|
FirefoxFileEdit→ViewHistoryBookmarksProfilesToolsW FirefoxFileEdit→ViewHistoryBookmarksProfilesToolsWindowHelpmeet.google.com/bdj-nvho-b1ah|sinny.comRetro - Platform • 53 m left100% 278•Tue 14 Apr 17:22:3921:46õ0Aneliya AngelovaNikolay YankovSteliyan GeorgievNikolay lvanoyLukas Kovalik5:22 PM | Retro - Platform...
|
NULL
|
|
59345
|
NULL
|
0
|
2026-04-20T13:40:31.325174+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-20/1776 /Users/lukas/.screenpipe/data/data/2026-04-20/1776692431325_m1.jpg...
|
Firefox
|
Firefox
|
1
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
Firefox•FileEdit→ViewHistoryCGalya Dimitrova (Pres Firefox•FileEdit→ViewHistoryCGalya Dimitrova (Presenting, annotating)BookmarksProfilesToolsWindowHelpmeet.google.com/cxs-eips-npt?authuser=0laal100% <78• Mon 20 Apr 16:40:31=888ChromeFileEditViewHistoryBookmarksProfilesTabWindowHelpComG, Prod xx | # Disc x | G Cres x| ® Chat xProсXapp.jiminny.com/ondemand?min_duration=1&only_recorded=1&sequence_number=1• Jiminny Prodminny tu frodJiminny Mercury• Jiminny Staging• Jiminny Saturn Jiminny QAI• Jiminny QA1, Ask Jiminny203 MaK52-A Q 8• Mon 20 Apr 16:40) The! xCow:• HowLx MO x• Jmir x& WorkO 1Password1 Userpilot Salesforce Outlook HubSpot|Settings• Add new |#i < Competitor Feedback V2Finish updateSaveXINikolay NikolovGalya DimitrovaHey Galya,It's Jiminny here, how can 1.13 othersPlease noteAnalysis will InoludeNikolay Yankovmeet.google.com is sharing your screen.Stop sharingHide4:40 PM | [Platform] Refinement'Lukas Kovalik1:38:42...
|
NULL
|
-8995524026480270751
|
NULL
|
visual_change
|
ocr
|
NULL
|
Firefox•FileEdit→ViewHistoryCGalya Dimitrova (Pres Firefox•FileEdit→ViewHistoryCGalya Dimitrova (Presenting, annotating)BookmarksProfilesToolsWindowHelpmeet.google.com/cxs-eips-npt?authuser=0laal100% <78• Mon 20 Apr 16:40:31=888ChromeFileEditViewHistoryBookmarksProfilesTabWindowHelpComG, Prod xx | # Disc x | G Cres x| ® Chat xProсXapp.jiminny.com/ondemand?min_duration=1&only_recorded=1&sequence_number=1• Jiminny Prodminny tu frodJiminny Mercury• Jiminny Staging• Jiminny Saturn Jiminny QAI• Jiminny QA1, Ask Jiminny203 MaK52-A Q 8• Mon 20 Apr 16:40) The! xCow:• HowLx MO x• Jmir x& WorkO 1Password1 Userpilot Salesforce Outlook HubSpot|Settings• Add new |#i < Competitor Feedback V2Finish updateSaveXINikolay NikolovGalya DimitrovaHey Galya,It's Jiminny here, how can 1.13 othersPlease noteAnalysis will InoludeNikolay Yankovmeet.google.com is sharing your screen.Stop sharingHide4:40 PM | [Platform] Refinement'Lukas Kovalik1:38:42...
|
NULL
|
|
31937
|
649
|
49
|
2026-04-16T06:44:20.504715+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-16/1776 /Users/lukas/.screenpipe/data/data/2026-04-16/1776321860504_m2.jpg...
|
NULL
|
NULL
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
FirefoxFileM°Z For you - Confluence(6) Lukas Koval FirefoxFileM°Z For you - Confluence(6) Lukas Kovalik - Time Offu Product Growth Plattorm Userpilo" Userpilot(fix(security): composer dependend(8 JiminnyNew TabJy 20541 cleanup stale purged+ New TabViewHistoryBookmarksProfilesToolsWindow Helpgithub.com/jiminny/app/pull/11879/changes#diff-33db27024bef9d20cc4e1d8aea216a8ac5a37ea28bc1d07f1061629463c2db7f~ Google Gemini...Jy 20541 cleanup stale purged crm objects #1187987 OpenAll commits - | Vasil-Jiminny wants to merge 37 commits into master from JY-20541-cLeanup-stale-purged-crm-objects [without an ID).• The Sync Attempt: It uses PHP's matchexpression to call the correct syncmethod on the $crmService based onwhat type of object it is ( Lead,Account, Contact, or Opportunity).• Success Handling: If the remote CRMreturns the object, it calls$synced0bject->touch() . In Laravel-based frameworks, touch() simplyupdates the updated_at timestamp tothe current date and time. This marks therecord as "fresh" again so it won't bechecked for another 120 days.• Missing Records: If the remote systemreturns null, or throws anHttpNotFoundException (a 404 errorindicating the record was deletedremotely), it catches this and triggerspurgeStaleRecord()• Error Handling: If a generic Exceptionoccurs (like a network timeout or a 500server error), it logs the error but safelyreturns the old object. This preventsaccidental deletions during temporaryAPl outages.3. purgeStaleRecord() (The Cleanup)This method is called when the systemconfirms the record no longer exists in theremote CRM.• Logging: It logs that the record wasn'tfound remotely.• Event Dispatching: It dispatches anevent called RemoteCrmRecordDeletedThis is a crucial design pattern. Instead of• Enter a prompt for GeminiProapp/Services/Crm/CrmObiects/Validators/StaleRecordValidator.php [app/Services/Crm/CachedCrmServiceDecorator.php L@ -208,11 +208,12 @ private function matchByProspectIdentifier(208210211212213214215$prospectData = $this->prospectCache->findByProspectIdentifier(scontiguration,$profile,$identifierType,$identifierValue,susersa,216218if (SprospectData !== null) {app/Services/Crm/ProspectCache.php d@a -7,6 +7,7 cause ChaseConey\LaravelDatadogHelper\Datadog;use Illuminate\Contracts\Cache\Repository;use IlluminatelSupport\Facades\App;use Jiminny\Events\Crm\ProspectUpdated;use Jiminny\Models\Account;use Jiminny\Models\Contact;@ -17,6 +18,7 €use Jiminny\Models\Stage;use Jiminny\Repositories\Crm\ContactRoleRepository;use Jiminny\Repositories\Crm\OpportunityRepository;use Jiminny\Services\Crm\Salestorce\Opportun1tyMatcher \MatchBus1nessAccount;use Psr\Log\LoggerInterface;@ -34,24 +36,14 @@ class ProspectCacheprivate const suring Lookur_kesull_ub = db;private const string LOOKUP_RESULT_MISS = 'miss';private FindsProspectInterface $dbCache;private Repository $cache;private OpportunityRepository $opportunityRepository;private EmailHelper SemailHelper;private LoggerInterface $logger;Your Jiminny chats aren't used to improve our models. Gemini is Alane can make mistakes, Inciualne aoout peodleYour privacy & Geminipublic tunction _constructlFindsProspectInterface $dbCache,kepositorv scache,OpportunityRepository $opportunityRepository,EmailHelper SemailHelper,LoggerInterface $loggerSummarize pagekemorecrmkecoraDeleredListener^V _ Highlight All Match Case Match Diacritics Whole Words 5 of 15 matches2082092101211212213214215216217218219< 40 ll | Daily - Platform • in 1mA100% CS•Thu 16 Apr 9:44:20• 6 / 12 viewedAwallind aporovali+izo bubbe+6 -5 0022v Viewed$prospectData = $this->prospectCache->findByProspectIdentifier(contlquracion: scontiauracion,profile: $profile,identifierType: $identifierType,identifierValue: $identifierValue,userId: $userId,crmService: $this->crmServiceif ($prospectData !== null) &+19 -19 22LaVieweduse ChaseConey\LaravelDatadogHelper\Datadog;use Illuminate\Contracts\Cache\Repository;use IlluminatelSupport\Facades\App;+ use Jiminny\Contracts\Services\Crm\SyncCrmEntitiesInterface;use Jiminny\Events\Crm\ProspectUpdated;use Jiminny|Models\Account;use Jiminny\Models\Contact;use Jiminny\Models|Stage;use Jiminny|Repositories\Crm\ContactRoleRepository;use Jiminny|Repositories\Crm\OpportunityRepository;+ use Jiminny\Services\Crm\Crm0bjects\Validators\StaleRecordValidator;use Jiminny\Services\Crm\Salestorce\OpportunityMatcher\MatchBus1nessAccount;use Psr\Log\LoggerInterface;private const string LooKur_kesull_ub = "dd;private const string LOOKUP_RESULT_MISS = 'miss';public function _construct(private readonly FindsProspectInterface $dbCache,privare readonly kepositorvscache,private readonly OpportunityRepository $opportunityRepository,private readonly EmailHelper$emailHelper,private readonly LoggerInterface$logger,...
|
NULL
|
-8995458692047263738
|
NULL
|
click
|
ocr
|
NULL
|
FirefoxFileM°Z For you - Confluence(6) Lukas Koval FirefoxFileM°Z For you - Confluence(6) Lukas Kovalik - Time Offu Product Growth Plattorm Userpilo" Userpilot(fix(security): composer dependend(8 JiminnyNew TabJy 20541 cleanup stale purged+ New TabViewHistoryBookmarksProfilesToolsWindow Helpgithub.com/jiminny/app/pull/11879/changes#diff-33db27024bef9d20cc4e1d8aea216a8ac5a37ea28bc1d07f1061629463c2db7f~ Google Gemini...Jy 20541 cleanup stale purged crm objects #1187987 OpenAll commits - | Vasil-Jiminny wants to merge 37 commits into master from JY-20541-cLeanup-stale-purged-crm-objects [without an ID).• The Sync Attempt: It uses PHP's matchexpression to call the correct syncmethod on the $crmService based onwhat type of object it is ( Lead,Account, Contact, or Opportunity).• Success Handling: If the remote CRMreturns the object, it calls$synced0bject->touch() . In Laravel-based frameworks, touch() simplyupdates the updated_at timestamp tothe current date and time. This marks therecord as "fresh" again so it won't bechecked for another 120 days.• Missing Records: If the remote systemreturns null, or throws anHttpNotFoundException (a 404 errorindicating the record was deletedremotely), it catches this and triggerspurgeStaleRecord()• Error Handling: If a generic Exceptionoccurs (like a network timeout or a 500server error), it logs the error but safelyreturns the old object. This preventsaccidental deletions during temporaryAPl outages.3. purgeStaleRecord() (The Cleanup)This method is called when the systemconfirms the record no longer exists in theremote CRM.• Logging: It logs that the record wasn'tfound remotely.• Event Dispatching: It dispatches anevent called RemoteCrmRecordDeletedThis is a crucial design pattern. Instead of• Enter a prompt for GeminiProapp/Services/Crm/CrmObiects/Validators/StaleRecordValidator.php [app/Services/Crm/CachedCrmServiceDecorator.php L@ -208,11 +208,12 @ private function matchByProspectIdentifier(208210211212213214215$prospectData = $this->prospectCache->findByProspectIdentifier(scontiguration,$profile,$identifierType,$identifierValue,susersa,216218if (SprospectData !== null) {app/Services/Crm/ProspectCache.php d@a -7,6 +7,7 cause ChaseConey\LaravelDatadogHelper\Datadog;use Illuminate\Contracts\Cache\Repository;use IlluminatelSupport\Facades\App;use Jiminny\Events\Crm\ProspectUpdated;use Jiminny\Models\Account;use Jiminny\Models\Contact;@ -17,6 +18,7 €use Jiminny\Models\Stage;use Jiminny\Repositories\Crm\ContactRoleRepository;use Jiminny\Repositories\Crm\OpportunityRepository;use Jiminny\Services\Crm\Salestorce\Opportun1tyMatcher \MatchBus1nessAccount;use Psr\Log\LoggerInterface;@ -34,24 +36,14 @@ class ProspectCacheprivate const suring Lookur_kesull_ub = db;private const string LOOKUP_RESULT_MISS = 'miss';private FindsProspectInterface $dbCache;private Repository $cache;private OpportunityRepository $opportunityRepository;private EmailHelper SemailHelper;private LoggerInterface $logger;Your Jiminny chats aren't used to improve our models. Gemini is Alane can make mistakes, Inciualne aoout peodleYour privacy & Geminipublic tunction _constructlFindsProspectInterface $dbCache,kepositorv scache,OpportunityRepository $opportunityRepository,EmailHelper SemailHelper,LoggerInterface $loggerSummarize pagekemorecrmkecoraDeleredListener^V _ Highlight All Match Case Match Diacritics Whole Words 5 of 15 matches2082092101211212213214215216217218219< 40 ll | Daily - Platform • in 1mA100% CS•Thu 16 Apr 9:44:20• 6 / 12 viewedAwallind aporovali+izo bubbe+6 -5 0022v Viewed$prospectData = $this->prospectCache->findByProspectIdentifier(contlquracion: scontiauracion,profile: $profile,identifierType: $identifierType,identifierValue: $identifierValue,userId: $userId,crmService: $this->crmServiceif ($prospectData !== null) &+19 -19 22LaVieweduse ChaseConey\LaravelDatadogHelper\Datadog;use Illuminate\Contracts\Cache\Repository;use IlluminatelSupport\Facades\App;+ use Jiminny\Contracts\Services\Crm\SyncCrmEntitiesInterface;use Jiminny\Events\Crm\ProspectUpdated;use Jiminny|Models\Account;use Jiminny\Models\Contact;use Jiminny\Models|Stage;use Jiminny|Repositories\Crm\ContactRoleRepository;use Jiminny|Repositories\Crm\OpportunityRepository;+ use Jiminny\Services\Crm\Crm0bjects\Validators\StaleRecordValidator;use Jiminny\Services\Crm\Salestorce\OpportunityMatcher\MatchBus1nessAccount;use Psr\Log\LoggerInterface;private const string LooKur_kesull_ub = "dd;private const string LOOKUP_RESULT_MISS = 'miss';public function _construct(private readonly FindsProspectInterface $dbCache,privare readonly kepositorvscache,private readonly OpportunityRepository $opportunityRepository,private readonly EmailHelper$emailHelper,private readonly LoggerInterface$logger,...
|
31935
|
|
54852
|
1183
|
56
|
2026-04-20T09:21:32.573095+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-20/1776 /Users/lukas/.screenpipe/data/data/2026-04-20/1776676892573_m1.jpg...
|
Firefox
|
Jiminny — Work
|
1
|
app.dev.jiminny.com/ai-reports/manage
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
Platform Sprint 2 Q2 - Platform Team - Scrum Board Platform Sprint 2 Q2 - Platform Team - Scrum Board - Jira
JY-20553 | Improve crm-sync delays by yalokin-jiminny · Pull Request #11976 · jiminny/app
JY-20553 | Improve crm-sync delays by yalokin-jiminny · Pull Request #11976 · jiminny/app
[SRD-6793] Les Mills activity types not pulling in - Jira
[SRD-6793] Les Mills activity types not pulling in - Jira
JY-20698 handle failed field sync on playbook import activity types by LakyLak · Pull Request #11988 · jiminny/app
JY-20698 handle failed field sync on playbook import activity types by LakyLak · Pull Request #11988 · jiminny/app
JY-20692 change confirmation parameter by LakyLak · Pull Request #11986 · jiminny/app
JY-20692 change confirmation parameter by LakyLak · Pull Request #11986 · jiminny/app
[JY-20543] AJ Reports > Tracking - Jira
[JY-20543] AJ Reports > Tracking - Jira
[JY-18909] [Part2] Automated reports with Ask Jiminny - Jira
[JY-18909] [Part2] Automated reports with Ask Jiminny - Jira
Ask Jiminny Reports by nikolay-yankov · Pull Request #11894 · jiminny/app
Ask Jiminny Reports by nikolay-yankov · Pull Request #11894 · jiminny/app
New Tab
New Tab
Product Growth Platform | Userpilot
Product Growth Platform | Userpilot
Userpilot | Logged-activity
Userpilot | Logged-activity
fix(security): composer dependency updates – 2026-04-15 by github-actions[bot] · Pull Request #11970 · jiminny/app
fix(security): composer dependency updates – 2026-04-15 by github-actions[bot] · Pull Request #11970 · jiminny/app
Pipelines - jiminny/app
Pipelines - jiminny/app
Feed — jiminny — Sentry
Feed — jiminny — Sentry
fix(security): composer dependency updates – 2026-04-15 by github-actions[bot] · Pull Request #11970 · jiminny/app
fix(security): composer dependency updates – 2026-04-15 by github-actions[bot] · Pull Request #11970 · jiminny/app
Jiminny
Jiminny
Close tab
Jiminny
Jiminny
Jiminny
Jiminny
New Tab
Customize sidebar
Open Google Gemini (⌃X)
Tabs from other devices
Open history (⇧⌘H)
Open bookmarks (⌘B)
Ask Jiminny Reports
Ask Jiminny Reports
Create
Report name
Prompt Prompt
Prompt
Prompt
Saved search Saved search
Saved search
Saved search
All statuses All statuses
All statuses
All statuses
Clear all
NAME
FREQUENCY
SHARED
EXPIRING
ACTIONS
Exp
Daily
20/04/2027
Monthly Ask J Report
Monthly
Jiminny Mobile SA
30/06/2026
Search One
Daily
Jiminny Mobile SA
30/04/2026
Edit report
Save
Report definition saved
Close notification
Clear
Filter URLs
Pause/Resume recording network log
New Request
Search
Request Blocking
All
HTML
CSS
JS
XHR
Fonts
Images
Media
WS
Other
Disable Cache
Disable Cache
No Throttling
Network Settings
Status
Status
Method
Method
Domain
Domain
File
File
Initiator
Initiator
Type
Type
Transferred
Transferred
Size
Size
0 ms
0 ms
200
GET
app.dev.jiminny.com
form-data
xhr
json
7.56 kB
10.67 kB
589 ms
200
POST
app.dev.jiminny.com
aj-reports
xhr
json
3.03 kB
493 B
496 ms
GET
app.dev.jiminny.com
7361706f-ffbe-4d3d-a22b-9fab33d05094
xhr
Status
Status
200
Method
Method
GET
Domain
Domain
app.dev.jiminny.com
File
File
form-data
Initiator
Initiator
xhr
Type
Type
json
Transferred
Transferred
7.56 kB
Size
Size
10.67 kB
0 ms
0 ms
589 ms
Start performance analysis
3 requests
11.16 kB / 10.59 kB transferred
Finish: 30.21 s...
|
[{"role":"AXRadioButton","text [{"role":"AXRadioButton","text":"Platform Sprint 2 Q2 - Platform Team - Scrum Board - Jira","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"JY-20553 | Improve crm-sync delays by yalokin-jiminny · Pull Request #11976 · jiminny/app","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"JY-20553 | Improve crm-sync delays by yalokin-jiminny · Pull Request #11976 · jiminny/app","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"[SRD-6793] Les Mills activity types not pulling in - Jira","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"[SRD-6793] Les Mills activity types not pulling in - Jira","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"JY-20698 handle failed field sync on playbook import activity types by LakyLak · Pull Request #11988 · jiminny/app","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"JY-20698 handle failed field sync on playbook import activity types by LakyLak · Pull Request #11988 · jiminny/app","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"JY-20692 change confirmation parameter by LakyLak · Pull Request #11986 · jiminny/app","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"JY-20692 change confirmation parameter by LakyLak · Pull Request #11986 · jiminny/app","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"[JY-20543] AJ Reports > Tracking - Jira","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"[JY-20543] AJ Reports > Tracking - Jira","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"[JY-18909] [Part2] Automated reports with Ask Jiminny - Jira","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"[JY-18909] [Part2] Automated reports with Ask Jiminny - Jira","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Ask Jiminny Reports by nikolay-yankov · Pull Request #11894 · jiminny/app","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Ask Jiminny Reports by nikolay-yankov · Pull Request #11894 · jiminny/app","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"New Tab","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"New Tab","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Product Growth Platform | Userpilot","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Product Growth Platform | Userpilot","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Userpilot | Logged-activity","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Userpilot | Logged-activity","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"fix(security): composer dependency updates – 2026-04-15 by github-actions[bot] · Pull Request #11970 · jiminny/app","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"fix(security): composer dependency updates – 2026-04-15 by github-actions[bot] · Pull Request #11970 · jiminny/app","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Pipelines - jiminny/app","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Pipelines - jiminny/app","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Feed — jiminny — Sentry","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Feed — jiminny — Sentry","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"fix(security): composer dependency updates – 2026-04-15 by github-actions[bot] · Pull Request #11970 · jiminny/app","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"fix(security): composer dependency updates – 2026-04-15 by github-actions[bot] · Pull Request #11970 · jiminny/app","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Jiminny","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":true},{"role":"AXStaticText","text":"Jiminny","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Close tab","depth":5,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"Jiminny","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Jiminny","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Jiminny","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Jiminny","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"New Tab","depth":4,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Customize sidebar","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open Google Gemini (⌃X)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Tabs from other devices","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open history (⇧⌘H)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open bookmarks (⌘B)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXHeading","text":"Ask Jiminny Reports","depth":10,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Ask Jiminny Reports","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Create","depth":10,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXTextField","text":"Report name","depth":11,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXComboBox","text":"Prompt Prompt","depth":10,"value":"Prompt Prompt","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Prompt","depth":11,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Prompt","depth":12,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"Saved search Saved search","depth":10,"value":"Saved search Saved search","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"Saved search","depth":11,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Saved search","depth":12,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXComboBox","text":"All statuses All statuses","depth":10,"value":"All statuses All statuses","help_text":"","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextField","text":"All statuses","depth":11,"help_text":"","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"All statuses","depth":12,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Clear all","depth":10,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"NAME","depth":12,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"FREQUENCY","depth":12,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"SHARED","depth":12,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"EXPIRING","depth":12,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"ACTIONS","depth":12,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Exp","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Daily","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"20/04/2027","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Monthly Ask J Report","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Monthly","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Jiminny Mobile SA","depth":15,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"30/06/2026","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Search One","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Daily","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Jiminny Mobile SA","depth":15,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"30/04/2026","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Edit report","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Save","depth":12,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":false,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Report definition saved","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Close notification","depth":10,"bounds":{"left":0.0,"top":0.0,"width":0.013888889,"height":0.022222223},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Clear","depth":16,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXTextField","text":"Filter URLs","depth":16,"help_text":"","role_description":"search text field","subrole":"AXSearchField","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Pause/Resume recording network log","depth":16,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"New Request","depth":16,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Search","depth":16,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Request Blocking","depth":16,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"All","depth":17,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"HTML","depth":17,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"CSS","depth":17,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"JS","depth":17,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"XHR","depth":17,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Fonts","depth":17,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Images","depth":17,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Media","depth":17,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"WS","depth":17,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Other","depth":17,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Disable Cache","depth":17,"help_text":"","role_description":"checkbox","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Disable Cache","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"No Throttling","depth":16,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Network Settings","depth":16,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Status","depth":24,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Status","depth":26,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Method","depth":24,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Method","depth":26,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Domain","depth":24,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Domain","depth":26,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"File","depth":24,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"File","depth":26,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Initiator","depth":24,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Initiator","depth":26,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Type","depth":24,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Type","depth":26,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Transferred","depth":24,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Transferred","depth":26,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Size","depth":24,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Size","depth":26,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"0 ms","depth":24,"help_text":"Timeline","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"0 ms","depth":27,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"200","depth":24,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"GET","depth":24,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"app.dev.jiminny.com","depth":24,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"form-data","depth":25,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"xhr","depth":24,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"json","depth":24,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"7.56 kB","depth":24,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"10.67 kB","depth":24,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"589 ms","depth":25,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"200","depth":24,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"POST","depth":24,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"app.dev.jiminny.com","depth":24,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"aj-reports","depth":25,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"xhr","depth":24,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"json","depth":24,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"3.03 kB","depth":24,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"493 B","depth":24,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"496 ms","depth":25,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"GET","depth":24,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"app.dev.jiminny.com","depth":24,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"7361706f-ffbe-4d3d-a22b-9fab33d05094","depth":25,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"xhr","depth":24,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Status","depth":23,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Status","depth":25,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"200","depth":23,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Method","depth":23,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Method","depth":25,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"GET","depth":23,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Domain","depth":23,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Domain","depth":25,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"app.dev.jiminny.com","depth":23,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"File","depth":23,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"File","depth":25,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"form-data","depth":24,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Initiator","depth":23,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Initiator","depth":25,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"xhr","depth":23,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Type","depth":23,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Type","depth":25,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"json","depth":23,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Transferred","depth":23,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Transferred","depth":25,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"7.56 kB","depth":23,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Size","depth":23,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Size","depth":25,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"10.67 kB","depth":23,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"0 ms","depth":23,"help_text":"Timeline","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"0 ms","depth":26,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"589 ms","depth":24,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Start performance analysis","depth":20,"bounds":{"left":0.5694444,"top":0.0,"width":0.016666668,"height":0.022222223},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"3 requests","depth":21,"bounds":{"left":0.59375,"top":0.0,"width":0.038541667,"height":0.015},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"11.16 kB / 10.59 kB transferred","depth":21,"bounds":{"left":0.646875,"top":0.0,"width":0.11597222,"height":0.015},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Finish: 30.21 s","depth":21,"bounds":{"left":0.77743053,"top":0.0,"width":0.054166667,"height":0.015},"help_text":"","role_description":"text","subrole":"AXUnknown"}]...
|
-8995110902057489676
|
8508817025592600311
|
click
|
accessibility
|
NULL
|
Platform Sprint 2 Q2 - Platform Team - Scrum Board Platform Sprint 2 Q2 - Platform Team - Scrum Board - Jira
JY-20553 | Improve crm-sync delays by yalokin-jiminny · Pull Request #11976 · jiminny/app
JY-20553 | Improve crm-sync delays by yalokin-jiminny · Pull Request #11976 · jiminny/app
[SRD-6793] Les Mills activity types not pulling in - Jira
[SRD-6793] Les Mills activity types not pulling in - Jira
JY-20698 handle failed field sync on playbook import activity types by LakyLak · Pull Request #11988 · jiminny/app
JY-20698 handle failed field sync on playbook import activity types by LakyLak · Pull Request #11988 · jiminny/app
JY-20692 change confirmation parameter by LakyLak · Pull Request #11986 · jiminny/app
JY-20692 change confirmation parameter by LakyLak · Pull Request #11986 · jiminny/app
[JY-20543] AJ Reports > Tracking - Jira
[JY-20543] AJ Reports > Tracking - Jira
[JY-18909] [Part2] Automated reports with Ask Jiminny - Jira
[JY-18909] [Part2] Automated reports with Ask Jiminny - Jira
Ask Jiminny Reports by nikolay-yankov · Pull Request #11894 · jiminny/app
Ask Jiminny Reports by nikolay-yankov · Pull Request #11894 · jiminny/app
New Tab
New Tab
Product Growth Platform | Userpilot
Product Growth Platform | Userpilot
Userpilot | Logged-activity
Userpilot | Logged-activity
fix(security): composer dependency updates – 2026-04-15 by github-actions[bot] · Pull Request #11970 · jiminny/app
fix(security): composer dependency updates – 2026-04-15 by github-actions[bot] · Pull Request #11970 · jiminny/app
Pipelines - jiminny/app
Pipelines - jiminny/app
Feed — jiminny — Sentry
Feed — jiminny — Sentry
fix(security): composer dependency updates – 2026-04-15 by github-actions[bot] · Pull Request #11970 · jiminny/app
fix(security): composer dependency updates – 2026-04-15 by github-actions[bot] · Pull Request #11970 · jiminny/app
Jiminny
Jiminny
Close tab
Jiminny
Jiminny
Jiminny
Jiminny
New Tab
Customize sidebar
Open Google Gemini (⌃X)
Tabs from other devices
Open history (⇧⌘H)
Open bookmarks (⌘B)
Ask Jiminny Reports
Ask Jiminny Reports
Create
Report name
Prompt Prompt
Prompt
Prompt
Saved search Saved search
Saved search
Saved search
All statuses All statuses
All statuses
All statuses
Clear all
NAME
FREQUENCY
SHARED
EXPIRING
ACTIONS
Exp
Daily
20/04/2027
Monthly Ask J Report
Monthly
Jiminny Mobile SA
30/06/2026
Search One
Daily
Jiminny Mobile SA
30/04/2026
Edit report
Save
Report definition saved
Close notification
Clear
Filter URLs
Pause/Resume recording network log
New Request
Search
Request Blocking
All
HTML
CSS
JS
XHR
Fonts
Images
Media
WS
Other
Disable Cache
Disable Cache
No Throttling
Network Settings
Status
Status
Method
Method
Domain
Domain
File
File
Initiator
Initiator
Type
Type
Transferred
Transferred
Size
Size
0 ms
0 ms
200
GET
app.dev.jiminny.com
form-data
xhr
json
7.56 kB
10.67 kB
589 ms
200
POST
app.dev.jiminny.com
aj-reports
xhr
json
3.03 kB
493 B
496 ms
GET
app.dev.jiminny.com
7361706f-ffbe-4d3d-a22b-9fab33d05094
xhr
Status
Status
200
Method
Method
GET
Domain
Domain
app.dev.jiminny.com
File
File
form-data
Initiator
Initiator
xhr
Type
Type
json
Transferred
Transferred
7.56 kB
Size
Size
10.67 kB
0 ms
0 ms
589 ms
Start performance analysis
3 requests
11.16 kB / 10.59 kB transferred
Finish: 30.21 s...
|
54848
|
|
40240
|
834
|
6
|
2026-04-16T15:39:51.956036+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-16/1776 /Users/lukas/.screenpipe/data/data/2026-04-16/1776353991956_m1.jpg...
|
iTerm2
|
nano
|
1
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screen lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "SELECT COUNT(*) FROM frames WHERE app_name = 'Boosteroid' AND timestamp >= datetime('now', '-1 hour');"
1722
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ps aux | grep screenpipe
lukas 10874 15.7 4.1 412962384 689376 s009 SN 3:49pm 32:48.19 /Users/lukas/.npm/_npx/10835/lib/node_modules/screenpipe/node_modules/@screenpipe/cli-darwin-arm64/bin/screenpipe record --disable-audio
lukas 18357 0.9 0.0 410733264 1488 s010 S+ 4:53pm 0:00.00 grep screenpipe
lukas 10835 0.0 0.2 411427744 30240 s009 SN 3:49pm 0:00.08 node /Users/lukas/.nvm/versions/node/v14.15.4/bin/npx screenpipe@latest record --disable-audio
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ clear
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ /Users/lukas/.npm/_npx/10835/lib/node_modules/screenpipe/node_modules/@screenpipe/cli-darwin-arm64/bin/screenpipe record --help
increased file descriptor limit from 256 to 8192 (hard limit: 9223372036854775807)
Start recording screen, audio, and serve the API
Usage: screenpipe record [OPTIONS]
Options:
-d, --audio-chunk-duration <AUDIO_CHUNK_DURATION>
Audio chunk duration in seconds
[default: 30]
-p, --port <PORT>
Port to run the server on
[default: 3030]
--disable-audio
Disable audio recording
-i, --audio-device <AUDIO_DEVICE>
Audio devices to use (can be specified multiple times)
--use-system-default-audio
Follow system default audio devices
--data-dir <DATA_DIR>
Data directory. Default to $HOME/.screenpipe
--debug
Enable debug logging for screenpipe modules
-a, --audio-transcription-engine <AUDIO_TRANSCRIPTION_ENGINE>
Audio transcription engine to use
Possible values:
- deepgram
- whisper-tiny
- whisper-tiny-quantized
- whisper-large
- whisper-large-quantized
- whisper-large-v3-turbo
- whisper-large-v3-turbo-quantized
- openai-compatible
- qwen3-asr
- parakeet
- disabled: Disable transcription (audio capture only, no speech-to-text)
[default: parakeet]
-m, --monitor-id <MONITOR_ID>
Monitor IDs to use
--use-all-monitors
Automatically record all monitors
-l, --language <LANGUAGE>
Languages for OCR/transcription
[possible values: english, chinese, german, spanish, russian, korean, french, japanese, portuguese, turkish, polish, catalan, dutch, arabic, swedish, italian, indonesian, hindi, vietnamese, finnish, hebrew, ukrainian, greek, malay, czech, romanian, danish, hungarian, norwegian, thai, urdu, croatian, bulgarian, lithuanian, latin, malayalam, welsh, slovak, persian, latvian, bengali, serbian, azerbaijani, slovenian, estonian, macedonian, nepali, mongolian, bosnian, kazakh, albanian, swahili, galician, marathi, punjabi, sinhala, khmer, afrikaans, belarusian, gujarati, amharic, yiddish, lao, uzbek, faroese, pashto, maltese, sanskrit, luxembourgish, myanmar, tibetan, tagalog, assamese, tatar, hausa, javanese]
--use-pii-removal
Enable PII removal
--filter-music
Filter music-dominant audio before transcription (reduces Spotify/YouTube music noise)
--disable-vision
Disable vision recording
--ignored-windows <IGNORED_WINDOWS>
Windows to ignore (by title, uses contains matching)
--included-windows <INCLUDED_WINDOWS>
Windows to include (by title, uses contains matching)
--ignored-urls <IGNORED_URLS>
URLs to ignore for browser privacy filtering
--deepgram-api-key <DEEPGRAM_API_KEY>
Deepgram API Key for audio transcription
--transcription-mode <TRANSCRIPTION_MODE>
Audio transcription scheduling mode: batch (default, longer chunks for quality) or realtime
Possible values:
- realtime: Transcribe immediately as audio is captured
- batch: Accumulate longer audio batches for better transcription quality (default)
[default: batch]
--disable-telemetry
Disable telemetry
--video-quality <VIDEO_QUALITY>
Video quality preset: low, balanced, high, max
[default: balanced]
--enable-sync
Enable cloud sync
--sync-token <SYNC_TOKEN>
UW PICO 5.09 New Buffer
[ Read 18 lines ]
^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos
^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell
API token for cloud sync
[env: SCREENPIPE_SYNC_TOKEN=]
--sync-password <SYNC_PASSWORD>
Password for encrypting synced data
[env: SCREENPIPE_SYNC_PASSWORD=[PASSWORD]
--sync-interval-secs <SYNC_INTERVAL_SECS>
Interval between sync cycles in seconds
[default: 300]
--sync-machine-id <SYNC_MACHINE_ID>
Override the machine ID for this device
--pause-on-drm-content
Pause screen and audio capture when DRM content (Netflix, Disney+, etc.) is detected
--api-auth
Require authentication for remote API access. When enabled, non-localhost requests must include Authorization: Bearer <SCREENPIPE_API_KEY>. Localhost requests are always allowed
--encrypt-secrets
Encrypt secrets (API keys, OAuth tokens) at rest using the OS keychain. Creates a keychain key if one doesn't exist. Without this flag, the CLI will use an existing key (created by the desktop app) but won't create one
--retention-days <RETENTION_DAYS>
Local data retention in days. Old screen/audio data is auto-deleted after this period. Set to 0 to disable retention (keep data forever)
[default: 14]
-h, --help
Print help (see a summary with '-h')
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ npx screenpipe@latest record --disable-audio --ignored-apps "Boosteroid"
error: unexpected argument '--ignored-apps' found
tip: a similar argument exists: '--ignored-urls'
Usage: screenpipe record --disable-audio --ignored-urls <IGNORED_URLS>
For more information, try '--help'.
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ nano ~/.screenpipe/config.json
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ alias sp-start
sp-start='npx screenpipe@latest record --disable-audio &'
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ alias sql
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ alias
addssh='ssh-add ~/.ssh/*'
app='cd ~/jiminny/app'
cnt='docker exec -ti $(docker ps | grep worker | awk '\''{print $1}'\'') /bin/bash -c "cd /home/jiminny && bash"'
co='git checkout'
cov='./vendor/bin/phpunit tests/Unit --coverage-html=build/coverage'
csfix='make cs-fix'
dev='docker exec -ti $(docker ps -q --filter "name=docker_lamp_1") /bin/bash'
eu='ssh lukas@jiminny-eu-bastion -D [IP_ADDRESS]:7073 -L 7532:db:3306'
eues='ssh ubuntu@jiminny-eu-ecs1 -L 7960:vpc-activities7-e7pfbl7wojjjnvp7olfpudrgke.eu-west-1.es.amazonaws.com:80'
ext='nvm use 20 && cd ~/jiminny/extension-app && yarn build:dev && yarn preview'
fe='yarn && nvm use 20 && cd ~/jiminny/app/front-end && yarn build:watch'
fe3='cd ~/jiminny/app/front-end-vue3 && yarn build:watch:production'
gbr='git branch --sort=-committerdate'
gcb='git branch --show-current | pbcopy'
gs='git status'
hhh=history
hhs='history 0 | grep '
install_nano='apt-get update & apt-get install nano'
kar='cp -f ~/DEV/settings/goku-karabiner-settings/karabiner.edn ~/.config/karabiner.edn && goku'
ll='ls -la --color=tty'
nas='ssh Adm1n@[IP_ADDRESS] -p22'
poetryshell='eval ""'
prod='ssh lukas@jiminny-prod-bastion -D [IP_ADDRESS]:7072 -L 7632:db:3306'
prodes='ssh ubuntu@jiminny-prod-ecs1 -L 7970:vpc-activities7-3o2zlrelmga5qicf2yxxwtx6bi.us-east-2.es.amazonaws.com:80'
prophet='cd ~/jiminny/app'
prophetdown='aws-vault exec staging -- bash -c "env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml down"'
prophetup='aws-vault exec staging -- bash -c "env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml up --build"'
qa='ssh lukas@jiminny-qa-bastion -D [IP_ADDRESS]:7074 -L 7432:db:3306'
qaes='ssh ubuntu@jiminny-qa-ecs1 -L 7950:vpc-activities7-s5zchrs4xqcnav3rjzmxgxvfvq.us-east-2.es.amazonaws.com:80'
qai='ssh lukas@jiminny-qai-bastion -D [IP_ADDRESS]:7075 -L 7777:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306'
rmbc='rm -rf bootstrap/cache/*.php'
run-help=man
sp-start='npx screenpipe@latest record --disable-audio &'
sp-status='curl -s [URL_WITH_CREDENTIALS] -D [IP_ADDRESS]:7071 -L 7732:db:3306'
stges='ssh ubuntu@jiminny-stage-ecs1 -L 7980:vpc-activities7-tgeodjeaugnaiigqgdcjjkrrj4.us-east-2.es.amazonaws.com:80'
veu='ssh jiminny-eu-ecs1'
veu10='ssh jiminny-eu-ecs10'
veu11='ssh jiminny-eu-ecs11'
veu12='ssh jiminny-eu-ecs12'
veu2='ssh jiminny-eu-ecs2'
veu3='ssh jiminny-eu-ecs3'
veu4='ssh jiminny-eu-ecs4'
veu5='ssh jiminny-eu-ecs5'
veu6='ssh jiminny-eu-ecs6'
veu7='ssh jiminny-eu-ecs7'
veu8='ssh jiminny-eu-ecs8'
veu9='ssh jiminny-eu-ecs9'
vprod='ssh jiminny-prod-ecs1'
vprod10='ssh jiminny-prod-ecs10'
vprod11='ssh jiminny-prod-ecs11'
vprod12='ssh jiminny-prod-ecs12'
vprod2='ssh jiminny-prod-ecs2'
vprod3='ssh jiminny-prod-ecs3'
vprod4='ssh jiminny-prod-ecs4'
vprod5='ssh jiminny-prod-ecs5'
vprod6='ssh jiminny-prod-ecs6'
vprod7='ssh jiminny-prod-ecs7'
vprod8='ssh jiminny-prod-ecs8'
vprod9='ssh jiminny-prod-ecs9'
vqa='ssh jiminny-qa-ecs1'
vqa2='ssh jiminny-qa-ecs2'
vqai='ssh jiminny-qai-ecs1'
vqai2='ssh jiminny-qai-ecs2'
vstage='ssh ec2-user@jiminny-subenv-worker-app0'
vstg='ssh jiminny-stage-ecs1'
vstg2='ssh ubuntu@jiminny-stage-ecs2'
which-command=whence
work='cd ~/jiminny/infrastructure/dev/docker && docker compose up'
xd='make docker-xdebug-disable'
xe='make docker-xdebug-enable'
zp='nano ~/.zprofile'
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ alias
addssh='ssh-add ~/.ssh/*'
app='cd ~/jiminny/app'
cnt='docker exec -ti $(docker ps | grep worker | awk '\''{print $1}'\'') /bin/bash -c "cd /home/jiminny && bash"'
co='git checkout'
cov='./vendor/bin/phpunit tests/Unit --coverage-html=build/coverage'
csfix='make cs-fix'
dev='docker exec -ti $(docker ps -q --filter "name=docker_lamp_1") /bin/bash'
eu='ssh lukas@jiminny-eu-bastion -D [IP_ADDRESS]:7073 -L 7532:db:3306'
eues='ssh ubuntu@jiminny-eu-ecs1 -L 7960:vpc-activities7-e7pfbl7wojjjnvp7olfpudrgke.eu-west-1.es.amazonaws.com:80'
ext='nvm use 20 && cd ~/jiminny/extension-app && yarn build:dev && yarn preview'
fe='yarn && nvm use 20 && cd ~/jiminny/app/front-end && yarn build:watch'
fe3='cd ~/jiminny/app/front-end-vue3 && yarn build:watch:production'
gbr='git branch --sort=-committerdate'
gcb='git branch --show-current | pbcopy'
gs='git status'
hhh=history
hhs='history 0 | grep '
install_nano='apt-get update & apt-get install nano'
kar='cp -f ~/DEV/settings/goku-karabiner-settings/karabiner.edn ~/.config/karabiner.edn && goku'
ll='ls -la --color=tty'
nas='ssh Adm1n@[IP_ADDRESS] -p22'
poetryshell='eval ""'
prod='ssh lukas@jiminny-prod-bastion -D [IP_ADDRESS]:7072 -L 7632:db:3306'
prodes='ssh ubuntu@jiminny-prod-ecs1 -L 7970:vpc-activities7-3o2zlrelmga5qicf2yxxwtx6bi.us-east-2.es.amazonaws.com:80'
prophet='cd ~/jiminny/app'
prophetdown='aws-vault exec staging -- bash -c "env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml down"'
prophetup='aws-vault exec staging -- bash -c "env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml up --build"'
qa='ssh lukas@jiminny-qa-bastion -D [IP_ADDRESS]:7074 -L 7432:db:3306'
qaes='ssh ubuntu@jiminny-qa-ecs1 -L 7950:vpc-activities7-s5zchrs4xqcnav3rjzmxgxvfvq.us-east-2.es.amazonaws.com:80'
qai='ssh lukas@jiminny-qai-bastion -D [IP_ADDRESS]:7075 -L 7777:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306'
rmbc='rm -rf bootstrap/cache/*.php'
UW PICO 5.09 New Buffer
[ New file ]
^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos
^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell
run-help=man
UW PICO 5.09 New Buffer
[ Read 135 lines ]
^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos
^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell
sp-start='npx screenpipe@latest record --disable-audio &'
sp-status='curl -s [URL_WITH_CREDENTIALS] -D [IP_ADDRESS]:7071 -L 7732:db:3306'
stges='ssh ubuntu@jiminny-stage-ecs1 -L 7980:vpc-activities7-tgeodjeaugnaiigqgdcjjkrrj4.us-east-2.es.amazonaws.com:80'
veu='ssh jiminny-eu-ecs1'
veu10='ssh jiminny-eu-ecs10'
veu11='ssh jiminny-eu-ecs11'
veu12='ssh jiminny-eu-ecs12'
veu2='ssh jiminny-eu-ecs2'
veu3='ssh jiminny-eu-ecs3'
veu4='ssh jiminny-eu-ecs4'
veu5='ssh jiminny-eu-ecs5'
veu6='ssh jiminny-eu-ecs6'
veu7='ssh jiminny-eu-ecs7'
veu8='ssh jiminny-eu-ecs8'
veu9='ssh jiminny-eu-ecs9'
vprod='ssh jiminny-prod-ecs1'
vprod10='ssh jiminny-prod-ecs10'
vprod11='ssh jiminny-prod-ecs11'
vprod12='ssh jiminny-prod-ecs12'
vprod2='ssh jiminny-prod-ecs2'
vprod3='ssh jiminny-prod-ecs3'
vprod4='ssh jiminny-prod-ecs4'
vprod5='ssh jiminny-prod-ecs5'
vprod6='ssh jiminny-prod-ecs6'
vprod7='ssh jiminny-prod-ecs7'
vprod8='ssh jiminny-prod-ecs8'
vprod9='ssh jiminny-prod-ecs9'
vqa='ssh jiminny-qa-ecs1'
vqa2='ssh jiminny-qa-ecs2'
UW PICO 5.09 New Buffer
[ Read 136 lines ]
^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos
^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell
vqai='ssh jiminny-qai-ecs1'
UW PICO 5.09 New Buffer
[ Read 136 lines ]
^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos
^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell
UW PICO 5.09 File: /Users/lukas/.zprofile
# alias dev="make bash"
# alias dev="docker compose up"
alias dev='docker exec -ti $(docker ps -q --filter "name=docker_lamp_1") /bin/bash'
alias xe="make docker-xdebug-enable"
alias xd="make docker-xdebug-disable"
alias fe="yarn && nvm use 20 && cd ~/jiminny/app/front-end && yarn build:watch"
alias fe3="cd ~/jiminny/app/front-end-vue3 && yarn build:watch:production"
alias prod="ssh lukas@jiminny-prod-bastion -D [IP_ADDRESS]:7072 -L 7632:db:3306"
alias stg="ssh lukas@jiminny-stage-bastion -D [IP_ADDRESS]:7071 -L 7732:db:3306"
alias qa="ssh lukas@jiminny-qa-bastion -D [IP_ADDRESS]:7074 -L 7432:db:3306"
# alias qb="ssh lukas@jiminny-qai-bastion -D [IP_ADDRESS]:7075 -L 7832:db:3306"
# alias qai="ssh lukas@jiminny-qai-bastion -D [IP_ADDRESS]:7075 -L 7832:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306"
# alias qai="ssh lukas@jiminny-qai-bastion -D [IP_ADDRESS]:7075 -L 7777:jiminny-db-prod.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306"
alias qai="ssh lukas@jiminny-qai-bastion -D [IP_ADDRESS]:7075 -L 7777:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306"
alias eu="ssh lukas@jiminny-eu-bastion -D [IP_ADDRESS]:7073 -L 7532:db:3306"
alias vprod="ssh jiminny-prod-ecs1"
alias vprod2="ssh jiminny-prod-ecs2"
alias vprod3="ssh jiminny-prod-ecs3"
alias vprod4="ssh jiminny-prod-ecs4"
alias vprod5="ssh jiminny-prod-ecs5"
alias vprod6="ssh jiminny-prod-ecs6"
alias vprod7="ssh jiminny-prod-ecs7"
alias vprod8="ssh jiminny-prod-ecs8"
alias vprod9="ssh jiminny-prod-ecs9"
alias vprod10="ssh jiminny-prod-ecs10"
alias vprod11="ssh jiminny-prod-ecs11"
alias vprod12="ssh jiminny-prod-ecs12"
alias veu="ssh jiminny-eu-ecs1"
alias veu2="ssh jiminny-eu-ecs2"
alias veu3="ssh jiminny-eu-ecs3"
alias veu4="ssh jiminny-eu-ecs4"
alias veu5="ssh jiminny-eu-ecs5"
alias veu6="ssh jiminny-eu-ecs6"
alias veu7="ssh jiminny-eu-ecs7"
^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos
^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
screenpipe"
Close Tab
nano
Close Tab
✳ Review screenpipe usage and Boosteroid integration (node)
Close Tab
⌥⌘1
nano...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT COUNT(*) FROM frames WHERE app_name = 'Boosteroid' AND timestamp >= datetime('now', '-1 hour');\"\n1722\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ps aux | grep screenpipe\nlukas 10874 15.7 4.1 412962384 689376 s009 SN 3:49pm 32:48.19 /Users/lukas/.npm/_npx/10835/lib/node_modules/screenpipe/node_modules/@screenpipe/cli-darwin-arm64/bin/screenpipe record --disable-audio\nlukas 18357 0.9 0.0 410733264 1488 s010 S+ 4:53pm 0:00.00 grep screenpipe\nlukas 10835 0.0 0.2 411427744 30240 s009 SN 3:49pm 0:00.08 node /Users/lukas/.nvm/versions/node/v14.15.4/bin/npx screenpipe@latest record --disable-audio\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ clear\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ /Users/lukas/.npm/_npx/10835/lib/node_modules/screenpipe/node_modules/@screenpipe/cli-darwin-arm64/bin/screenpipe record --help\nincreased file descriptor limit from 256 to 8192 (hard limit: 9223372036854775807)\nStart recording screen, audio, and serve the API\n\nUsage: screenpipe record [OPTIONS]\n\nOptions:\n -d, --audio-chunk-duration <AUDIO_CHUNK_DURATION>\n Audio chunk duration in seconds\n \n [default: 30]\n\n -p, --port <PORT>\n Port to run the server on\n \n [default: 3030]\n\n --disable-audio\n Disable audio recording\n\n -i, --audio-device <AUDIO_DEVICE>\n Audio devices to use (can be specified multiple times)\n\n --use-system-default-audio\n Follow system default audio devices\n\n --data-dir <DATA_DIR>\n Data directory. Default to $HOME/.screenpipe\n\n --debug\n Enable debug logging for screenpipe modules\n\n -a, --audio-transcription-engine <AUDIO_TRANSCRIPTION_ENGINE>\n Audio transcription engine to use\n\n Possible values:\n - deepgram\n - whisper-tiny\n - whisper-tiny-quantized\n - whisper-large\n - whisper-large-quantized\n - whisper-large-v3-turbo\n - whisper-large-v3-turbo-quantized\n - openai-compatible\n - qwen3-asr\n - parakeet\n - disabled: Disable transcription (audio capture only, no speech-to-text)\n \n [default: parakeet]\n\n -m, --monitor-id <MONITOR_ID>\n Monitor IDs to use\n\n --use-all-monitors\n Automatically record all monitors\n\n -l, --language <LANGUAGE>\n Languages for OCR/transcription\n \n [possible values: english, chinese, german, spanish, russian, korean, french, japanese, portuguese, turkish, polish, catalan, dutch, arabic, swedish, italian, indonesian, hindi, vietnamese, finnish, hebrew, ukrainian, greek, malay, czech, romanian, danish, hungarian, norwegian, thai, urdu, croatian, bulgarian, lithuanian, latin, malayalam, welsh, slovak, persian, latvian, bengali, serbian, azerbaijani, slovenian, estonian, macedonian, nepali, mongolian, bosnian, kazakh, albanian, swahili, galician, marathi, punjabi, sinhala, khmer, afrikaans, belarusian, gujarati, amharic, yiddish, lao, uzbek, faroese, pashto, maltese, sanskrit, luxembourgish, myanmar, tibetan, tagalog, assamese, tatar, hausa, javanese]\n\n --use-pii-removal\n Enable PII removal\n\n --filter-music\n Filter music-dominant audio before transcription (reduces Spotify/YouTube music noise)\n\n --disable-vision\n Disable vision recording\n\n --ignored-windows <IGNORED_WINDOWS>\n Windows to ignore (by title, uses contains matching)\n\n --included-windows <INCLUDED_WINDOWS>\n Windows to include (by title, uses contains matching)\n\n --ignored-urls <IGNORED_URLS>\n URLs to ignore for browser privacy filtering\n\n --deepgram-api-key <DEEPGRAM_API_KEY>\n Deepgram API Key for audio transcription\n\n --transcription-mode <TRANSCRIPTION_MODE>\n Audio transcription scheduling mode: batch (default, longer chunks for quality) or realtime\n\n Possible values:\n - realtime: Transcribe immediately as audio is captured\n - batch: Accumulate longer audio batches for better transcription quality (default)\n \n [default: batch]\n\n --disable-telemetry\n Disable telemetry\n\n --video-quality <VIDEO_QUALITY>\n Video quality preset: low, balanced, high, max\n \n [default: balanced]\n\n --enable-sync\n Enable cloud sync\n\n --sync-token <SYNC_TOKEN>\n UW PICO 5.09 New Buffer \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n [ Read 18 lines ] \n^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos \n^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell \n API token for cloud sync\n \n [env: SCREENPIPE_SYNC_TOKEN=]\n\n --sync-password <SYNC_PASSWORD>\n Password for encrypting synced data\n \n [env: SCREENPIPE_SYNC_PASSWORD=]\n\n --sync-interval-secs <SYNC_INTERVAL_SECS>\n Interval between sync cycles in seconds\n \n [default: 300]\n\n --sync-machine-id <SYNC_MACHINE_ID>\n Override the machine ID for this device\n\n --pause-on-drm-content\n Pause screen and audio capture when DRM content (Netflix, Disney+, etc.) is detected\n\n --api-auth\n Require authentication for remote API access. When enabled, non-localhost requests must include Authorization: Bearer <SCREENPIPE_API_KEY>. Localhost requests are always allowed\n\n --encrypt-secrets\n Encrypt secrets (API keys, OAuth tokens) at rest using the OS keychain. Creates a keychain key if one doesn't exist. Without this flag, the CLI will use an existing key (created by the desktop app) but won't create one\n\n --retention-days <RETENTION_DAYS>\n Local data retention in days. Old screen/audio data is auto-deleted after this period. Set to 0 to disable retention (keep data forever)\n \n [default: 14]\n\n -h, --help\n Print help (see a summary with '-h')\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ npx screenpipe@latest record --disable-audio --ignored-apps \"Boosteroid\"\nerror: unexpected argument '--ignored-apps' found\n\n tip: a similar argument exists: '--ignored-urls'\n\nUsage: screenpipe record --disable-audio --ignored-urls <IGNORED_URLS>\n\nFor more information, try '--help'.\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ nano ~/.screenpipe/config.json \nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ alias sp-start\nsp-start='npx screenpipe@latest record --disable-audio &'\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ alias sql\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ alias\naddssh='ssh-add ~/.ssh/*'\napp='cd ~/jiminny/app'\ncnt='docker exec -ti $(docker ps | grep worker | awk '\\''{print $1}'\\'') /bin/bash -c \"cd /home/jiminny && bash\"'\nco='git checkout'\ncov='./vendor/bin/phpunit tests/Unit --coverage-html=build/coverage'\ncsfix='make cs-fix'\ndev='docker exec -ti $(docker ps -q --filter \"name=docker_lamp_1\") /bin/bash'\neu='ssh lukas@jiminny-eu-bastion -D 127.0.0.1:7073 -L 7532:db:3306'\neues='ssh ubuntu@jiminny-eu-ecs1 -L 7960:vpc-activities7-e7pfbl7wojjjnvp7olfpudrgke.eu-west-1.es.amazonaws.com:80'\next='nvm use 20 && cd ~/jiminny/extension-app && yarn build:dev && yarn preview'\nfe='yarn && nvm use 20 && cd ~/jiminny/app/front-end && yarn build:watch'\nfe3='cd ~/jiminny/app/front-end-vue3 && yarn build:watch:production'\ngbr='git branch --sort=-committerdate'\ngcb='git branch --show-current | pbcopy'\ngs='git status'\nhhh=history\nhhs='history 0 | grep '\ninstall_nano='apt-get update & apt-get install nano'\nkar='cp -f ~/DEV/settings/goku-karabiner-settings/karabiner.edn ~/.config/karabiner.edn && goku'\nll='ls -la --color=tty'\nnas='ssh Adm1n@192.168.0.242 -p22'\npoetryshell='eval \"\"'\nprod='ssh lukas@jiminny-prod-bastion -D 127.0.0.1:7072 -L 7632:db:3306'\nprodes='ssh ubuntu@jiminny-prod-ecs1 -L 7970:vpc-activities7-3o2zlrelmga5qicf2yxxwtx6bi.us-east-2.es.amazonaws.com:80'\nprophet='cd ~/jiminny/app'\nprophetdown='aws-vault exec staging -- bash -c \"env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml down\"'\nprophetup='aws-vault exec staging -- bash -c \"env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml up --build\"'\nqa='ssh lukas@jiminny-qa-bastion -D 127.0.0.1:7074 -L 7432:db:3306'\nqaes='ssh ubuntu@jiminny-qa-ecs1 -L 7950:vpc-activities7-s5zchrs4xqcnav3rjzmxgxvfvq.us-east-2.es.amazonaws.com:80'\nqai='ssh lukas@jiminny-qai-bastion -D 127.0.0.1:7075 -L 7777:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306'\nrmbc='rm -rf bootstrap/cache/*.php'\nrun-help=man\nsp-start='npx screenpipe@latest record --disable-audio &'\nsp-status='curl -s http://localhost:3030/health | jq \"{status, frame_status, audio_status, last_frame: .last_frame_timestamp, uptime: .pipeline.uptime_secs, fps: .pipeline.capture_fps_actual, frames: .pipeline.frames_captured}\"'\nsp-stop='pkill -f screenpipe && echo '\\''screenpipe stopped'\\'\nstg='ssh lukas@jiminny-stage-bastion -D 127.0.0.1:7071 -L 7732:db:3306'\nstges='ssh ubuntu@jiminny-stage-ecs1 -L 7980:vpc-activities7-tgeodjeaugnaiigqgdcjjkrrj4.us-east-2.es.amazonaws.com:80'\nveu='ssh jiminny-eu-ecs1'\nveu10='ssh jiminny-eu-ecs10'\nveu11='ssh jiminny-eu-ecs11'\nveu12='ssh jiminny-eu-ecs12'\nveu2='ssh jiminny-eu-ecs2'\nveu3='ssh jiminny-eu-ecs3'\nveu4='ssh jiminny-eu-ecs4'\nveu5='ssh jiminny-eu-ecs5'\nveu6='ssh jiminny-eu-ecs6'\nveu7='ssh jiminny-eu-ecs7'\nveu8='ssh jiminny-eu-ecs8'\nveu9='ssh jiminny-eu-ecs9'\nvprod='ssh jiminny-prod-ecs1'\nvprod10='ssh jiminny-prod-ecs10'\nvprod11='ssh jiminny-prod-ecs11'\nvprod12='ssh jiminny-prod-ecs12'\nvprod2='ssh jiminny-prod-ecs2'\nvprod3='ssh jiminny-prod-ecs3'\nvprod4='ssh jiminny-prod-ecs4'\nvprod5='ssh jiminny-prod-ecs5'\nvprod6='ssh jiminny-prod-ecs6'\nvprod7='ssh jiminny-prod-ecs7'\nvprod8='ssh jiminny-prod-ecs8'\nvprod9='ssh jiminny-prod-ecs9'\nvqa='ssh jiminny-qa-ecs1'\nvqa2='ssh jiminny-qa-ecs2'\nvqai='ssh jiminny-qai-ecs1'\nvqai2='ssh jiminny-qai-ecs2'\nvstage='ssh ec2-user@jiminny-subenv-worker-app0'\nvstg='ssh jiminny-stage-ecs1'\nvstg2='ssh ubuntu@jiminny-stage-ecs2'\nwhich-command=whence\nwork='cd ~/jiminny/infrastructure/dev/docker && docker compose up'\nxd='make docker-xdebug-disable'\nxe='make docker-xdebug-enable'\nzp='nano ~/.zprofile'\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ alias\naddssh='ssh-add ~/.ssh/*'\napp='cd ~/jiminny/app'\ncnt='docker exec -ti $(docker ps | grep worker | awk '\\''{print $1}'\\'') /bin/bash -c \"cd /home/jiminny && bash\"'\nco='git checkout'\ncov='./vendor/bin/phpunit tests/Unit --coverage-html=build/coverage'\ncsfix='make cs-fix'\ndev='docker exec -ti $(docker ps -q --filter \"name=docker_lamp_1\") /bin/bash'\neu='ssh lukas@jiminny-eu-bastion -D 127.0.0.1:7073 -L 7532:db:3306'\neues='ssh ubuntu@jiminny-eu-ecs1 -L 7960:vpc-activities7-e7pfbl7wojjjnvp7olfpudrgke.eu-west-1.es.amazonaws.com:80'\next='nvm use 20 && cd ~/jiminny/extension-app && yarn build:dev && yarn preview'\nfe='yarn && nvm use 20 && cd ~/jiminny/app/front-end && yarn build:watch'\nfe3='cd ~/jiminny/app/front-end-vue3 && yarn build:watch:production'\ngbr='git branch --sort=-committerdate'\ngcb='git branch --show-current | pbcopy'\ngs='git status'\nhhh=history\nhhs='history 0 | grep '\ninstall_nano='apt-get update & apt-get install nano'\nkar='cp -f ~/DEV/settings/goku-karabiner-settings/karabiner.edn ~/.config/karabiner.edn && goku'\nll='ls -la --color=tty'\nnas='ssh Adm1n@192.168.0.242 -p22'\npoetryshell='eval \"\"'\nprod='ssh lukas@jiminny-prod-bastion -D 127.0.0.1:7072 -L 7632:db:3306'\nprodes='ssh ubuntu@jiminny-prod-ecs1 -L 7970:vpc-activities7-3o2zlrelmga5qicf2yxxwtx6bi.us-east-2.es.amazonaws.com:80'\nprophet='cd ~/jiminny/app'\nprophetdown='aws-vault exec staging -- bash -c \"env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml down\"'\nprophetup='aws-vault exec staging -- bash -c \"env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml up --build\"'\nqa='ssh lukas@jiminny-qa-bastion -D 127.0.0.1:7074 -L 7432:db:3306'\nqaes='ssh ubuntu@jiminny-qa-ecs1 -L 7950:vpc-activities7-s5zchrs4xqcnav3rjzmxgxvfvq.us-east-2.es.amazonaws.com:80'\nqai='ssh lukas@jiminny-qai-bastion -D 127.0.0.1:7075 -L 7777:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306'\nrmbc='rm -rf bootstrap/cache/*.php'\n UW PICO 5.09 New Buffer \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n [ New file ] \n^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos \n^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell \nrun-help=man\n UW PICO 5.09 New Buffer \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n [ Read 135 lines ] \n^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos \n^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell \nsp-start='npx screenpipe@latest record --disable-audio &'\nsp-status='curl -s http://localhost:3030/health | jq \"{status, frame_status, audio_status, last_frame: .last_frame_timestamp, uptime: .pipeline.uptime_secs, fps: .pipeline.capture_fps_actual, frames: .pipeline.frames_captured}\"'\nsp-stop='pkill -f screenpipe && echo '\\''screenpipe stopped'\\'\nstg='ssh lukas@jiminny-stage-bastion -D 127.0.0.1:7071 -L 7732:db:3306'\nstges='ssh ubuntu@jiminny-stage-ecs1 -L 7980:vpc-activities7-tgeodjeaugnaiigqgdcjjkrrj4.us-east-2.es.amazonaws.com:80'\nveu='ssh jiminny-eu-ecs1'\nveu10='ssh jiminny-eu-ecs10'\nveu11='ssh jiminny-eu-ecs11'\nveu12='ssh jiminny-eu-ecs12'\nveu2='ssh jiminny-eu-ecs2'\nveu3='ssh jiminny-eu-ecs3'\nveu4='ssh jiminny-eu-ecs4'\nveu5='ssh jiminny-eu-ecs5'\nveu6='ssh jiminny-eu-ecs6'\nveu7='ssh jiminny-eu-ecs7'\nveu8='ssh jiminny-eu-ecs8'\nveu9='ssh jiminny-eu-ecs9'\nvprod='ssh jiminny-prod-ecs1'\nvprod10='ssh jiminny-prod-ecs10'\nvprod11='ssh jiminny-prod-ecs11'\nvprod12='ssh jiminny-prod-ecs12'\nvprod2='ssh jiminny-prod-ecs2'\nvprod3='ssh jiminny-prod-ecs3'\nvprod4='ssh jiminny-prod-ecs4'\nvprod5='ssh jiminny-prod-ecs5'\nvprod6='ssh jiminny-prod-ecs6'\nvprod7='ssh jiminny-prod-ecs7'\nvprod8='ssh jiminny-prod-ecs8'\nvprod9='ssh jiminny-prod-ecs9'\nvqa='ssh jiminny-qa-ecs1'\nvqa2='ssh jiminny-qa-ecs2'\n UW PICO 5.09 New Buffer \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n [ Read 136 lines ] \n^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos \n^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell \nvqai='ssh jiminny-qai-ecs1'\n UW PICO 5.09 New Buffer \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n [ Read 136 lines ] \n^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos \n^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell \n UW PICO 5.09 File: /Users/lukas/.zprofile \n\n\n# alias dev=\"make bash\"\n# alias dev=\"docker compose up\"\nalias dev='docker exec -ti $(docker ps -q --filter \"name=docker_lamp_1\") /bin/bash'\n\nalias xe=\"make docker-xdebug-enable\"\nalias xd=\"make docker-xdebug-disable\"\n\nalias fe=\"yarn && nvm use 20 && cd ~/jiminny/app/front-end && yarn build:watch\" \nalias fe3=\"cd ~/jiminny/app/front-end-vue3 && yarn build:watch:production\"\n\nalias prod=\"ssh lukas@jiminny-prod-bastion -D 127.0.0.1:7072 -L 7632:db:3306\"\nalias stg=\"ssh lukas@jiminny-stage-bastion -D 127.0.0.1:7071 -L 7732:db:3306\"\nalias qa=\"ssh lukas@jiminny-qa-bastion -D 127.0.0.1:7074 -L 7432:db:3306\"\n# alias qb=\"ssh lukas@jiminny-qai-bastion -D 127.0.0.1:7075 -L 7832:db:3306\"\n# alias qai=\"ssh lukas@jiminny-qai-bastion -D 127.0.0.1:7075 -L 7832:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306\"\n# alias qai=\"ssh lukas@jiminny-qai-bastion -D 127.0.0.1:7075 -L 7777:jiminny-db-prod.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306\"\nalias qai=\"ssh lukas@jiminny-qai-bastion -D 127.0.0.1:7075 -L 7777:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306\"\nalias eu=\"ssh lukas@jiminny-eu-bastion -D 127.0.0.1:7073 -L 7532:db:3306\"\n\n\nalias vprod=\"ssh jiminny-prod-ecs1\"\nalias vprod2=\"ssh jiminny-prod-ecs2\"\nalias vprod3=\"ssh jiminny-prod-ecs3\"\nalias vprod4=\"ssh jiminny-prod-ecs4\"\nalias vprod5=\"ssh jiminny-prod-ecs5\"\nalias vprod6=\"ssh jiminny-prod-ecs6\" \nalias vprod7=\"ssh jiminny-prod-ecs7\"\nalias vprod8=\"ssh jiminny-prod-ecs8\"\nalias vprod9=\"ssh jiminny-prod-ecs9\"\nalias vprod10=\"ssh jiminny-prod-ecs10\"\nalias vprod11=\"ssh jiminny-prod-ecs11\"\nalias vprod12=\"ssh jiminny-prod-ecs12\"\nalias veu=\"ssh jiminny-eu-ecs1\"\nalias veu2=\"ssh jiminny-eu-ecs2\"\nalias veu3=\"ssh jiminny-eu-ecs3\"\nalias veu4=\"ssh jiminny-eu-ecs4\"\nalias veu5=\"ssh jiminny-eu-ecs5\"\nalias veu6=\"ssh jiminny-eu-ecs6\"\nalias veu7=\"ssh jiminny-eu-ecs7\"\n\n^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos \n^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell","depth":4,"value":"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT COUNT(*) FROM frames WHERE app_name = 'Boosteroid' AND timestamp >= datetime('now', '-1 hour');\"\n1722\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ps aux | grep screenpipe\nlukas 10874 15.7 4.1 412962384 689376 s009 SN 3:49pm 32:48.19 /Users/lukas/.npm/_npx/10835/lib/node_modules/screenpipe/node_modules/@screenpipe/cli-darwin-arm64/bin/screenpipe record --disable-audio\nlukas 18357 0.9 0.0 410733264 1488 s010 S+ 4:53pm 0:00.00 grep screenpipe\nlukas 10835 0.0 0.2 411427744 30240 s009 SN 3:49pm 0:00.08 node /Users/lukas/.nvm/versions/node/v14.15.4/bin/npx screenpipe@latest record --disable-audio\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ clear\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ /Users/lukas/.npm/_npx/10835/lib/node_modules/screenpipe/node_modules/@screenpipe/cli-darwin-arm64/bin/screenpipe record --help\nincreased file descriptor limit from 256 to 8192 (hard limit: 9223372036854775807)\nStart recording screen, audio, and serve the API\n\nUsage: screenpipe record [OPTIONS]\n\nOptions:\n -d, --audio-chunk-duration <AUDIO_CHUNK_DURATION>\n Audio chunk duration in seconds\n \n [default: 30]\n\n -p, --port <PORT>\n Port to run the server on\n \n [default: 3030]\n\n --disable-audio\n Disable audio recording\n\n -i, --audio-device <AUDIO_DEVICE>\n Audio devices to use (can be specified multiple times)\n\n --use-system-default-audio\n Follow system default audio devices\n\n --data-dir <DATA_DIR>\n Data directory. Default to $HOME/.screenpipe\n\n --debug\n Enable debug logging for screenpipe modules\n\n -a, --audio-transcription-engine <AUDIO_TRANSCRIPTION_ENGINE>\n Audio transcription engine to use\n\n Possible values:\n - deepgram\n - whisper-tiny\n - whisper-tiny-quantized\n - whisper-large\n - whisper-large-quantized\n - whisper-large-v3-turbo\n - whisper-large-v3-turbo-quantized\n - openai-compatible\n - qwen3-asr\n - parakeet\n - disabled: Disable transcription (audio capture only, no speech-to-text)\n \n [default: parakeet]\n\n -m, --monitor-id <MONITOR_ID>\n Monitor IDs to use\n\n --use-all-monitors\n Automatically record all monitors\n\n -l, --language <LANGUAGE>\n Languages for OCR/transcription\n \n [possible values: english, chinese, german, spanish, russian, korean, french, japanese, portuguese, turkish, polish, catalan, dutch, arabic, swedish, italian, indonesian, hindi, vietnamese, finnish, hebrew, ukrainian, greek, malay, czech, romanian, danish, hungarian, norwegian, thai, urdu, croatian, bulgarian, lithuanian, latin, malayalam, welsh, slovak, persian, latvian, bengali, serbian, azerbaijani, slovenian, estonian, macedonian, nepali, mongolian, bosnian, kazakh, albanian, swahili, galician, marathi, punjabi, sinhala, khmer, afrikaans, belarusian, gujarati, amharic, yiddish, lao, uzbek, faroese, pashto, maltese, sanskrit, luxembourgish, myanmar, tibetan, tagalog, assamese, tatar, hausa, javanese]\n\n --use-pii-removal\n Enable PII removal\n\n --filter-music\n Filter music-dominant audio before transcription (reduces Spotify/YouTube music noise)\n\n --disable-vision\n Disable vision recording\n\n --ignored-windows <IGNORED_WINDOWS>\n Windows to ignore (by title, uses contains matching)\n\n --included-windows <INCLUDED_WINDOWS>\n Windows to include (by title, uses contains matching)\n\n --ignored-urls <IGNORED_URLS>\n URLs to ignore for browser privacy filtering\n\n --deepgram-api-key <DEEPGRAM_API_KEY>\n Deepgram API Key for audio transcription\n\n --transcription-mode <TRANSCRIPTION_MODE>\n Audio transcription scheduling mode: batch (default, longer chunks for quality) or realtime\n\n Possible values:\n - realtime: Transcribe immediately as audio is captured\n - batch: Accumulate longer audio batches for better transcription quality (default)\n \n [default: batch]\n\n --disable-telemetry\n Disable telemetry\n\n --video-quality <VIDEO_QUALITY>\n Video quality preset: low, balanced, high, max\n \n [default: balanced]\n\n --enable-sync\n Enable cloud sync\n\n --sync-token <SYNC_TOKEN>\n UW PICO 5.09 New Buffer \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n [ Read 18 lines ] \n^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos \n^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell \n API token for cloud sync\n \n [env: SCREENPIPE_SYNC_TOKEN=]\n\n --sync-password <SYNC_PASSWORD>\n Password for encrypting synced data\n \n [env: SCREENPIPE_SYNC_PASSWORD=]\n\n --sync-interval-secs <SYNC_INTERVAL_SECS>\n Interval between sync cycles in seconds\n \n [default: 300]\n\n --sync-machine-id <SYNC_MACHINE_ID>\n Override the machine ID for this device\n\n --pause-on-drm-content\n Pause screen and audio capture when DRM content (Netflix, Disney+, etc.) is detected\n\n --api-auth\n Require authentication for remote API access. When enabled, non-localhost requests must include Authorization: Bearer <SCREENPIPE_API_KEY>. Localhost requests are always allowed\n\n --encrypt-secrets\n Encrypt secrets (API keys, OAuth tokens) at rest using the OS keychain. Creates a keychain key if one doesn't exist. Without this flag, the CLI will use an existing key (created by the desktop app) but won't create one\n\n --retention-days <RETENTION_DAYS>\n Local data retention in days. Old screen/audio data is auto-deleted after this period. Set to 0 to disable retention (keep data forever)\n \n [default: 14]\n\n -h, --help\n Print help (see a summary with '-h')\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ npx screenpipe@latest record --disable-audio --ignored-apps \"Boosteroid\"\nerror: unexpected argument '--ignored-apps' found\n\n tip: a similar argument exists: '--ignored-urls'\n\nUsage: screenpipe record --disable-audio --ignored-urls <IGNORED_URLS>\n\nFor more information, try '--help'.\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ nano ~/.screenpipe/config.json \nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ alias sp-start\nsp-start='npx screenpipe@latest record --disable-audio &'\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ alias sql\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ alias\naddssh='ssh-add ~/.ssh/*'\napp='cd ~/jiminny/app'\ncnt='docker exec -ti $(docker ps | grep worker | awk '\\''{print $1}'\\'') /bin/bash -c \"cd /home/jiminny && bash\"'\nco='git checkout'\ncov='./vendor/bin/phpunit tests/Unit --coverage-html=build/coverage'\ncsfix='make cs-fix'\ndev='docker exec -ti $(docker ps -q --filter \"name=docker_lamp_1\") /bin/bash'\neu='ssh lukas@jiminny-eu-bastion -D 127.0.0.1:7073 -L 7532:db:3306'\neues='ssh ubuntu@jiminny-eu-ecs1 -L 7960:vpc-activities7-e7pfbl7wojjjnvp7olfpudrgke.eu-west-1.es.amazonaws.com:80'\next='nvm use 20 && cd ~/jiminny/extension-app && yarn build:dev && yarn preview'\nfe='yarn && nvm use 20 && cd ~/jiminny/app/front-end && yarn build:watch'\nfe3='cd ~/jiminny/app/front-end-vue3 && yarn build:watch:production'\ngbr='git branch --sort=-committerdate'\ngcb='git branch --show-current | pbcopy'\ngs='git status'\nhhh=history\nhhs='history 0 | grep '\ninstall_nano='apt-get update & apt-get install nano'\nkar='cp -f ~/DEV/settings/goku-karabiner-settings/karabiner.edn ~/.config/karabiner.edn && goku'\nll='ls -la --color=tty'\nnas='ssh Adm1n@192.168.0.242 -p22'\npoetryshell='eval \"\"'\nprod='ssh lukas@jiminny-prod-bastion -D 127.0.0.1:7072 -L 7632:db:3306'\nprodes='ssh ubuntu@jiminny-prod-ecs1 -L 7970:vpc-activities7-3o2zlrelmga5qicf2yxxwtx6bi.us-east-2.es.amazonaws.com:80'\nprophet='cd ~/jiminny/app'\nprophetdown='aws-vault exec staging -- bash -c \"env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml down\"'\nprophetup='aws-vault exec staging -- bash -c \"env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml up --build\"'\nqa='ssh lukas@jiminny-qa-bastion -D 127.0.0.1:7074 -L 7432:db:3306'\nqaes='ssh ubuntu@jiminny-qa-ecs1 -L 7950:vpc-activities7-s5zchrs4xqcnav3rjzmxgxvfvq.us-east-2.es.amazonaws.com:80'\nqai='ssh lukas@jiminny-qai-bastion -D 127.0.0.1:7075 -L 7777:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306'\nrmbc='rm -rf bootstrap/cache/*.php'\nrun-help=man\nsp-start='npx screenpipe@latest record --disable-audio &'\nsp-status='curl -s http://localhost:3030/health | jq \"{status, frame_status, audio_status, last_frame: .last_frame_timestamp, uptime: .pipeline.uptime_secs, fps: .pipeline.capture_fps_actual, frames: .pipeline.frames_captured}\"'\nsp-stop='pkill -f screenpipe && echo '\\''screenpipe stopped'\\'\nstg='ssh lukas@jiminny-stage-bastion -D 127.0.0.1:7071 -L 7732:db:3306'\nstges='ssh ubuntu@jiminny-stage-ecs1 -L 7980:vpc-activities7-tgeodjeaugnaiigqgdcjjkrrj4.us-east-2.es.amazonaws.com:80'\nveu='ssh jiminny-eu-ecs1'\nveu10='ssh jiminny-eu-ecs10'\nveu11='ssh jiminny-eu-ecs11'\nveu12='ssh jiminny-eu-ecs12'\nveu2='ssh jiminny-eu-ecs2'\nveu3='ssh jiminny-eu-ecs3'\nveu4='ssh jiminny-eu-ecs4'\nveu5='ssh jiminny-eu-ecs5'\nveu6='ssh jiminny-eu-ecs6'\nveu7='ssh jiminny-eu-ecs7'\nveu8='ssh jiminny-eu-ecs8'\nveu9='ssh jiminny-eu-ecs9'\nvprod='ssh jiminny-prod-ecs1'\nvprod10='ssh jiminny-prod-ecs10'\nvprod11='ssh jiminny-prod-ecs11'\nvprod12='ssh jiminny-prod-ecs12'\nvprod2='ssh jiminny-prod-ecs2'\nvprod3='ssh jiminny-prod-ecs3'\nvprod4='ssh jiminny-prod-ecs4'\nvprod5='ssh jiminny-prod-ecs5'\nvprod6='ssh jiminny-prod-ecs6'\nvprod7='ssh jiminny-prod-ecs7'\nvprod8='ssh jiminny-prod-ecs8'\nvprod9='ssh jiminny-prod-ecs9'\nvqa='ssh jiminny-qa-ecs1'\nvqa2='ssh jiminny-qa-ecs2'\nvqai='ssh jiminny-qai-ecs1'\nvqai2='ssh jiminny-qai-ecs2'\nvstage='ssh ec2-user@jiminny-subenv-worker-app0'\nvstg='ssh jiminny-stage-ecs1'\nvstg2='ssh ubuntu@jiminny-stage-ecs2'\nwhich-command=whence\nwork='cd ~/jiminny/infrastructure/dev/docker && docker compose up'\nxd='make docker-xdebug-disable'\nxe='make docker-xdebug-enable'\nzp='nano ~/.zprofile'\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ alias\naddssh='ssh-add ~/.ssh/*'\napp='cd ~/jiminny/app'\ncnt='docker exec -ti $(docker ps | grep worker | awk '\\''{print $1}'\\'') /bin/bash -c \"cd /home/jiminny && bash\"'\nco='git checkout'\ncov='./vendor/bin/phpunit tests/Unit --coverage-html=build/coverage'\ncsfix='make cs-fix'\ndev='docker exec -ti $(docker ps -q --filter \"name=docker_lamp_1\") /bin/bash'\neu='ssh lukas@jiminny-eu-bastion -D 127.0.0.1:7073 -L 7532:db:3306'\neues='ssh ubuntu@jiminny-eu-ecs1 -L 7960:vpc-activities7-e7pfbl7wojjjnvp7olfpudrgke.eu-west-1.es.amazonaws.com:80'\next='nvm use 20 && cd ~/jiminny/extension-app && yarn build:dev && yarn preview'\nfe='yarn && nvm use 20 && cd ~/jiminny/app/front-end && yarn build:watch'\nfe3='cd ~/jiminny/app/front-end-vue3 && yarn build:watch:production'\ngbr='git branch --sort=-committerdate'\ngcb='git branch --show-current | pbcopy'\ngs='git status'\nhhh=history\nhhs='history 0 | grep '\ninstall_nano='apt-get update & apt-get install nano'\nkar='cp -f ~/DEV/settings/goku-karabiner-settings/karabiner.edn ~/.config/karabiner.edn && goku'\nll='ls -la --color=tty'\nnas='ssh Adm1n@192.168.0.242 -p22'\npoetryshell='eval \"\"'\nprod='ssh lukas@jiminny-prod-bastion -D 127.0.0.1:7072 -L 7632:db:3306'\nprodes='ssh ubuntu@jiminny-prod-ecs1 -L 7970:vpc-activities7-3o2zlrelmga5qicf2yxxwtx6bi.us-east-2.es.amazonaws.com:80'\nprophet='cd ~/jiminny/app'\nprophetdown='aws-vault exec staging -- bash -c \"env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml down\"'\nprophetup='aws-vault exec staging -- bash -c \"env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml up --build\"'\nqa='ssh lukas@jiminny-qa-bastion -D 127.0.0.1:7074 -L 7432:db:3306'\nqaes='ssh ubuntu@jiminny-qa-ecs1 -L 7950:vpc-activities7-s5zchrs4xqcnav3rjzmxgxvfvq.us-east-2.es.amazonaws.com:80'\nqai='ssh lukas@jiminny-qai-bastion -D 127.0.0.1:7075 -L 7777:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306'\nrmbc='rm -rf bootstrap/cache/*.php'\n UW PICO 5.09 New Buffer \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n [ New file ] \n^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos \n^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell \nrun-help=man\n UW PICO 5.09 New Buffer \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n [ Read 135 lines ] \n^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos \n^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell \nsp-start='npx screenpipe@latest record --disable-audio &'\nsp-status='curl -s http://localhost:3030/health | jq \"{status, frame_status, audio_status, last_frame: .last_frame_timestamp, uptime: .pipeline.uptime_secs, fps: .pipeline.capture_fps_actual, frames: .pipeline.frames_captured}\"'\nsp-stop='pkill -f screenpipe && echo '\\''screenpipe stopped'\\'\nstg='ssh lukas@jiminny-stage-bastion -D 127.0.0.1:7071 -L 7732:db:3306'\nstges='ssh ubuntu@jiminny-stage-ecs1 -L 7980:vpc-activities7-tgeodjeaugnaiigqgdcjjkrrj4.us-east-2.es.amazonaws.com:80'\nveu='ssh jiminny-eu-ecs1'\nveu10='ssh jiminny-eu-ecs10'\nveu11='ssh jiminny-eu-ecs11'\nveu12='ssh jiminny-eu-ecs12'\nveu2='ssh jiminny-eu-ecs2'\nveu3='ssh jiminny-eu-ecs3'\nveu4='ssh jiminny-eu-ecs4'\nveu5='ssh jiminny-eu-ecs5'\nveu6='ssh jiminny-eu-ecs6'\nveu7='ssh jiminny-eu-ecs7'\nveu8='ssh jiminny-eu-ecs8'\nveu9='ssh jiminny-eu-ecs9'\nvprod='ssh jiminny-prod-ecs1'\nvprod10='ssh jiminny-prod-ecs10'\nvprod11='ssh jiminny-prod-ecs11'\nvprod12='ssh jiminny-prod-ecs12'\nvprod2='ssh jiminny-prod-ecs2'\nvprod3='ssh jiminny-prod-ecs3'\nvprod4='ssh jiminny-prod-ecs4'\nvprod5='ssh jiminny-prod-ecs5'\nvprod6='ssh jiminny-prod-ecs6'\nvprod7='ssh jiminny-prod-ecs7'\nvprod8='ssh jiminny-prod-ecs8'\nvprod9='ssh jiminny-prod-ecs9'\nvqa='ssh jiminny-qa-ecs1'\nvqa2='ssh jiminny-qa-ecs2'\n UW PICO 5.09 New Buffer \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n [ Read 136 lines ] \n^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos \n^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell \nvqai='ssh jiminny-qai-ecs1'\n UW PICO 5.09 New Buffer \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n [ Read 136 lines ] \n^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos \n^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell \n UW PICO 5.09 File: /Users/lukas/.zprofile \n\n\n# alias dev=\"make bash\"\n# alias dev=\"docker compose up\"\nalias dev='docker exec -ti $(docker ps -q --filter \"name=docker_lamp_1\") /bin/bash'\n\nalias xe=\"make docker-xdebug-enable\"\nalias xd=\"make docker-xdebug-disable\"\n\nalias fe=\"yarn && nvm use 20 && cd ~/jiminny/app/front-end && yarn build:watch\" \nalias fe3=\"cd ~/jiminny/app/front-end-vue3 && yarn build:watch:production\"\n\nalias prod=\"ssh lukas@jiminny-prod-bastion -D 127.0.0.1:7072 -L 7632:db:3306\"\nalias stg=\"ssh lukas@jiminny-stage-bastion -D 127.0.0.1:7071 -L 7732:db:3306\"\nalias qa=\"ssh lukas@jiminny-qa-bastion -D 127.0.0.1:7074 -L 7432:db:3306\"\n# alias qb=\"ssh lukas@jiminny-qai-bastion -D 127.0.0.1:7075 -L 7832:db:3306\"\n# alias qai=\"ssh lukas@jiminny-qai-bastion -D 127.0.0.1:7075 -L 7832:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306\"\n# alias qai=\"ssh lukas@jiminny-qai-bastion -D 127.0.0.1:7075 -L 7777:jiminny-db-prod.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306\"\nalias qai=\"ssh lukas@jiminny-qai-bastion -D 127.0.0.1:7075 -L 7777:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306\"\nalias eu=\"ssh lukas@jiminny-eu-bastion -D 127.0.0.1:7073 -L 7532:db:3306\"\n\n\nalias vprod=\"ssh jiminny-prod-ecs1\"\nalias vprod2=\"ssh jiminny-prod-ecs2\"\nalias vprod3=\"ssh jiminny-prod-ecs3\"\nalias vprod4=\"ssh jiminny-prod-ecs4\"\nalias vprod5=\"ssh jiminny-prod-ecs5\"\nalias vprod6=\"ssh jiminny-prod-ecs6\" \nalias vprod7=\"ssh jiminny-prod-ecs7\"\nalias vprod8=\"ssh jiminny-prod-ecs8\"\nalias vprod9=\"ssh jiminny-prod-ecs9\"\nalias vprod10=\"ssh jiminny-prod-ecs10\"\nalias vprod11=\"ssh jiminny-prod-ecs11\"\nalias vprod12=\"ssh jiminny-prod-ecs12\"\nalias veu=\"ssh jiminny-eu-ecs1\"\nalias veu2=\"ssh jiminny-eu-ecs2\"\nalias veu3=\"ssh jiminny-eu-ecs3\"\nalias veu4=\"ssh jiminny-eu-ecs4\"\nalias veu5=\"ssh jiminny-eu-ecs5\"\nalias veu6=\"ssh jiminny-eu-ecs6\"\nalias veu7=\"ssh jiminny-eu-ecs7\"\n\n^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos \n^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.0,"top":0.05888889,"width":0.16388889,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.004166667,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.16388889,"top":0.05888889,"width":0.16388889,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.16805555,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.32777777,"top":0.05888889,"width":0.16388889,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.33194444,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"screenpipe\"","depth":2,"bounds":{"left":0.49166667,"top":0.05888889,"width":0.16388889,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.49583334,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"nano","depth":2,"bounds":{"left":0.65555555,"top":0.05888889,"width":0.16388889,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.6597222,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"✳ Review screenpipe usage and Boosteroid integration (node)","depth":2,"bounds":{"left":0.8194444,"top":0.05888889,"width":0.16388889,"height":0.026666667},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.82361114,"top":0.06333333,"width":0.011111111,"height":0.017777778},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.9548611,"top":0.032222223,"width":0.03888889,"height":0.018888889},"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"nano","depth":1,"bounds":{"left":0.4875,"top":0.033333335,"width":0.025,"height":0.017777778},"role_description":"text"}]...
|
-8995004587478196709
|
-8330043052110877261
|
idle
|
accessibility
|
NULL
|
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screen lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "SELECT COUNT(*) FROM frames WHERE app_name = 'Boosteroid' AND timestamp >= datetime('now', '-1 hour');"
1722
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ps aux | grep screenpipe
lukas 10874 15.7 4.1 412962384 689376 s009 SN 3:49pm 32:48.19 /Users/lukas/.npm/_npx/10835/lib/node_modules/screenpipe/node_modules/@screenpipe/cli-darwin-arm64/bin/screenpipe record --disable-audio
lukas 18357 0.9 0.0 410733264 1488 s010 S+ 4:53pm 0:00.00 grep screenpipe
lukas 10835 0.0 0.2 411427744 30240 s009 SN 3:49pm 0:00.08 node /Users/lukas/.nvm/versions/node/v14.15.4/bin/npx screenpipe@latest record --disable-audio
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ clear
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ /Users/lukas/.npm/_npx/10835/lib/node_modules/screenpipe/node_modules/@screenpipe/cli-darwin-arm64/bin/screenpipe record --help
increased file descriptor limit from 256 to 8192 (hard limit: 9223372036854775807)
Start recording screen, audio, and serve the API
Usage: screenpipe record [OPTIONS]
Options:
-d, --audio-chunk-duration <AUDIO_CHUNK_DURATION>
Audio chunk duration in seconds
[default: 30]
-p, --port <PORT>
Port to run the server on
[default: 3030]
--disable-audio
Disable audio recording
-i, --audio-device <AUDIO_DEVICE>
Audio devices to use (can be specified multiple times)
--use-system-default-audio
Follow system default audio devices
--data-dir <DATA_DIR>
Data directory. Default to $HOME/.screenpipe
--debug
Enable debug logging for screenpipe modules
-a, --audio-transcription-engine <AUDIO_TRANSCRIPTION_ENGINE>
Audio transcription engine to use
Possible values:
- deepgram
- whisper-tiny
- whisper-tiny-quantized
- whisper-large
- whisper-large-quantized
- whisper-large-v3-turbo
- whisper-large-v3-turbo-quantized
- openai-compatible
- qwen3-asr
- parakeet
- disabled: Disable transcription (audio capture only, no speech-to-text)
[default: parakeet]
-m, --monitor-id <MONITOR_ID>
Monitor IDs to use
--use-all-monitors
Automatically record all monitors
-l, --language <LANGUAGE>
Languages for OCR/transcription
[possible values: english, chinese, german, spanish, russian, korean, french, japanese, portuguese, turkish, polish, catalan, dutch, arabic, swedish, italian, indonesian, hindi, vietnamese, finnish, hebrew, ukrainian, greek, malay, czech, romanian, danish, hungarian, norwegian, thai, urdu, croatian, bulgarian, lithuanian, latin, malayalam, welsh, slovak, persian, latvian, bengali, serbian, azerbaijani, slovenian, estonian, macedonian, nepali, mongolian, bosnian, kazakh, albanian, swahili, galician, marathi, punjabi, sinhala, khmer, afrikaans, belarusian, gujarati, amharic, yiddish, lao, uzbek, faroese, pashto, maltese, sanskrit, luxembourgish, myanmar, tibetan, tagalog, assamese, tatar, hausa, javanese]
--use-pii-removal
Enable PII removal
--filter-music
Filter music-dominant audio before transcription (reduces Spotify/YouTube music noise)
--disable-vision
Disable vision recording
--ignored-windows <IGNORED_WINDOWS>
Windows to ignore (by title, uses contains matching)
--included-windows <INCLUDED_WINDOWS>
Windows to include (by title, uses contains matching)
--ignored-urls <IGNORED_URLS>
URLs to ignore for browser privacy filtering
--deepgram-api-key <DEEPGRAM_API_KEY>
Deepgram API Key for audio transcription
--transcription-mode <TRANSCRIPTION_MODE>
Audio transcription scheduling mode: batch (default, longer chunks for quality) or realtime
Possible values:
- realtime: Transcribe immediately as audio is captured
- batch: Accumulate longer audio batches for better transcription quality (default)
[default: batch]
--disable-telemetry
Disable telemetry
--video-quality <VIDEO_QUALITY>
Video quality preset: low, balanced, high, max
[default: balanced]
--enable-sync
Enable cloud sync
--sync-token <SYNC_TOKEN>
UW PICO 5.09 New Buffer
[ Read 18 lines ]
^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos
^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell
API token for cloud sync
[env: SCREENPIPE_SYNC_TOKEN=]
--sync-password <SYNC_PASSWORD>
Password for encrypting synced data
[env: SCREENPIPE_SYNC_PASSWORD=[PASSWORD]
--sync-interval-secs <SYNC_INTERVAL_SECS>
Interval between sync cycles in seconds
[default: 300]
--sync-machine-id <SYNC_MACHINE_ID>
Override the machine ID for this device
--pause-on-drm-content
Pause screen and audio capture when DRM content (Netflix, Disney+, etc.) is detected
--api-auth
Require authentication for remote API access. When enabled, non-localhost requests must include Authorization: Bearer <SCREENPIPE_API_KEY>. Localhost requests are always allowed
--encrypt-secrets
Encrypt secrets (API keys, OAuth tokens) at rest using the OS keychain. Creates a keychain key if one doesn't exist. Without this flag, the CLI will use an existing key (created by the desktop app) but won't create one
--retention-days <RETENTION_DAYS>
Local data retention in days. Old screen/audio data is auto-deleted after this period. Set to 0 to disable retention (keep data forever)
[default: 14]
-h, --help
Print help (see a summary with '-h')
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ npx screenpipe@latest record --disable-audio --ignored-apps "Boosteroid"
error: unexpected argument '--ignored-apps' found
tip: a similar argument exists: '--ignored-urls'
Usage: screenpipe record --disable-audio --ignored-urls <IGNORED_URLS>
For more information, try '--help'.
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ nano ~/.screenpipe/config.json
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ alias sp-start
sp-start='npx screenpipe@latest record --disable-audio &'
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ alias sql
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ alias
addssh='ssh-add ~/.ssh/*'
app='cd ~/jiminny/app'
cnt='docker exec -ti $(docker ps | grep worker | awk '\''{print $1}'\'') /bin/bash -c "cd /home/jiminny && bash"'
co='git checkout'
cov='./vendor/bin/phpunit tests/Unit --coverage-html=build/coverage'
csfix='make cs-fix'
dev='docker exec -ti $(docker ps -q --filter "name=docker_lamp_1") /bin/bash'
eu='ssh lukas@jiminny-eu-bastion -D [IP_ADDRESS]:7073 -L 7532:db:3306'
eues='ssh ubuntu@jiminny-eu-ecs1 -L 7960:vpc-activities7-e7pfbl7wojjjnvp7olfpudrgke.eu-west-1.es.amazonaws.com:80'
ext='nvm use 20 && cd ~/jiminny/extension-app && yarn build:dev && yarn preview'
fe='yarn && nvm use 20 && cd ~/jiminny/app/front-end && yarn build:watch'
fe3='cd ~/jiminny/app/front-end-vue3 && yarn build:watch:production'
gbr='git branch --sort=-committerdate'
gcb='git branch --show-current | pbcopy'
gs='git status'
hhh=history
hhs='history 0 | grep '
install_nano='apt-get update & apt-get install nano'
kar='cp -f ~/DEV/settings/goku-karabiner-settings/karabiner.edn ~/.config/karabiner.edn && goku'
ll='ls -la --color=tty'
nas='ssh Adm1n@[IP_ADDRESS] -p22'
poetryshell='eval ""'
prod='ssh lukas@jiminny-prod-bastion -D [IP_ADDRESS]:7072 -L 7632:db:3306'
prodes='ssh ubuntu@jiminny-prod-ecs1 -L 7970:vpc-activities7-3o2zlrelmga5qicf2yxxwtx6bi.us-east-2.es.amazonaws.com:80'
prophet='cd ~/jiminny/app'
prophetdown='aws-vault exec staging -- bash -c "env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml down"'
prophetup='aws-vault exec staging -- bash -c "env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml up --build"'
qa='ssh lukas@jiminny-qa-bastion -D [IP_ADDRESS]:7074 -L 7432:db:3306'
qaes='ssh ubuntu@jiminny-qa-ecs1 -L 7950:vpc-activities7-s5zchrs4xqcnav3rjzmxgxvfvq.us-east-2.es.amazonaws.com:80'
qai='ssh lukas@jiminny-qai-bastion -D [IP_ADDRESS]:7075 -L 7777:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306'
rmbc='rm -rf bootstrap/cache/*.php'
run-help=man
sp-start='npx screenpipe@latest record --disable-audio &'
sp-status='curl -s [URL_WITH_CREDENTIALS] -D [IP_ADDRESS]:7071 -L 7732:db:3306'
stges='ssh ubuntu@jiminny-stage-ecs1 -L 7980:vpc-activities7-tgeodjeaugnaiigqgdcjjkrrj4.us-east-2.es.amazonaws.com:80'
veu='ssh jiminny-eu-ecs1'
veu10='ssh jiminny-eu-ecs10'
veu11='ssh jiminny-eu-ecs11'
veu12='ssh jiminny-eu-ecs12'
veu2='ssh jiminny-eu-ecs2'
veu3='ssh jiminny-eu-ecs3'
veu4='ssh jiminny-eu-ecs4'
veu5='ssh jiminny-eu-ecs5'
veu6='ssh jiminny-eu-ecs6'
veu7='ssh jiminny-eu-ecs7'
veu8='ssh jiminny-eu-ecs8'
veu9='ssh jiminny-eu-ecs9'
vprod='ssh jiminny-prod-ecs1'
vprod10='ssh jiminny-prod-ecs10'
vprod11='ssh jiminny-prod-ecs11'
vprod12='ssh jiminny-prod-ecs12'
vprod2='ssh jiminny-prod-ecs2'
vprod3='ssh jiminny-prod-ecs3'
vprod4='ssh jiminny-prod-ecs4'
vprod5='ssh jiminny-prod-ecs5'
vprod6='ssh jiminny-prod-ecs6'
vprod7='ssh jiminny-prod-ecs7'
vprod8='ssh jiminny-prod-ecs8'
vprod9='ssh jiminny-prod-ecs9'
vqa='ssh jiminny-qa-ecs1'
vqa2='ssh jiminny-qa-ecs2'
vqai='ssh jiminny-qai-ecs1'
vqai2='ssh jiminny-qai-ecs2'
vstage='ssh ec2-user@jiminny-subenv-worker-app0'
vstg='ssh jiminny-stage-ecs1'
vstg2='ssh ubuntu@jiminny-stage-ecs2'
which-command=whence
work='cd ~/jiminny/infrastructure/dev/docker && docker compose up'
xd='make docker-xdebug-disable'
xe='make docker-xdebug-enable'
zp='nano ~/.zprofile'
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ alias
addssh='ssh-add ~/.ssh/*'
app='cd ~/jiminny/app'
cnt='docker exec -ti $(docker ps | grep worker | awk '\''{print $1}'\'') /bin/bash -c "cd /home/jiminny && bash"'
co='git checkout'
cov='./vendor/bin/phpunit tests/Unit --coverage-html=build/coverage'
csfix='make cs-fix'
dev='docker exec -ti $(docker ps -q --filter "name=docker_lamp_1") /bin/bash'
eu='ssh lukas@jiminny-eu-bastion -D [IP_ADDRESS]:7073 -L 7532:db:3306'
eues='ssh ubuntu@jiminny-eu-ecs1 -L 7960:vpc-activities7-e7pfbl7wojjjnvp7olfpudrgke.eu-west-1.es.amazonaws.com:80'
ext='nvm use 20 && cd ~/jiminny/extension-app && yarn build:dev && yarn preview'
fe='yarn && nvm use 20 && cd ~/jiminny/app/front-end && yarn build:watch'
fe3='cd ~/jiminny/app/front-end-vue3 && yarn build:watch:production'
gbr='git branch --sort=-committerdate'
gcb='git branch --show-current | pbcopy'
gs='git status'
hhh=history
hhs='history 0 | grep '
install_nano='apt-get update & apt-get install nano'
kar='cp -f ~/DEV/settings/goku-karabiner-settings/karabiner.edn ~/.config/karabiner.edn && goku'
ll='ls -la --color=tty'
nas='ssh Adm1n@[IP_ADDRESS] -p22'
poetryshell='eval ""'
prod='ssh lukas@jiminny-prod-bastion -D [IP_ADDRESS]:7072 -L 7632:db:3306'
prodes='ssh ubuntu@jiminny-prod-ecs1 -L 7970:vpc-activities7-3o2zlrelmga5qicf2yxxwtx6bi.us-east-2.es.amazonaws.com:80'
prophet='cd ~/jiminny/app'
prophetdown='aws-vault exec staging -- bash -c "env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml down"'
prophetup='aws-vault exec staging -- bash -c "env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml up --build"'
qa='ssh lukas@jiminny-qa-bastion -D [IP_ADDRESS]:7074 -L 7432:db:3306'
qaes='ssh ubuntu@jiminny-qa-ecs1 -L 7950:vpc-activities7-s5zchrs4xqcnav3rjzmxgxvfvq.us-east-2.es.amazonaws.com:80'
qai='ssh lukas@jiminny-qai-bastion -D [IP_ADDRESS]:7075 -L 7777:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306'
rmbc='rm -rf bootstrap/cache/*.php'
UW PICO 5.09 New Buffer
[ New file ]
^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos
^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell
run-help=man
UW PICO 5.09 New Buffer
[ Read 135 lines ]
^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos
^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell
sp-start='npx screenpipe@latest record --disable-audio &'
sp-status='curl -s [URL_WITH_CREDENTIALS] -D [IP_ADDRESS]:7071 -L 7732:db:3306'
stges='ssh ubuntu@jiminny-stage-ecs1 -L 7980:vpc-activities7-tgeodjeaugnaiigqgdcjjkrrj4.us-east-2.es.amazonaws.com:80'
veu='ssh jiminny-eu-ecs1'
veu10='ssh jiminny-eu-ecs10'
veu11='ssh jiminny-eu-ecs11'
veu12='ssh jiminny-eu-ecs12'
veu2='ssh jiminny-eu-ecs2'
veu3='ssh jiminny-eu-ecs3'
veu4='ssh jiminny-eu-ecs4'
veu5='ssh jiminny-eu-ecs5'
veu6='ssh jiminny-eu-ecs6'
veu7='ssh jiminny-eu-ecs7'
veu8='ssh jiminny-eu-ecs8'
veu9='ssh jiminny-eu-ecs9'
vprod='ssh jiminny-prod-ecs1'
vprod10='ssh jiminny-prod-ecs10'
vprod11='ssh jiminny-prod-ecs11'
vprod12='ssh jiminny-prod-ecs12'
vprod2='ssh jiminny-prod-ecs2'
vprod3='ssh jiminny-prod-ecs3'
vprod4='ssh jiminny-prod-ecs4'
vprod5='ssh jiminny-prod-ecs5'
vprod6='ssh jiminny-prod-ecs6'
vprod7='ssh jiminny-prod-ecs7'
vprod8='ssh jiminny-prod-ecs8'
vprod9='ssh jiminny-prod-ecs9'
vqa='ssh jiminny-qa-ecs1'
vqa2='ssh jiminny-qa-ecs2'
UW PICO 5.09 New Buffer
[ Read 136 lines ]
^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos
^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell
vqai='ssh jiminny-qai-ecs1'
UW PICO 5.09 New Buffer
[ Read 136 lines ]
^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos
^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell
UW PICO 5.09 File: /Users/lukas/.zprofile
# alias dev="make bash"
# alias dev="docker compose up"
alias dev='docker exec -ti $(docker ps -q --filter "name=docker_lamp_1") /bin/bash'
alias xe="make docker-xdebug-enable"
alias xd="make docker-xdebug-disable"
alias fe="yarn && nvm use 20 && cd ~/jiminny/app/front-end && yarn build:watch"
alias fe3="cd ~/jiminny/app/front-end-vue3 && yarn build:watch:production"
alias prod="ssh lukas@jiminny-prod-bastion -D [IP_ADDRESS]:7072 -L 7632:db:3306"
alias stg="ssh lukas@jiminny-stage-bastion -D [IP_ADDRESS]:7071 -L 7732:db:3306"
alias qa="ssh lukas@jiminny-qa-bastion -D [IP_ADDRESS]:7074 -L 7432:db:3306"
# alias qb="ssh lukas@jiminny-qai-bastion -D [IP_ADDRESS]:7075 -L 7832:db:3306"
# alias qai="ssh lukas@jiminny-qai-bastion -D [IP_ADDRESS]:7075 -L 7832:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306"
# alias qai="ssh lukas@jiminny-qai-bastion -D [IP_ADDRESS]:7075 -L 7777:jiminny-db-prod.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306"
alias qai="ssh lukas@jiminny-qai-bastion -D [IP_ADDRESS]:7075 -L 7777:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306"
alias eu="ssh lukas@jiminny-eu-bastion -D [IP_ADDRESS]:7073 -L 7532:db:3306"
alias vprod="ssh jiminny-prod-ecs1"
alias vprod2="ssh jiminny-prod-ecs2"
alias vprod3="ssh jiminny-prod-ecs3"
alias vprod4="ssh jiminny-prod-ecs4"
alias vprod5="ssh jiminny-prod-ecs5"
alias vprod6="ssh jiminny-prod-ecs6"
alias vprod7="ssh jiminny-prod-ecs7"
alias vprod8="ssh jiminny-prod-ecs8"
alias vprod9="ssh jiminny-prod-ecs9"
alias vprod10="ssh jiminny-prod-ecs10"
alias vprod11="ssh jiminny-prod-ecs11"
alias vprod12="ssh jiminny-prod-ecs12"
alias veu="ssh jiminny-eu-ecs1"
alias veu2="ssh jiminny-eu-ecs2"
alias veu3="ssh jiminny-eu-ecs3"
alias veu4="ssh jiminny-eu-ecs4"
alias veu5="ssh jiminny-eu-ecs5"
alias veu6="ssh jiminny-eu-ecs6"
alias veu7="ssh jiminny-eu-ecs7"
^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos
^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
screenpipe"
Close Tab
nano
Close Tab
✳ Review screenpipe usage and Boosteroid integration (node)
Close Tab
⌥⌘1
nano...
|
NULL
|
|
40241
|
835
|
5
|
2026-04-16T15:39:59.219372+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-16/1776 /Users/lukas/.screenpipe/data/data/2026-04-16/1776353999219_m2.jpg...
|
iTerm2
|
nano
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screen lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "SELECT COUNT(*) FROM frames WHERE app_name = 'Boosteroid' AND timestamp >= datetime('now', '-1 hour');"
1722
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ps aux | grep screenpipe
lukas 10874 15.7 4.1 412962384 689376 s009 SN 3:49pm 32:48.19 /Users/lukas/.npm/_npx/10835/lib/node_modules/screenpipe/node_modules/@screenpipe/cli-darwin-arm64/bin/screenpipe record --disable-audio
lukas 18357 0.9 0.0 410733264 1488 s010 S+ 4:53pm 0:00.00 grep screenpipe
lukas 10835 0.0 0.2 411427744 30240 s009 SN 3:49pm 0:00.08 node /Users/lukas/.nvm/versions/node/v14.15.4/bin/npx screenpipe@latest record --disable-audio
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ clear
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ /Users/lukas/.npm/_npx/10835/lib/node_modules/screenpipe/node_modules/@screenpipe/cli-darwin-arm64/bin/screenpipe record --help
increased file descriptor limit from 256 to 8192 (hard limit: 9223372036854775807)
Start recording screen, audio, and serve the API
Usage: screenpipe record [OPTIONS]
Options:
-d, --audio-chunk-duration <AUDIO_CHUNK_DURATION>
Audio chunk duration in seconds
[default: 30]
-p, --port <PORT>
Port to run the server on
[default: 3030]
--disable-audio
Disable audio recording
-i, --audio-device <AUDIO_DEVICE>
Audio devices to use (can be specified multiple times)
--use-system-default-audio
Follow system default audio devices
--data-dir <DATA_DIR>
Data directory. Default to $HOME/.screenpipe
--debug
Enable debug logging for screenpipe modules
-a, --audio-transcription-engine <AUDIO_TRANSCRIPTION_ENGINE>
Audio transcription engine to use
Possible values:
- deepgram
- whisper-tiny
- whisper-tiny-quantized
- whisper-large
- whisper-large-quantized
- whisper-large-v3-turbo
- whisper-large-v3-turbo-quantized
- openai-compatible
- qwen3-asr
- parakeet
- disabled: Disable transcription (audio capture only, no speech-to-text)
[default: parakeet]
-m, --monitor-id <MONITOR_ID>
Monitor IDs to use
--use-all-monitors
Automatically record all monitors
-l, --language <LANGUAGE>
Languages for OCR/transcription
[possible values: english, chinese, german, spanish, russian, korean, french, japanese, portuguese, turkish, polish, catalan, dutch, arabic, swedish, italian, indonesian, hindi, vietnamese, finnish, hebrew, ukrainian, greek, malay, czech, romanian, danish, hungarian, norwegian, thai, urdu, croatian, bulgarian, lithuanian, latin, malayalam, welsh, slovak, persian, latvian, bengali, serbian, azerbaijani, slovenian, estonian, macedonian, nepali, mongolian, bosnian, kazakh, albanian, swahili, galician, marathi, punjabi, sinhala, khmer, afrikaans, belarusian, gujarati, amharic, yiddish, lao, uzbek, faroese, pashto, maltese, sanskrit, luxembourgish, myanmar, tibetan, tagalog, assamese, tatar, hausa, javanese]
--use-pii-removal
Enable PII removal
--filter-music
Filter music-dominant audio before transcription (reduces Spotify/YouTube music noise)
--disable-vision
Disable vision recording
--ignored-windows <IGNORED_WINDOWS>
Windows to ignore (by title, uses contains matching)
--included-windows <INCLUDED_WINDOWS>
Windows to include (by title, uses contains matching)
--ignored-urls <IGNORED_URLS>
URLs to ignore for browser privacy filtering
--deepgram-api-key <DEEPGRAM_API_KEY>
Deepgram API Key for audio transcription
--transcription-mode <TRANSCRIPTION_MODE>
Audio transcription scheduling mode: batch (default, longer chunks for quality) or realtime
Possible values:
- realtime: Transcribe immediately as audio is captured
- batch: Accumulate longer audio batches for better transcription quality (default)
[default: batch]
--disable-telemetry
Disable telemetry
--video-quality <VIDEO_QUALITY>
Video quality preset: low, balanced, high, max
[default: balanced]
--enable-sync
Enable cloud sync
--sync-token <SYNC_TOKEN>
UW PICO 5.09 New Buffer
[ Read 18 lines ]
^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos
^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell
API token for cloud sync
[env: SCREENPIPE_SYNC_TOKEN=]
--sync-password <SYNC_PASSWORD>
Password for encrypting synced data
[env: SCREENPIPE_SYNC_PASSWORD=[PASSWORD]
--sync-interval-secs <SYNC_INTERVAL_SECS>
Interval between sync cycles in seconds
[default: 300]
--sync-machine-id <SYNC_MACHINE_ID>
Override the machine ID for this device
--pause-on-drm-content
Pause screen and audio capture when DRM content (Netflix, Disney+, etc.) is detected
--api-auth
Require authentication for remote API access. When enabled, non-localhost requests must include Authorization: Bearer <SCREENPIPE_API_KEY>. Localhost requests are always allowed
--encrypt-secrets
Encrypt secrets (API keys, OAuth tokens) at rest using the OS keychain. Creates a keychain key if one doesn't exist. Without this flag, the CLI will use an existing key (created by the desktop app) but won't create one
--retention-days <RETENTION_DAYS>
Local data retention in days. Old screen/audio data is auto-deleted after this period. Set to 0 to disable retention (keep data forever)
[default: 14]
-h, --help
Print help (see a summary with '-h')
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ npx screenpipe@latest record --disable-audio --ignored-apps "Boosteroid"
error: unexpected argument '--ignored-apps' found
tip: a similar argument exists: '--ignored-urls'
Usage: screenpipe record --disable-audio --ignored-urls <IGNORED_URLS>
For more information, try '--help'.
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ nano ~/.screenpipe/config.json
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ alias sp-start
sp-start='npx screenpipe@latest record --disable-audio &'
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ alias sql
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ alias
addssh='ssh-add ~/.ssh/*'
app='cd ~/jiminny/app'
cnt='docker exec -ti $(docker ps | grep worker | awk '\''{print $1}'\'') /bin/bash -c "cd /home/jiminny && bash"'
co='git checkout'
cov='./vendor/bin/phpunit tests/Unit --coverage-html=build/coverage'
csfix='make cs-fix'
dev='docker exec -ti $(docker ps -q --filter "name=docker_lamp_1") /bin/bash'
eu='ssh lukas@jiminny-eu-bastion -D [IP_ADDRESS]:7073 -L 7532:db:3306'
eues='ssh ubuntu@jiminny-eu-ecs1 -L 7960:vpc-activities7-e7pfbl7wojjjnvp7olfpudrgke.eu-west-1.es.amazonaws.com:80'
ext='nvm use 20 && cd ~/jiminny/extension-app && yarn build:dev && yarn preview'
fe='yarn && nvm use 20 && cd ~/jiminny/app/front-end && yarn build:watch'
fe3='cd ~/jiminny/app/front-end-vue3 && yarn build:watch:production'
gbr='git branch --sort=-committerdate'
gcb='git branch --show-current | pbcopy'
gs='git status'
hhh=history
hhs='history 0 | grep '
install_nano='apt-get update & apt-get install nano'
kar='cp -f ~/DEV/settings/goku-karabiner-settings/karabiner.edn ~/.config/karabiner.edn && goku'
ll='ls -la --color=tty'
nas='ssh Adm1n@[IP_ADDRESS] -p22'
poetryshell='eval ""'
prod='ssh lukas@jiminny-prod-bastion -D [IP_ADDRESS]:7072 -L 7632:db:3306'
prodes='ssh ubuntu@jiminny-prod-ecs1 -L 7970:vpc-activities7-3o2zlrelmga5qicf2yxxwtx6bi.us-east-2.es.amazonaws.com:80'
prophet='cd ~/jiminny/app'
prophetdown='aws-vault exec staging -- bash -c "env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml down"'
prophetup='aws-vault exec staging -- bash -c "env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml up --build"'
qa='ssh lukas@jiminny-qa-bastion -D [IP_ADDRESS]:7074 -L 7432:db:3306'
qaes='ssh ubuntu@jiminny-qa-ecs1 -L 7950:vpc-activities7-s5zchrs4xqcnav3rjzmxgxvfvq.us-east-2.es.amazonaws.com:80'
qai='ssh lukas@jiminny-qai-bastion -D [IP_ADDRESS]:7075 -L 7777:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306'
rmbc='rm -rf bootstrap/cache/*.php'
run-help=man
sp-start='npx screenpipe@latest record --disable-audio &'
sp-status='curl -s [URL_WITH_CREDENTIALS] -D [IP_ADDRESS]:7071 -L 7732:db:3306'
stges='ssh ubuntu@jiminny-stage-ecs1 -L 7980:vpc-activities7-tgeodjeaugnaiigqgdcjjkrrj4.us-east-2.es.amazonaws.com:80'
veu='ssh jiminny-eu-ecs1'
veu10='ssh jiminny-eu-ecs10'
veu11='ssh jiminny-eu-ecs11'
veu12='ssh jiminny-eu-ecs12'
veu2='ssh jiminny-eu-ecs2'
veu3='ssh jiminny-eu-ecs3'
veu4='ssh jiminny-eu-ecs4'
veu5='ssh jiminny-eu-ecs5'
veu6='ssh jiminny-eu-ecs6'
veu7='ssh jiminny-eu-ecs7'
veu8='ssh jiminny-eu-ecs8'
veu9='ssh jiminny-eu-ecs9'
vprod='ssh jiminny-prod-ecs1'
vprod10='ssh jiminny-prod-ecs10'
vprod11='ssh jiminny-prod-ecs11'
vprod12='ssh jiminny-prod-ecs12'
vprod2='ssh jiminny-prod-ecs2'
vprod3='ssh jiminny-prod-ecs3'
vprod4='ssh jiminny-prod-ecs4'
vprod5='ssh jiminny-prod-ecs5'
vprod6='ssh jiminny-prod-ecs6'
vprod7='ssh jiminny-prod-ecs7'
vprod8='ssh jiminny-prod-ecs8'
vprod9='ssh jiminny-prod-ecs9'
vqa='ssh jiminny-qa-ecs1'
vqa2='ssh jiminny-qa-ecs2'
vqai='ssh jiminny-qai-ecs1'
vqai2='ssh jiminny-qai-ecs2'
vstage='ssh ec2-user@jiminny-subenv-worker-app0'
vstg='ssh jiminny-stage-ecs1'
vstg2='ssh ubuntu@jiminny-stage-ecs2'
which-command=whence
work='cd ~/jiminny/infrastructure/dev/docker && docker compose up'
xd='make docker-xdebug-disable'
xe='make docker-xdebug-enable'
zp='nano ~/.zprofile'
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ alias
addssh='ssh-add ~/.ssh/*'
app='cd ~/jiminny/app'
cnt='docker exec -ti $(docker ps | grep worker | awk '\''{print $1}'\'') /bin/bash -c "cd /home/jiminny && bash"'
co='git checkout'
cov='./vendor/bin/phpunit tests/Unit --coverage-html=build/coverage'
csfix='make cs-fix'
dev='docker exec -ti $(docker ps -q --filter "name=docker_lamp_1") /bin/bash'
eu='ssh lukas@jiminny-eu-bastion -D [IP_ADDRESS]:7073 -L 7532:db:3306'
eues='ssh ubuntu@jiminny-eu-ecs1 -L 7960:vpc-activities7-e7pfbl7wojjjnvp7olfpudrgke.eu-west-1.es.amazonaws.com:80'
ext='nvm use 20 && cd ~/jiminny/extension-app && yarn build:dev && yarn preview'
fe='yarn && nvm use 20 && cd ~/jiminny/app/front-end && yarn build:watch'
fe3='cd ~/jiminny/app/front-end-vue3 && yarn build:watch:production'
gbr='git branch --sort=-committerdate'
gcb='git branch --show-current | pbcopy'
gs='git status'
hhh=history
hhs='history 0 | grep '
install_nano='apt-get update & apt-get install nano'
kar='cp -f ~/DEV/settings/goku-karabiner-settings/karabiner.edn ~/.config/karabiner.edn && goku'
ll='ls -la --color=tty'
nas='ssh Adm1n@[IP_ADDRESS] -p22'
poetryshell='eval ""'
prod='ssh lukas@jiminny-prod-bastion -D [IP_ADDRESS]:7072 -L 7632:db:3306'
prodes='ssh ubuntu@jiminny-prod-ecs1 -L 7970:vpc-activities7-3o2zlrelmga5qicf2yxxwtx6bi.us-east-2.es.amazonaws.com:80'
prophet='cd ~/jiminny/app'
prophetdown='aws-vault exec staging -- bash -c "env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml down"'
prophetup='aws-vault exec staging -- bash -c "env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml up --build"'
qa='ssh lukas@jiminny-qa-bastion -D [IP_ADDRESS]:7074 -L 7432:db:3306'
qaes='ssh ubuntu@jiminny-qa-ecs1 -L 7950:vpc-activities7-s5zchrs4xqcnav3rjzmxgxvfvq.us-east-2.es.amazonaws.com:80'
qai='ssh lukas@jiminny-qai-bastion -D [IP_ADDRESS]:7075 -L 7777:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306'
rmbc='rm -rf bootstrap/cache/*.php'
UW PICO 5.09 New Buffer
[ New file ]
^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos
^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell
run-help=man
UW PICO 5.09 New Buffer
[ Read 135 lines ]
^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos
^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell
sp-start='npx screenpipe@latest record --disable-audio &'
sp-status='curl -s [URL_WITH_CREDENTIALS] -D [IP_ADDRESS]:7071 -L 7732:db:3306'
stges='ssh ubuntu@jiminny-stage-ecs1 -L 7980:vpc-activities7-tgeodjeaugnaiigqgdcjjkrrj4.us-east-2.es.amazonaws.com:80'
veu='ssh jiminny-eu-ecs1'
veu10='ssh jiminny-eu-ecs10'
veu11='ssh jiminny-eu-ecs11'
veu12='ssh jiminny-eu-ecs12'
veu2='ssh jiminny-eu-ecs2'
veu3='ssh jiminny-eu-ecs3'
veu4='ssh jiminny-eu-ecs4'
veu5='ssh jiminny-eu-ecs5'
veu6='ssh jiminny-eu-ecs6'
veu7='ssh jiminny-eu-ecs7'
veu8='ssh jiminny-eu-ecs8'
veu9='ssh jiminny-eu-ecs9'
vprod='ssh jiminny-prod-ecs1'
vprod10='ssh jiminny-prod-ecs10'
vprod11='ssh jiminny-prod-ecs11'
vprod12='ssh jiminny-prod-ecs12'
vprod2='ssh jiminny-prod-ecs2'
vprod3='ssh jiminny-prod-ecs3'
vprod4='ssh jiminny-prod-ecs4'
vprod5='ssh jiminny-prod-ecs5'
vprod6='ssh jiminny-prod-ecs6'
vprod7='ssh jiminny-prod-ecs7'
vprod8='ssh jiminny-prod-ecs8'
vprod9='ssh jiminny-prod-ecs9'
vqa='ssh jiminny-qa-ecs1'
vqa2='ssh jiminny-qa-ecs2'
UW PICO 5.09 New Buffer
[ Read 136 lines ]
^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos
^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell
vqai='ssh jiminny-qai-ecs1'
UW PICO 5.09 New Buffer
[ Read 136 lines ]
^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos
^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell
UW PICO 5.09 File: /Users/lukas/.zprofile
# alias dev="make bash"
# alias dev="docker compose up"
alias dev='docker exec -ti $(docker ps -q --filter "name=docker_lamp_1") /bin/bash'
alias xe="make docker-xdebug-enable"
alias xd="make docker-xdebug-disable"
alias fe="yarn && nvm use 20 && cd ~/jiminny/app/front-end && yarn build:watch"
alias fe3="cd ~/jiminny/app/front-end-vue3 && yarn build:watch:production"
alias prod="ssh lukas@jiminny-prod-bastion -D [IP_ADDRESS]:7072 -L 7632:db:3306"
alias stg="ssh lukas@jiminny-stage-bastion -D [IP_ADDRESS]:7071 -L 7732:db:3306"
alias qa="ssh lukas@jiminny-qa-bastion -D [IP_ADDRESS]:7074 -L 7432:db:3306"
# alias qb="ssh lukas@jiminny-qai-bastion -D [IP_ADDRESS]:7075 -L 7832:db:3306"
# alias qai="ssh lukas@jiminny-qai-bastion -D [IP_ADDRESS]:7075 -L 7832:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306"
# alias qai="ssh lukas@jiminny-qai-bastion -D [IP_ADDRESS]:7075 -L 7777:jiminny-db-prod.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306"
alias qai="ssh lukas@jiminny-qai-bastion -D [IP_ADDRESS]:7075 -L 7777:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306"
alias eu="ssh lukas@jiminny-eu-bastion -D [IP_ADDRESS]:7073 -L 7532:db:3306"
alias vprod="ssh jiminny-prod-ecs1"
alias vprod2="ssh jiminny-prod-ecs2"
alias vprod3="ssh jiminny-prod-ecs3"
alias vprod4="ssh jiminny-prod-ecs4"
alias vprod5="ssh jiminny-prod-ecs5"
alias vprod6="ssh jiminny-prod-ecs6"
alias vprod7="ssh jiminny-prod-ecs7"
alias vprod8="ssh jiminny-prod-ecs8"
alias vprod9="ssh jiminny-prod-ecs9"
alias vprod10="ssh jiminny-prod-ecs10"
alias vprod11="ssh jiminny-prod-ecs11"
alias vprod12="ssh jiminny-prod-ecs12"
alias veu="ssh jiminny-eu-ecs1"
alias veu2="ssh jiminny-eu-ecs2"
alias veu3="ssh jiminny-eu-ecs3"
alias veu4="ssh jiminny-eu-ecs4"
alias veu5="ssh jiminny-eu-ecs5"
alias veu6="ssh jiminny-eu-ecs6"
alias veu7="ssh jiminny-eu-ecs7"
^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos
^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
screenpipe"
Close Tab
nano
Close Tab
✳ Review screenpipe usage and Boosteroid integration (node)
Close Tab
⌥⌘1
nano...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT COUNT(*) FROM frames WHERE app_name = 'Boosteroid' AND timestamp >= datetime('now', '-1 hour');\"\n1722\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ps aux | grep screenpipe\nlukas 10874 15.7 4.1 412962384 689376 s009 SN 3:49pm 32:48.19 /Users/lukas/.npm/_npx/10835/lib/node_modules/screenpipe/node_modules/@screenpipe/cli-darwin-arm64/bin/screenpipe record --disable-audio\nlukas 18357 0.9 0.0 410733264 1488 s010 S+ 4:53pm 0:00.00 grep screenpipe\nlukas 10835 0.0 0.2 411427744 30240 s009 SN 3:49pm 0:00.08 node /Users/lukas/.nvm/versions/node/v14.15.4/bin/npx screenpipe@latest record --disable-audio\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ clear\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ /Users/lukas/.npm/_npx/10835/lib/node_modules/screenpipe/node_modules/@screenpipe/cli-darwin-arm64/bin/screenpipe record --help\nincreased file descriptor limit from 256 to 8192 (hard limit: 9223372036854775807)\nStart recording screen, audio, and serve the API\n\nUsage: screenpipe record [OPTIONS]\n\nOptions:\n -d, --audio-chunk-duration <AUDIO_CHUNK_DURATION>\n Audio chunk duration in seconds\n \n [default: 30]\n\n -p, --port <PORT>\n Port to run the server on\n \n [default: 3030]\n\n --disable-audio\n Disable audio recording\n\n -i, --audio-device <AUDIO_DEVICE>\n Audio devices to use (can be specified multiple times)\n\n --use-system-default-audio\n Follow system default audio devices\n\n --data-dir <DATA_DIR>\n Data directory. Default to $HOME/.screenpipe\n\n --debug\n Enable debug logging for screenpipe modules\n\n -a, --audio-transcription-engine <AUDIO_TRANSCRIPTION_ENGINE>\n Audio transcription engine to use\n\n Possible values:\n - deepgram\n - whisper-tiny\n - whisper-tiny-quantized\n - whisper-large\n - whisper-large-quantized\n - whisper-large-v3-turbo\n - whisper-large-v3-turbo-quantized\n - openai-compatible\n - qwen3-asr\n - parakeet\n - disabled: Disable transcription (audio capture only, no speech-to-text)\n \n [default: parakeet]\n\n -m, --monitor-id <MONITOR_ID>\n Monitor IDs to use\n\n --use-all-monitors\n Automatically record all monitors\n\n -l, --language <LANGUAGE>\n Languages for OCR/transcription\n \n [possible values: english, chinese, german, spanish, russian, korean, french, japanese, portuguese, turkish, polish, catalan, dutch, arabic, swedish, italian, indonesian, hindi, vietnamese, finnish, hebrew, ukrainian, greek, malay, czech, romanian, danish, hungarian, norwegian, thai, urdu, croatian, bulgarian, lithuanian, latin, malayalam, welsh, slovak, persian, latvian, bengali, serbian, azerbaijani, slovenian, estonian, macedonian, nepali, mongolian, bosnian, kazakh, albanian, swahili, galician, marathi, punjabi, sinhala, khmer, afrikaans, belarusian, gujarati, amharic, yiddish, lao, uzbek, faroese, pashto, maltese, sanskrit, luxembourgish, myanmar, tibetan, tagalog, assamese, tatar, hausa, javanese]\n\n --use-pii-removal\n Enable PII removal\n\n --filter-music\n Filter music-dominant audio before transcription (reduces Spotify/YouTube music noise)\n\n --disable-vision\n Disable vision recording\n\n --ignored-windows <IGNORED_WINDOWS>\n Windows to ignore (by title, uses contains matching)\n\n --included-windows <INCLUDED_WINDOWS>\n Windows to include (by title, uses contains matching)\n\n --ignored-urls <IGNORED_URLS>\n URLs to ignore for browser privacy filtering\n\n --deepgram-api-key <DEEPGRAM_API_KEY>\n Deepgram API Key for audio transcription\n\n --transcription-mode <TRANSCRIPTION_MODE>\n Audio transcription scheduling mode: batch (default, longer chunks for quality) or realtime\n\n Possible values:\n - realtime: Transcribe immediately as audio is captured\n - batch: Accumulate longer audio batches for better transcription quality (default)\n \n [default: batch]\n\n --disable-telemetry\n Disable telemetry\n\n --video-quality <VIDEO_QUALITY>\n Video quality preset: low, balanced, high, max\n \n [default: balanced]\n\n --enable-sync\n Enable cloud sync\n\n --sync-token <SYNC_TOKEN>\n UW PICO 5.09 New Buffer \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n [ Read 18 lines ] \n^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos \n^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell \n API token for cloud sync\n \n [env: SCREENPIPE_SYNC_TOKEN=]\n\n --sync-password <SYNC_PASSWORD>\n Password for encrypting synced data\n \n [env: SCREENPIPE_SYNC_PASSWORD=]\n\n --sync-interval-secs <SYNC_INTERVAL_SECS>\n Interval between sync cycles in seconds\n \n [default: 300]\n\n --sync-machine-id <SYNC_MACHINE_ID>\n Override the machine ID for this device\n\n --pause-on-drm-content\n Pause screen and audio capture when DRM content (Netflix, Disney+, etc.) is detected\n\n --api-auth\n Require authentication for remote API access. When enabled, non-localhost requests must include Authorization: Bearer <SCREENPIPE_API_KEY>. Localhost requests are always allowed\n\n --encrypt-secrets\n Encrypt secrets (API keys, OAuth tokens) at rest using the OS keychain. Creates a keychain key if one doesn't exist. Without this flag, the CLI will use an existing key (created by the desktop app) but won't create one\n\n --retention-days <RETENTION_DAYS>\n Local data retention in days. Old screen/audio data is auto-deleted after this period. Set to 0 to disable retention (keep data forever)\n \n [default: 14]\n\n -h, --help\n Print help (see a summary with '-h')\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ npx screenpipe@latest record --disable-audio --ignored-apps \"Boosteroid\"\nerror: unexpected argument '--ignored-apps' found\n\n tip: a similar argument exists: '--ignored-urls'\n\nUsage: screenpipe record --disable-audio --ignored-urls <IGNORED_URLS>\n\nFor more information, try '--help'.\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ nano ~/.screenpipe/config.json \nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ alias sp-start\nsp-start='npx screenpipe@latest record --disable-audio &'\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ alias sql\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ alias\naddssh='ssh-add ~/.ssh/*'\napp='cd ~/jiminny/app'\ncnt='docker exec -ti $(docker ps | grep worker | awk '\\''{print $1}'\\'') /bin/bash -c \"cd /home/jiminny && bash\"'\nco='git checkout'\ncov='./vendor/bin/phpunit tests/Unit --coverage-html=build/coverage'\ncsfix='make cs-fix'\ndev='docker exec -ti $(docker ps -q --filter \"name=docker_lamp_1\") /bin/bash'\neu='ssh lukas@jiminny-eu-bastion -D 127.0.0.1:7073 -L 7532:db:3306'\neues='ssh ubuntu@jiminny-eu-ecs1 -L 7960:vpc-activities7-e7pfbl7wojjjnvp7olfpudrgke.eu-west-1.es.amazonaws.com:80'\next='nvm use 20 && cd ~/jiminny/extension-app && yarn build:dev && yarn preview'\nfe='yarn && nvm use 20 && cd ~/jiminny/app/front-end && yarn build:watch'\nfe3='cd ~/jiminny/app/front-end-vue3 && yarn build:watch:production'\ngbr='git branch --sort=-committerdate'\ngcb='git branch --show-current | pbcopy'\ngs='git status'\nhhh=history\nhhs='history 0 | grep '\ninstall_nano='apt-get update & apt-get install nano'\nkar='cp -f ~/DEV/settings/goku-karabiner-settings/karabiner.edn ~/.config/karabiner.edn && goku'\nll='ls -la --color=tty'\nnas='ssh Adm1n@192.168.0.242 -p22'\npoetryshell='eval \"\"'\nprod='ssh lukas@jiminny-prod-bastion -D 127.0.0.1:7072 -L 7632:db:3306'\nprodes='ssh ubuntu@jiminny-prod-ecs1 -L 7970:vpc-activities7-3o2zlrelmga5qicf2yxxwtx6bi.us-east-2.es.amazonaws.com:80'\nprophet='cd ~/jiminny/app'\nprophetdown='aws-vault exec staging -- bash -c \"env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml down\"'\nprophetup='aws-vault exec staging -- bash -c \"env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml up --build\"'\nqa='ssh lukas@jiminny-qa-bastion -D 127.0.0.1:7074 -L 7432:db:3306'\nqaes='ssh ubuntu@jiminny-qa-ecs1 -L 7950:vpc-activities7-s5zchrs4xqcnav3rjzmxgxvfvq.us-east-2.es.amazonaws.com:80'\nqai='ssh lukas@jiminny-qai-bastion -D 127.0.0.1:7075 -L 7777:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306'\nrmbc='rm -rf bootstrap/cache/*.php'\nrun-help=man\nsp-start='npx screenpipe@latest record --disable-audio &'\nsp-status='curl -s http://localhost:3030/health | jq \"{status, frame_status, audio_status, last_frame: .last_frame_timestamp, uptime: .pipeline.uptime_secs, fps: .pipeline.capture_fps_actual, frames: .pipeline.frames_captured}\"'\nsp-stop='pkill -f screenpipe && echo '\\''screenpipe stopped'\\'\nstg='ssh lukas@jiminny-stage-bastion -D 127.0.0.1:7071 -L 7732:db:3306'\nstges='ssh ubuntu@jiminny-stage-ecs1 -L 7980:vpc-activities7-tgeodjeaugnaiigqgdcjjkrrj4.us-east-2.es.amazonaws.com:80'\nveu='ssh jiminny-eu-ecs1'\nveu10='ssh jiminny-eu-ecs10'\nveu11='ssh jiminny-eu-ecs11'\nveu12='ssh jiminny-eu-ecs12'\nveu2='ssh jiminny-eu-ecs2'\nveu3='ssh jiminny-eu-ecs3'\nveu4='ssh jiminny-eu-ecs4'\nveu5='ssh jiminny-eu-ecs5'\nveu6='ssh jiminny-eu-ecs6'\nveu7='ssh jiminny-eu-ecs7'\nveu8='ssh jiminny-eu-ecs8'\nveu9='ssh jiminny-eu-ecs9'\nvprod='ssh jiminny-prod-ecs1'\nvprod10='ssh jiminny-prod-ecs10'\nvprod11='ssh jiminny-prod-ecs11'\nvprod12='ssh jiminny-prod-ecs12'\nvprod2='ssh jiminny-prod-ecs2'\nvprod3='ssh jiminny-prod-ecs3'\nvprod4='ssh jiminny-prod-ecs4'\nvprod5='ssh jiminny-prod-ecs5'\nvprod6='ssh jiminny-prod-ecs6'\nvprod7='ssh jiminny-prod-ecs7'\nvprod8='ssh jiminny-prod-ecs8'\nvprod9='ssh jiminny-prod-ecs9'\nvqa='ssh jiminny-qa-ecs1'\nvqa2='ssh jiminny-qa-ecs2'\nvqai='ssh jiminny-qai-ecs1'\nvqai2='ssh jiminny-qai-ecs2'\nvstage='ssh ec2-user@jiminny-subenv-worker-app0'\nvstg='ssh jiminny-stage-ecs1'\nvstg2='ssh ubuntu@jiminny-stage-ecs2'\nwhich-command=whence\nwork='cd ~/jiminny/infrastructure/dev/docker && docker compose up'\nxd='make docker-xdebug-disable'\nxe='make docker-xdebug-enable'\nzp='nano ~/.zprofile'\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ alias\naddssh='ssh-add ~/.ssh/*'\napp='cd ~/jiminny/app'\ncnt='docker exec -ti $(docker ps | grep worker | awk '\\''{print $1}'\\'') /bin/bash -c \"cd /home/jiminny && bash\"'\nco='git checkout'\ncov='./vendor/bin/phpunit tests/Unit --coverage-html=build/coverage'\ncsfix='make cs-fix'\ndev='docker exec -ti $(docker ps -q --filter \"name=docker_lamp_1\") /bin/bash'\neu='ssh lukas@jiminny-eu-bastion -D 127.0.0.1:7073 -L 7532:db:3306'\neues='ssh ubuntu@jiminny-eu-ecs1 -L 7960:vpc-activities7-e7pfbl7wojjjnvp7olfpudrgke.eu-west-1.es.amazonaws.com:80'\next='nvm use 20 && cd ~/jiminny/extension-app && yarn build:dev && yarn preview'\nfe='yarn && nvm use 20 && cd ~/jiminny/app/front-end && yarn build:watch'\nfe3='cd ~/jiminny/app/front-end-vue3 && yarn build:watch:production'\ngbr='git branch --sort=-committerdate'\ngcb='git branch --show-current | pbcopy'\ngs='git status'\nhhh=history\nhhs='history 0 | grep '\ninstall_nano='apt-get update & apt-get install nano'\nkar='cp -f ~/DEV/settings/goku-karabiner-settings/karabiner.edn ~/.config/karabiner.edn && goku'\nll='ls -la --color=tty'\nnas='ssh Adm1n@192.168.0.242 -p22'\npoetryshell='eval \"\"'\nprod='ssh lukas@jiminny-prod-bastion -D 127.0.0.1:7072 -L 7632:db:3306'\nprodes='ssh ubuntu@jiminny-prod-ecs1 -L 7970:vpc-activities7-3o2zlrelmga5qicf2yxxwtx6bi.us-east-2.es.amazonaws.com:80'\nprophet='cd ~/jiminny/app'\nprophetdown='aws-vault exec staging -- bash -c \"env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml down\"'\nprophetup='aws-vault exec staging -- bash -c \"env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml up --build\"'\nqa='ssh lukas@jiminny-qa-bastion -D 127.0.0.1:7074 -L 7432:db:3306'\nqaes='ssh ubuntu@jiminny-qa-ecs1 -L 7950:vpc-activities7-s5zchrs4xqcnav3rjzmxgxvfvq.us-east-2.es.amazonaws.com:80'\nqai='ssh lukas@jiminny-qai-bastion -D 127.0.0.1:7075 -L 7777:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306'\nrmbc='rm -rf bootstrap/cache/*.php'\n UW PICO 5.09 New Buffer \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n [ New file ] \n^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos \n^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell \nrun-help=man\n UW PICO 5.09 New Buffer \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n [ Read 135 lines ] \n^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos \n^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell \nsp-start='npx screenpipe@latest record --disable-audio &'\nsp-status='curl -s http://localhost:3030/health | jq \"{status, frame_status, audio_status, last_frame: .last_frame_timestamp, uptime: .pipeline.uptime_secs, fps: .pipeline.capture_fps_actual, frames: .pipeline.frames_captured}\"'\nsp-stop='pkill -f screenpipe && echo '\\''screenpipe stopped'\\'\nstg='ssh lukas@jiminny-stage-bastion -D 127.0.0.1:7071 -L 7732:db:3306'\nstges='ssh ubuntu@jiminny-stage-ecs1 -L 7980:vpc-activities7-tgeodjeaugnaiigqgdcjjkrrj4.us-east-2.es.amazonaws.com:80'\nveu='ssh jiminny-eu-ecs1'\nveu10='ssh jiminny-eu-ecs10'\nveu11='ssh jiminny-eu-ecs11'\nveu12='ssh jiminny-eu-ecs12'\nveu2='ssh jiminny-eu-ecs2'\nveu3='ssh jiminny-eu-ecs3'\nveu4='ssh jiminny-eu-ecs4'\nveu5='ssh jiminny-eu-ecs5'\nveu6='ssh jiminny-eu-ecs6'\nveu7='ssh jiminny-eu-ecs7'\nveu8='ssh jiminny-eu-ecs8'\nveu9='ssh jiminny-eu-ecs9'\nvprod='ssh jiminny-prod-ecs1'\nvprod10='ssh jiminny-prod-ecs10'\nvprod11='ssh jiminny-prod-ecs11'\nvprod12='ssh jiminny-prod-ecs12'\nvprod2='ssh jiminny-prod-ecs2'\nvprod3='ssh jiminny-prod-ecs3'\nvprod4='ssh jiminny-prod-ecs4'\nvprod5='ssh jiminny-prod-ecs5'\nvprod6='ssh jiminny-prod-ecs6'\nvprod7='ssh jiminny-prod-ecs7'\nvprod8='ssh jiminny-prod-ecs8'\nvprod9='ssh jiminny-prod-ecs9'\nvqa='ssh jiminny-qa-ecs1'\nvqa2='ssh jiminny-qa-ecs2'\n UW PICO 5.09 New Buffer \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n [ Read 136 lines ] \n^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos \n^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell \nvqai='ssh jiminny-qai-ecs1'\n UW PICO 5.09 New Buffer \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n [ Read 136 lines ] \n^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos \n^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell \n UW PICO 5.09 File: /Users/lukas/.zprofile \n\n\n# alias dev=\"make bash\"\n# alias dev=\"docker compose up\"\nalias dev='docker exec -ti $(docker ps -q --filter \"name=docker_lamp_1\") /bin/bash'\n\nalias xe=\"make docker-xdebug-enable\"\nalias xd=\"make docker-xdebug-disable\"\n\nalias fe=\"yarn && nvm use 20 && cd ~/jiminny/app/front-end && yarn build:watch\" \nalias fe3=\"cd ~/jiminny/app/front-end-vue3 && yarn build:watch:production\"\n\nalias prod=\"ssh lukas@jiminny-prod-bastion -D 127.0.0.1:7072 -L 7632:db:3306\"\nalias stg=\"ssh lukas@jiminny-stage-bastion -D 127.0.0.1:7071 -L 7732:db:3306\"\nalias qa=\"ssh lukas@jiminny-qa-bastion -D 127.0.0.1:7074 -L 7432:db:3306\"\n# alias qb=\"ssh lukas@jiminny-qai-bastion -D 127.0.0.1:7075 -L 7832:db:3306\"\n# alias qai=\"ssh lukas@jiminny-qai-bastion -D 127.0.0.1:7075 -L 7832:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306\"\n# alias qai=\"ssh lukas@jiminny-qai-bastion -D 127.0.0.1:7075 -L 7777:jiminny-db-prod.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306\"\nalias qai=\"ssh lukas@jiminny-qai-bastion -D 127.0.0.1:7075 -L 7777:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306\"\nalias eu=\"ssh lukas@jiminny-eu-bastion -D 127.0.0.1:7073 -L 7532:db:3306\"\n\n\nalias vprod=\"ssh jiminny-prod-ecs1\"\nalias vprod2=\"ssh jiminny-prod-ecs2\"\nalias vprod3=\"ssh jiminny-prod-ecs3\"\nalias vprod4=\"ssh jiminny-prod-ecs4\"\nalias vprod5=\"ssh jiminny-prod-ecs5\"\nalias vprod6=\"ssh jiminny-prod-ecs6\" \nalias vprod7=\"ssh jiminny-prod-ecs7\"\nalias vprod8=\"ssh jiminny-prod-ecs8\"\nalias vprod9=\"ssh jiminny-prod-ecs9\"\nalias vprod10=\"ssh jiminny-prod-ecs10\"\nalias vprod11=\"ssh jiminny-prod-ecs11\"\nalias vprod12=\"ssh jiminny-prod-ecs12\"\nalias veu=\"ssh jiminny-eu-ecs1\"\nalias veu2=\"ssh jiminny-eu-ecs2\"\nalias veu3=\"ssh jiminny-eu-ecs3\"\nalias veu4=\"ssh jiminny-eu-ecs4\"\nalias veu5=\"ssh jiminny-eu-ecs5\"\nalias veu6=\"ssh jiminny-eu-ecs6\"\nalias veu7=\"ssh jiminny-eu-ecs7\"\n\n^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos \n^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell","depth":4,"value":"lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite \"SELECT COUNT(*) FROM frames WHERE app_name = 'Boosteroid' AND timestamp >= datetime('now', '-1 hour');\"\n1722\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ps aux | grep screenpipe\nlukas 10874 15.7 4.1 412962384 689376 s009 SN 3:49pm 32:48.19 /Users/lukas/.npm/_npx/10835/lib/node_modules/screenpipe/node_modules/@screenpipe/cli-darwin-arm64/bin/screenpipe record --disable-audio\nlukas 18357 0.9 0.0 410733264 1488 s010 S+ 4:53pm 0:00.00 grep screenpipe\nlukas 10835 0.0 0.2 411427744 30240 s009 SN 3:49pm 0:00.08 node /Users/lukas/.nvm/versions/node/v14.15.4/bin/npx screenpipe@latest record --disable-audio\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ clear\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ /Users/lukas/.npm/_npx/10835/lib/node_modules/screenpipe/node_modules/@screenpipe/cli-darwin-arm64/bin/screenpipe record --help\nincreased file descriptor limit from 256 to 8192 (hard limit: 9223372036854775807)\nStart recording screen, audio, and serve the API\n\nUsage: screenpipe record [OPTIONS]\n\nOptions:\n -d, --audio-chunk-duration <AUDIO_CHUNK_DURATION>\n Audio chunk duration in seconds\n \n [default: 30]\n\n -p, --port <PORT>\n Port to run the server on\n \n [default: 3030]\n\n --disable-audio\n Disable audio recording\n\n -i, --audio-device <AUDIO_DEVICE>\n Audio devices to use (can be specified multiple times)\n\n --use-system-default-audio\n Follow system default audio devices\n\n --data-dir <DATA_DIR>\n Data directory. Default to $HOME/.screenpipe\n\n --debug\n Enable debug logging for screenpipe modules\n\n -a, --audio-transcription-engine <AUDIO_TRANSCRIPTION_ENGINE>\n Audio transcription engine to use\n\n Possible values:\n - deepgram\n - whisper-tiny\n - whisper-tiny-quantized\n - whisper-large\n - whisper-large-quantized\n - whisper-large-v3-turbo\n - whisper-large-v3-turbo-quantized\n - openai-compatible\n - qwen3-asr\n - parakeet\n - disabled: Disable transcription (audio capture only, no speech-to-text)\n \n [default: parakeet]\n\n -m, --monitor-id <MONITOR_ID>\n Monitor IDs to use\n\n --use-all-monitors\n Automatically record all monitors\n\n -l, --language <LANGUAGE>\n Languages for OCR/transcription\n \n [possible values: english, chinese, german, spanish, russian, korean, french, japanese, portuguese, turkish, polish, catalan, dutch, arabic, swedish, italian, indonesian, hindi, vietnamese, finnish, hebrew, ukrainian, greek, malay, czech, romanian, danish, hungarian, norwegian, thai, urdu, croatian, bulgarian, lithuanian, latin, malayalam, welsh, slovak, persian, latvian, bengali, serbian, azerbaijani, slovenian, estonian, macedonian, nepali, mongolian, bosnian, kazakh, albanian, swahili, galician, marathi, punjabi, sinhala, khmer, afrikaans, belarusian, gujarati, amharic, yiddish, lao, uzbek, faroese, pashto, maltese, sanskrit, luxembourgish, myanmar, tibetan, tagalog, assamese, tatar, hausa, javanese]\n\n --use-pii-removal\n Enable PII removal\n\n --filter-music\n Filter music-dominant audio before transcription (reduces Spotify/YouTube music noise)\n\n --disable-vision\n Disable vision recording\n\n --ignored-windows <IGNORED_WINDOWS>\n Windows to ignore (by title, uses contains matching)\n\n --included-windows <INCLUDED_WINDOWS>\n Windows to include (by title, uses contains matching)\n\n --ignored-urls <IGNORED_URLS>\n URLs to ignore for browser privacy filtering\n\n --deepgram-api-key <DEEPGRAM_API_KEY>\n Deepgram API Key for audio transcription\n\n --transcription-mode <TRANSCRIPTION_MODE>\n Audio transcription scheduling mode: batch (default, longer chunks for quality) or realtime\n\n Possible values:\n - realtime: Transcribe immediately as audio is captured\n - batch: Accumulate longer audio batches for better transcription quality (default)\n \n [default: batch]\n\n --disable-telemetry\n Disable telemetry\n\n --video-quality <VIDEO_QUALITY>\n Video quality preset: low, balanced, high, max\n \n [default: balanced]\n\n --enable-sync\n Enable cloud sync\n\n --sync-token <SYNC_TOKEN>\n UW PICO 5.09 New Buffer \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n [ Read 18 lines ] \n^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos \n^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell \n API token for cloud sync\n \n [env: SCREENPIPE_SYNC_TOKEN=]\n\n --sync-password <SYNC_PASSWORD>\n Password for encrypting synced data\n \n [env: SCREENPIPE_SYNC_PASSWORD=]\n\n --sync-interval-secs <SYNC_INTERVAL_SECS>\n Interval between sync cycles in seconds\n \n [default: 300]\n\n --sync-machine-id <SYNC_MACHINE_ID>\n Override the machine ID for this device\n\n --pause-on-drm-content\n Pause screen and audio capture when DRM content (Netflix, Disney+, etc.) is detected\n\n --api-auth\n Require authentication for remote API access. When enabled, non-localhost requests must include Authorization: Bearer <SCREENPIPE_API_KEY>. Localhost requests are always allowed\n\n --encrypt-secrets\n Encrypt secrets (API keys, OAuth tokens) at rest using the OS keychain. Creates a keychain key if one doesn't exist. Without this flag, the CLI will use an existing key (created by the desktop app) but won't create one\n\n --retention-days <RETENTION_DAYS>\n Local data retention in days. Old screen/audio data is auto-deleted after this period. Set to 0 to disable retention (keep data forever)\n \n [default: 14]\n\n -h, --help\n Print help (see a summary with '-h')\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ npx screenpipe@latest record --disable-audio --ignored-apps \"Boosteroid\"\nerror: unexpected argument '--ignored-apps' found\n\n tip: a similar argument exists: '--ignored-urls'\n\nUsage: screenpipe record --disable-audio --ignored-urls <IGNORED_URLS>\n\nFor more information, try '--help'.\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ nano ~/.screenpipe/config.json \nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ alias sp-start\nsp-start='npx screenpipe@latest record --disable-audio &'\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ alias sql\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ alias\naddssh='ssh-add ~/.ssh/*'\napp='cd ~/jiminny/app'\ncnt='docker exec -ti $(docker ps | grep worker | awk '\\''{print $1}'\\'') /bin/bash -c \"cd /home/jiminny && bash\"'\nco='git checkout'\ncov='./vendor/bin/phpunit tests/Unit --coverage-html=build/coverage'\ncsfix='make cs-fix'\ndev='docker exec -ti $(docker ps -q --filter \"name=docker_lamp_1\") /bin/bash'\neu='ssh lukas@jiminny-eu-bastion -D 127.0.0.1:7073 -L 7532:db:3306'\neues='ssh ubuntu@jiminny-eu-ecs1 -L 7960:vpc-activities7-e7pfbl7wojjjnvp7olfpudrgke.eu-west-1.es.amazonaws.com:80'\next='nvm use 20 && cd ~/jiminny/extension-app && yarn build:dev && yarn preview'\nfe='yarn && nvm use 20 && cd ~/jiminny/app/front-end && yarn build:watch'\nfe3='cd ~/jiminny/app/front-end-vue3 && yarn build:watch:production'\ngbr='git branch --sort=-committerdate'\ngcb='git branch --show-current | pbcopy'\ngs='git status'\nhhh=history\nhhs='history 0 | grep '\ninstall_nano='apt-get update & apt-get install nano'\nkar='cp -f ~/DEV/settings/goku-karabiner-settings/karabiner.edn ~/.config/karabiner.edn && goku'\nll='ls -la --color=tty'\nnas='ssh Adm1n@192.168.0.242 -p22'\npoetryshell='eval \"\"'\nprod='ssh lukas@jiminny-prod-bastion -D 127.0.0.1:7072 -L 7632:db:3306'\nprodes='ssh ubuntu@jiminny-prod-ecs1 -L 7970:vpc-activities7-3o2zlrelmga5qicf2yxxwtx6bi.us-east-2.es.amazonaws.com:80'\nprophet='cd ~/jiminny/app'\nprophetdown='aws-vault exec staging -- bash -c \"env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml down\"'\nprophetup='aws-vault exec staging -- bash -c \"env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml up --build\"'\nqa='ssh lukas@jiminny-qa-bastion -D 127.0.0.1:7074 -L 7432:db:3306'\nqaes='ssh ubuntu@jiminny-qa-ecs1 -L 7950:vpc-activities7-s5zchrs4xqcnav3rjzmxgxvfvq.us-east-2.es.amazonaws.com:80'\nqai='ssh lukas@jiminny-qai-bastion -D 127.0.0.1:7075 -L 7777:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306'\nrmbc='rm -rf bootstrap/cache/*.php'\nrun-help=man\nsp-start='npx screenpipe@latest record --disable-audio &'\nsp-status='curl -s http://localhost:3030/health | jq \"{status, frame_status, audio_status, last_frame: .last_frame_timestamp, uptime: .pipeline.uptime_secs, fps: .pipeline.capture_fps_actual, frames: .pipeline.frames_captured}\"'\nsp-stop='pkill -f screenpipe && echo '\\''screenpipe stopped'\\'\nstg='ssh lukas@jiminny-stage-bastion -D 127.0.0.1:7071 -L 7732:db:3306'\nstges='ssh ubuntu@jiminny-stage-ecs1 -L 7980:vpc-activities7-tgeodjeaugnaiigqgdcjjkrrj4.us-east-2.es.amazonaws.com:80'\nveu='ssh jiminny-eu-ecs1'\nveu10='ssh jiminny-eu-ecs10'\nveu11='ssh jiminny-eu-ecs11'\nveu12='ssh jiminny-eu-ecs12'\nveu2='ssh jiminny-eu-ecs2'\nveu3='ssh jiminny-eu-ecs3'\nveu4='ssh jiminny-eu-ecs4'\nveu5='ssh jiminny-eu-ecs5'\nveu6='ssh jiminny-eu-ecs6'\nveu7='ssh jiminny-eu-ecs7'\nveu8='ssh jiminny-eu-ecs8'\nveu9='ssh jiminny-eu-ecs9'\nvprod='ssh jiminny-prod-ecs1'\nvprod10='ssh jiminny-prod-ecs10'\nvprod11='ssh jiminny-prod-ecs11'\nvprod12='ssh jiminny-prod-ecs12'\nvprod2='ssh jiminny-prod-ecs2'\nvprod3='ssh jiminny-prod-ecs3'\nvprod4='ssh jiminny-prod-ecs4'\nvprod5='ssh jiminny-prod-ecs5'\nvprod6='ssh jiminny-prod-ecs6'\nvprod7='ssh jiminny-prod-ecs7'\nvprod8='ssh jiminny-prod-ecs8'\nvprod9='ssh jiminny-prod-ecs9'\nvqa='ssh jiminny-qa-ecs1'\nvqa2='ssh jiminny-qa-ecs2'\nvqai='ssh jiminny-qai-ecs1'\nvqai2='ssh jiminny-qai-ecs2'\nvstage='ssh ec2-user@jiminny-subenv-worker-app0'\nvstg='ssh jiminny-stage-ecs1'\nvstg2='ssh ubuntu@jiminny-stage-ecs2'\nwhich-command=whence\nwork='cd ~/jiminny/infrastructure/dev/docker && docker compose up'\nxd='make docker-xdebug-disable'\nxe='make docker-xdebug-enable'\nzp='nano ~/.zprofile'\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ alias\naddssh='ssh-add ~/.ssh/*'\napp='cd ~/jiminny/app'\ncnt='docker exec -ti $(docker ps | grep worker | awk '\\''{print $1}'\\'') /bin/bash -c \"cd /home/jiminny && bash\"'\nco='git checkout'\ncov='./vendor/bin/phpunit tests/Unit --coverage-html=build/coverage'\ncsfix='make cs-fix'\ndev='docker exec -ti $(docker ps -q --filter \"name=docker_lamp_1\") /bin/bash'\neu='ssh lukas@jiminny-eu-bastion -D 127.0.0.1:7073 -L 7532:db:3306'\neues='ssh ubuntu@jiminny-eu-ecs1 -L 7960:vpc-activities7-e7pfbl7wojjjnvp7olfpudrgke.eu-west-1.es.amazonaws.com:80'\next='nvm use 20 && cd ~/jiminny/extension-app && yarn build:dev && yarn preview'\nfe='yarn && nvm use 20 && cd ~/jiminny/app/front-end && yarn build:watch'\nfe3='cd ~/jiminny/app/front-end-vue3 && yarn build:watch:production'\ngbr='git branch --sort=-committerdate'\ngcb='git branch --show-current | pbcopy'\ngs='git status'\nhhh=history\nhhs='history 0 | grep '\ninstall_nano='apt-get update & apt-get install nano'\nkar='cp -f ~/DEV/settings/goku-karabiner-settings/karabiner.edn ~/.config/karabiner.edn && goku'\nll='ls -la --color=tty'\nnas='ssh Adm1n@192.168.0.242 -p22'\npoetryshell='eval \"\"'\nprod='ssh lukas@jiminny-prod-bastion -D 127.0.0.1:7072 -L 7632:db:3306'\nprodes='ssh ubuntu@jiminny-prod-ecs1 -L 7970:vpc-activities7-3o2zlrelmga5qicf2yxxwtx6bi.us-east-2.es.amazonaws.com:80'\nprophet='cd ~/jiminny/app'\nprophetdown='aws-vault exec staging -- bash -c \"env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml down\"'\nprophetup='aws-vault exec staging -- bash -c \"env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml up --build\"'\nqa='ssh lukas@jiminny-qa-bastion -D 127.0.0.1:7074 -L 7432:db:3306'\nqaes='ssh ubuntu@jiminny-qa-ecs1 -L 7950:vpc-activities7-s5zchrs4xqcnav3rjzmxgxvfvq.us-east-2.es.amazonaws.com:80'\nqai='ssh lukas@jiminny-qai-bastion -D 127.0.0.1:7075 -L 7777:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306'\nrmbc='rm -rf bootstrap/cache/*.php'\n UW PICO 5.09 New Buffer \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n [ New file ] \n^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos \n^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell \nrun-help=man\n UW PICO 5.09 New Buffer \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n [ Read 135 lines ] \n^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos \n^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell \nsp-start='npx screenpipe@latest record --disable-audio &'\nsp-status='curl -s http://localhost:3030/health | jq \"{status, frame_status, audio_status, last_frame: .last_frame_timestamp, uptime: .pipeline.uptime_secs, fps: .pipeline.capture_fps_actual, frames: .pipeline.frames_captured}\"'\nsp-stop='pkill -f screenpipe && echo '\\''screenpipe stopped'\\'\nstg='ssh lukas@jiminny-stage-bastion -D 127.0.0.1:7071 -L 7732:db:3306'\nstges='ssh ubuntu@jiminny-stage-ecs1 -L 7980:vpc-activities7-tgeodjeaugnaiigqgdcjjkrrj4.us-east-2.es.amazonaws.com:80'\nveu='ssh jiminny-eu-ecs1'\nveu10='ssh jiminny-eu-ecs10'\nveu11='ssh jiminny-eu-ecs11'\nveu12='ssh jiminny-eu-ecs12'\nveu2='ssh jiminny-eu-ecs2'\nveu3='ssh jiminny-eu-ecs3'\nveu4='ssh jiminny-eu-ecs4'\nveu5='ssh jiminny-eu-ecs5'\nveu6='ssh jiminny-eu-ecs6'\nveu7='ssh jiminny-eu-ecs7'\nveu8='ssh jiminny-eu-ecs8'\nveu9='ssh jiminny-eu-ecs9'\nvprod='ssh jiminny-prod-ecs1'\nvprod10='ssh jiminny-prod-ecs10'\nvprod11='ssh jiminny-prod-ecs11'\nvprod12='ssh jiminny-prod-ecs12'\nvprod2='ssh jiminny-prod-ecs2'\nvprod3='ssh jiminny-prod-ecs3'\nvprod4='ssh jiminny-prod-ecs4'\nvprod5='ssh jiminny-prod-ecs5'\nvprod6='ssh jiminny-prod-ecs6'\nvprod7='ssh jiminny-prod-ecs7'\nvprod8='ssh jiminny-prod-ecs8'\nvprod9='ssh jiminny-prod-ecs9'\nvqa='ssh jiminny-qa-ecs1'\nvqa2='ssh jiminny-qa-ecs2'\n UW PICO 5.09 New Buffer \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n [ Read 136 lines ] \n^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos \n^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell \nvqai='ssh jiminny-qai-ecs1'\n UW PICO 5.09 New Buffer \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n [ Read 136 lines ] \n^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos \n^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell \n UW PICO 5.09 File: /Users/lukas/.zprofile \n\n\n# alias dev=\"make bash\"\n# alias dev=\"docker compose up\"\nalias dev='docker exec -ti $(docker ps -q --filter \"name=docker_lamp_1\") /bin/bash'\n\nalias xe=\"make docker-xdebug-enable\"\nalias xd=\"make docker-xdebug-disable\"\n\nalias fe=\"yarn && nvm use 20 && cd ~/jiminny/app/front-end && yarn build:watch\" \nalias fe3=\"cd ~/jiminny/app/front-end-vue3 && yarn build:watch:production\"\n\nalias prod=\"ssh lukas@jiminny-prod-bastion -D 127.0.0.1:7072 -L 7632:db:3306\"\nalias stg=\"ssh lukas@jiminny-stage-bastion -D 127.0.0.1:7071 -L 7732:db:3306\"\nalias qa=\"ssh lukas@jiminny-qa-bastion -D 127.0.0.1:7074 -L 7432:db:3306\"\n# alias qb=\"ssh lukas@jiminny-qai-bastion -D 127.0.0.1:7075 -L 7832:db:3306\"\n# alias qai=\"ssh lukas@jiminny-qai-bastion -D 127.0.0.1:7075 -L 7832:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306\"\n# alias qai=\"ssh lukas@jiminny-qai-bastion -D 127.0.0.1:7075 -L 7777:jiminny-db-prod.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306\"\nalias qai=\"ssh lukas@jiminny-qai-bastion -D 127.0.0.1:7075 -L 7777:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306\"\nalias eu=\"ssh lukas@jiminny-eu-bastion -D 127.0.0.1:7073 -L 7532:db:3306\"\n\n\nalias vprod=\"ssh jiminny-prod-ecs1\"\nalias vprod2=\"ssh jiminny-prod-ecs2\"\nalias vprod3=\"ssh jiminny-prod-ecs3\"\nalias vprod4=\"ssh jiminny-prod-ecs4\"\nalias vprod5=\"ssh jiminny-prod-ecs5\"\nalias vprod6=\"ssh jiminny-prod-ecs6\" \nalias vprod7=\"ssh jiminny-prod-ecs7\"\nalias vprod8=\"ssh jiminny-prod-ecs8\"\nalias vprod9=\"ssh jiminny-prod-ecs9\"\nalias vprod10=\"ssh jiminny-prod-ecs10\"\nalias vprod11=\"ssh jiminny-prod-ecs11\"\nalias vprod12=\"ssh jiminny-prod-ecs12\"\nalias veu=\"ssh jiminny-eu-ecs1\"\nalias veu2=\"ssh jiminny-eu-ecs2\"\nalias veu3=\"ssh jiminny-eu-ecs3\"\nalias veu4=\"ssh jiminny-eu-ecs4\"\nalias veu5=\"ssh jiminny-eu-ecs5\"\nalias veu6=\"ssh jiminny-eu-ecs6\"\nalias veu7=\"ssh jiminny-eu-ecs7\"\n\n^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos \n^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.23320313,"top":1.0,"width":0.0921875,"height":-0.03680551},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.23554687,"top":1.0,"width":0.00625,"height":-0.039583325},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.32539064,"top":1.0,"width":0.0921875,"height":-0.03680551},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.32773438,"top":1.0,"width":0.00625,"height":-0.039583325},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.41757813,"top":1.0,"width":0.0921875,"height":-0.03680551},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.41992188,"top":1.0,"width":0.00625,"height":-0.039583325},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"screenpipe\"","depth":2,"bounds":{"left":0.5097656,"top":1.0,"width":0.0921875,"height":-0.03680551},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.5121094,"top":1.0,"width":0.00625,"height":-0.039583325},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"nano","depth":2,"bounds":{"left":0.60195315,"top":1.0,"width":0.0921875,"height":-0.03680551},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.60429686,"top":1.0,"width":0.00625,"height":-0.039583325},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"✳ Review screenpipe usage and Boosteroid integration (node)","depth":2,"bounds":{"left":0.6941406,"top":1.0,"width":0.0921875,"height":-0.03680551},"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.6964844,"top":1.0,"width":0.00625,"height":-0.039583325},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.7703125,"top":1.0,"width":0.021875,"height":-0.02013886},"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"nano","depth":1,"bounds":{"left":0.50742185,"top":1.0,"width":0.0140625,"height":-0.020833373},"role_description":"text"}]...
|
-8995004587478196709
|
-8330043052110877261
|
idle
|
accessibility
|
NULL
|
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screen lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ sqlite3 ~/.screenpipe/db.sqlite "SELECT COUNT(*) FROM frames WHERE app_name = 'Boosteroid' AND timestamp >= datetime('now', '-1 hour');"
1722
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ps aux | grep screenpipe
lukas 10874 15.7 4.1 412962384 689376 s009 SN 3:49pm 32:48.19 /Users/lukas/.npm/_npx/10835/lib/node_modules/screenpipe/node_modules/@screenpipe/cli-darwin-arm64/bin/screenpipe record --disable-audio
lukas 18357 0.9 0.0 410733264 1488 s010 S+ 4:53pm 0:00.00 grep screenpipe
lukas 10835 0.0 0.2 411427744 30240 s009 SN 3:49pm 0:00.08 node /Users/lukas/.nvm/versions/node/v14.15.4/bin/npx screenpipe@latest record --disable-audio
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ clear
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ /Users/lukas/.npm/_npx/10835/lib/node_modules/screenpipe/node_modules/@screenpipe/cli-darwin-arm64/bin/screenpipe record --help
increased file descriptor limit from 256 to 8192 (hard limit: 9223372036854775807)
Start recording screen, audio, and serve the API
Usage: screenpipe record [OPTIONS]
Options:
-d, --audio-chunk-duration <AUDIO_CHUNK_DURATION>
Audio chunk duration in seconds
[default: 30]
-p, --port <PORT>
Port to run the server on
[default: 3030]
--disable-audio
Disable audio recording
-i, --audio-device <AUDIO_DEVICE>
Audio devices to use (can be specified multiple times)
--use-system-default-audio
Follow system default audio devices
--data-dir <DATA_DIR>
Data directory. Default to $HOME/.screenpipe
--debug
Enable debug logging for screenpipe modules
-a, --audio-transcription-engine <AUDIO_TRANSCRIPTION_ENGINE>
Audio transcription engine to use
Possible values:
- deepgram
- whisper-tiny
- whisper-tiny-quantized
- whisper-large
- whisper-large-quantized
- whisper-large-v3-turbo
- whisper-large-v3-turbo-quantized
- openai-compatible
- qwen3-asr
- parakeet
- disabled: Disable transcription (audio capture only, no speech-to-text)
[default: parakeet]
-m, --monitor-id <MONITOR_ID>
Monitor IDs to use
--use-all-monitors
Automatically record all monitors
-l, --language <LANGUAGE>
Languages for OCR/transcription
[possible values: english, chinese, german, spanish, russian, korean, french, japanese, portuguese, turkish, polish, catalan, dutch, arabic, swedish, italian, indonesian, hindi, vietnamese, finnish, hebrew, ukrainian, greek, malay, czech, romanian, danish, hungarian, norwegian, thai, urdu, croatian, bulgarian, lithuanian, latin, malayalam, welsh, slovak, persian, latvian, bengali, serbian, azerbaijani, slovenian, estonian, macedonian, nepali, mongolian, bosnian, kazakh, albanian, swahili, galician, marathi, punjabi, sinhala, khmer, afrikaans, belarusian, gujarati, amharic, yiddish, lao, uzbek, faroese, pashto, maltese, sanskrit, luxembourgish, myanmar, tibetan, tagalog, assamese, tatar, hausa, javanese]
--use-pii-removal
Enable PII removal
--filter-music
Filter music-dominant audio before transcription (reduces Spotify/YouTube music noise)
--disable-vision
Disable vision recording
--ignored-windows <IGNORED_WINDOWS>
Windows to ignore (by title, uses contains matching)
--included-windows <INCLUDED_WINDOWS>
Windows to include (by title, uses contains matching)
--ignored-urls <IGNORED_URLS>
URLs to ignore for browser privacy filtering
--deepgram-api-key <DEEPGRAM_API_KEY>
Deepgram API Key for audio transcription
--transcription-mode <TRANSCRIPTION_MODE>
Audio transcription scheduling mode: batch (default, longer chunks for quality) or realtime
Possible values:
- realtime: Transcribe immediately as audio is captured
- batch: Accumulate longer audio batches for better transcription quality (default)
[default: batch]
--disable-telemetry
Disable telemetry
--video-quality <VIDEO_QUALITY>
Video quality preset: low, balanced, high, max
[default: balanced]
--enable-sync
Enable cloud sync
--sync-token <SYNC_TOKEN>
UW PICO 5.09 New Buffer
[ Read 18 lines ]
^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos
^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell
API token for cloud sync
[env: SCREENPIPE_SYNC_TOKEN=]
--sync-password <SYNC_PASSWORD>
Password for encrypting synced data
[env: SCREENPIPE_SYNC_PASSWORD=[PASSWORD]
--sync-interval-secs <SYNC_INTERVAL_SECS>
Interval between sync cycles in seconds
[default: 300]
--sync-machine-id <SYNC_MACHINE_ID>
Override the machine ID for this device
--pause-on-drm-content
Pause screen and audio capture when DRM content (Netflix, Disney+, etc.) is detected
--api-auth
Require authentication for remote API access. When enabled, non-localhost requests must include Authorization: Bearer <SCREENPIPE_API_KEY>. Localhost requests are always allowed
--encrypt-secrets
Encrypt secrets (API keys, OAuth tokens) at rest using the OS keychain. Creates a keychain key if one doesn't exist. Without this flag, the CLI will use an existing key (created by the desktop app) but won't create one
--retention-days <RETENTION_DAYS>
Local data retention in days. Old screen/audio data is auto-deleted after this period. Set to 0 to disable retention (keep data forever)
[default: 14]
-h, --help
Print help (see a summary with '-h')
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ npx screenpipe@latest record --disable-audio --ignored-apps "Boosteroid"
error: unexpected argument '--ignored-apps' found
tip: a similar argument exists: '--ignored-urls'
Usage: screenpipe record --disable-audio --ignored-urls <IGNORED_URLS>
For more information, try '--help'.
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ nano ~/.screenpipe/config.json
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ alias sp-start
sp-start='npx screenpipe@latest record --disable-audio &'
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ alias sql
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ alias
addssh='ssh-add ~/.ssh/*'
app='cd ~/jiminny/app'
cnt='docker exec -ti $(docker ps | grep worker | awk '\''{print $1}'\'') /bin/bash -c "cd /home/jiminny && bash"'
co='git checkout'
cov='./vendor/bin/phpunit tests/Unit --coverage-html=build/coverage'
csfix='make cs-fix'
dev='docker exec -ti $(docker ps -q --filter "name=docker_lamp_1") /bin/bash'
eu='ssh lukas@jiminny-eu-bastion -D [IP_ADDRESS]:7073 -L 7532:db:3306'
eues='ssh ubuntu@jiminny-eu-ecs1 -L 7960:vpc-activities7-e7pfbl7wojjjnvp7olfpudrgke.eu-west-1.es.amazonaws.com:80'
ext='nvm use 20 && cd ~/jiminny/extension-app && yarn build:dev && yarn preview'
fe='yarn && nvm use 20 && cd ~/jiminny/app/front-end && yarn build:watch'
fe3='cd ~/jiminny/app/front-end-vue3 && yarn build:watch:production'
gbr='git branch --sort=-committerdate'
gcb='git branch --show-current | pbcopy'
gs='git status'
hhh=history
hhs='history 0 | grep '
install_nano='apt-get update & apt-get install nano'
kar='cp -f ~/DEV/settings/goku-karabiner-settings/karabiner.edn ~/.config/karabiner.edn && goku'
ll='ls -la --color=tty'
nas='ssh Adm1n@[IP_ADDRESS] -p22'
poetryshell='eval ""'
prod='ssh lukas@jiminny-prod-bastion -D [IP_ADDRESS]:7072 -L 7632:db:3306'
prodes='ssh ubuntu@jiminny-prod-ecs1 -L 7970:vpc-activities7-3o2zlrelmga5qicf2yxxwtx6bi.us-east-2.es.amazonaws.com:80'
prophet='cd ~/jiminny/app'
prophetdown='aws-vault exec staging -- bash -c "env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml down"'
prophetup='aws-vault exec staging -- bash -c "env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml up --build"'
qa='ssh lukas@jiminny-qa-bastion -D [IP_ADDRESS]:7074 -L 7432:db:3306'
qaes='ssh ubuntu@jiminny-qa-ecs1 -L 7950:vpc-activities7-s5zchrs4xqcnav3rjzmxgxvfvq.us-east-2.es.amazonaws.com:80'
qai='ssh lukas@jiminny-qai-bastion -D [IP_ADDRESS]:7075 -L 7777:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306'
rmbc='rm -rf bootstrap/cache/*.php'
run-help=man
sp-start='npx screenpipe@latest record --disable-audio &'
sp-status='curl -s [URL_WITH_CREDENTIALS] -D [IP_ADDRESS]:7071 -L 7732:db:3306'
stges='ssh ubuntu@jiminny-stage-ecs1 -L 7980:vpc-activities7-tgeodjeaugnaiigqgdcjjkrrj4.us-east-2.es.amazonaws.com:80'
veu='ssh jiminny-eu-ecs1'
veu10='ssh jiminny-eu-ecs10'
veu11='ssh jiminny-eu-ecs11'
veu12='ssh jiminny-eu-ecs12'
veu2='ssh jiminny-eu-ecs2'
veu3='ssh jiminny-eu-ecs3'
veu4='ssh jiminny-eu-ecs4'
veu5='ssh jiminny-eu-ecs5'
veu6='ssh jiminny-eu-ecs6'
veu7='ssh jiminny-eu-ecs7'
veu8='ssh jiminny-eu-ecs8'
veu9='ssh jiminny-eu-ecs9'
vprod='ssh jiminny-prod-ecs1'
vprod10='ssh jiminny-prod-ecs10'
vprod11='ssh jiminny-prod-ecs11'
vprod12='ssh jiminny-prod-ecs12'
vprod2='ssh jiminny-prod-ecs2'
vprod3='ssh jiminny-prod-ecs3'
vprod4='ssh jiminny-prod-ecs4'
vprod5='ssh jiminny-prod-ecs5'
vprod6='ssh jiminny-prod-ecs6'
vprod7='ssh jiminny-prod-ecs7'
vprod8='ssh jiminny-prod-ecs8'
vprod9='ssh jiminny-prod-ecs9'
vqa='ssh jiminny-qa-ecs1'
vqa2='ssh jiminny-qa-ecs2'
vqai='ssh jiminny-qai-ecs1'
vqai2='ssh jiminny-qai-ecs2'
vstage='ssh ec2-user@jiminny-subenv-worker-app0'
vstg='ssh jiminny-stage-ecs1'
vstg2='ssh ubuntu@jiminny-stage-ecs2'
which-command=whence
work='cd ~/jiminny/infrastructure/dev/docker && docker compose up'
xd='make docker-xdebug-disable'
xe='make docker-xdebug-enable'
zp='nano ~/.zprofile'
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ alias
addssh='ssh-add ~/.ssh/*'
app='cd ~/jiminny/app'
cnt='docker exec -ti $(docker ps | grep worker | awk '\''{print $1}'\'') /bin/bash -c "cd /home/jiminny && bash"'
co='git checkout'
cov='./vendor/bin/phpunit tests/Unit --coverage-html=build/coverage'
csfix='make cs-fix'
dev='docker exec -ti $(docker ps -q --filter "name=docker_lamp_1") /bin/bash'
eu='ssh lukas@jiminny-eu-bastion -D [IP_ADDRESS]:7073 -L 7532:db:3306'
eues='ssh ubuntu@jiminny-eu-ecs1 -L 7960:vpc-activities7-e7pfbl7wojjjnvp7olfpudrgke.eu-west-1.es.amazonaws.com:80'
ext='nvm use 20 && cd ~/jiminny/extension-app && yarn build:dev && yarn preview'
fe='yarn && nvm use 20 && cd ~/jiminny/app/front-end && yarn build:watch'
fe3='cd ~/jiminny/app/front-end-vue3 && yarn build:watch:production'
gbr='git branch --sort=-committerdate'
gcb='git branch --show-current | pbcopy'
gs='git status'
hhh=history
hhs='history 0 | grep '
install_nano='apt-get update & apt-get install nano'
kar='cp -f ~/DEV/settings/goku-karabiner-settings/karabiner.edn ~/.config/karabiner.edn && goku'
ll='ls -la --color=tty'
nas='ssh Adm1n@[IP_ADDRESS] -p22'
poetryshell='eval ""'
prod='ssh lukas@jiminny-prod-bastion -D [IP_ADDRESS]:7072 -L 7632:db:3306'
prodes='ssh ubuntu@jiminny-prod-ecs1 -L 7970:vpc-activities7-3o2zlrelmga5qicf2yxxwtx6bi.us-east-2.es.amazonaws.com:80'
prophet='cd ~/jiminny/app'
prophetdown='aws-vault exec staging -- bash -c "env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml down"'
prophetup='aws-vault exec staging -- bash -c "env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml up --build"'
qa='ssh lukas@jiminny-qa-bastion -D [IP_ADDRESS]:7074 -L 7432:db:3306'
qaes='ssh ubuntu@jiminny-qa-ecs1 -L 7950:vpc-activities7-s5zchrs4xqcnav3rjzmxgxvfvq.us-east-2.es.amazonaws.com:80'
qai='ssh lukas@jiminny-qai-bastion -D [IP_ADDRESS]:7075 -L 7777:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306'
rmbc='rm -rf bootstrap/cache/*.php'
UW PICO 5.09 New Buffer
[ New file ]
^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos
^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell
run-help=man
UW PICO 5.09 New Buffer
[ Read 135 lines ]
^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos
^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell
sp-start='npx screenpipe@latest record --disable-audio &'
sp-status='curl -s [URL_WITH_CREDENTIALS] -D [IP_ADDRESS]:7071 -L 7732:db:3306'
stges='ssh ubuntu@jiminny-stage-ecs1 -L 7980:vpc-activities7-tgeodjeaugnaiigqgdcjjkrrj4.us-east-2.es.amazonaws.com:80'
veu='ssh jiminny-eu-ecs1'
veu10='ssh jiminny-eu-ecs10'
veu11='ssh jiminny-eu-ecs11'
veu12='ssh jiminny-eu-ecs12'
veu2='ssh jiminny-eu-ecs2'
veu3='ssh jiminny-eu-ecs3'
veu4='ssh jiminny-eu-ecs4'
veu5='ssh jiminny-eu-ecs5'
veu6='ssh jiminny-eu-ecs6'
veu7='ssh jiminny-eu-ecs7'
veu8='ssh jiminny-eu-ecs8'
veu9='ssh jiminny-eu-ecs9'
vprod='ssh jiminny-prod-ecs1'
vprod10='ssh jiminny-prod-ecs10'
vprod11='ssh jiminny-prod-ecs11'
vprod12='ssh jiminny-prod-ecs12'
vprod2='ssh jiminny-prod-ecs2'
vprod3='ssh jiminny-prod-ecs3'
vprod4='ssh jiminny-prod-ecs4'
vprod5='ssh jiminny-prod-ecs5'
vprod6='ssh jiminny-prod-ecs6'
vprod7='ssh jiminny-prod-ecs7'
vprod8='ssh jiminny-prod-ecs8'
vprod9='ssh jiminny-prod-ecs9'
vqa='ssh jiminny-qa-ecs1'
vqa2='ssh jiminny-qa-ecs2'
UW PICO 5.09 New Buffer
[ Read 136 lines ]
^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos
^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell
vqai='ssh jiminny-qai-ecs1'
UW PICO 5.09 New Buffer
[ Read 136 lines ]
^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos
^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell
UW PICO 5.09 File: /Users/lukas/.zprofile
# alias dev="make bash"
# alias dev="docker compose up"
alias dev='docker exec -ti $(docker ps -q --filter "name=docker_lamp_1") /bin/bash'
alias xe="make docker-xdebug-enable"
alias xd="make docker-xdebug-disable"
alias fe="yarn && nvm use 20 && cd ~/jiminny/app/front-end && yarn build:watch"
alias fe3="cd ~/jiminny/app/front-end-vue3 && yarn build:watch:production"
alias prod="ssh lukas@jiminny-prod-bastion -D [IP_ADDRESS]:7072 -L 7632:db:3306"
alias stg="ssh lukas@jiminny-stage-bastion -D [IP_ADDRESS]:7071 -L 7732:db:3306"
alias qa="ssh lukas@jiminny-qa-bastion -D [IP_ADDRESS]:7074 -L 7432:db:3306"
# alias qb="ssh lukas@jiminny-qai-bastion -D [IP_ADDRESS]:7075 -L 7832:db:3306"
# alias qai="ssh lukas@jiminny-qai-bastion -D [IP_ADDRESS]:7075 -L 7832:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306"
# alias qai="ssh lukas@jiminny-qai-bastion -D [IP_ADDRESS]:7075 -L 7777:jiminny-db-prod.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306"
alias qai="ssh lukas@jiminny-qai-bastion -D [IP_ADDRESS]:7075 -L 7777:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306"
alias eu="ssh lukas@jiminny-eu-bastion -D [IP_ADDRESS]:7073 -L 7532:db:3306"
alias vprod="ssh jiminny-prod-ecs1"
alias vprod2="ssh jiminny-prod-ecs2"
alias vprod3="ssh jiminny-prod-ecs3"
alias vprod4="ssh jiminny-prod-ecs4"
alias vprod5="ssh jiminny-prod-ecs5"
alias vprod6="ssh jiminny-prod-ecs6"
alias vprod7="ssh jiminny-prod-ecs7"
alias vprod8="ssh jiminny-prod-ecs8"
alias vprod9="ssh jiminny-prod-ecs9"
alias vprod10="ssh jiminny-prod-ecs10"
alias vprod11="ssh jiminny-prod-ecs11"
alias vprod12="ssh jiminny-prod-ecs12"
alias veu="ssh jiminny-eu-ecs1"
alias veu2="ssh jiminny-eu-ecs2"
alias veu3="ssh jiminny-eu-ecs3"
alias veu4="ssh jiminny-eu-ecs4"
alias veu5="ssh jiminny-eu-ecs5"
alias veu6="ssh jiminny-eu-ecs6"
alias veu7="ssh jiminny-eu-ecs7"
^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos
^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
screenpipe"
Close Tab
nano
Close Tab
✳ Review screenpipe usage and Boosteroid integration (node)
Close Tab
⌥⌘1
nano...
|
40239
|
|
70160
|
1637
|
2
|
2026-04-22T09:50:08.098620+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-22/1776 /Users/lukas/.screenpipe/data/data/2026-04-22/1776851408098_m2.jpg...
|
Firefox
|
Pull requests · jiminny/app — Work
|
1
|
github.com/jiminny/app/pull/11998
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
Platform Sprint 2 Q2 - Platform Team - Scrum Board Platform Sprint 2 Q2 - Platform Team - Scrum Board - Jira
Platform Sprint 2 Q2 - Platform Team - Scrum Board - Jira
Platform Sprint 2 Q2 - Platform Team - Scrum Board - Jira
SevenShores\Hubspot\Exceptions\BadRequest: Client error: `POST [URL_WITH_CREDENTIALS]
Show options
nikolay-yankov commented 2 hours ago
nikolay-yankov
nikolay-yankov
commented
2 hours ago
2 hours ago
JIRA: JY-20372
JIRA:
JY-20372
JY-20372
Deployment notes:
Deployment notes:
None
Add or remove reactions
nikolay-yankov
nikolay-yankov
and others
added
4
commits
20 hours ago
20 hours ago
@nikolay-yankov
Enhance UserTransformer to include automated report generation status…
Enhance UserTransformer to include automated report generation status…
…
9 / 11 checks OK
2ffa898
2ffa898
@nikolay-yankov
Change logic when AI Reports button is visible
Change logic when AI Reports button is visible
8 / 10 checks OK
8dc1526
8dc1526
@nikolay-yankov
Add AI Reports promo route and component; update sidebar logic for re…
Add AI Reports promo route and component; update sidebar logic for re…
…
11 / 12 checks OK
27d4be4
27d4be4
@LakyLak
JY-20372
JY-20372
add planhat endpoint
add planhat endpoint
8 / 10 checks OK
c3c8d86
c3c8d86
This branch has not been deployed
This branch has not been deployed
No deployments
Merge info
Merge info
Review required
Review required
At least 1 approving review is required by reviewers with write access.
Some checks haven't completed yet
Some checks haven't completed yet
1 pending, 1 in progress, 1 expected, 8 successful checks
Collapse checks
Collapse 2 pending checks group
2 pending checks
Checks settings
pending checks
pending checks
ci/circleci: test
ci/circleci: test
ci/circleci: test
Waiting for status to be reported
— CircleCI is running your tests
More actions
SonarCloud Code Analysis
SonarCloud Code Analysis
Expected
— Waiting for status to be reported
Required
Collapse 1 in progress check group
1 in progress check
in progress checks
in progress checks
Loading
build_accept_deploy
build_accept_deploy
build_accept_deploy
Started
9 minutes ago
— Workflow: build_accept_deploy
More actions
Collapse 8 successful checks group
8 successful checks
successful checks
successful checks
ci/circleci: build-backend
ci/circleci: build-backend
ci/circleci: build-backend
— Your tests passed on CircleCI!
More actions
ci/circleci: build-frontend
ci/circleci: build-frontend
ci/circleci: build-frontend
— Your tests passed on CircleCI!
More actions
ci/circleci: checkout-code
ci/circleci: checkout-code
ci/circleci: checkout-code
— Your tests passed on CircleCI!
More actions
ci/circleci: phpstan
ci/circleci: phpstan
ci/circleci: phpstan
— Your tests passed on CircleCI!
More actions
ci/circleci: setup
ci/circleci: setup
ci/circleci: setup
— Your tests passed on CircleCI!
More actions
ci/circleci: test-backend-lint
ci/circleci: test-backend-lint
ci/circleci: test-backend-lint
— Your tests passed on CircleCI!
More actions
ci/circleci: test-frontend
ci/circleci: test-frontend
ci/circleci: test-frontend
— Your tests passed on CircleCI!
More actions
setup-workflow
setup-workflow
setup-workflow
Successful in 39s
— Workflow: setup-workflow
More actions
This branch is out-of-date with the base branch
This branch is out-of-date with the base branch
Merge the latest changes from master into this branch. This merge commit will be associated with LakyLak.
Update branch
Update branch
Update branch options
Merging is blocked
Merging is blocked
At least 1 approving review is required by reviewers with write access.
Enable auto-merge
Enable auto-merge
Select merge method
You can also merge this with the command line.
View command line instructions.
Still in progress?
Convert to draft
Convert to draft
@LakyLak
Add a comment
Add a comment
Comment
Write
Write
Preview
Preview
Comment
Markdown is supported
Markdown
is supported
Paste, drop, or click to add files
Paste, drop, or click to add files
Close pull request
Close pull request
Comment
Remember, contributions to this repository should follow our
GitHub Community Guidelines
GitHub Community Guidelines
.
ProTip!
Add
.patch
.patch
or
.diff
.diff
to the end of URLs for Git’s plaintext views.
Reviewers
Suggestions
Request
Request
@nikolaybiaivanov
nikolaybiaivanov
nikolaybiaivanov
Request
Request
@des-d
des-d
des-d
At least 1 approving review is required to merge this pull request.
Still in progress?
Convert to draft
Assignees
No one—
assign yourself
Labels
None yet
Projects
None yet
Milestone
No milestone
Development
Development
Successfully merging this pull request may close these issues.
None yet
Notifications Customize...
|
[{"role":"AXRadioButton","text [{"role":"AXRadioButton","text":"Platform Sprint 2 Q2 - Platform Team - Scrum Board - Jira","depth":4,"bounds":{"left":0.28307846,"top":0.0518755,"width":0.07596409,"height":0.032721467},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"Platform Sprint 2 Q2 - Platform Team - Scrum Board - Jira","depth":4,"bounds":{"left":0.28125,"top":0.09497207,"width":0.07962101,"height":0.032721467},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Platform Sprint 2 Q2 - Platform Team - Scrum Board - Jira","depth":5,"bounds":{"left":0.2945479,"top":0.10614525,"width":0.10106383,"height":0.010774142},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"SevenShores\\Hubspot\\Exceptions\\BadRequest: Client error: `POST https://api.hubapi.com/crm/v3/objects/contact/search` resulted in a `429 Too Many Requests` response: {\"status\":\"error\",\"message\":\"You have reached your secondly limit.\",\"errorType\":\"RATE_LIMIT","depth":4,"bounds":{"left":0.28125,"top":0.12769353,"width":0.07962101,"height":0.032721467},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"SevenShores\\Hubspot\\Exceptions\\BadRequest: Client error: `POST https://api.hubapi.com/crm/v3/objects/contact/search` resulted in a `429 Too Many Requests` response: {\"status\":\"error\",\"message\":\"You have reached your secondly limit.\",\"errorType\":\"RATE_LIMIT","depth":5,"bounds":{"left":0.2945479,"top":0.13886672,"width":0.4644282,"height":0.010774142},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"[JY-20372] AI Reports > Empty page design and promotion - Jira","depth":4,"bounds":{"left":0.28125,"top":0.16041501,"width":0.07962101,"height":0.032721467},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"[JY-20372] AI Reports > Empty page design and promotion - Jira","depth":5,"bounds":{"left":0.2945479,"top":0.17158818,"width":0.11319814,"height":0.010774142},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Jiminny MCP Connector - Product - Confluence","depth":4,"bounds":{"left":0.28125,"top":0.19313647,"width":0.07962101,"height":0.032721467},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Jiminny MCP Connector - Product - Confluence","depth":5,"bounds":{"left":0.2945479,"top":0.20430966,"width":0.08294548,"height":0.010774142},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"CRM issues - Apr 22 - Chat","depth":4,"bounds":{"left":0.28125,"top":0.22585794,"width":0.07962101,"height":0.032721467},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"CRM issues - Apr 22 - Chat","depth":5,"bounds":{"left":0.2945479,"top":0.23703113,"width":0.047706116,"height":0.010774142},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"[JY-20500] Batch initial sync for Salesforce - Jira","depth":4,"bounds":{"left":0.28125,"top":0.2585794,"width":0.07962101,"height":0.032721467},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"[JY-20500] Batch initial sync for Salesforce - Jira","depth":5,"bounds":{"left":0.2945479,"top":0.2697526,"width":0.08610372,"height":0.010774142},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Feed — jiminny — Sentry","depth":4,"bounds":{"left":0.28125,"top":0.29130086,"width":0.07962101,"height":0.032721467},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Feed — jiminny — Sentry","depth":5,"bounds":{"left":0.2945479,"top":0.30247405,"width":0.042719416,"height":0.010774142},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Jiminny","depth":4,"bounds":{"left":0.28125,"top":0.32402235,"width":0.07962101,"height":0.032721467},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Jiminny","depth":5,"bounds":{"left":0.2945479,"top":0.33519554,"width":0.013131649,"height":0.010774142},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Pipelines - /app","depth":4,"bounds":{"left":0.28125,"top":0.3567438,"width":0.07962101,"height":0.032721467},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Pipelines - /app","depth":5,"bounds":{"left":0.2945479,"top":0.367917,"width":0.027094414,"height":0.010774142},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Formalize","depth":4,"bounds":{"left":0.28125,"top":0.38946527,"width":0.07962101,"height":0.032721467},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Formalize","depth":5,"bounds":{"left":0.2945479,"top":0.40063846,"width":0.016788565,"height":0.010774142},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"[SRD-6793] Les Mills activity types not pulling in - Jira","depth":4,"bounds":{"left":0.28125,"top":0.42218676,"width":0.07962101,"height":0.032721467},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"[SRD-6793] Les Mills activity types not pulling in - Jira","depth":5,"bounds":{"left":0.2945479,"top":0.43335995,"width":0.09524601,"height":0.010774142},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Search results: calendar | Jiminny Help Center","depth":4,"bounds":{"left":0.28125,"top":0.45490822,"width":0.07962101,"height":0.032721467},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Search results: calendar | Jiminny Help Center","depth":5,"bounds":{"left":0.2945479,"top":0.4660814,"width":0.080119684,"height":0.010774142},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Jiminny","depth":4,"bounds":{"left":0.28125,"top":0.48762968,"width":0.07962101,"height":0.032721467},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Jiminny","depth":5,"bounds":{"left":0.2945479,"top":0.49880287,"width":0.013131649,"height":0.010774142},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Jiminny","depth":4,"bounds":{"left":0.28125,"top":0.5203512,"width":0.07962101,"height":0.032721467},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Jiminny","depth":5,"bounds":{"left":0.2945479,"top":0.53152436,"width":0.013131649,"height":0.010774142},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Jiminny","depth":4,"bounds":{"left":0.28125,"top":0.55307263,"width":0.07962101,"height":0.032721467},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Jiminny","depth":5,"bounds":{"left":0.2945479,"top":0.5642458,"width":0.013131649,"height":0.010774142},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Edit - Engineering - Confluence","depth":4,"bounds":{"left":0.28125,"top":0.5857941,"width":0.07962101,"height":0.032721467},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Edit - Engineering - Confluence","depth":5,"bounds":{"left":0.2945479,"top":0.5969673,"width":0.054853722,"height":0.010774142},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"[JY-18909] [Part2] Automated reports with Ask Jiminny - Jira","depth":4,"bounds":{"left":0.28125,"top":0.61851555,"width":0.07962101,"height":0.032721467},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"[JY-18909] [Part2] Automated reports with Ask Jiminny - Jira","depth":5,"bounds":{"left":0.2945479,"top":0.62968874,"width":0.10688165,"height":0.010774142},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"SevenShores\\Hubspot\\Exceptions\\BadRequest: Client error: `POST https://api.hubapi.com/crm/v3/objects/contact/search` resulted in a `429 Too Many Requests` response: {\"status\":\"error\",\"message\":\"You have reached your secondly limit.\",\"errorType\":\"RATE_LIMIT","depth":4,"bounds":{"left":0.28125,"top":0.651237,"width":0.07962101,"height":0.032721467},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"SevenShores\\Hubspot\\Exceptions\\BadRequest: Client error: `POST https://api.hubapi.com/crm/v3/objects/contact/search` resulted in a `429 Too Many Requests` response: {\"status\":\"error\",\"message\":\"You have reached your secondly limit.\",\"errorType\":\"RATE_LIMIT","depth":5,"bounds":{"left":0.2945479,"top":0.6624102,"width":0.4644282,"height":0.010774142},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"CloudWatch | us-east-2","depth":4,"bounds":{"left":0.28125,"top":0.6839585,"width":0.07962101,"height":0.032721467},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"CloudWatch | us-east-2","depth":5,"bounds":{"left":0.2945479,"top":0.69513166,"width":0.041223403,"height":0.010774142},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Usage | Windsurf","depth":4,"bounds":{"left":0.28125,"top":0.71668,"width":0.07962101,"height":0.032721467},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Usage | Windsurf","depth":5,"bounds":{"left":0.2945479,"top":0.7278532,"width":0.029920213,"height":0.010774142},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"SevenShores\\Hubspot\\Exceptions\\BadRequest: Client error: `POST https://api.hubapi.com/crm/v3/objects/contact/search` resulted in a `429 Too Many Requests` response: {\"status\":\"error\",\"message\":\"You have reached your secondly limit.\",\"errorType\":\"RATE_LIMIT","depth":4,"bounds":{"left":0.28125,"top":0.74940145,"width":0.07962101,"height":0.032721467},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"SevenShores\\Hubspot\\Exceptions\\BadRequest: Client error: `POST https://api.hubapi.com/crm/v3/objects/contact/search` resulted in a `429 Too Many Requests` response: {\"status\":\"error\",\"message\":\"You have reached your secondly limit.\",\"errorType\":\"RATE_LIMIT","depth":5,"bounds":{"left":0.2945479,"top":0.76057464,"width":0.4644282,"height":0.010774142},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Workers | Datadog","depth":4,"bounds":{"left":0.28125,"top":0.7821229,"width":0.07962101,"height":0.032721467},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Workers | Datadog","depth":5,"bounds":{"left":0.2945479,"top":0.7932961,"width":0.032081116,"height":0.010774142},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Pull requests · jiminny/app","depth":4,"bounds":{"left":0.28125,"top":0.81484437,"width":0.07962101,"height":0.032721467},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":true},{"role":"AXStaticText","text":"Pull requests · jiminny/app","depth":5,"bounds":{"left":0.2945479,"top":0.82601756,"width":0.04537899,"height":0.010774142},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Close tab","depth":5,"bounds":{"left":0.34857047,"top":0.82202715,"width":0.007978723,"height":0.01915403},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"New Tab","depth":4,"bounds":{"left":0.2840758,"top":0.849162,"width":0.07413564,"height":0.025538707},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Customize sidebar","depth":6,"bounds":{"left":0.2840758,"top":0.97007185,"width":0.010638298,"height":0.025538707},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open Google Gemini (⌃X)","depth":6,"bounds":{"left":0.29504654,"top":0.97007185,"width":0.010638298,"height":0.025538707},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Tabs from other devices","depth":6,"bounds":{"left":0.30618352,"top":0.97007185,"width":0.010638298,"height":0.025538707},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open history (⇧⌘H)","depth":6,"bounds":{"left":0.31732047,"top":0.97007185,"width":0.010638298,"height":0.025538707},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open bookmarks (⌘B)","depth":6,"bounds":{"left":0.32845744,"top":0.97007185,"width":0.010638298,"height":0.025538707},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXLink","text":"Skip to content","depth":6,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Skip to content","depth":7,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Open menu","depth":10,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXLink","text":"Homepage (g then d)","depth":9,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXLink","text":"jiminny","depth":12,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"jiminny","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"app","depth":12,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"app","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Search or jump to…","depth":9,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Type","depth":12,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"/","depth":12,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"to search","depth":12,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"Chat with Copilot","depth":10,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXMenuButton","text":"Open Copilot…","depth":9,"help_text":"","role_description":"menu button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXMenuButton","text":"Create new...","depth":9,"help_text":"","role_description":"menu button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXLink","text":"Issues(g then i)","depth":9,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXLink","text":"Pull requests","depth":9,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXLink","text":"Repositories","depth":9,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXLink","text":"You have unread notifications(g then n)","depth":9,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Open user navigation menu","depth":9,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXHeading","text":"Repository navigation","depth":9,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Repository navigation","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"Code","depth":12,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Code","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"Pull requests (28)","depth":12,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Pull requests","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"(","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"28","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":")","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"Agents","depth":12,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Agents","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"Actions","depth":12,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Actions","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"Wiki","depth":12,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Wiki","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"Security and quality (21)","depth":12,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Security and quality","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"(","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"21","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":")","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"Insights","depth":12,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Insights","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"Settings","depth":12,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Settings","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXHeading","text":"Important update","depth":10,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Important update","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"On April 24 we'll start using GitHub Copilot interaction data for AI model training unless you opt out.","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"Review this update","depth":10,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Review this update","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"and manage your preferences in your","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"GitHub account settings","depth":10,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"GitHub account settings","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":".","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Dismiss banner","depth":9,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXHeading","text":"AI reports promotion pages #11998 Edit title","depth":12,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"AI reports promotion pages","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"#","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"11998","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Edit title","depth":13,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Checks pending","depth":12,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Checks pending","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXMenuButton","text":"Code","depth":12,"help_text":"","role_description":"menu button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Code","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Open","depth":12,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"nikolay-yankov","depth":14,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"nikolay-yankov","depth":15,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"wants to merge 4 commits into","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"master","depth":14,"role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"master","depth":15,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"from","depth":15,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"JY-20372-ai-reports-promotion-pages","depth":15,"role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"JY-20372-ai-reports-promotion-pages","depth":16,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Copy head branch name to clipboard","depth":15,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Lines changed: 325 additions & 15 deletions","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Conversation (0)","depth":15,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":true},{"role":"AXStaticText","text":"Conversation","depth":16,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"(","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"0","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":")","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Commits (4)","depth":15,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Commits","depth":16,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"(","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"4","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":")","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Checks (2)","depth":15,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Checks","depth":16,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"(","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"2","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":")","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Files changed (12)","depth":15,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Files changed","depth":16,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"(","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"12","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":")","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Open","depth":13,"bounds":{"left":0.48902926,"top":0.0726257,"width":0.011968086,"height":0.013567438},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXHeading","text":"AI reports promotion pages #11998 nikolay-yankov wants to merge 4 commits into master from JY-20372-ai-reports-promotion-pages Copy head branch name to clipboard","depth":13,"bounds":{"left":0.50764626,"top":0.058260176,"width":0.22140957,"height":0.042298485},"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXLink","text":"AI reports promotion pages","depth":15,"bounds":{"left":0.50764626,"top":0.05865922,"width":0.061502658,"height":0.01915403},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"AI reports promotion pages","depth":16,"bounds":{"left":0.50764626,"top":0.06304868,"width":0.061502658,"height":0.013567438},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"#","depth":15,"bounds":{"left":0.5718085,"top":0.06304868,"width":0.0028257978,"height":0.013567438},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"11998","depth":15,"bounds":{"left":0.5746343,"top":0.06304868,"width":0.012965426,"height":0.013567438},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"nikolay-yankov","depth":17,"bounds":{"left":0.50764626,"top":0.08339984,"width":0.029421542,"height":0.011971269},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"nikolay-yankov","depth":18,"bounds":{"left":0.50764626,"top":0.08339984,"width":0.029421542,"height":0.011971269},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"wants to merge 4 commits into","depth":17,"bounds":{"left":0.5383976,"top":0.08339984,"width":0.058011968,"height":0.011971269},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"master","depth":17,"bounds":{"left":0.59773934,"top":0.08180367,"width":0.018450798,"height":0.015163607},"role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"master","depth":18,"bounds":{"left":0.59973407,"top":0.083798885,"width":0.014461436,"height":0.011572227},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"from","depth":18,"bounds":{"left":0.61752,"top":0.08339984,"width":0.008643617,"height":0.011971269},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"JY-20372-ai-reports-promotion-pages","depth":18,"bounds":{"left":0.6274933,"top":0.08180367,"width":0.087932184,"height":0.015163607},"role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"JY-20372-ai-reports-promotion-pages","depth":19,"bounds":{"left":0.62948805,"top":0.083798885,"width":0.083942816,"height":0.011572227},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Copy head branch name to clipboard","depth":18,"bounds":{"left":0.71675533,"top":0.07821229,"width":0.00930851,"height":0.022346368},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXHeading","text":"Conversation","depth":11,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Conversation","depth":12,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"@nikolay-yankov","depth":11,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Show options","depth":14,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXHeading","text":"nikolay-yankov commented 2 hours ago","depth":13,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXLink","text":"nikolay-yankov","depth":15,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"nikolay-yankov","depth":16,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"commented","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"2 hours ago","depth":14,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"2 hours ago","depth":16,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXHeading","text":"JIRA: JY-20372","depth":15,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"JIRA:","depth":16,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"JY-20372","depth":16,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"JY-20372","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXHeading","text":"Deployment notes:","depth":15,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Deployment notes:","depth":16,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"None","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Add or remove reactions","depth":15,"help_text":"","role_description":"summary","subrole":"AXSummary","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXLink","text":"nikolay-yankov","depth":13,"bounds":{"left":0.5106383,"top":0.0,"width":0.03357713,"height":0.013567438},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"nikolay-yankov","depth":14,"bounds":{"left":0.5106383,"top":0.0,"width":0.03357713,"height":0.013567438},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"and others","depth":13,"bounds":{"left":0.5455452,"top":0.0,"width":0.022938829,"height":0.013567438},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"added","depth":13,"bounds":{"left":0.56848407,"top":0.0,"width":0.016289894,"height":0.013567438},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"4","depth":13,"bounds":{"left":0.58477396,"top":0.0,"width":0.0028257978,"height":0.013567438},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"commits","depth":13,"bounds":{"left":0.58759975,"top":0.0,"width":0.020944148,"height":0.013567438},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"20 hours ago","depth":13,"bounds":{"left":0.6085439,"top":0.0,"width":0.028424202,"height":0.013567438},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"20 hours ago","depth":15,"bounds":{"left":0.6085439,"top":0.0,"width":0.028424202,"height":0.013567438},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"@nikolay-yankov","depth":11,"bounds":{"left":0.5106383,"top":0.003990423,"width":0.0066489363,"height":0.015961692},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXLink","text":"Enhance UserTransformer to include automated report generation status…","depth":13,"bounds":{"left":0.5192819,"top":0.0075818035,"width":0.16788563,"height":0.011572227},"help_text":"Enhance UserTransformer to include automated report generation status and repository access","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Enhance UserTransformer to include automated report generation status…","depth":14,"bounds":{"left":0.5192819,"top":0.0075818035,"width":0.16788563,"height":0.011572227},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"…","depth":13,"bounds":{"left":0.6911569,"top":0.008379889,"width":0.006981383,"height":0.009577015},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"9 / 11 checks OK","depth":13,"bounds":{"left":0.74202126,"top":0.003990423,"width":0.005319149,"height":0.016759777},"help_text":"","role_description":"summary","subrole":"AXSummary","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXLink","text":"2ffa898","depth":13,"bounds":{"left":0.7486702,"top":0.0075818035,"width":0.016954787,"height":0.011572227},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"2ffa898","depth":14,"bounds":{"left":0.7486702,"top":0.0075818035,"width":0.016954787,"height":0.011572227},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"@nikolay-yankov","depth":11,"bounds":{"left":0.5106383,"top":0.045490824,"width":0.0066489363,"height":0.015961692},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXLink","text":"Change logic when AI Reports button is visible","depth":13,"bounds":{"left":0.5192819,"top":0.0490822,"width":0.11020612,"height":0.011572227},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Change logic when AI Reports button is visible","depth":14,"bounds":{"left":0.5192819,"top":0.0490822,"width":0.11020612,"height":0.011572227},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"8 / 10 checks OK","depth":13,"bounds":{"left":0.74202126,"top":0.045490824,"width":0.005319149,"height":0.016759777},"help_text":"","role_description":"summary","subrole":"AXSummary","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXLink","text":"8dc1526","depth":13,"bounds":{"left":0.7486702,"top":0.0490822,"width":0.016954787,"height":0.011572227},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"8dc1526","depth":14,"bounds":{"left":0.7486702,"top":0.0490822,"width":0.016954787,"height":0.011572227},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"@nikolay-yankov","depth":11,"bounds":{"left":0.5106383,"top":0.074221864,"width":0.0066489363,"height":0.015961692},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXLink","text":"Add AI Reports promo route and component; update sidebar logic for re…","depth":13,"bounds":{"left":0.5192819,"top":0.077813245,"width":0.16788563,"height":0.011572227},"help_text":"Add AI Reports promo route and component; update sidebar logic for report visibility","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Add AI Reports promo route and component; update sidebar logic for re…","depth":14,"bounds":{"left":0.5192819,"top":0.077813245,"width":0.16788563,"height":0.011572227},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"…","depth":13,"bounds":{"left":0.6911569,"top":0.07861133,"width":0.006981383,"height":0.009577015},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"11 / 12 checks OK","depth":13,"bounds":{"left":0.74202126,"top":0.074221864,"width":0.005319149,"height":0.016759777},"help_text":"","role_description":"summary","subrole":"AXSummary","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXLink","text":"27d4be4","depth":13,"bounds":{"left":0.7486702,"top":0.077813245,"width":0.016954787,"height":0.011572227},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"27d4be4","depth":14,"bounds":{"left":0.7486702,"top":0.077813245,"width":0.016954787,"height":0.011572227},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"@LakyLak","depth":11,"bounds":{"left":0.5106383,"top":0.10295291,"width":0.0066489363,"height":0.015961692},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXLink","text":"JY-20372","depth":13,"bounds":{"left":0.5192819,"top":0.10654429,"width":0.019115692,"height":0.011572227},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"JY-20372","depth":14,"bounds":{"left":0.5192819,"top":0.10654429,"width":0.019115692,"height":0.011572227},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"add planhat endpoint","depth":13,"bounds":{"left":0.54072475,"top":0.10654429,"width":0.048038565,"height":0.011572227},"help_text":"JY-20372 add planhat endpoint","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"add planhat endpoint","depth":14,"bounds":{"left":0.54072475,"top":0.10654429,"width":0.048038565,"height":0.011572227},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"8 / 10 checks OK","depth":13,"bounds":{"left":0.74202126,"top":0.10295291,"width":0.005319149,"height":0.016759777},"help_text":"","role_description":"summary","subrole":"AXSummary","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXLink","text":"c3c8d86","depth":13,"bounds":{"left":0.7486702,"top":0.10654429,"width":0.016954787,"height":0.011572227},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"c3c8d86","depth":14,"bounds":{"left":0.7486702,"top":0.10654429,"width":0.016954787,"height":0.011572227},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXHeading","text":"This branch has not been deployed","depth":13,"bounds":{"left":0.515625,"top":0.16520351,"width":0.2443484,"height":0.017956903},"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"This branch has not been deployed","depth":14,"bounds":{"left":0.515625,"top":0.16679968,"width":0.08843085,"height":0.015163607},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"No deployments","depth":13,"bounds":{"left":0.515625,"top":0.18475658,"width":0.03274601,"height":0.012769354},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXHeading","text":"Merge info","depth":11,"bounds":{"left":0.49700797,"top":0.22466081,"width":0.0003324468,"height":0.0007980846},"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Merge info","depth":12,"bounds":{"left":0.49700797,"top":0.22745411,"width":0.023105053,"height":0.0518755},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXHeading","text":"Review required","depth":12,"bounds":{"left":0.5159575,"top":0.23822825,"width":0.24401596,"height":0.01915403},"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Review required","depth":13,"bounds":{"left":0.5159575,"top":0.24022347,"width":0.04055851,"height":0.015163607},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"At least 1 approving review is required by reviewers with write access.","depth":13,"bounds":{"left":0.5159575,"top":0.25897846,"width":0.14960106,"height":0.013567438},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXHeading","text":"Some checks haven't completed yet","depth":12,"bounds":{"left":0.5159575,"top":0.30047885,"width":0.23337767,"height":0.01915403},"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Some checks haven't completed yet","depth":13,"bounds":{"left":0.5159575,"top":0.30247405,"width":0.09125665,"height":0.015163607},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"1 pending, 1 in progress, 1 expected, 8 successful checks","depth":13,"bounds":{"left":0.5159575,"top":0.32122904,"width":0.123171546,"height":0.013567438},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Collapse checks","depth":12,"bounds":{"left":0.4973404,"top":0.2877095,"width":0.2679521,"height":0.061452515},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":true},{"role":"AXButton","text":"Collapse 2 pending checks group","depth":15,"bounds":{"left":0.5,"top":0.35794094,"width":0.04504654,"height":0.022346368},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":true},{"role":"AXStaticText","text":"2 pending checks","depth":17,"bounds":{"left":0.50299203,"top":0.36312848,"width":0.03374335,"height":0.011971269},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXMenuButton","text":"Checks settings","depth":15,"bounds":{"left":0.74800533,"top":0.35634476,"width":0.010638298,"height":0.025538707},"help_text":"","role_description":"menu button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXHeading","text":"pending checks","depth":18,"bounds":{"left":0.5,"top":0.38188347,"width":0.0003324468,"height":0.0007980846},"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"pending checks","depth":19,"bounds":{"left":0.5,"top":0.3858739,"width":0.03939495,"height":0.06863528},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXHeading","text":"ci/circleci: test","depth":21,"bounds":{"left":0.5212766,"top":0.38906625,"width":0.031083776,"height":0.013567438},"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXLink","text":"ci/circleci: test","depth":22,"bounds":{"left":0.5212766,"top":0.38906625,"width":0.031083776,"height":0.013567438},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"ci/circleci: test","depth":23,"bounds":{"left":0.5212766,"top":0.38906625,"width":0.031083776,"height":0.013567438},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Waiting for status to be reported","depth":21,"bounds":{"left":0.55502,"top":0.3906624,"width":0.061170213,"height":0.011971269},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"— CircleCI is running your tests","depth":21,"bounds":{"left":0.61735374,"top":0.3906624,"width":0.05867686,"height":0.011971269},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXMenuButton","text":"More actions","depth":20,"bounds":{"left":0.74800533,"top":0.38347965,"width":0.010638298,"height":0.025538707},"help_text":"","role_description":"menu button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXHeading","text":"SonarCloud Code Analysis","depth":21,"bounds":{"left":0.5212766,"top":0.41859537,"width":0.05668218,"height":0.013567438},"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"SonarCloud Code Analysis","depth":22,"bounds":{"left":0.5212766,"top":0.41859537,"width":0.05668218,"height":0.013567438},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Expected","depth":21,"bounds":{"left":0.5806183,"top":0.42019153,"width":0.01761968,"height":0.011971269},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"— Waiting for status to be reported","depth":21,"bounds":{"left":0.5994016,"top":0.42019153,"width":0.06582447,"height":0.011971269},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Required","depth":21,"bounds":{"left":0.7257314,"top":0.42098963,"width":0.017287234,"height":0.011971269},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Collapse 1 in progress check group","depth":15,"bounds":{"left":0.5,"top":0.44094175,"width":0.04837101,"height":0.022346368},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":true},{"role":"AXStaticText","text":"1 in progress check","depth":17,"bounds":{"left":0.50299203,"top":0.4461293,"width":0.03706782,"height":0.011971269},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXHeading","text":"in progress checks","depth":18,"bounds":{"left":0.5,"top":0.4632881,"width":0.0003324468,"height":0.0007980846},"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"in progress checks","depth":19,"bounds":{"left":0.5,"top":0.46727854,"width":0.04255319,"height":0.10694334},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Loading","depth":21,"bounds":{"left":0.5046542,"top":0.47286513,"width":0.016954787,"height":0.013567438},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXHeading","text":"build_accept_deploy","depth":21,"bounds":{"left":0.5212766,"top":0.47047088,"width":0.044714097,"height":0.013567438},"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXLink","text":"build_accept_deploy","depth":22,"bounds":{"left":0.5212766,"top":0.47047088,"width":0.044714097,"height":0.013567438},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"build_accept_deploy","depth":23,"bounds":{"left":0.5212766,"top":0.47047088,"width":0.044714097,"height":0.013567438},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Started","depth":21,"bounds":{"left":0.56865025,"top":0.47206703,"width":0.01512633,"height":0.011971269},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"9 minutes ago","depth":22,"bounds":{"left":0.5837766,"top":0.47206703,"width":0.026595745,"height":0.011971269},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"— Workflow: build_accept_deploy","depth":21,"bounds":{"left":0.6115359,"top":0.47206703,"width":0.0631649,"height":0.011971269},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXMenuButton","text":"More actions","depth":20,"bounds":{"left":0.74800533,"top":0.46488428,"width":0.010638298,"height":0.025538707},"help_text":"","role_description":"menu button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Collapse 8 successful checks group","depth":15,"bounds":{"left":0.5,"top":0.49281725,"width":0.050199468,"height":0.022346368},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":true},{"role":"AXStaticText","text":"8 successful checks","depth":17,"bounds":{"left":0.50299203,"top":0.4980048,"width":0.038896278,"height":0.011971269},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXHeading","text":"successful checks","depth":18,"bounds":{"left":0.5,"top":0.5151636,"width":0.0003324468,"height":0.0007980846},"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"successful checks","depth":19,"bounds":{"left":0.5,"top":0.519154,"width":0.05219415,"height":0.06863528},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXHeading","text":"ci/circleci: build-backend","depth":21,"bounds":{"left":0.5212766,"top":0.5223464,"width":0.053856384,"height":0.013567438},"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXLink","text":"ci/circleci: build-backend","depth":22,"bounds":{"left":0.5212766,"top":0.5223464,"width":0.053856384,"height":0.013567438},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"ci/circleci: build-backend","depth":23,"bounds":{"left":0.5212766,"top":0.5223464,"width":0.053856384,"height":0.013567438},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"— Your tests passed on CircleCI!","depth":21,"bounds":{"left":0.5789561,"top":0.52394253,"width":0.06100399,"height":0.011971269},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXMenuButton","text":"More actions","depth":20,"bounds":{"left":0.74800533,"top":0.51675975,"width":0.010638298,"height":0.025538707},"help_text":"","role_description":"menu button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXHeading","text":"ci/circleci: build-frontend","depth":21,"bounds":{"left":0.5212766,"top":0.5518755,"width":0.053690158,"height":0.013567438},"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXLink","text":"ci/circleci: build-frontend","depth":22,"bounds":{"left":0.5212766,"top":0.5518755,"width":0.053690158,"height":0.013567438},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"ci/circleci: build-frontend","depth":23,"bounds":{"left":0.5212766,"top":0.5518755,"width":0.053690158,"height":0.013567438},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"— Your tests passed on CircleCI!","depth":21,"bounds":{"left":0.5787899,"top":0.5534717,"width":0.06100399,"height":0.011971269},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXMenuButton","text":"More actions","depth":20,"bounds":{"left":0.74800533,"top":0.5462889,"width":0.010638298,"height":0.025538707},"help_text":"","role_description":"menu button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXHeading","text":"ci/circleci: checkout-code","depth":21,"bounds":{"left":0.5212766,"top":0.5814046,"width":0.055352394,"height":0.013567438},"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXLink","text":"ci/circleci: checkout-code","depth":22,"bounds":{"left":0.5212766,"top":0.5814046,"width":0.055352394,"height":0.013567438},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"ci/circleci: checkout-code","depth":23,"bounds":{"left":0.5212766,"top":0.5814046,"width":0.055352394,"height":0.013567438},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"— Your tests passed on CircleCI!","depth":21,"bounds":{"left":0.58045214,"top":0.5830008,"width":0.06100399,"height":0.011971269},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXMenuButton","text":"More actions","depth":20,"bounds":{"left":0.74800533,"top":0.57581806,"width":0.010638298,"height":0.025538707},"help_text":"","role_description":"menu button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXHeading","text":"ci/circleci: phpstan","depth":21,"bounds":{"left":0.5212766,"top":0.6109338,"width":0.040226065,"height":0.013567438},"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXLink","text":"ci/circleci: phpstan","depth":22,"bounds":{"left":0.5212766,"top":0.6109338,"width":0.040226065,"height":0.013567438},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"ci/circleci: phpstan","depth":23,"bounds":{"left":0.5212766,"top":0.6109338,"width":0.040226065,"height":0.013567438},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"— Your tests passed on CircleCI!","depth":21,"bounds":{"left":0.5653258,"top":0.61252993,"width":0.06100399,"height":0.011971269},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXMenuButton","text":"More actions","depth":20,"bounds":{"left":0.74800533,"top":0.60534716,"width":0.010638298,"height":0.025538707},"help_text":"","role_description":"menu button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXHeading","text":"ci/circleci: setup","depth":21,"bounds":{"left":0.5212766,"top":0.6404629,"width":0.034906916,"height":0.013567438},"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXLink","text":"ci/circleci: setup","depth":22,"bounds":{"left":0.5212766,"top":0.6404629,"width":0.034906916,"height":0.013567438},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"ci/circleci: setup","depth":23,"bounds":{"left":0.5212766,"top":0.6404629,"width":0.034906916,"height":0.013567438},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"— Your tests passed on CircleCI!","depth":21,"bounds":{"left":0.5600067,"top":0.6420591,"width":0.06100399,"height":0.011971269},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXMenuButton","text":"More actions","depth":20,"bounds":{"left":0.74800533,"top":0.6348763,"width":0.010638298,"height":0.025538707},"help_text":"","role_description":"menu button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXHeading","text":"ci/circleci: test-backend-lint","depth":21,"bounds":{"left":0.5212766,"top":0.669992,"width":0.06017287,"height":0.013567438},"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXLink","text":"ci/circleci: test-backend-lint","depth":22,"bounds":{"left":0.5212766,"top":0.669992,"width":0.06017287,"height":0.013567438},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"ci/circleci: test-backend-lint","depth":23,"bounds":{"left":0.5212766,"top":0.669992,"width":0.06017287,"height":0.013567438},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"— Your tests passed on CircleCI!","depth":21,"bounds":{"left":0.5851064,"top":0.6715882,"width":0.061170213,"height":0.011971269},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXMenuButton","text":"More actions","depth":20,"bounds":{"left":0.74800533,"top":0.6644054,"width":0.010638298,"height":0.025538707},"help_text":"","role_description":"menu button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXHeading","text":"ci/circleci: test-frontend","depth":21,"bounds":{"left":0.5212766,"top":0.6995211,"width":0.051363032,"height":0.013567438},"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXLink","text":"ci/circleci: test-frontend","depth":22,"bounds":{"left":0.5212766,"top":0.6995211,"width":0.051363032,"height":0.013567438},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"ci/circleci: test-frontend","depth":23,"bounds":{"left":0.5212766,"top":0.6995211,"width":0.051363032,"height":0.013567438},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"— Your tests passed on CircleCI!","depth":21,"bounds":{"left":0.57646275,"top":0.70111734,"width":0.06100399,"height":0.011971269},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXMenuButton","text":"More actions","depth":20,"bounds":{"left":0.74800533,"top":0.69393456,"width":0.010638298,"height":0.025538707},"help_text":"","role_description":"menu button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXHeading","text":"setup-workflow","depth":21,"bounds":{"left":0.5212766,"top":0.7290503,"width":0.033410903,"height":0.013567438},"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXLink","text":"setup-workflow","depth":22,"bounds":{"left":0.5212766,"top":0.7290503,"width":0.033410903,"height":0.013567438},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"setup-workflow","depth":23,"bounds":{"left":0.5212766,"top":0.7290503,"width":0.033410903,"height":0.013567438},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Successful in 39s","depth":21,"bounds":{"left":0.55734706,"top":0.73064643,"width":0.03324468,"height":0.011971269},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"— Workflow: setup-workflow","depth":21,"bounds":{"left":0.59175533,"top":0.73064643,"width":0.053690158,"height":0.011971269},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXMenuButton","text":"More actions","depth":20,"bounds":{"left":0.74800533,"top":0.7234637,"width":0.010638298,"height":0.025538707},"help_text":"","role_description":"menu button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXHeading","text":"This branch is out-of-date with the base branch","depth":13,"bounds":{"left":0.5159575,"top":0.60215485,"width":0.18999335,"height":0.01915403},"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"This branch is out-of-date with the base branch","depth":14,"bounds":{"left":0.5159575,"top":0.60415006,"width":0.12051197,"height":0.015163607},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Merge the latest changes from master into this branch. This merge commit will be associated with LakyLak.","depth":14,"bounds":{"left":0.5159575,"top":0.622905,"width":0.17569813,"height":0.030327214},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Update branch","depth":13,"bounds":{"left":0.70861036,"top":0.60215485,"width":0.04138963,"height":0.025538707},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Update branch","depth":15,"bounds":{"left":0.71293217,"top":0.60814047,"width":0.03274601,"height":0.013567438},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXMenuButton","text":"Update branch options","depth":14,"bounds":{"left":0.7496675,"top":0.60215485,"width":0.010638298,"height":0.025538707},"help_text":"","role_description":"menu button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXHeading","text":"Merging is blocked","depth":12,"bounds":{"left":0.5159575,"top":0.6811652,"width":0.24401596,"height":0.01915403},"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Merging is blocked","depth":13,"bounds":{"left":0.5159575,"top":0.6831604,"width":0.047706116,"height":0.015163607},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"At least 1 approving review is required by reviewers with write access.","depth":15,"bounds":{"left":0.5159575,"top":0.7019154,"width":0.14960106,"height":0.013567438},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Enable auto-merge","depth":11,"bounds":{"left":0.50265956,"top":0.7434158,"width":0.050531916,"height":0.025538707},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Enable auto-merge","depth":13,"bounds":{"left":0.5069814,"top":0.74940145,"width":0.041888297,"height":0.013567438},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXMenuButton","text":"Select merge method","depth":12,"bounds":{"left":0.55285907,"top":0.7434158,"width":0.010638298,"height":0.025538707},"help_text":"","role_description":"menu button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"You can also merge this with the command line.","depth":12,"bounds":{"left":0.56582445,"top":0.7501995,"width":0.089428194,"height":0.011971269},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"View command line instructions.","depth":12,"bounds":{"left":0.65641624,"top":0.7490024,"width":0.060837764,"height":0.014365523},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Still in progress?","depth":12,"bounds":{"left":0.7017952,"top":0.79010373,"width":0.03125,"height":0.011971269},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Convert to draft","depth":11,"bounds":{"left":0.734375,"top":0.78890663,"width":0.029920213,"height":0.014365523},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Convert to draft","depth":13,"bounds":{"left":0.734375,"top":0.79010373,"width":0.029920213,"height":0.011971269},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"@LakyLak","depth":14,"bounds":{"left":0.47839096,"top":0.8224262,"width":0.013297873,"height":0.031923383},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXHeading","text":"Add a comment","depth":16,"bounds":{"left":0.49700797,"top":0.8224262,"width":0.03956117,"height":0.01915403},"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Add a comment","depth":17,"bounds":{"left":0.49700797,"top":0.8244214,"width":0.03956117,"height":0.015163607},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Comment","depth":16,"bounds":{"left":0.49700797,"top":0.84956104,"width":0.021775266,"height":0.013567438},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Write","depth":17,"bounds":{"left":0.49700797,"top":0.8479649,"width":0.022606382,"height":0.031923383},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":true},{"role":"AXStaticText","text":"Write","depth":18,"bounds":{"left":0.50265956,"top":0.8575419,"width":0.011303191,"height":0.013567438},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Preview","depth":17,"bounds":{"left":0.51961434,"top":0.8479649,"width":0.028091755,"height":0.031923383},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Preview","depth":18,"bounds":{"left":0.52526593,"top":0.8575419,"width":0.016788565,"height":0.013567438},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXTextArea","text":"Comment","depth":19,"bounds":{"left":0.5003325,"top":0.887071,"width":0.26196808,"height":0.08140463},"placeholder":" ","role_description":"text entry area","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXLink","text":"Markdown is supported","depth":18,"bounds":{"left":0.5,"top":0.9756584,"width":0.057679523,"height":0.022346368},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Markdown","depth":20,"bounds":{"left":0.50964093,"top":0.980846,"width":0.019780586,"height":0.011971269},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"is supported","depth":20,"bounds":{"left":0.52942157,"top":0.980846,"width":0.025265958,"height":0.011971269},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Paste, drop, or click to add files","depth":17,"bounds":{"left":0.56200135,"top":0.9756584,"width":0.07330452,"height":0.022346368},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Paste, drop, or click to add files","depth":19,"bounds":{"left":0.5716423,"top":0.980846,"width":0.06067154,"height":0.011971269},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Close pull request","depth":16,"bounds":{"left":0.6727061,"top":1.0,"width":0.058843084,"height":-0.011572242},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Close pull request","depth":17,"bounds":{"left":0.68633646,"top":1.0,"width":0.03956117,"height":-0.01755786},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Comment","depth":16,"bounds":{"left":0.732879,"top":1.0,"width":0.03274601,"height":-0.011572242},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":false,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Remember, contributions to this repository should follow our","depth":14,"bounds":{"left":0.5036569,"top":1.0,"width":0.114527926,"height":-0.044692755},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"GitHub Community Guidelines","depth":14,"bounds":{"left":0.61818486,"top":1.0,"width":0.05651596,"height":-0.044692755},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"GitHub Community Guidelines","depth":15,"bounds":{"left":0.61818486,"top":1.0,"width":0.05651596,"height":-0.044692755},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":".","depth":14,"bounds":{"left":0.6747008,"top":1.0,"width":0.0013297872,"height":-0.044692755},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"ProTip!","depth":15,"bounds":{"left":0.55950797,"top":1.0,"width":0.015791224,"height":-0.07222664},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Add","depth":14,"bounds":{"left":0.5752992,"top":1.0,"width":0.011136968,"height":-0.07222664},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":".patch","depth":14,"bounds":{"left":0.58643615,"top":1.0,"width":0.013630319,"height":-0.07222664},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":".patch","depth":15,"bounds":{"left":0.58643615,"top":1.0,"width":0.013630319,"height":-0.07222664},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"or","depth":14,"bounds":{"left":0.6000665,"top":1.0,"width":0.006981383,"height":-0.07222664},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":".diff","depth":14,"bounds":{"left":0.60704786,"top":1.0,"width":0.008477394,"height":-0.07222664},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":".diff","depth":15,"bounds":{"left":0.60704786,"top":1.0,"width":0.008477394,"height":-0.07222664},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"to the end of URLs for Git’s plaintext views.","depth":14,"bounds":{"left":0.61552525,"top":1.0,"width":0.094082445,"height":-0.07222664},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Reviewers","depth":15,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Suggestions","depth":15,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Request","depth":16,"role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Request","depth":18,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"@nikolaybiaivanov","depth":15,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXLink","text":"nikolaybiaivanov","depth":15,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"nikolaybiaivanov","depth":16,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Request","depth":16,"role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Request","depth":18,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"@des-d","depth":15,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXLink","text":"des-d","depth":15,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"des-d","depth":16,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"At least 1 approving review is required to merge this pull request.","depth":15,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Still in progress?","depth":15,"bounds":{"left":0.7762633,"top":0.0,"width":0.031083776,"height":0.011971269},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Convert to draft","depth":15,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Assignees","depth":15,"bounds":{"left":0.7762633,"top":0.0,"width":0.10638298,"height":0.0207502},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"No one—","depth":14,"bounds":{"left":0.7762633,"top":0.0,"width":0.016788565,"height":0.011971269},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"assign yourself","depth":14,"bounds":{"left":0.79305184,"top":0.0,"width":0.02825798,"height":0.014365523},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Labels","depth":14,"bounds":{"left":0.7762633,"top":0.0047885077,"width":0.10638298,"height":0.0207502},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"None yet","depth":13,"bounds":{"left":0.7762633,"top":0.029928172,"width":0.016788565,"height":0.011971269},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Projects","depth":15,"bounds":{"left":0.7762633,"top":0.06624102,"width":0.10638298,"height":0.0207502},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"None yet","depth":14,"bounds":{"left":0.7762633,"top":0.091380686,"width":0.016788565,"height":0.011971269},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Milestone","depth":15,"bounds":{"left":0.7762633,"top":0.12769353,"width":0.10638298,"height":0.0207502},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"No milestone","depth":14,"bounds":{"left":0.7762633,"top":0.1528332,"width":0.024601065,"height":0.011971269},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXHeading","text":"Development","depth":16,"bounds":{"left":0.7762633,"top":0.19233839,"width":0.10638298,"height":0.014365523},"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Development","depth":17,"bounds":{"left":0.7762633,"top":0.19353552,"width":0.025764627,"height":0.011971269},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Successfully merging this pull request may close these issues.","depth":17,"bounds":{"left":0.7762633,"top":0.21428572,"width":0.10305851,"height":0.026336791},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"None yet","depth":17,"bounds":{"left":0.7762633,"top":0.2509976,"width":0.016788565,"height":0.011971269},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Notifications Customize","depth":14,"bounds":{"left":0.7762633,"top":0.28731045,"width":0.10638298,"height":0.0207502},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false}]...
|
-8994969418865973527
|
-6943375151276595067
|
click
|
accessibility
|
NULL
|
Platform Sprint 2 Q2 - Platform Team - Scrum Board Platform Sprint 2 Q2 - Platform Team - Scrum Board - Jira
Platform Sprint 2 Q2 - Platform Team - Scrum Board - Jira
Platform Sprint 2 Q2 - Platform Team - Scrum Board - Jira
SevenShores\Hubspot\Exceptions\BadRequest: Client error: `POST [URL_WITH_CREDENTIALS]
Show options
nikolay-yankov commented 2 hours ago
nikolay-yankov
nikolay-yankov
commented
2 hours ago
2 hours ago
JIRA: JY-20372
JIRA:
JY-20372
JY-20372
Deployment notes:
Deployment notes:
None
Add or remove reactions
nikolay-yankov
nikolay-yankov
and others
added
4
commits
20 hours ago
20 hours ago
@nikolay-yankov
Enhance UserTransformer to include automated report generation status…
Enhance UserTransformer to include automated report generation status…
…
9 / 11 checks OK
2ffa898
2ffa898
@nikolay-yankov
Change logic when AI Reports button is visible
Change logic when AI Reports button is visible
8 / 10 checks OK
8dc1526
8dc1526
@nikolay-yankov
Add AI Reports promo route and component; update sidebar logic for re…
Add AI Reports promo route and component; update sidebar logic for re…
…
11 / 12 checks OK
27d4be4
27d4be4
@LakyLak
JY-20372
JY-20372
add planhat endpoint
add planhat endpoint
8 / 10 checks OK
c3c8d86
c3c8d86
This branch has not been deployed
This branch has not been deployed
No deployments
Merge info
Merge info
Review required
Review required
At least 1 approving review is required by reviewers with write access.
Some checks haven't completed yet
Some checks haven't completed yet
1 pending, 1 in progress, 1 expected, 8 successful checks
Collapse checks
Collapse 2 pending checks group
2 pending checks
Checks settings
pending checks
pending checks
ci/circleci: test
ci/circleci: test
ci/circleci: test
Waiting for status to be reported
— CircleCI is running your tests
More actions
SonarCloud Code Analysis
SonarCloud Code Analysis
Expected
— Waiting for status to be reported
Required
Collapse 1 in progress check group
1 in progress check
in progress checks
in progress checks
Loading
build_accept_deploy
build_accept_deploy
build_accept_deploy
Started
9 minutes ago
— Workflow: build_accept_deploy
More actions
Collapse 8 successful checks group
8 successful checks
successful checks
successful checks
ci/circleci: build-backend
ci/circleci: build-backend
ci/circleci: build-backend
— Your tests passed on CircleCI!
More actions
ci/circleci: build-frontend
ci/circleci: build-frontend
ci/circleci: build-frontend
— Your tests passed on CircleCI!
More actions
ci/circleci: checkout-code
ci/circleci: checkout-code
ci/circleci: checkout-code
— Your tests passed on CircleCI!
More actions
ci/circleci: phpstan
ci/circleci: phpstan
ci/circleci: phpstan
— Your tests passed on CircleCI!
More actions
ci/circleci: setup
ci/circleci: setup
ci/circleci: setup
— Your tests passed on CircleCI!
More actions
ci/circleci: test-backend-lint
ci/circleci: test-backend-lint
ci/circleci: test-backend-lint
— Your tests passed on CircleCI!
More actions
ci/circleci: test-frontend
ci/circleci: test-frontend
ci/circleci: test-frontend
— Your tests passed on CircleCI!
More actions
setup-workflow
setup-workflow
setup-workflow
Successful in 39s
— Workflow: setup-workflow
More actions
This branch is out-of-date with the base branch
This branch is out-of-date with the base branch
Merge the latest changes from master into this branch. This merge commit will be associated with LakyLak.
Update branch
Update branch
Update branch options
Merging is blocked
Merging is blocked
At least 1 approving review is required by reviewers with write access.
Enable auto-merge
Enable auto-merge
Select merge method
You can also merge this with the command line.
View command line instructions.
Still in progress?
Convert to draft
Convert to draft
@LakyLak
Add a comment
Add a comment
Comment
Write
Write
Preview
Preview
Comment
Markdown is supported
Markdown
is supported
Paste, drop, or click to add files
Paste, drop, or click to add files
Close pull request
Close pull request
Comment
Remember, contributions to this repository should follow our
GitHub Community Guidelines
GitHub Community Guidelines
.
ProTip!
Add
.patch
.patch
or
.diff
.diff
to the end of URLs for Git’s plaintext views.
Reviewers
Suggestions
Request
Request
@nikolaybiaivanov
nikolaybiaivanov
nikolaybiaivanov
Request
Request
@des-d
des-d
des-d
At least 1 approving review is required to merge this pull request.
Still in progress?
Convert to draft
Assignees
No one—
assign yourself
Labels
None yet
Projects
None yet
Milestone
No milestone
Development
Development
Successfully merging this pull request may close these issues.
None yet
Notifications Customize...
|
NULL
|
|
19794
|
423
|
8
|
2026-04-15T08:02:02.854366+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-15/1776 /Users/lukas/.screenpipe/data/data/2026-04-15/1776240122854_m1.jpg...
|
Firefox
|
Meet - [Platform] Planning I Session 📅 — Work
|
1
|
meet.google.com/tgb-pyuf-dri?authuser=lukas.kovali meet.google.com/tgb-pyuf-dri?authuser=lukas.kovalik%40jiminny.com...
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
Meet - [Platform] Planning I Session 📅
Close tab
N Meet - [Platform] Planning I Session 📅
Close tab
New Tab
Open Google Gemini (⌃X)
Tabs from other devices
Open history (⇧⌘H)
Open bookmarks (⌘B)
Customize sidebar
Galya Dimitrova (Presenting, annotating)
Galya Dimitrova (Presenting, annotating)
People
9
Take notes with Gemini
Take notes with Gemini
Gemini
Gemini
Pop out this video More screens are more fun. Play this video while you do other things.
Pop out this video
More screens are more fun. Play this video while you do other things.
Zoom in
Open in new window
Enter Full Screen
Pop out this video More screens are more fun. Play this video while you do other things.
Pop out this video
More screens are more fun. Play this video while you do other things.
Nikolay Yankov
Pop out this video More screens are more fun. Play this video while you do other things.
Pop out this video
More screens are more fun. Play this video while you do other things.
Galya Dimitrova
Pop out this video More screens are more fun. Play this video while you do other things.
Pop out this video
More screens are more fun. Play this video while you do other things.
Steliyan Georgiev
4 others
4 others
Pop out this video More screens are more fun. Play this video while you do other things.
Pop out this video
More screens are more fun. Play this video while you do other things.
Lukas Kovalik
Others might see more of your background. Click to view your full video.
11:02
AM
[Platform] Planning I Session 📅
[Platform] Planning I Session 📅
Audio settings
Turn on microphone
Video settings
Turn off camera
Galya Dimitrova is presenting
Send a reaction
Turn on captions
Raise hand (ctrl + ⌘ + h)
More options
Leave call
Meeting details
Chat with everyone
Meeting tools
Your microphone is off....
|
[{"role":"AXRadioButton","text [{"role":"AXRadioButton","text":"Meet - [Platform] Planning I Session 📅","depth":4,"bounds":{"left":0.0,"top":0.072222225,"width":0.033680554,"height":0.045555554},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":true},{"role":"AXButton","text":"Close tab","depth":5,"bounds":{"left":0.0013888889,"top":0.072222225,"width":0.010416667,"height":0.016666668},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"New Tab","depth":4,"bounds":{"left":0.005902778,"top":0.12,"width":0.022222223,"height":0.035555556},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open Google Gemini (⌃X)","depth":6,"bounds":{"left":0.0,"top":0.7977778,"width":0.033680554,"height":0.043333333},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Tabs from other devices","depth":6,"bounds":{"left":0.0,"top":0.8411111,"width":0.033680554,"height":0.038333334},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open history (⇧⌘H)","depth":6,"bounds":{"left":0.0,"top":0.8794444,"width":0.033680554,"height":0.03888889},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open bookmarks (⌘B)","depth":6,"bounds":{"left":0.0,"top":0.91833335,"width":0.033680554,"height":0.038333334},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Customize sidebar","depth":6,"bounds":{"left":0.0,"top":0.95666665,"width":0.033680554,"height":0.043333333},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXHeading","text":"Galya Dimitrova (Presenting, annotating)","depth":12,"bounds":{"left":0.07534722,"top":0.101111114,"width":0.18333334,"height":0.022222223},"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Galya Dimitrova (Presenting, annotating)","depth":13,"bounds":{"left":0.07534722,"top":0.10222222,"width":0.18333334,"height":0.020555556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"People","depth":15,"bounds":{"left":0.88680553,"top":0.08944444,"width":0.04097222,"height":0.04},"role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"9","depth":22,"bounds":{"left":0.9145833,"top":0.101111114,"width":0.0048611113,"height":0.017222222},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Take notes with Gemini","depth":14,"bounds":{"left":0.93333334,"top":0.08944444,"width":0.025,"height":0.04},"role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Take notes with Gemini","depth":17,"bounds":{"left":0.9361111,"top":0.101111114,"width":0.06388891,"height":0.017222222},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Gemini","depth":22,"bounds":{"left":0.96666664,"top":0.101111114,"width":0.028125,"height":0.017222222},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Gemini","depth":22,"bounds":{"left":0.96458334,"top":0.090555556,"width":0.023611112,"height":0.037777778},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Pop out this video More screens are more fun. Play this video while you do other things.","depth":15,"bounds":{"left":0.5798611,"top":0.62833333,"width":0.14652778,"height":0.08888889},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Pop out this video","depth":17,"bounds":{"left":0.7239583,"top":0.6427778,"width":0.08090278,"height":0.018888889},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"More screens are more fun. Play this video while you do other things.","depth":16,"bounds":{"left":0.7017361,"top":0.6388889,"width":0.11076389,"height":0.05666667},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Zoom in","depth":13,"bounds":{"left":0.6315972,"top":0.83111113,"width":0.027777778,"height":0.044444446},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Open in new window","depth":13,"bounds":{"left":0.6649306,"top":0.83111113,"width":0.027777778,"height":0.044444446},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Enter Full Screen","depth":13,"bounds":{"left":0.6982639,"top":0.83111113,"width":0.027777778,"height":0.044444446},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Pop out this video More screens are more fun. Play this video while you do other things.","depth":15,"bounds":{"left":0.7861111,"top":0.27611113,"width":0.14652778,"height":0.07722222},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Pop out this video","depth":17,"bounds":{"left":0.9302083,"top":0.2911111,"width":0.069791675,"height":0.017777778},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"More screens are more fun. Play this video while you do other things.","depth":16,"bounds":{"left":0.9079861,"top":0.28666666,"width":0.092013896,"height":0.045},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Nikolay Yankov","depth":17,"bounds":{"left":0.75451386,"top":0.36277777,"width":0.07673611,"height":0.022777777},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Pop out this video More screens are more fun. Play this video while you do other things.","depth":15,"bounds":{"left":0.925,"top":0.27722222,"width":0.07499999,"height":0.07722222},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Pop out this video","depth":17,"bounds":{"left":1.0,"top":0.29222223,"width":-0.06909728,"height":0.017777778},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"More screens are more fun. Play this video while you do other things.","depth":16,"bounds":{"left":1.0,"top":0.28777778,"width":-0.046875,"height":0.045},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Galya Dimitrova","depth":17,"bounds":{"left":0.8802083,"top":0.36277777,"width":0.08229167,"height":0.022777777},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Pop out this video More screens are more fun. Play this video while you do other things.","depth":15,"bounds":{"left":0.80069447,"top":0.5338889,"width":0.14652778,"height":0.07722222},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Pop out this video","depth":17,"bounds":{"left":0.9447917,"top":0.54888886,"width":0.055208325,"height":0.017777778},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"More screens are more fun. Play this video while you do other things.","depth":16,"bounds":{"left":0.92256945,"top":0.54444444,"width":0.07743055,"height":0.045},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Steliyan Georgiev","depth":17,"bounds":{"left":0.75451386,"top":0.6205556,"width":0.090625,"height":0.022777777},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"4 others","depth":11,"bounds":{"left":0.871875,"top":0.40888888,"width":0.11736111,"height":0.24444444},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"4 others","depth":13,"bounds":{"left":0.90902776,"top":0.5566667,"width":0.043055557,"height":0.022777777},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Pop out this video More screens are more fun. Play this video while you do other things.","depth":15,"bounds":{"left":0.8680556,"top":0.7916667,"width":0.13194442,"height":0.07722222},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Pop out this video","depth":17,"bounds":{"left":0.79479164,"top":0.8066667,"width":0.07569444,"height":0.017777778},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"More screens are more fun. Play this video while you do other things.","depth":16,"bounds":{"left":0.77534723,"top":0.80222225,"width":0.11736111,"height":0.045},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Lukas Kovalik","depth":17,"bounds":{"left":0.75381947,"top":0.87833333,"width":0.06909722,"height":0.022777777},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Others might see more of your background. Click to view your full video.","depth":14,"bounds":{"left":0.96631944,"top":0.875,"width":0.018055556,"height":0.028888889},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"11:02","depth":12,"bounds":{"left":0.050347224,"top":0.9444444,"width":0.025694445,"height":0.022777777},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"AM","depth":12,"bounds":{"left":0.07951389,"top":0.9444444,"width":0.017361112,"height":0.022777777},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXHeading","text":"[Platform] Planning I Session 📅","depth":12,"bounds":{"left":0.11423611,"top":0.9111111,"width":0.16215278,"height":0.08888888},"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"[Platform] Planning I Session 📅","depth":15,"bounds":{"left":0.11423611,"top":0.9438889,"width":0.16215278,"height":0.023333333},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Audio settings","depth":13,"bounds":{"left":0.32118055,"top":0.9288889,"width":0.06111111,"height":0.053333335},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Turn on microphone","depth":13,"bounds":{"left":0.34895834,"top":0.9288889,"width":0.033333335,"height":0.053333335},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":true,"is_selected":false},{"role":"AXButton","text":"Video settings","depth":13,"bounds":{"left":0.38784721,"top":0.9288889,"width":0.06111111,"height":0.053333335},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Turn off camera","depth":13,"bounds":{"left":0.415625,"top":0.9288889,"width":0.033333335,"height":0.053333335},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Galya Dimitrova is presenting","depth":12,"bounds":{"left":0.45451388,"top":0.9288889,"width":0.03888889,"height":0.053333335},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Send a reaction","depth":12,"bounds":{"left":0.49895832,"top":0.9288889,"width":0.03888889,"height":0.053333335},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Turn on captions","depth":13,"bounds":{"left":0.5434028,"top":0.9288889,"width":0.03888889,"height":0.053333335},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Raise hand (ctrl + ⌘ + h)","depth":12,"bounds":{"left":0.58784723,"top":0.9288889,"width":0.03888889,"height":0.053333335},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"More options","depth":12,"bounds":{"left":0.6322917,"top":0.9288889,"width":0.025,"height":0.053333335},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Leave call","depth":12,"bounds":{"left":0.6628472,"top":0.9288889,"width":0.05,"height":0.053333335},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Meeting details","depth":12,"bounds":{"left":0.89166665,"top":0.9288889,"width":0.033333335,"height":0.053333335},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Chat with everyone","depth":12,"bounds":{"left":0.925,"top":0.9288889,"width":0.033333335,"height":0.053333335},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Meeting tools","depth":12,"bounds":{"left":0.9583333,"top":0.9288889,"width":0.033333335,"height":0.053333335},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Your microphone is off.","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"}]...
|
-8994736383374156690
|
-6417095941244650692
|
visual_change
|
accessibility
|
NULL
|
Meet - [Platform] Planning I Session 📅
Close tab
N Meet - [Platform] Planning I Session 📅
Close tab
New Tab
Open Google Gemini (⌃X)
Tabs from other devices
Open history (⇧⌘H)
Open bookmarks (⌘B)
Customize sidebar
Galya Dimitrova (Presenting, annotating)
Galya Dimitrova (Presenting, annotating)
People
9
Take notes with Gemini
Take notes with Gemini
Gemini
Gemini
Pop out this video More screens are more fun. Play this video while you do other things.
Pop out this video
More screens are more fun. Play this video while you do other things.
Zoom in
Open in new window
Enter Full Screen
Pop out this video More screens are more fun. Play this video while you do other things.
Pop out this video
More screens are more fun. Play this video while you do other things.
Nikolay Yankov
Pop out this video More screens are more fun. Play this video while you do other things.
Pop out this video
More screens are more fun. Play this video while you do other things.
Galya Dimitrova
Pop out this video More screens are more fun. Play this video while you do other things.
Pop out this video
More screens are more fun. Play this video while you do other things.
Steliyan Georgiev
4 others
4 others
Pop out this video More screens are more fun. Play this video while you do other things.
Pop out this video
More screens are more fun. Play this video while you do other things.
Lukas Kovalik
Others might see more of your background. Click to view your full video.
11:02
AM
[Platform] Planning I Session 📅
[Platform] Planning I Session 📅
Audio settings
Turn on microphone
Video settings
Turn off camera
Galya Dimitrova is presenting
Send a reaction
Turn on captions
Raise hand (ctrl + ⌘ + h)
More options
Leave call
Meeting details
Chat with everyone
Meeting tools
Your microphone is off....
|
NULL
|
|
18352
|
391
|
34
|
2026-04-14T16:14:26.520715+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776183266520_m2.jpg...
|
Boosteroid
|
Boosteroid
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
39436914328/30Castle AgeClick where you want to bu 39436914328/30Castle AgeClick where you want to build the building.6 Mindaugas: 1445/14454 Siddhraj Jaisingh: 1435/14355 Honorius: 1391/13913 Bird Jaguar: 1383/13831 kovaliklukas: 1280/1280Anccu Hualloc: 1264/12648 Ashikaga Takauji: 1199/1199IIII7 Basil the Macedonian: 1125/1125 - II...
|
NULL
|
-8994059248595626930
|
NULL
|
click
|
ocr
|
NULL
|
39436914328/30Castle AgeClick where you want to bu 39436914328/30Castle AgeClick where you want to build the building.6 Mindaugas: 1445/14454 Siddhraj Jaisingh: 1435/14355 Honorius: 1391/13913 Bird Jaguar: 1383/13831 kovaliklukas: 1280/1280Anccu Hualloc: 1264/12648 Ashikaga Takauji: 1199/1199IIII7 Basil the Macedonian: 1125/1125 - II...
|
18350
|
|
41460
|
879
|
29
|
2026-04-17T06:14:11.123917+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-17/1776 /Users/lukas/.screenpipe/data/data/2026-04-17/1776406451123_m1.jpg...
|
Firefox
|
CloudWatch | us-east-2 — Work
|
1
|
us-east-2.console.aws.amazon.com/cloudwatch/home?r us-east-2.console.aws.amazon.com/cloudwatch/home?region=us-east-2#logsV2:logs-insights$3FqueryDetail$3D~(end~0~start~-86400~timeType~'RELATIVE~tz~'UTC~unit~'seconds~editorString~'fields*20*40timestamp*2c*20*40message*2c*20*40logStream*2c*20*40log*0a*7c*20filter*20*40message*20like*20*2fd8fe2b34-1f65-47dd-9f3a-f6cd4b33924a*2f*20*0a*7c*20filter*20*40message*20not*20like*20*2fAnalytic*2f*20*7c*20filter*20*40message*20not*20like*20*2fTranscript*2f*0a*7c*20filter*20*40message*20not*20like*20*2fWebhook*2f*20*7c*20filter*20*40message*20not*20like*20*2fMeetingBot*2f*20*0a*7c*20limit*2010000~queryId~'0551e814-f51a-4339-8372-80d7ba4cef27~source~(~'worker~'worker-analytics~'worker-app~'worker-audio~'worker-calendar~'worker-conferences~'worker-crm-sync~'worker-default~'worker-delayed~'worker-dialers~'worker-dialers-fifo~'worker-download~'worker-emails~'worker-meeting-bot~'worker-nudges~'worker-processing-1~'worker-processing-2~'worker-processing-3~'worker-processing-4~'worker-processing-5~'worker-processing-delayed~'worker-softphone~'worker-video~'worker-video-app~'php~'php-app)~lang~'CWLI~logClass~'STANDARD~queryBy~'logGroupName)...
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
Platform Sprint 2 Q2 - Platform Team - Scrum Board Platform Sprint 2 Q2 - Platform Team - Scrum Board - Jira
Platform Sprint 2 Q2 - Platform Team - Scrum Board - Jira
[SRD-6793] Les Mills activity types not pulling in - Jira
[SRD-6793] Les Mills activity types not pulling in - Jira
New Tab
New Tab
Symfony\Component\Debug\Exception\FatalThrowableError: League\Flysystem\Filesystem::has(): Argument #1 ($location) must be of type string, null given, called in /home/jiminny/vendor/laravel/framework/src/Illuminate/Filesystem/FilesystemAdapter.php on line
Symfony\Component\Debug\Exception\FatalThrowableError: League\Flysystem\Filesystem::has(): Argument #1 ($location) must be of type string, null given, called in /home/jiminny/vendor/laravel/framework/src/Illuminate/Filesystem/FilesystemAdapter.php on line
CloudWatch | us-east-2
CloudWatch | us-east-2
Close tab
Configure SSH access to multiple environment - Engineering - Confluence
Configure SSH access to multiple environment - Engineering - Confluence
Console Home | Console Home | eu-west-1
Console Home | Console Home | eu-west-1
New Tab
Customize sidebar
Open Google Gemini (⌃X)
Tabs from other devices
Open history (⇧⌘H)
Open bookmarks (⌘B)
AWS Console Home
Skip to Main Content
Skip to Main Content
Amazon Q
Services
Search
Ask Amazon Q
[Option+S]
CloudShell
Notifications (none available)
Help & support
Settings
United States (Ohio)
United States (Ohio)
PROD
Account ID: 4103-4619-5943
PROD
EC2 EC2
EC2
Elastic Container Service Elastic Container Service
Elastic Container Service
S3 S3
S3
CodeDeploy CodeDeploy
CodeDeploy
CloudWatch CloudWatch
CloudWatch
ElastiCache ElastiCache
ElastiCache
Aurora and RDS Aurora and RDS
Aurora and RDS
Amazon OpenSearch Service Amazon OpenSearch Service
Amazon OpenSearch Service
CloudFront CloudFront
CloudFront
MediaLive MediaLive
MediaLive
Open side navigation
CloudWatch
CloudWatch
Logs Insights
Logs Insights
Query definition
Query definition
Info : Query definition
5m (5 Minutes)
30m (30 Minutes)
1h (1 Hour)
3h (3 Hours)
12h (12 Hours)
Custom (1d)
Custom (1d)
Compare (Off)
Compare
(
Off
)
Time zone UTC timezone
UTC timezone
Start tailing with selected log group (opens in a new tab)
Start tailing
Query scope
Query scope Log group name
Log group name
Select up to 50 log groups
Show more chosen log groups
Show more chosen log groups (+25)
Browse
:
Log Groups
|
Facets
|
Lookup tables
Undo
Redo
Logs Insights QL
Query generator
Query generator
Fields
Saved and sample queries
Query commands
Run query
Cancel
Save
History
Completed. Query executed for
26 log groups.
View log groups used in query
Logs (2)
Logs
(
2
)
Patterns (2)
Patterns
(
2
)
Visualization
Visualization
Logs (2)
Logs (2)
Summarize results
Summarize results
Investigate
Investigate
Share results
Share results
Export results
Export results
Add to dashboard
Showing 2 of 2 records matched...
|
[{"role":"AXRadioButton","text [{"role":"AXRadioButton","text":"Platform Sprint 2 Q2 - Platform Team - Scrum Board - Jira","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Platform Sprint 2 Q2 - Platform Team - Scrum Board - Jira","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"[SRD-6793] Les Mills activity types not pulling in - Jira","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"[SRD-6793] Les Mills activity types not pulling in - Jira","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"New Tab","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"New Tab","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Symfony\\Component\\Debug\\Exception\\FatalThrowableError: League\\Flysystem\\Filesystem::has(): Argument #1 ($location) must be of type string, null given, called in /home/jiminny/vendor/laravel/framework/src/Illuminate/Filesystem/FilesystemAdapter.php on line","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Symfony\\Component\\Debug\\Exception\\FatalThrowableError: League\\Flysystem\\Filesystem::has(): Argument #1 ($location) must be of type string, null given, called in /home/jiminny/vendor/laravel/framework/src/Illuminate/Filesystem/FilesystemAdapter.php on line","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"CloudWatch | us-east-2","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":true},{"role":"AXStaticText","text":"CloudWatch | us-east-2","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Close tab","depth":5,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"Configure SSH access to multiple environment - Engineering - Confluence","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Configure SSH access to multiple environment - Engineering - Confluence","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Console Home | Console Home | eu-west-1","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Console Home | Console Home | eu-west-1","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"New Tab","depth":4,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Customize sidebar","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open Google Gemini (⌃X)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Tabs from other devices","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open history (⇧⌘H)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open bookmarks (⌘B)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXLink","text":"AWS Console Home","depth":13,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXLink","text":"Skip to Main Content","depth":13,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Skip to Main Content","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Amazon Q","depth":14,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Services","depth":13,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXComboBox","text":"Search","depth":16,"role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Ask Amazon Q","depth":15,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"[Option+S]","depth":16,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"CloudShell","depth":14,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Notifications (none available)","depth":16,"help_text":"Notifications","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Help & support","depth":15,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Settings","depth":15,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXComboBox","text":"United States (Ohio)","depth":15,"value":"United States (Ohio)","help_text":"United States (Ohio)","role_description":"combo box","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"United States (Ohio)","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"PROD","depth":15,"help_text":"Production_View_Only @ jiminny","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Account ID: 4103-4619-5943","depth":19,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"PROD","depth":18,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"EC2 EC2","depth":16,"role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"EC2","depth":18,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Elastic Container Service Elastic Container Service","depth":16,"role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Elastic Container Service","depth":18,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"S3 S3","depth":16,"role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"S3","depth":18,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"CodeDeploy CodeDeploy","depth":16,"role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"CodeDeploy","depth":18,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"CloudWatch CloudWatch","depth":16,"role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"CloudWatch","depth":18,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"ElastiCache ElastiCache","depth":16,"role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"ElastiCache","depth":18,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Aurora and RDS Aurora and RDS","depth":16,"role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Aurora and RDS","depth":18,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Amazon OpenSearch Service Amazon OpenSearch Service","depth":16,"role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Amazon OpenSearch Service","depth":18,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"CloudFront CloudFront","depth":16,"role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"CloudFront","depth":18,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"MediaLive MediaLive","depth":16,"role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"MediaLive","depth":18,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXMenuButton","text":"Open side navigation","depth":13,"help_text":"","role_description":"menu button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXLink","text":"CloudWatch","depth":14,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"CloudWatch","depth":16,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"Logs Insights","depth":14,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":false,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Logs Insights","depth":16,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXHeading","text":"Query definition","depth":26,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXButton","text":"Query definition","depth":28,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":true},{"role":"AXButton","text":"Info : Query definition","depth":27,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"5m (5 Minutes)","depth":27,"help_text":"5 Minutes","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"30m (30 Minutes)","depth":27,"help_text":"30 Minutes","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"1h (1 Hour)","depth":27,"help_text":"1 Hour","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"3h (3 Hours)","depth":27,"help_text":"3 Hours","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"12h (12 Hours)","depth":27,"help_text":"12 Hours","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Custom (1d)","depth":27,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Custom (1d)","depth":29,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXCheckBox","text":"Compare (Off)","depth":26,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Compare","depth":27,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"(","depth":27,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Off","depth":27,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":")","depth":27,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Time zone UTC timezone","depth":26,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"UTC timezone","depth":28,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Start tailing with selected log group (opens in a new tab)","depth":26,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":false,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Start tailing","depth":27,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Query scope","depth":28,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Query scope Log group name","depth":27,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Log group name","depth":29,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Select up to 50 log groups","depth":28,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Show more chosen log groups","depth":27,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Show more chosen log groups (+25)","depth":29,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Browse","depth":28,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":":","depth":28,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Log Groups","depth":27,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"|","depth":27,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Facets","depth":27,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"|","depth":27,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Lookup tables","depth":27,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Undo","depth":28,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Redo","depth":28,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXMenuButton","text":"Logs Insights QL","depth":29,"help_text":"","role_description":"menu button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Query generator","depth":26,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Query generator","depth":28,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Fields","depth":28,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Saved and sample queries","depth":28,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Query commands","depth":28,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Run query","depth":27,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Cancel","depth":27,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":false,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Save","depth":27,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"History","depth":27,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Completed. Query executed for","depth":28,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"26 log groups.","depth":28,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"View log groups used in query","depth":28,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"Logs (2)","depth":25,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":true},{"role":"AXStaticText","text":"Logs","depth":27,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"(","depth":27,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"2","depth":27,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":")","depth":27,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Patterns (2)","depth":25,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Patterns","depth":27,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"(","depth":27,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"2","depth":27,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":")","depth":27,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Visualization","depth":25,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Visualization","depth":27,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXHeading","text":"Logs (2)","depth":26,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Logs (2)","depth":27,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Summarize results","depth":26,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Summarize results","depth":27,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXMenuButton","text":"Investigate","depth":28,"help_text":"","role_description":"menu button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Investigate","depth":29,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Share results","depth":26,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Share results","depth":27,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXMenuButton","text":"Export results","depth":28,"help_text":"","role_description":"menu button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Export results","depth":29,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Add to dashboard","depth":26,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Showing 2 of 2 records matched","depth":29,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false}]...
|
-8993719343176515281
|
8808210266478850743
|
click
|
accessibility
|
NULL
|
Platform Sprint 2 Q2 - Platform Team - Scrum Board Platform Sprint 2 Q2 - Platform Team - Scrum Board - Jira
Platform Sprint 2 Q2 - Platform Team - Scrum Board - Jira
[SRD-6793] Les Mills activity types not pulling in - Jira
[SRD-6793] Les Mills activity types not pulling in - Jira
New Tab
New Tab
Symfony\Component\Debug\Exception\FatalThrowableError: League\Flysystem\Filesystem::has(): Argument #1 ($location) must be of type string, null given, called in /home/jiminny/vendor/laravel/framework/src/Illuminate/Filesystem/FilesystemAdapter.php on line
Symfony\Component\Debug\Exception\FatalThrowableError: League\Flysystem\Filesystem::has(): Argument #1 ($location) must be of type string, null given, called in /home/jiminny/vendor/laravel/framework/src/Illuminate/Filesystem/FilesystemAdapter.php on line
CloudWatch | us-east-2
CloudWatch | us-east-2
Close tab
Configure SSH access to multiple environment - Engineering - Confluence
Configure SSH access to multiple environment - Engineering - Confluence
Console Home | Console Home | eu-west-1
Console Home | Console Home | eu-west-1
New Tab
Customize sidebar
Open Google Gemini (⌃X)
Tabs from other devices
Open history (⇧⌘H)
Open bookmarks (⌘B)
AWS Console Home
Skip to Main Content
Skip to Main Content
Amazon Q
Services
Search
Ask Amazon Q
[Option+S]
CloudShell
Notifications (none available)
Help & support
Settings
United States (Ohio)
United States (Ohio)
PROD
Account ID: 4103-4619-5943
PROD
EC2 EC2
EC2
Elastic Container Service Elastic Container Service
Elastic Container Service
S3 S3
S3
CodeDeploy CodeDeploy
CodeDeploy
CloudWatch CloudWatch
CloudWatch
ElastiCache ElastiCache
ElastiCache
Aurora and RDS Aurora and RDS
Aurora and RDS
Amazon OpenSearch Service Amazon OpenSearch Service
Amazon OpenSearch Service
CloudFront CloudFront
CloudFront
MediaLive MediaLive
MediaLive
Open side navigation
CloudWatch
CloudWatch
Logs Insights
Logs Insights
Query definition
Query definition
Info : Query definition
5m (5 Minutes)
30m (30 Minutes)
1h (1 Hour)
3h (3 Hours)
12h (12 Hours)
Custom (1d)
Custom (1d)
Compare (Off)
Compare
(
Off
)
Time zone UTC timezone
UTC timezone
Start tailing with selected log group (opens in a new tab)
Start tailing
Query scope
Query scope Log group name
Log group name
Select up to 50 log groups
Show more chosen log groups
Show more chosen log groups (+25)
Browse
:
Log Groups
|
Facets
|
Lookup tables
Undo
Redo
Logs Insights QL
Query generator
Query generator
Fields
Saved and sample queries
Query commands
Run query
Cancel
Save
History
Completed. Query executed for
26 log groups.
View log groups used in query
Logs (2)
Logs
(
2
)
Patterns (2)
Patterns
(
2
)
Visualization
Visualization
Logs (2)
Logs (2)
Summarize results
Summarize results
Investigate
Investigate
Share results
Share results
Export results
Export results
Add to dashboard
Showing 2 of 2 records matched...
|
41458
|
|
33522
|
678
|
2
|
2026-04-16T07:54:42.131749+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-16/1776 /Users/lukas/.screenpipe/data/data/2026-04-16/1776326082131_m2.jpg...
|
NULL
|
NULL
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
SackFileEditViewJiminny ...DMs= Unreads@ Threads6 SackFileEditViewJiminny ...DMs= Unreads@ Threads6 HuddlesDrafts & sent8 DirectoriesAchivityEh External connectionsFiles# Starred8 jiminny-x-integrati...A platform-inner-teamMoreohannes# ai-chapter# alerts# backend# capture-tickets# confusion-clinia# curiosity_lab# engineering# frontend# general& infosec_internal_all# infra-changes# infrastructure_dev# ibu-team-info#: liminny-bg# platform-team# platform-tickets# product_launches# random# releases# sofia-officecuinnor# thank-vous# the_people_of_jimi...• Direct messages. Nikolay IvanovP. Aneliya Angelova€. Vasil Vasilev3 Aneliva Angelova. ...Stoyan TanevP. Ves®. Galya DimitrovaStelivan Georgiev3 Adelina Petrova, Il.. Adelina PetrovaHistoryWindowHelpQ Search Jiminny Inc& jiminny-x-integration-app8 18Q• Messagest Add canvasC Files* Pins@ BookmarksLukas Kovalik 4:38 PMJune 3rd, 2025~We have a couple of issues that need attention. I also include the pipeline - stage issue for visibilityLukas Kovalik 4:38 PMThere appears to be a recent change in the SDK OAuth mechanism. When a new client connects to the platform usingZoho, we no longer receive a Promise(https://console.integration.app/ref/sdk/classes/IntegrationAccessor.html#openNewConnection)upon successfullogin. Thisfunctionality was working just a few weeks ago.(edited)console.integration.appIntegrationAccessor | Integration App SDK - v1.11.4Documentation for Integration App SDKe & 29 replies Last reply 10 months agoLukas Kovalik 4:38 PM2. We've previously mentioned that several clients are complaining about Zoho credits being consumed by us via the Integrationapp. Since we're not the only API consumer, this is blocking other users from accessing the service. In one case, we suspect thatthe issue may be related to permissions for the lead objects, but we don't have any useful logs to verify this. In these situations,it's crucial for us to understand client limitations, sync errors, and potential issues as soon as possible. While we've enabled APIlogs, the intormation we receive only covers the last tew seconds, rendering them inerrective for our needs. Additonally, wnerwe do receive error logs (e.g., from the Zoho fields metadata endpoint), we can't identify their source to take appropriate action.F3Oa 21 eplies Last reply 10 months agolLukas Kovallk 4:39 PMI3. Stages not attached to the opportunity / lead record. This has already been discussed to some extent in a separate thread.Your proposed solution was to provide the pipeline as a parameter or use the default ones. However, the problem with thisapproach is that we can't ascertain the business process flow backing the entity for particular record / records.la 1 reply 10 months agoB) Bohdan 4:39 PMwas added to jiminny-x-integration-app by Daniil.June 5th, 2025~Lukas Kovalik 9:28 AMGo0d morning euvs rew more questons from meLukas Kovalik 9:28 AMWe've noticed a significant number of requests being sent to Zoho related to deleted flows (specifically the"crmObject)/deleted" endpoints). We configured this for the client and also on the app to run once an hour instead of every 600seconds. However. reauests are stili coming in approximatelv every 10 minutes. Are we missing any steps to make this work?32 replies Last reply 10 months agoLukas Kovalllk 2:29 AMIAlso why does it alwavs return all deleted records (for examole. 26.000 records for Accounts alone. Why can't it iust return therecords deleted since the last sync, with a small buffer to account for delays? According to the Zoho APl documentation, thisshould be supported.28Đ 36 replies Last reply 10 months agoLukas Kovallk 2:30 AMrorcnorerclert wiin zono we cant uncer users ac.om.Đ31 replies Last reply 10 months ago10 external people are from MembraneHi guys, we have one issue we used to have before regarding the authorization fro zoho. When the userAaShift + Keturn to add a new linCc 40 ll O I SupportDaily•in4h6m O A 100%C & Thu 16 Apr 10:54:41JULL,JLL,AULL,DEFAULT ",re columnsiJLT NULL,EFAULT NULL,=XI DEFAULT NULL,JLT NULL,JLL,JLT NULL,NULL,NULL,EGER DEFAULT NULL,id) REFERENCES video_chunks (id)ERE timestamp > "2026-04-14T06:45:00.073971+00:00"cenuv-execured querlesport CSVSQL Help-10382)dex timestampname2026-04-14T06:45:01.893176+00:00/Users/lukas/.screenpipe/data,data/2026-04-14/1776app_nameCleanShot X2026-04-14T06:45:04.901401+00:00 /Users/lukas/.screenpipe/dataldata/2026-04-14/1776CleanShot X2026-04-14T06:45:05.329612+00:00 /Users/lukas/ screenpipe/data/data/2026-04-14/1776CleanShot X2026-04-74|06.46.06.344392÷00:00/Users/CleanShot Xlukas/.screenpipe/aata,data/2026-04-14/17762026-04-14T06:45:07.896043+00:00 /Users/lukas/.screenpipe/oaraldata/2026-04-14/1776NULL2026-04-14T06:45:09.782386+00:00 /Users/Dialukas/.screenpipe/data/data/2026-04-14/17762026-04-14T06:45:09.793540+00:00 /Users/Diawindow_nameNULLWork: Meet - Daily - Pla…..1Work: Meet - Daily - Pla...1focused browser_urlNULLNULLNULLNULLNULLNULLNULLBookmarks + +Permalinkdevice_name sync_id machine_id syncedmonitor_1NULLNULLNULLmonitor_1monitor_monitor_2monitor_1monitor_1monitor_2NULLNULLNULLINULLNULLNULLNULLNULU: NULUNULLNULLNULLNULLNULLNULLNULLNULLNULL...
|
NULL
|
-8993599681602444828
|
NULL
|
visual_change
|
ocr
|
NULL
|
SackFileEditViewJiminny ...DMs= Unreads@ Threads6 SackFileEditViewJiminny ...DMs= Unreads@ Threads6 HuddlesDrafts & sent8 DirectoriesAchivityEh External connectionsFiles# Starred8 jiminny-x-integrati...A platform-inner-teamMoreohannes# ai-chapter# alerts# backend# capture-tickets# confusion-clinia# curiosity_lab# engineering# frontend# general& infosec_internal_all# infra-changes# infrastructure_dev# ibu-team-info#: liminny-bg# platform-team# platform-tickets# product_launches# random# releases# sofia-officecuinnor# thank-vous# the_people_of_jimi...• Direct messages. Nikolay IvanovP. Aneliya Angelova€. Vasil Vasilev3 Aneliva Angelova. ...Stoyan TanevP. Ves®. Galya DimitrovaStelivan Georgiev3 Adelina Petrova, Il.. Adelina PetrovaHistoryWindowHelpQ Search Jiminny Inc& jiminny-x-integration-app8 18Q• Messagest Add canvasC Files* Pins@ BookmarksLukas Kovalik 4:38 PMJune 3rd, 2025~We have a couple of issues that need attention. I also include the pipeline - stage issue for visibilityLukas Kovalik 4:38 PMThere appears to be a recent change in the SDK OAuth mechanism. When a new client connects to the platform usingZoho, we no longer receive a Promise(https://console.integration.app/ref/sdk/classes/IntegrationAccessor.html#openNewConnection)upon successfullogin. Thisfunctionality was working just a few weeks ago.(edited)console.integration.appIntegrationAccessor | Integration App SDK - v1.11.4Documentation for Integration App SDKe & 29 replies Last reply 10 months agoLukas Kovalik 4:38 PM2. We've previously mentioned that several clients are complaining about Zoho credits being consumed by us via the Integrationapp. Since we're not the only API consumer, this is blocking other users from accessing the service. In one case, we suspect thatthe issue may be related to permissions for the lead objects, but we don't have any useful logs to verify this. In these situations,it's crucial for us to understand client limitations, sync errors, and potential issues as soon as possible. While we've enabled APIlogs, the intormation we receive only covers the last tew seconds, rendering them inerrective for our needs. Additonally, wnerwe do receive error logs (e.g., from the Zoho fields metadata endpoint), we can't identify their source to take appropriate action.F3Oa 21 eplies Last reply 10 months agolLukas Kovallk 4:39 PMI3. Stages not attached to the opportunity / lead record. This has already been discussed to some extent in a separate thread.Your proposed solution was to provide the pipeline as a parameter or use the default ones. However, the problem with thisapproach is that we can't ascertain the business process flow backing the entity for particular record / records.la 1 reply 10 months agoB) Bohdan 4:39 PMwas added to jiminny-x-integration-app by Daniil.June 5th, 2025~Lukas Kovalik 9:28 AMGo0d morning euvs rew more questons from meLukas Kovalik 9:28 AMWe've noticed a significant number of requests being sent to Zoho related to deleted flows (specifically the"crmObject)/deleted" endpoints). We configured this for the client and also on the app to run once an hour instead of every 600seconds. However. reauests are stili coming in approximatelv every 10 minutes. Are we missing any steps to make this work?32 replies Last reply 10 months agoLukas Kovalllk 2:29 AMIAlso why does it alwavs return all deleted records (for examole. 26.000 records for Accounts alone. Why can't it iust return therecords deleted since the last sync, with a small buffer to account for delays? According to the Zoho APl documentation, thisshould be supported.28Đ 36 replies Last reply 10 months agoLukas Kovallk 2:30 AMrorcnorerclert wiin zono we cant uncer users ac.om.Đ31 replies Last reply 10 months ago10 external people are from MembraneHi guys, we have one issue we used to have before regarding the authorization fro zoho. When the userAaShift + Keturn to add a new linCc 40 ll O I SupportDaily•in4h6m O A 100%C & Thu 16 Apr 10:54:41JULL,JLL,AULL,DEFAULT ",re columnsiJLT NULL,EFAULT NULL,=XI DEFAULT NULL,JLT NULL,JLL,JLT NULL,NULL,NULL,EGER DEFAULT NULL,id) REFERENCES video_chunks (id)ERE timestamp > "2026-04-14T06:45:00.073971+00:00"cenuv-execured querlesport CSVSQL Help-10382)dex timestampname2026-04-14T06:45:01.893176+00:00/Users/lukas/.screenpipe/data,data/2026-04-14/1776app_nameCleanShot X2026-04-14T06:45:04.901401+00:00 /Users/lukas/.screenpipe/dataldata/2026-04-14/1776CleanShot X2026-04-14T06:45:05.329612+00:00 /Users/lukas/ screenpipe/data/data/2026-04-14/1776CleanShot X2026-04-74|06.46.06.344392÷00:00/Users/CleanShot Xlukas/.screenpipe/aata,data/2026-04-14/17762026-04-14T06:45:07.896043+00:00 /Users/lukas/.screenpipe/oaraldata/2026-04-14/1776NULL2026-04-14T06:45:09.782386+00:00 /Users/Dialukas/.screenpipe/data/data/2026-04-14/17762026-04-14T06:45:09.793540+00:00 /Users/Diawindow_nameNULLWork: Meet - Daily - Pla…..1Work: Meet - Daily - Pla...1focused browser_urlNULLNULLNULLNULLNULLNULLNULLBookmarks + +Permalinkdevice_name sync_id machine_id syncedmonitor_1NULLNULLNULLmonitor_1monitor_monitor_2monitor_1monitor_1monitor_2NULLNULLNULLINULLNULLNULLNULLNULU: NULUNULLNULLNULLNULLNULLNULLNULLNULLNULL...
|
NULL
|
|
44661
|
943
|
1
|
2026-04-17T08:57:27.563549+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-17/1776 /Users/lukas/.screenpipe/data/data/2026-04-17/1776416247563_m1.jpg...
|
NULL
|
NULL
|
1
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
+FirefoxFileEditViewHistoryBookmarksProfilesToolsW +FirefoxFileEditViewHistoryBookmarksProfilesToolsWindowHelp→Cmeet.google.com/xpx-omah-rknllian Kyuchukov (Presenting, annotating)DBeaverFileSearchSOL"Database Navigator Xee au scorecarosE crm_configurationsE crm_field_datatacrureerweeenoweE crm_JayoutsE crm.JogsE crm_profilescrm.sync_batchescentieworomothiteomarestoresE team_settingsacrowencosBa TriggersBt EventsE3 AdministerDu System Info4 Prod VIEW localhost:7832v CyDatabasesro bookтarksSy Dashboardsan DiaorameEl Scripts164M1.70176K576MS00K96K320K|112K|528K|В•+?4 Prod EU VIEW • jminny » crm.fieldsHelp..•• 40 0 $ 12@ P Q 8• F17Aor 11:57DwvcZoo.ecumtiereE Datam•o.s•9.E al_crm_templar& Diagram# crm_fields X EB ai_crm_templatesE ai_crm_ templatesE opportunitiesE aiLcrm_templatesE ai_crm_templatesEE SELECT ct.* FROM jiminny.crm_felds AS ef WHERE id in (3Jo01Lo300/08123 crm_configuration._jd366,708366,710366,713366,714366,717366,71986 uuidMeSOyae3 eni gE36760*S Ü-u ME "A [™ 367Hò ABbX* 7 clFB60x367367G e04J,au "sCE- [1 367ISeieÜ_%/R ànO [16 367Gdmo-oads ve [1.367Az crm_provider_idcompetition..detailsdecision_criteria_detailsdecision_process__detailseconomic_buyer_detailsidentified_pain__detallsAZ label|Champion - DetailsVCLIVNONUCWidentified Pain - DetallsAZ description• Az type |How strong is our champion'y i7 textareaCompetition - How weil do we i textareaDecision Criteria - How well do textareaDecision Process- How well do textareaEconomic Buyer - How well do ' textareaIdentified Pain - How well do wi textareaMetrics - How weil do we under textareaE Value•T DOLEE3 Metadata X123 kd" wuid123 crm_confi crm_configuratiAz crm_provi crm_provider_JeCatalog NameO INTEGER UNSIG jiminny1 BINARY3 VARCHAR4 VARCHAR"NADCUAGonemd antTable Namecrm_fieldscrm_fieldsCrmtMax Lenge»At descroto descnotionAEYES123 length|lengthAz default_vi default_valuecrm_fields8 a8255crm_fieldscrm_fieldscrm. fieldPrecision8a&%a8a8o Recort123 is_selecta is_selectable123 is_manda is_mandatoryusnurterab is titerabie7 INTEGER UNSIG jiminny8 VARCHAR9 VARCHAR11 TINYINT12 TINYINTiminnycrm-fieloScale JOBC TypeO INTEGERO BINARYO INTEGERO VARCHARo vArcHArO VARCHARO VARCHARO VARCHARo VARCHARO TINYNTO TINYINTOTENTENT% Refresh •9. Export data •20000- 7 row(s) fetched - 0.102s (0.03s fetch), on 2026-04-17 at 10-30-254-11._6.56,png18ala]Support Daily • in 3 h 3 m100% <578 • Fri 17 Apr 11:57:27llian KyuchukovNikolay NikolovNVasil VasilevMihail MihaylovLukas Kovalik11:57 AM | Daily - Processing...
|
NULL
|
-8993128573589674135
|
NULL
|
click
|
ocr
|
NULL
|
+FirefoxFileEditViewHistoryBookmarksProfilesToolsW +FirefoxFileEditViewHistoryBookmarksProfilesToolsWindowHelp→Cmeet.google.com/xpx-omah-rknllian Kyuchukov (Presenting, annotating)DBeaverFileSearchSOL"Database Navigator Xee au scorecarosE crm_configurationsE crm_field_datatacrureerweeenoweE crm_JayoutsE crm.JogsE crm_profilescrm.sync_batchescentieworomothiteomarestoresE team_settingsacrowencosBa TriggersBt EventsE3 AdministerDu System Info4 Prod VIEW localhost:7832v CyDatabasesro bookтarksSy Dashboardsan DiaorameEl Scripts164M1.70176K576MS00K96K320K|112K|528K|В•+?4 Prod EU VIEW • jminny » crm.fieldsHelp..•• 40 0 $ 12@ P Q 8• F17Aor 11:57DwvcZoo.ecumtiereE Datam•o.s•9.E al_crm_templar& Diagram# crm_fields X EB ai_crm_templatesE ai_crm_ templatesE opportunitiesE aiLcrm_templatesE ai_crm_templatesEE SELECT ct.* FROM jiminny.crm_felds AS ef WHERE id in (3Jo01Lo300/08123 crm_configuration._jd366,708366,710366,713366,714366,717366,71986 uuidMeSOyae3 eni gE36760*S Ü-u ME "A [™ 367Hò ABbX* 7 clFB60x367367G e04J,au "sCE- [1 367ISeieÜ_%/R ànO [16 367Gdmo-oads ve [1.367Az crm_provider_idcompetition..detailsdecision_criteria_detailsdecision_process__detailseconomic_buyer_detailsidentified_pain__detallsAZ label|Champion - DetailsVCLIVNONUCWidentified Pain - DetallsAZ description• Az type |How strong is our champion'y i7 textareaCompetition - How weil do we i textareaDecision Criteria - How well do textareaDecision Process- How well do textareaEconomic Buyer - How well do ' textareaIdentified Pain - How well do wi textareaMetrics - How weil do we under textareaE Value•T DOLEE3 Metadata X123 kd" wuid123 crm_confi crm_configuratiAz crm_provi crm_provider_JeCatalog NameO INTEGER UNSIG jiminny1 BINARY3 VARCHAR4 VARCHAR"NADCUAGonemd antTable Namecrm_fieldscrm_fieldsCrmtMax Lenge»At descroto descnotionAEYES123 length|lengthAz default_vi default_valuecrm_fields8 a8255crm_fieldscrm_fieldscrm. fieldPrecision8a&%a8a8o Recort123 is_selecta is_selectable123 is_manda is_mandatoryusnurterab is titerabie7 INTEGER UNSIG jiminny8 VARCHAR9 VARCHAR11 TINYINT12 TINYINTiminnycrm-fieloScale JOBC TypeO INTEGERO BINARYO INTEGERO VARCHARo vArcHArO VARCHARO VARCHARO VARCHARo VARCHARO TINYNTO TINYINTOTENTENT% Refresh •9. Export data •20000- 7 row(s) fetched - 0.102s (0.03s fetch), on 2026-04-17 at 10-30-254-11._6.56,png18ala]Support Daily • in 3 h 3 m100% <578 • Fri 17 Apr 11:57:27llian KyuchukovNikolay NikolovNVasil VasilevMihail MihaylovLukas Kovalik11:57 AM | Daily - Processing...
|
NULL
|
|
53895
|
1164
|
23
|
2026-04-20T08:32:22.611169+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-20/1776 /Users/lukas/.screenpipe/data/data/2026-04-20/1776673942611_m1.jpg...
|
Activity Monitor
|
Activity Monitor – All Processes
|
1
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
53,90%
Processes:
Idle:
29,92%
16,18%
User:
System 53,90%
Processes:
Idle:
29,92%
16,18%
User:
System:
3 653
437
CPU LOAD
Threads:
PhpStorm
149,6
1:39:35,70
278
463
Apple
1,9
3:13,74
12241
lukas
kernel_task
75,8
33:45,71
538
5513
Apple
0,0
0,00
0
root
screenpipe
67,0
13:44,39
57
79
Apple
0,0
0,00
9707
lukas
Virtual Machine Service for Docker
56,7
38:15,58
20
364
Apple
0,0
0,00
11159
lukas
Slack Helper (Renderer)
46,1
6:15,29
24
25
Apple
0,0
0,00
1945
lukas
WindowServer
39,7
22:48,40
22
369
Apple
26,1
4:37,94
402
_windowserver
FirefoxCP Isolated Web Content
35,4
2:48,82
27
18
Apple
0,0
0,00
24458
lukas
Firefox GPU Helper
29,9
8:56,60
29
12
Apple
11,1
1:41,24
10158
lukas
Slack
14,1
1:59,74
55
4
Apple
0,0
0,01
1903
lukas
Firefox
9,9
6:40,05
78
70
Apple
0,0
0,01
10147
lukas
FirefoxCP Isolated Web Content
9,2
3:15,34
26
79
Apple
0,0
0,00
14403
lukas
Claude
6,2
1:12,16
66
40
Apple
0,0
0,00
29053
lukas
coreaudiod
6,0
2:55,97
13
300
Apple
0,0
0,00
460
_coreaudiod
corespeechd
4,8
2:39,82
13
0
Apple
0,0
0,00
734
lukas
Slack Helper
4,2
1:17,65
20
76
Apple
0,0
42,41
1943
lukas
launchservicesd
3,7
1:43,51
5
0
Apple
0,0
0,00
375
root
language_server_macos_arm
3,5
3:39,65
20
2112
Apple
0,0
0,00
13109
lukas
FirefoxCP Isolated Web Content
3,4
29,56
32
73
Apple
0,0
0,00
36287
lukas
io.kandji.KandjiAgent.ESF-Extension
3,2
2:07,55
4
0
Apple
0,0
0,00...
|
[{"role":"AXStaticText","text& [{"role":"AXStaticText","text":"53,90%","depth":3,"bounds":{"left":0.64166665,"top":0.93777776,"width":0.031944446,"height":0.015555556},"automation_id":"_NS:297","role_description":"text"},{"role":"AXStaticText","text":"Processes:","depth":3,"bounds":{"left":0.8125,"top":0.91555554,"width":0.042708334,"height":0.015555556},"automation_id":"_NS:290","help_text":"Total number of processes on the system","role_description":"text"},{"role":"AXStaticText","text":"Idle:","depth":3,"bounds":{"left":0.5486111,"top":0.93777776,"width":0.018402778,"height":0.015555556},"automation_id":"_NS:283","help_text":"Percentage of total CPU that is not being utilised","role_description":"text"},{"role":"AXStaticText","text":"29,92%","depth":3,"bounds":{"left":0.64166665,"top":0.91555554,"width":0.031944446,"height":0.015555556},"automation_id":"_NS:274","role_description":"text"},{"role":"AXStaticText","text":"16,18%","depth":3,"bounds":{"left":0.64166665,"top":0.8933333,"width":0.031944446,"height":0.015555556},"automation_id":"_NS:262","role_description":"text"},{"role":"AXStaticText","text":"User:","depth":3,"bounds":{"left":0.5486111,"top":0.91555554,"width":0.022222223,"height":0.015555556},"automation_id":"_NS:255","help_text":"Percentage of total CPU utilised in performing tasks for the user","role_description":"text"},{"role":"AXStaticText","text":"System:","depth":3,"bounds":{"left":0.5486111,"top":0.8933333,"width":0.032291666,"height":0.015555556},"automation_id":"_NS:248","help_text":"Percentage of total CPU utilised in performing tasks for the system","role_description":"text"},{"role":"AXStaticText","text":"3 653","depth":3,"bounds":{"left":0.9128472,"top":0.8933333,"width":0.024652777,"height":0.015555556},"automation_id":"_NS:242","role_description":"text"},{"role":"AXStaticText","text":"437","depth":3,"bounds":{"left":0.9201389,"top":0.91555554,"width":0.017361112,"height":0.015555556},"automation_id":"_NS:235","role_description":"text"},{"role":"AXStaticText","text":"CPU LOAD","depth":3,"bounds":{"left":0.6791667,"top":0.89111114,"width":0.12777779,"height":0.02},"automation_id":"_NS:213","role_description":"text"},{"role":"AXStaticText","text":"Threads:","depth":3,"bounds":{"left":0.8125,"top":0.8933333,"width":0.035069443,"height":0.015555556},"automation_id":"_NS:199","help_text":"Total number of threads on the system","role_description":"text"},{"role":"AXStaticText","text":"PhpStorm","depth":5,"bounds":{"left":0.52013886,"top":0.12666667,"width":0.16875,"height":0.015555556},"automation_id":"_NS:31","role_description":"text"},{"role":"AXStaticText","text":"149,6","depth":5,"bounds":{"left":0.70069444,"top":0.12666667,"width":0.052083332,"height":0.015555556},"automation_id":"Cell","role_description":"text"},{"role":"AXStaticText","text":"1:39:35,70","depth":5,"bounds":{"left":0.76458335,"top":0.12666667,"width":0.048611112,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"278","depth":5,"bounds":{"left":0.825,"top":0.12666667,"width":0.041666668,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"463","depth":5,"bounds":{"left":0.8784722,"top":0.12666667,"width":0.068055555,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"Apple","depth":5,"bounds":{"left":0.9583333,"top":0.12666667,"width":0.041666687,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"1,9","depth":5,"bounds":{"left":1.0,"top":0.12666667,"width":-0.03125,"height":0.015555556},"automation_id":"Cell","role_description":"text"},{"role":"AXStaticText","text":"3:13,74","depth":5,"bounds":{"left":1.0,"top":0.12666667,"width":-0.09513891,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"12241","depth":5,"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"lukas","depth":5,"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"kernel_task","depth":5,"bounds":{"left":0.52013886,"top":0.15333334,"width":0.16875,"height":0.015555556},"automation_id":"_NS:31","role_description":"text"},{"role":"AXStaticText","text":"75,8","depth":5,"bounds":{"left":0.70069444,"top":0.15333334,"width":0.052083332,"height":0.015555556},"automation_id":"Cell","role_description":"text"},{"role":"AXStaticText","text":"33:45,71","depth":5,"bounds":{"left":0.76458335,"top":0.15333334,"width":0.048611112,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"538","depth":5,"bounds":{"left":0.825,"top":0.15333334,"width":0.041666668,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"5513","depth":5,"bounds":{"left":0.8784722,"top":0.15333334,"width":0.068055555,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"Apple","depth":5,"bounds":{"left":0.9583333,"top":0.15333334,"width":0.041666687,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"0,0","depth":5,"bounds":{"left":1.0,"top":0.15333334,"width":-0.03125,"height":0.015555556},"automation_id":"Cell","role_description":"text"},{"role":"AXStaticText","text":"0,00","depth":5,"bounds":{"left":1.0,"top":0.15333334,"width":-0.09513891,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"0","depth":5,"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"root","depth":5,"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"screenpipe","depth":5,"bounds":{"left":0.52013886,"top":0.18,"width":0.16875,"height":0.015555556},"automation_id":"_NS:31","role_description":"text"},{"role":"AXStaticText","text":"67,0","depth":5,"bounds":{"left":0.70069444,"top":0.18,"width":0.052083332,"height":0.015555556},"automation_id":"Cell","role_description":"text"},{"role":"AXStaticText","text":"13:44,39","depth":5,"bounds":{"left":0.76458335,"top":0.18,"width":0.048611112,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"57","depth":5,"bounds":{"left":0.825,"top":0.18,"width":0.041666668,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"79","depth":5,"bounds":{"left":0.8784722,"top":0.18,"width":0.068055555,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"Apple","depth":5,"bounds":{"left":0.9583333,"top":0.18,"width":0.041666687,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"0,0","depth":5,"bounds":{"left":1.0,"top":0.18,"width":-0.03125,"height":0.015555556},"automation_id":"Cell","role_description":"text"},{"role":"AXStaticText","text":"0,00","depth":5,"bounds":{"left":1.0,"top":0.18,"width":-0.09513891,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"9707","depth":5,"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"lukas","depth":5,"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"Virtual Machine Service for Docker","depth":5,"bounds":{"left":0.52013886,"top":0.20666666,"width":0.16875,"height":0.015555556},"automation_id":"_NS:31","role_description":"text"},{"role":"AXStaticText","text":"56,7","depth":5,"bounds":{"left":0.70069444,"top":0.20666666,"width":0.052083332,"height":0.015555556},"automation_id":"Cell","role_description":"text"},{"role":"AXStaticText","text":"38:15,58","depth":5,"bounds":{"left":0.76458335,"top":0.20666666,"width":0.048611112,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"20","depth":5,"bounds":{"left":0.825,"top":0.20666666,"width":0.041666668,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"364","depth":5,"bounds":{"left":0.8784722,"top":0.20666666,"width":0.068055555,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"Apple","depth":5,"bounds":{"left":0.9583333,"top":0.20666666,"width":0.041666687,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"0,0","depth":5,"bounds":{"left":1.0,"top":0.20666666,"width":-0.03125,"height":0.015555556},"automation_id":"Cell","role_description":"text"},{"role":"AXStaticText","text":"0,00","depth":5,"bounds":{"left":1.0,"top":0.20666666,"width":-0.09513891,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"11159","depth":5,"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"lukas","depth":5,"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"Slack Helper (Renderer)","depth":5,"bounds":{"left":0.52013886,"top":0.23333333,"width":0.16875,"height":0.015555556},"automation_id":"_NS:31","role_description":"text"},{"role":"AXStaticText","text":"46,1","depth":5,"bounds":{"left":0.70069444,"top":0.23333333,"width":0.052083332,"height":0.015555556},"automation_id":"Cell","role_description":"text"},{"role":"AXStaticText","text":"6:15,29","depth":5,"bounds":{"left":0.76458335,"top":0.23333333,"width":0.048611112,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"24","depth":5,"bounds":{"left":0.825,"top":0.23333333,"width":0.041666668,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"25","depth":5,"bounds":{"left":0.8784722,"top":0.23333333,"width":0.068055555,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"Apple","depth":5,"bounds":{"left":0.9583333,"top":0.23333333,"width":0.041666687,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"0,0","depth":5,"bounds":{"left":1.0,"top":0.23333333,"width":-0.03125,"height":0.015555556},"automation_id":"Cell","role_description":"text"},{"role":"AXStaticText","text":"0,00","depth":5,"bounds":{"left":1.0,"top":0.23333333,"width":-0.09513891,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"1945","depth":5,"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"lukas","depth":5,"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"WindowServer","depth":5,"bounds":{"left":0.52013886,"top":0.26,"width":0.16875,"height":0.015555556},"automation_id":"_NS:31","role_description":"text"},{"role":"AXStaticText","text":"39,7","depth":5,"bounds":{"left":0.70069444,"top":0.26,"width":0.052083332,"height":0.015555556},"automation_id":"Cell","role_description":"text"},{"role":"AXStaticText","text":"22:48,40","depth":5,"bounds":{"left":0.76458335,"top":0.26,"width":0.048611112,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"22","depth":5,"bounds":{"left":0.825,"top":0.26,"width":0.041666668,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"369","depth":5,"bounds":{"left":0.8784722,"top":0.26,"width":0.068055555,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"Apple","depth":5,"bounds":{"left":0.9583333,"top":0.26,"width":0.041666687,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"26,1","depth":5,"bounds":{"left":1.0,"top":0.26,"width":-0.03125,"height":0.015555556},"automation_id":"Cell","role_description":"text"},{"role":"AXStaticText","text":"4:37,94","depth":5,"bounds":{"left":1.0,"top":0.26,"width":-0.09513891,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"402","depth":5,"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"_windowserver","depth":5,"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"FirefoxCP Isolated Web Content","depth":5,"bounds":{"left":0.52013886,"top":0.28666666,"width":0.16875,"height":0.015555556},"automation_id":"_NS:31","role_description":"text"},{"role":"AXStaticText","text":"35,4","depth":5,"bounds":{"left":0.70069444,"top":0.28666666,"width":0.052083332,"height":0.015555556},"automation_id":"Cell","role_description":"text"},{"role":"AXStaticText","text":"2:48,82","depth":5,"bounds":{"left":0.76458335,"top":0.28666666,"width":0.048611112,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"27","depth":5,"bounds":{"left":0.825,"top":0.28666666,"width":0.041666668,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"18","depth":5,"bounds":{"left":0.8784722,"top":0.28666666,"width":0.068055555,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"Apple","depth":5,"bounds":{"left":0.9583333,"top":0.28666666,"width":0.041666687,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"0,0","depth":5,"bounds":{"left":1.0,"top":0.28666666,"width":-0.03125,"height":0.015555556},"automation_id":"Cell","role_description":"text"},{"role":"AXStaticText","text":"0,00","depth":5,"bounds":{"left":1.0,"top":0.28666666,"width":-0.09513891,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"24458","depth":5,"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"lukas","depth":5,"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"Firefox GPU Helper","depth":5,"bounds":{"left":0.52013886,"top":0.31333333,"width":0.16875,"height":0.015555556},"automation_id":"_NS:31","role_description":"text"},{"role":"AXStaticText","text":"29,9","depth":5,"bounds":{"left":0.70069444,"top":0.31333333,"width":0.052083332,"height":0.015555556},"automation_id":"Cell","role_description":"text"},{"role":"AXStaticText","text":"8:56,60","depth":5,"bounds":{"left":0.76458335,"top":0.31333333,"width":0.048611112,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"29","depth":5,"bounds":{"left":0.825,"top":0.31333333,"width":0.041666668,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"12","depth":5,"bounds":{"left":0.8784722,"top":0.31333333,"width":0.068055555,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"Apple","depth":5,"bounds":{"left":0.9583333,"top":0.31333333,"width":0.041666687,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"11,1","depth":5,"bounds":{"left":1.0,"top":0.31333333,"width":-0.03125,"height":0.015555556},"automation_id":"Cell","role_description":"text"},{"role":"AXStaticText","text":"1:41,24","depth":5,"bounds":{"left":1.0,"top":0.31333333,"width":-0.09513891,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"10158","depth":5,"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"lukas","depth":5,"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"Slack","depth":5,"bounds":{"left":0.52013886,"top":0.34,"width":0.16875,"height":0.015555556},"automation_id":"_NS:31","role_description":"text"},{"role":"AXStaticText","text":"14,1","depth":5,"bounds":{"left":0.70069444,"top":0.34,"width":0.052083332,"height":0.015555556},"automation_id":"Cell","role_description":"text"},{"role":"AXStaticText","text":"1:59,74","depth":5,"bounds":{"left":0.76458335,"top":0.34,"width":0.048611112,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"55","depth":5,"bounds":{"left":0.825,"top":0.34,"width":0.041666668,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"4","depth":5,"bounds":{"left":0.8784722,"top":0.34,"width":0.068055555,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"Apple","depth":5,"bounds":{"left":0.9583333,"top":0.34,"width":0.041666687,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"0,0","depth":5,"bounds":{"left":1.0,"top":0.34,"width":-0.03125,"height":0.015555556},"automation_id":"Cell","role_description":"text"},{"role":"AXStaticText","text":"0,01","depth":5,"bounds":{"left":1.0,"top":0.34,"width":-0.09513891,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"1903","depth":5,"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"lukas","depth":5,"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"Firefox","depth":5,"bounds":{"left":0.52013886,"top":0.36666667,"width":0.16875,"height":0.015555556},"automation_id":"_NS:31","role_description":"text"},{"role":"AXStaticText","text":"9,9","depth":5,"bounds":{"left":0.70069444,"top":0.36666667,"width":0.052083332,"height":0.015555556},"automation_id":"Cell","role_description":"text"},{"role":"AXStaticText","text":"6:40,05","depth":5,"bounds":{"left":0.76458335,"top":0.36666667,"width":0.048611112,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"78","depth":5,"bounds":{"left":0.825,"top":0.36666667,"width":0.041666668,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"70","depth":5,"bounds":{"left":0.8784722,"top":0.36666667,"width":0.068055555,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"Apple","depth":5,"bounds":{"left":0.9583333,"top":0.36666667,"width":0.041666687,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"0,0","depth":5,"bounds":{"left":1.0,"top":0.36666667,"width":-0.03125,"height":0.015555556},"automation_id":"Cell","role_description":"text"},{"role":"AXStaticText","text":"0,01","depth":5,"bounds":{"left":1.0,"top":0.36666667,"width":-0.09513891,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"10147","depth":5,"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"lukas","depth":5,"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"FirefoxCP Isolated Web Content","depth":5,"bounds":{"left":0.52013886,"top":0.39333335,"width":0.16875,"height":0.015555556},"automation_id":"_NS:31","role_description":"text"},{"role":"AXStaticText","text":"9,2","depth":5,"bounds":{"left":0.70069444,"top":0.39333335,"width":0.052083332,"height":0.015555556},"automation_id":"Cell","role_description":"text"},{"role":"AXStaticText","text":"3:15,34","depth":5,"bounds":{"left":0.76458335,"top":0.39333335,"width":0.048611112,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"26","depth":5,"bounds":{"left":0.825,"top":0.39333335,"width":0.041666668,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"79","depth":5,"bounds":{"left":0.8784722,"top":0.39333335,"width":0.068055555,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"Apple","depth":5,"bounds":{"left":0.9583333,"top":0.39333335,"width":0.041666687,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"0,0","depth":5,"bounds":{"left":1.0,"top":0.39333335,"width":-0.03125,"height":0.015555556},"automation_id":"Cell","role_description":"text"},{"role":"AXStaticText","text":"0,00","depth":5,"bounds":{"left":1.0,"top":0.39333335,"width":-0.09513891,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"14403","depth":5,"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"lukas","depth":5,"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"Claude","depth":5,"bounds":{"left":0.52013886,"top":0.42,"width":0.16875,"height":0.015555556},"automation_id":"_NS:31","role_description":"text"},{"role":"AXStaticText","text":"6,2","depth":5,"bounds":{"left":0.70069444,"top":0.42,"width":0.052083332,"height":0.015555556},"automation_id":"Cell","role_description":"text"},{"role":"AXStaticText","text":"1:12,16","depth":5,"bounds":{"left":0.76458335,"top":0.42,"width":0.048611112,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"66","depth":5,"bounds":{"left":0.825,"top":0.42,"width":0.041666668,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"40","depth":5,"bounds":{"left":0.8784722,"top":0.42,"width":0.068055555,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"Apple","depth":5,"bounds":{"left":0.9583333,"top":0.42,"width":0.041666687,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"0,0","depth":5,"bounds":{"left":1.0,"top":0.42,"width":-0.03125,"height":0.015555556},"automation_id":"Cell","role_description":"text"},{"role":"AXStaticText","text":"0,00","depth":5,"bounds":{"left":1.0,"top":0.42,"width":-0.09513891,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"29053","depth":5,"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"lukas","depth":5,"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"coreaudiod","depth":5,"bounds":{"left":0.52013886,"top":0.44666666,"width":0.16875,"height":0.015555556},"automation_id":"_NS:31","role_description":"text"},{"role":"AXStaticText","text":"6,0","depth":5,"bounds":{"left":0.70069444,"top":0.44666666,"width":0.052083332,"height":0.015555556},"automation_id":"Cell","role_description":"text"},{"role":"AXStaticText","text":"2:55,97","depth":5,"bounds":{"left":0.76458335,"top":0.44666666,"width":0.048611112,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"13","depth":5,"bounds":{"left":0.825,"top":0.44666666,"width":0.041666668,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"300","depth":5,"bounds":{"left":0.8784722,"top":0.44666666,"width":0.068055555,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"Apple","depth":5,"bounds":{"left":0.9583333,"top":0.44666666,"width":0.041666687,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"0,0","depth":5,"bounds":{"left":1.0,"top":0.44666666,"width":-0.03125,"height":0.015555556},"automation_id":"Cell","role_description":"text"},{"role":"AXStaticText","text":"0,00","depth":5,"bounds":{"left":1.0,"top":0.44666666,"width":-0.09513891,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"460","depth":5,"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"_coreaudiod","depth":5,"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"corespeechd","depth":5,"bounds":{"left":0.52013886,"top":0.47333333,"width":0.16875,"height":0.015555556},"automation_id":"_NS:31","role_description":"text"},{"role":"AXStaticText","text":"4,8","depth":5,"bounds":{"left":0.70069444,"top":0.47333333,"width":0.052083332,"height":0.015555556},"automation_id":"Cell","role_description":"text"},{"role":"AXStaticText","text":"2:39,82","depth":5,"bounds":{"left":0.76458335,"top":0.47333333,"width":0.048611112,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"13","depth":5,"bounds":{"left":0.825,"top":0.47333333,"width":0.041666668,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"0","depth":5,"bounds":{"left":0.8784722,"top":0.47333333,"width":0.068055555,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"Apple","depth":5,"bounds":{"left":0.9583333,"top":0.47333333,"width":0.041666687,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"0,0","depth":5,"bounds":{"left":1.0,"top":0.47333333,"width":-0.03125,"height":0.015555556},"automation_id":"Cell","role_description":"text"},{"role":"AXStaticText","text":"0,00","depth":5,"bounds":{"left":1.0,"top":0.47333333,"width":-0.09513891,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"734","depth":5,"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"lukas","depth":5,"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"Slack Helper","depth":5,"bounds":{"left":0.52013886,"top":0.5,"width":0.16875,"height":0.015555556},"automation_id":"_NS:31","role_description":"text"},{"role":"AXStaticText","text":"4,2","depth":5,"bounds":{"left":0.70069444,"top":0.5,"width":0.052083332,"height":0.015555556},"automation_id":"Cell","role_description":"text"},{"role":"AXStaticText","text":"1:17,65","depth":5,"bounds":{"left":0.76458335,"top":0.5,"width":0.048611112,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"20","depth":5,"bounds":{"left":0.825,"top":0.5,"width":0.041666668,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"76","depth":5,"bounds":{"left":0.8784722,"top":0.5,"width":0.068055555,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"Apple","depth":5,"bounds":{"left":0.9583333,"top":0.5,"width":0.041666687,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"0,0","depth":5,"bounds":{"left":1.0,"top":0.5,"width":-0.03125,"height":0.015555556},"automation_id":"Cell","role_description":"text"},{"role":"AXStaticText","text":"42,41","depth":5,"bounds":{"left":1.0,"top":0.5,"width":-0.09513891,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"1943","depth":5,"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"lukas","depth":5,"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"launchservicesd","depth":5,"bounds":{"left":0.52013886,"top":0.52666664,"width":0.16875,"height":0.015555556},"automation_id":"_NS:31","role_description":"text"},{"role":"AXStaticText","text":"3,7","depth":5,"bounds":{"left":0.70069444,"top":0.52666664,"width":0.052083332,"height":0.015555556},"automation_id":"Cell","role_description":"text"},{"role":"AXStaticText","text":"1:43,51","depth":5,"bounds":{"left":0.76458335,"top":0.52666664,"width":0.048611112,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"5","depth":5,"bounds":{"left":0.825,"top":0.52666664,"width":0.041666668,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"0","depth":5,"bounds":{"left":0.8784722,"top":0.52666664,"width":0.068055555,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"Apple","depth":5,"bounds":{"left":0.9583333,"top":0.52666664,"width":0.041666687,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"0,0","depth":5,"bounds":{"left":1.0,"top":0.52666664,"width":-0.03125,"height":0.015555556},"automation_id":"Cell","role_description":"text"},{"role":"AXStaticText","text":"0,00","depth":5,"bounds":{"left":1.0,"top":0.52666664,"width":-0.09513891,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"375","depth":5,"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"root","depth":5,"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"language_server_macos_arm","depth":5,"bounds":{"left":0.52013886,"top":0.55333334,"width":0.16875,"height":0.015555556},"automation_id":"_NS:31","role_description":"text"},{"role":"AXStaticText","text":"3,5","depth":5,"bounds":{"left":0.70069444,"top":0.55333334,"width":0.052083332,"height":0.015555556},"automation_id":"Cell","role_description":"text"},{"role":"AXStaticText","text":"3:39,65","depth":5,"bounds":{"left":0.76458335,"top":0.55333334,"width":0.048611112,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"20","depth":5,"bounds":{"left":0.825,"top":0.55333334,"width":0.041666668,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"2112","depth":5,"bounds":{"left":0.8784722,"top":0.55333334,"width":0.068055555,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"Apple","depth":5,"bounds":{"left":0.9583333,"top":0.55333334,"width":0.041666687,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"0,0","depth":5,"bounds":{"left":1.0,"top":0.55333334,"width":-0.03125,"height":0.015555556},"automation_id":"Cell","role_description":"text"},{"role":"AXStaticText","text":"0,00","depth":5,"bounds":{"left":1.0,"top":0.55333334,"width":-0.09513891,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"13109","depth":5,"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"lukas","depth":5,"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"FirefoxCP Isolated Web Content","depth":5,"bounds":{"left":0.52013886,"top":0.58,"width":0.16875,"height":0.015555556},"automation_id":"_NS:31","role_description":"text"},{"role":"AXStaticText","text":"3,4","depth":5,"bounds":{"left":0.70069444,"top":0.58,"width":0.052083332,"height":0.015555556},"automation_id":"Cell","role_description":"text"},{"role":"AXStaticText","text":"29,56","depth":5,"bounds":{"left":0.76458335,"top":0.58,"width":0.048611112,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"32","depth":5,"bounds":{"left":0.825,"top":0.58,"width":0.041666668,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"73","depth":5,"bounds":{"left":0.8784722,"top":0.58,"width":0.068055555,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"Apple","depth":5,"bounds":{"left":0.9583333,"top":0.58,"width":0.041666687,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"0,0","depth":5,"bounds":{"left":1.0,"top":0.58,"width":-0.03125,"height":0.015555556},"automation_id":"Cell","role_description":"text"},{"role":"AXStaticText","text":"0,00","depth":5,"bounds":{"left":1.0,"top":0.58,"width":-0.09513891,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"36287","depth":5,"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"lukas","depth":5,"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"io.kandji.KandjiAgent.ESF-Extension","depth":5,"bounds":{"left":0.52013886,"top":0.6066667,"width":0.16875,"height":0.015555556},"automation_id":"_NS:31","role_description":"text"},{"role":"AXStaticText","text":"3,2","depth":5,"bounds":{"left":0.70069444,"top":0.6066667,"width":0.052083332,"height":0.015555556},"automation_id":"Cell","role_description":"text"},{"role":"AXStaticText","text":"2:07,55","depth":5,"bounds":{"left":0.76458335,"top":0.6066667,"width":0.048611112,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"4","depth":5,"bounds":{"left":0.825,"top":0.6066667,"width":0.041666668,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"0","depth":5,"bounds":{"left":0.8784722,"top":0.6066667,"width":0.068055555,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"Apple","depth":5,"bounds":{"left":0.9583333,"top":0.6066667,"width":0.041666687,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"},{"role":"AXStaticText","text":"0,0","depth":5,"bounds":{"left":1.0,"top":0.6066667,"width":-0.03125,"height":0.015555556},"automation_id":"Cell","role_description":"text"},{"role":"AXStaticText","text":"0,00","depth":5,"bounds":{"left":1.0,"top":0.6066667,"width":-0.09513891,"height":0.015555556},"automation_id":"_NS:9","role_description":"text"}]...
|
-8992843931556014865
|
827234519114748438
|
app_switch
|
accessibility
|
NULL
|
53,90%
Processes:
Idle:
29,92%
16,18%
User:
System 53,90%
Processes:
Idle:
29,92%
16,18%
User:
System:
3 653
437
CPU LOAD
Threads:
PhpStorm
149,6
1:39:35,70
278
463
Apple
1,9
3:13,74
12241
lukas
kernel_task
75,8
33:45,71
538
5513
Apple
0,0
0,00
0
root
screenpipe
67,0
13:44,39
57
79
Apple
0,0
0,00
9707
lukas
Virtual Machine Service for Docker
56,7
38:15,58
20
364
Apple
0,0
0,00
11159
lukas
Slack Helper (Renderer)
46,1
6:15,29
24
25
Apple
0,0
0,00
1945
lukas
WindowServer
39,7
22:48,40
22
369
Apple
26,1
4:37,94
402
_windowserver
FirefoxCP Isolated Web Content
35,4
2:48,82
27
18
Apple
0,0
0,00
24458
lukas
Firefox GPU Helper
29,9
8:56,60
29
12
Apple
11,1
1:41,24
10158
lukas
Slack
14,1
1:59,74
55
4
Apple
0,0
0,01
1903
lukas
Firefox
9,9
6:40,05
78
70
Apple
0,0
0,01
10147
lukas
FirefoxCP Isolated Web Content
9,2
3:15,34
26
79
Apple
0,0
0,00
14403
lukas
Claude
6,2
1:12,16
66
40
Apple
0,0
0,00
29053
lukas
coreaudiod
6,0
2:55,97
13
300
Apple
0,0
0,00
460
_coreaudiod
corespeechd
4,8
2:39,82
13
0
Apple
0,0
0,00
734
lukas
Slack Helper
4,2
1:17,65
20
76
Apple
0,0
42,41
1943
lukas
launchservicesd
3,7
1:43,51
5
0
Apple
0,0
0,00
375
root
language_server_macos_arm
3,5
3:39,65
20
2112
Apple
0,0
0,00
13109
lukas
FirefoxCP Isolated Web Content
3,4
29,56
32
73
Apple
0,0
0,00
36287
lukas
io.kandji.KandjiAgent.ESF-Extension
3,2
2:07,55
4
0
Apple
0,0
0,00...
|
NULL
|
|
35804
|
728
|
30
|
2026-04-16T10:08:17.713819+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-16/1776 /Users/lukas/.screenpipe/data/data/2026-04-16/1776334097713_m1.jpg...
|
Slack
|
jiminny-x-integration-app (Channel) - Jiminny Inc jiminny-x-integration-app (Channel) - Jiminny Inc - 1 new item - Slack...
|
1
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
App "Zoho CRM" · Kavita · Membrane - 16 Ap App "Zoho CRM" · Kavita · Membrane - 16 April 2026
App "Zoho CRM" · Kavita · Membrane - 16 April 2026
1 view
Copy link
Copy link
Exit Fullscreen, keyboard shortcut F
View comments, keyboard shortcut C
Play, keyboard shortcut K
Step backward, keyboard shortcut J
Step forward, keyboard shortcut L
Mute, keyboard shortcut M
0:27
/
0:30...
|
[{"role":"AXLink","text":& [{"role":"AXLink","text":"App \"Zoho CRM\" · Kavita · Membrane - 16 April 2026","depth":17,"role_description":"link","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"App \"Zoho CRM\" · Kavita · Membrane - 16 April 2026","depth":18,"role_description":"text"},{"role":"AXStaticText","text":"1 view","depth":16,"role_description":"text"},{"role":"AXButton","text":"Copy link","depth":17,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Copy link","depth":17,"role_description":"text"},{"role":"AXButton","text":"Exit Fullscreen, keyboard shortcut F","depth":17,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"View comments, keyboard shortcut C","depth":17,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Play, keyboard shortcut K","depth":18,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Step backward, keyboard shortcut J","depth":18,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Step forward, keyboard shortcut L","depth":18,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Mute, keyboard shortcut M","depth":19,"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"0:27","depth":17,"role_description":"text"},{"role":"AXStaticText","text":"/","depth":17,"role_description":"text"},{"role":"AXStaticText","text":"0:30","depth":17,"role_description":"text"}]...
|
-8992833354207818613
|
-3404832449317518543
|
visual_change
|
hybrid
|
NULL
|
App "Zoho CRM" · Kavita · Membrane - 16 Ap App "Zoho CRM" · Kavita · Membrane - 16 April 2026
App "Zoho CRM" · Kavita · Membrane - 16 April 2026
1 view
Copy link
Copy link
Exit Fullscreen, keyboard shortcut F
View comments, keyboard shortcut C
Play, keyboard shortcut K
Step backward, keyboard shortcut J
Step forward, keyboard shortcut L
Mute, keyboard shortcut M
0:27
/
0:30
iTerm2ShellEditViewSessionScriptsProfilesWindowHelpX3APP (node)ec2-user@ip-10-30-...₴4-zshDOCKER• 881DEV (docker)82APP (node):/public/vue-assets/assets/ondemand-DgxEX09i.js/public/vue-assets/assets/CrmLink-rTdmxqkp.js/public/vue-assets/assets/liquor-tree-DbetBeVs.js/public/vue-assets/assets/DealRiskList-COSgQDWm.js./public/vue-assets/assets/AskAnything-BiYJNIXH.js./public/vue-assets/assets/lib-BPR1zwwF.js:/public/vue-assets/assets/AppFormField-0eTkGyuH.js:/public/vue-assets/assets/deal-view-B4d9Fnc0.js:/public/vue-assets/assets/exports-DIyAIXcT.js./public/vue-assets/assets/playlists-CJz1PCG2.js./public/vue-assets/assets/callScoringTemplates-DQc-joSr.js../public/vue-assets/assets/_copy0bject-DzIIjTZN.js./public/vue-assets/assets/pusher-CYYPj3Hn.js./public/vue-assets/assets/onboard-BGmZPXYh.js/public/vue-assets/assets/StatusBadge-D_dxGNOU.js/public/vue-assets/assets/kiosk-hoNoV13Z.jspublic/vue-nscets/nscets/denl-insinhts-CCCD5302is$IPS8526.87kB27.91kB30.75kB34.35kB39.49kB39.69kB41.87kB43.21kB47.84kB48.24kB55.13kB61.28kB62.98kB63.06kB64.62kB79.57kB9484 kRSupport Daily - in 1h 52 mgzip:gzip:gz1p:gzip:9z1p:gz1p:gzip:9z1p:gz1p:gzip:gzip:gzip:gz1p:gzip:9z1p:gz1p:nzin:-zsh9.39kB10.18kB9.58kB10.60kB14.98kB12.70kB12.68kB14.35kB16.46kB15.07kB13.28kB20.08kB18.89kB21.84kB22.94kB22.63kB28.18 kR.86maр:map:map:map:тар:map:тар :тар:map:map:map :map:map:map:mар:map:man:100% C47O 87Thu 16 Apr 13:08:17181* Unable to acce...O 88-zsh73.94kB93.18kB78.74kB115.18kB173.20kB138.34kB150.73kB150.62 kB294.48kB153.25kB65.85kB239.59kB219.27kB201.33kB244.72kB300.68kB29279kRAPPN31Slack/public/vue-assets/assets/playback-CB909wM4.js/public/vue-assets/assets/AppButton-OYq5I1u7.js:/public/vue-assets/assets/index.module-DoWLv01P.js/public/vue-assets/assets/intl-tel-input-C4VqCHzY.js/public/vue-assets/assets/team-insights-CPsGbra7.js./public/vue-assets/assets/popper-DC--DigQ.js./public/vue-assets/assets/PhoneField-DsfvGNK0.js./public/vue-assets/assets/live-DbuadCCc.js/public/vue-assets/assets/video-js-skin.less_vue_type_style_index_0_src_true_lang-D2hx_saF.js/public/vue-assets/assets/index-CV_ZMn85.js/public/vue-assets/assets/logged-in-layout-qoUV-hWG.js197.96kB210.96kB218.14kB264.94kB298.53kB307.13kB343.99kB367.43kB689.63 kB825.14 kB1,402.47kBgz1p:61.61kBgzip:68.66 kB9z1p:64.16kBgz1p:60.30kB9z1p:77.20 kBgz1p:103.87 kBgzip:84.90kBgz1p:97.04kBgzip:202.81kB9z1p:72.44 kBgz1p:438.06kB[plugin builtin:vite-reporter](!) Some chunks are larger than 500 kB after minification. Consider:- Usingdynamic import() to code-split the application- Use build.rolldownOptions.output.codeSplitting toimprove chunking: https://rolldown.rs/reference/Output0ptions.codeSplitting- Adjust chunk size limit for this warning via build.chunkSizeWarningLimit.• built in 29.05slukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/jiminny/app/front-end (JY-18909-automated-reports-ask-jiminny) $ yarn buildmap:680.92kBmap:3,947.49kBmар :1,108.20 kBmap:475.61kBmap:959.66kBmap:1,245.28 kBmap:849.05kBmap:792.41kBтар :3,016.64 kBmaр:436.28 kBmap:6,282.82kB...
|
35803
|
|
9496
|
185
|
0
|
2026-04-14T07:41:24.495621+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776152484495_m2.jpg...
|
PhpStorm
|
faVsco.js – AutomatedReportsCommand.php
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
Project: faVsco.js, menu
#11894 on JY-18909-automa Project: faVsco.js, menu
#11894 on JY-18909-automated-reports-ask-jiminny, menu
Start Listening for PHP Debug Connections
RequestGenerateAskJiminnyReportJobTest
Run 'RequestGenerateAskJiminnyReportJobTest'
Debug 'RequestGenerateAskJiminnyReportJobTest'
More Actions
JetBrains AI
Search Everywhere
IDE and Project Settings
Sync Changes
Hide This Notification
Code changed:
Hide
Analyzing…
<?php
declare(strict_types=1);
namespace Jiminny\Console\Commands\Reports;
use Carbon\Carbon;
use Illuminate\Console\Command;
use Illuminate\Contracts\Bus\Dispatcher as BusDispatcher;
use Jiminny\Jobs\AutomatedReports\RequestGenerateAskJiminnyReportJob;
use Jiminny\Jobs\AutomatedReports\RequestGenerateReportJob;
use Jiminny\Models\AutomatedReport;
use Jiminny\Repositories\AutomatedReportsRepository;
use Jiminny\Services\Kiosk\AutomatedReports\AutomatedReportsService;
use Psr\Log\LoggerInterface;
class AutomatedReportsCommand extends Command
{
/**
* Log prefix for all log messages
*/
private const string LOG_PREFIX = '[automated-reports]';
/**
* The name and signature of the console command.
*
* @var string
*/
protected $signature = 'automated-reports';
/**
* The console command description.
*
* @var string
*/
protected $description = 'Process automated reports based on their frequency (weekly, monthly, quarterly)';
public function __construct(
private readonly LoggerInterface $logger,
private readonly BusDispatcher $dispatcher,
private readonly AutomatedReportsRepository $reportRepository
) {
parent::__construct();
}
/**
* Execute the console command.
*
* @return int
*/
public function handle(): int
{
$this->logger->info(self::LOG_PREFIX . ' Started');
$now = Carbon::now();
$isMonday = $now->isMonday();
$isFirstDayOfMonth = $now->day === 1;
$currentMonth = $now->month;
// Check if the current month is a quarterly month (January, April, July, October)
$isQuarterlyMonth = in_array($currentMonth, [1, 4, 7, 10], true);
$this->logger->info(self::LOG_PREFIX . ' Checking conditions', [
'isMonday' => $isMonday,
'isFirstDayOfMonth' => $isFirstDayOfMonth,
'currentMonth' => $currentMonth,
'isQuarterlyMonth' => $isQuarterlyMonth,
]);
// Process daily reports
$this->processReports(AutomatedReportsService::FREQUENCY_DAILY);
// Process weekly reports on Mondays
if ($isMonday) {
$this->processReports(AutomatedReportsService::FREQUENCY_WEEKLY);
}
// Process monthly reports on the first day of the month
if ($isFirstDayOfMonth) {
$this->processReports(AutomatedReportsService::FREQUENCY_MONTHLY);
}
// Process quarterly reports on the first day of January, April, July, and October
if ($isFirstDayOfMonth && $isQuarterlyMonth) {
$this->processReports(AutomatedReportsService::FREQUENCY_QUARTERLY);
}
$this->logger->info(self::LOG_PREFIX . ' Completed');
return 0;
}
/**
* Process reports for a specific frequency.
*
* @param string $frequency
*
* @return void
*/
private function processReports(string $frequency): void
{
$this->logger->info(self::LOG_PREFIX . " Processing $frequency reports");
// Get all enabled, not deleted reports with active teams for the specified frequency
$reports = $this->reportRepository->getActiveReportsByFrequency($frequency);
// $reports = collect([AutomatedReport::find(68)]);
$this->logger->info(self::LOG_PREFIX . " Found {$reports->count()} $frequency reports to process");
/** @var AutomatedReport $report */
foreach ($reports as $report) {
$this->logger->info(self::LOG_PREFIX . ' Dispatching Generate Report job for report', [
'reportUuid' => $report->getUuid(),
'teamId' => $report->getTeamId(),
'frequency' => $report->getFrequency(),
'type' => $report->getType(),
]);
$job = $report->isAskJiminnyReport()
? new RequestGenerateAskJiminnyReportJob($report->getUuid())
: new RequestGenerateReportJob($report->getUuid());
// $this->dispatcher->dispatch($job);
$this->dispatcher->dispatchSync($job);
}
}
}
Sync Changes
Hide This Notification
Code changed:
Hide
1
14
4
Previous Highlighted Error
Next Highlighted Error
<?php
declare(strict_types=1);
namespace Tests\Unit\Jobs\AutomatedReports;
use Carbon\Carbon;
use Jiminny\Component\ProphetAi\Exceptions\ProphetException;
use Jiminny\Component\ProphetAi\ProphetClient;
use Jiminny\Jobs\AutomatedReports\RequestGenerateAskJiminnyReportJob;
use Jiminny\Models\AutomatedReport;
use Jiminny\Models\AutomatedReportResult;
use Jiminny\Models\Team;
use Jiminny\Models\User;
use Jiminny\Services\Kiosk\AutomatedReports\AskJiminnyReportActivityService;
use Jiminny\Services\Kiosk\AutomatedReports\AutomatedReportsService;
use PHPUnit\Framework\MockObject\MockObject;
use PHPUnit\Framework\TestCase;
use Psr\Log\LoggerInterface;
class RequestGenerateAskJiminnyReportJobTest extends TestCase
{
private AutomatedReportsService&MockObject $reportService;
private AskJiminnyReportActivityService&MockObject $activityService;
private ProphetClient&MockObject $prophetClient;
private LoggerInterface&MockObject $logger;
protected function setUp(): void
{
$this->reportService = $this->createMock(AutomatedReportsService::class);
$this->activityService = $this->createMock(AskJiminnyReportActivityService::class);
$this->prophetClient = $this->createMock(ProphetClient::class);
$this->logger = $this->createMock(LoggerInterface::class);
}
private function makeJob(string $uuid = 'report-uuid'): RequestGenerateAskJiminnyReportJob
{
return new RequestGenerateAskJiminnyReportJob($uuid);
}
private function makeActiveReport(
string $type = AutomatedReportsService::TYPE_ASK_JIMINNY,
bool $status = true,
string $teamStatus = Team::STATUS_ACTIVE,
): AutomatedReport&MockObject { // @phpstan-ignore-line
$team = $this->createMock(Team::class);
$team->method('getStatus')->willReturn($teamStatus);
$report = $this->createMock(AutomatedReport::class);
$report->method('getType')->willReturn($type);
$report->method('getStatus')->willReturn($status);
$report->method('getTeam')->willReturn($team);
return $report;
}
public function testUniqueIdReturnsReportUuid(): void
{
$job = $this->makeJob('my-unique-uuid');
$this->assertEquals('my-unique-uuid', $job->uniqueId());
}
public function testHandleSkipsWhenReportTypeIsNotAskJiminny(): void
{
$report = $this->makeActiveReport(type: 'exec_summary');
$this->reportService->expects($this->once())
->method('getReport')
->willReturn($report);
$this->logger->expects($this->once())
->method('info')
->with($this->stringContains('Started'));
$this->logger->expects($this->once())
->method('warning')
->with($this->stringContains('not an ask_jiminny report'));
$this->reportService->expects($this->never())->method('createReportResult');
$job = $this->makeJob();
$job->handle($this->reportService, $this->activityService, $this->prophetClient, $this->logger);
}
public function testHandleSkipsWhenReportIsInactive(): void
{
$report = $this->makeActiveReport(status: false);
$this->reportService->expects($this->once())
->method('getReport')
->willReturn($report);
$this->logger->expects($this->exactly(2))
->method('info');
$this->reportService->expects($this->never())->method('createReportResult');
$job = $this->makeJob();
$job->handle($this->reportService, $this->activityService, $this->prophetClient, $this->logger);
}
public function testHandleSkipsWhenTeamIsInactive(): void
{
$report = $this->makeActiveReport(teamStatus: Team::STATUS_DEACTIVATED);
$this->reportService->expects($this->once())
->method('getReport')
->willReturn($report);
$this->logger->expects($this->exactly(2))
->method('info');
$this->reportService->expects($this->never())->method('createReportResult');
$job = $this->makeJob();
$job->handle($this->reportService, $this->activityService, $this->prophetClient, $this->logger);
}
public function testHandleSkipsWhenCreatorIsNull(): void
{
$report = $this->makeActiveReport();
$report->method('getCreator')->willReturn(null);
$this->reportService->expects($this->once())
->method('getReport')
->willReturn($report);
$this->logger->expects($this->once())
->method('warning')
->with($this->stringContains('report creator not found'));
$this->reportService->expects($this->never())->method('createReportResult');
$job = $this->makeJob();
$job->handle($this->reportService, $this->activityService, $this->prophetClient, $this->logger);
}
public function testHandleSkipsWhenSavedSearchIsNull(): void
{
$creator = $this->createMock(User::class);
$report = $this->makeActiveReport();
$report->method('getCreator')->willReturn($creator);
$report->method('getSavedSearch')->willReturn(null);
$this->reportService->expects($this->once())
->method('getReport')
->willReturn($report);
$this->logger->expects($this->once())
->method('warning')
->with($this->stringContains('saved search not found'));
$this->reportService->expects($this->never())->method('createReportResult');
$job = $this->makeJob();
$job->handle($this->reportService, $this->activityService, $this->prophetClient, $this->logger);
}
public function testHandleSkipsWhenPromptIsNull(): void
{
$creator = $this->createMock(User::class);
$savedSearch = $this->createMock(\Jiminny\Models\Activity\Search::class);
$report = $this->makeActiveReport();
$report->method('getCreator')->willReturn($creator);
$report->method('getSavedSearch')->willReturn($savedSearch);
$report->method('getAskAnythingPrompt')->willReturn(null);
$this->reportService->expects($this->once())
->method('getReport')
->willReturn($report);
$this->logger->expects($this->once())
->method('warning')
->with($this->stringContains('ask anything prompt not found'));
$this->reportService->expects($this->never())->method('createReportResult');
$job = $this->makeJob();
$job->handle($this->reportService, $this->activityService, $this->prophetClient, $this->logger);
}
public function testHandleFailsReportWhenNotEnoughActivities(): void
{
$creator = $this->createMock(User::class);
$savedSearch = $this->createMock(\Jiminny\Models\Activity\Search::class);
$prompt = $this->createMock(\Jiminny\Models\AskAnything\AskAnythingPrompt::class);
$report = $this->makeActiveReport();
$report->method('getCreator')->willReturn($creator);
$report->method('getSavedSearch')->willReturn($savedSearch);
$report->method('getAskAnythingPrompt')->willReturn($prompt);
$reportResult = $this->createMock(AutomatedReportResult::class);
$reportResult->expects($this->once())
->method('update')
->with($this->callback(fn ($data) => $data['status'] === AutomatedReportResult::STATUS_FAILED
&& $data['reason'] === AutomatedReportResult::REASON_NOT_ENOUGH_ACTIVITIES));
$this->reportService->expects($this->once())
->method('getReport')
->willReturn($report);
$this->reportService->expects($this->once())
->method('createReportResult')
->willReturn($reportResult);
$this->activityService->expects($this->once())
->method('getActivityIdsForSavedSearch')
->willReturn([]);
$this->logger->expects($this->exactly(3))
->method('info');
$job = $this->makeJob();
$job->handle($this->reportService, $this->activityService, $this->prophetClient, $this->logger);
}
public function testHandleSuccessfullyRequestsReport(): void
{
Carbon::setTestNow(Carbon::parse('2026-04-07 10:00:00'));
$creator = $this->createMock(User::class);
$savedSearch = $this->createMock(\Jiminny\Models\Activity\Search::class);
$prompt = $this->createMock(\Jiminny\Models\AskAnything\AskAnythingPrompt::class);
$report = $this->makeActiveReport();
$report->method('getCreator')->willReturn($creator);
$report->method('getSavedSearch')->willReturn($savedSearch);
$report->method('getAskAnythingPrompt')->willReturn($prompt);
$report->method('getUuid')->willReturn('report-uuid');
$reportResult = $this->createMock(AutomatedReportResult::class);
$reportResult->method('getUuid')->willReturn('result-uuid');
$reportResult->expects($this->once())
->method('update')
->with($this->callback(fn ($data) => $data['status'] === AutomatedReportResult::STATUS_REQUESTED
&& isset($data['name'], $data['payload'], $data['requested_at'])));
$this->reportService->expects($this->once())
->method('getReport')
->willReturn($report);
$this->reportService->expects($this->once())
->method('createReportResult')
->willReturn($reportResult);
$this->reportService->expects($this->once())
->method('getAskJiminnyGenerateReportPayload')
->willReturn(['key' => 'value']);
$this->reportService->expects($this->once())
->method('getReportFileName')
->willReturn('My Report - 7 Apr 2026');
$this->activityService->expects($this->once())
->method('getActivityIdsForSavedSearch')
->willReturn(['act-1', 'act-2']);
$this->prophetClient->expects($this->once())
->method('sendRequest')
->willReturn(new \Jiminny\Component\ProphetAi\Dtos\ProphetResponseDto([]));
$this->logger->expects($this->exactly(4))
->method('info');
$job = $this->makeJob();
$job->handle($this->reportService, $this->activityService, $this->prophetClient, $this->logger);
Carbon::setTestNow();
}
public function testHandleCatchesGenericExceptionAndLogsError(): void
{
$this->reportService->expects($this->once())
->method('getReport')
->willThrowException(new \RuntimeException('DB error'));
$this->logger->expects($this->once())
->method('error')
->with($this->stringContains('Error'));
$job = $this->makeJob();
$reflection = new \ReflectionClass($job);
$triesProp = $reflection->getProperty('tries');
$triesProp->setAccessible(true);
$job->handle($this->reportService, $this->activityService, $this->prophetClient, $this->logger);
}
public function testHandleCatchesProphetExceptionAndSetsCorrectReason(): void
{
$creator = $this->createMock(User::class);
$savedSearch = $this->createMock(\Jiminny\Models\Activity\Search::class);
$prompt = $this->createMock(\Jiminny\Models\AskAnything\AskAnythingPrompt::class);
$report = $this->makeActiveReport();
$report->method('getCreator')->willReturn($creator);
$report->method('getSavedSearch')->willReturn($savedSearch);
$report->method('getAskAnythingPrompt')->willReturn($prompt);
$reportResult = $this->createMock(AutomatedReportResult::class);
$reportResult->method('getUuid')->willReturn('result-uuid');
$reportResult->expects($this->once())
->method('update')
->with($this->callback(fn ($data) => $data['reason'] === AutomatedReportResult::REASON_PROPHET_API_ERROR));
$this->reportService->expects($this->once())
->method('getReport')
->willReturn($report);
$this->reportService->expects($this->once())
->method('createReportResult')
->willReturn($reportResult);
$this->activityService->expects($this->once())
->method('getActivityIdsForSavedSearch')
->willThrowException(new ProphetException('Prophet failed'));
$this->logger->expects($this->once())
->method('error');
$job = $this->makeJob();
$job->handle($this->reportService, $this->activityService, $this->prophetClient, $this->logger);
}
public function testHandleCreatesReportResultBeforeActivityFetch(): void
{
$creator = $this->createMock(User::class);
$savedSearch = $this->createMock(\Jiminny\Models\Activity\Search::class);
$prompt = $this->createMock(\Jiminny\Models\AskAnything\AskAnythingPrompt::class);
$report = $this->makeActiveReport();
$report->method('getCreator')->willReturn($creator);
$report->method('getSavedSearch')->willReturn($savedSearch);
$report->method('getAskAnythingPrompt')->willReturn($prompt);
$reportResult = $this->createMock(AutomatedReportResult::class);
$reportResult->method('getUuid')->willReturn('result-uuid');
$callOrder = [];
$this->reportService->expects($this->once())
->method('getReport')
->willReturn($report);
$this->reportService->expects($this->once())
->method('createReportResult')
->willReturnCallback(function () use ($reportResult, &$callOrder) {
$callOrder[] = 'createReportResult';
return $reportResult;
});
$this->activityService->expects($this->once())
->method('getActivityIdsForSavedSearch')
->willReturnCallback(function () use (&$callOrder) {
$callOrder[] = 'getActivityIds';
return [];
});
$job = $this->makeJob();
$job->handle($this->reportService, $this->activityService, $this->prophetClient, $this->logger);
$this->assertEquals(['createReportResult', 'getActivityIds'], $callOrder);
}
public function testHandlePassesCorrectDataToCreateReportResult(): void
{
$creator = $this->createMock(User::class);
$savedSearch = $this->createMock(\Jiminny\Models\Activity\Search::class);
$prompt = $this->createMock(\Jiminny\Models\AskAnything\AskAnythingPrompt::class);
$report = $this->makeActiveReport();
$report->method('getCreator')->willReturn($creator);
$report->method('getSavedSearch')->willReturn($savedSearch);
$report->method('getAskAnythingPrompt')->willReturn($prompt);
$reportResult = $this->createMock(AutomatedReportResult::class);
$reportResult->method('getUuid')->willReturn('result-uuid');
$reportResult->method('update')->willReturn(true);
$this->reportService->expects($this->once())
->method('getReport')
->willReturn($report);
$this->reportService->expects($this->once())
->method('createReportResult')
->with(
automatedReport: $report,
data: $this->callback(fn ($data) => $data['status'] === AutomatedReportResult::STATUS_DEFAULT
&& $data['media_type'] === AutomatedReportsService::MEDIA_TYPE_PDF)
)
->willReturn($reportResult);
$this->activityService->expects($this->once())
->method('getActivityIdsForSavedSearch')
->willReturn([]);
$job = $this->makeJob();
$job->handle($this->reportService, $this->activityService, $this->prophetClient, $this->logger);
}
}
Project
Project
New File or Directory…
Expand Selected
Collapse All
Options
Hide...
|
[{"role":"AXButton","text" [{"role":"AXButton","text":"Project: faVsco.js, menu","depth":5,"bounds":{"left":0.03046875,"top":0.017361112,"width":0.0453125,"height":0.022222223},"help_text":"~/jiminny/app","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"#11894 on JY-18909-automated-reports-ask-jiminny, menu","depth":5,"bounds":{"left":0.07578125,"top":0.017361112,"width":0.14960937,"height":0.022222223},"help_text":"Pull request #11894 exists for current branch JY-18909-automated-reports-ask-jiminny, but local branch is out of sync with remote","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Start Listening for PHP Debug Connections","depth":5,"bounds":{"left":0.76171875,"top":0.017361112,"width":0.01328125,"height":0.022222223},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"RequestGenerateAskJiminnyReportJobTest","depth":6,"bounds":{"left":0.7796875,"top":0.017361112,"width":0.12109375,"height":0.022222223},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Run 'RequestGenerateAskJiminnyReportJobTest'","depth":6,"bounds":{"left":0.9007813,"top":0.017361112,"width":0.01328125,"height":0.022222223},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Debug 'RequestGenerateAskJiminnyReportJobTest'","depth":6,"bounds":{"left":0.9140625,"top":0.017361112,"width":0.01328125,"height":0.022222223},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"More Actions","depth":6,"bounds":{"left":0.9273437,"top":0.017361112,"width":0.01328125,"height":0.022222223},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"JetBrains AI","depth":5,"bounds":{"left":0.96015626,"top":0.017361112,"width":0.01328125,"height":0.022222223},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Search Everywhere","depth":5,"bounds":{"left":0.9734375,"top":0.017361112,"width":0.01328125,"height":0.022222223},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"IDE and Project Settings","depth":5,"bounds":{"left":0.9867188,"top":0.017361112,"width":0.013281226,"height":0.022222223},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Sync Changes","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.01015625,"height":0.0},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Hide This Notification","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.01015625,"height":0.0},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Code changed:","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.049609374,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Hide","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.01015625,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Analyzing…","depth":4,"bounds":{"left":0.50273436,"top":0.13055556,"width":0.0234375,"height":0.013194445},"role_description":"text"},{"role":"AXTextArea","text":"<?php\n\ndeclare(strict_types=1);\n\nnamespace Jiminny\\Console\\Commands\\Reports;\n\nuse Carbon\\Carbon;\nuse Illuminate\\Console\\Command;\nuse Illuminate\\Contracts\\Bus\\Dispatcher as BusDispatcher;\nuse Jiminny\\Jobs\\AutomatedReports\\RequestGenerateAskJiminnyReportJob;\nuse Jiminny\\Jobs\\AutomatedReports\\RequestGenerateReportJob;\nuse Jiminny\\Models\\AutomatedReport;\nuse Jiminny\\Repositories\\AutomatedReportsRepository;\nuse Jiminny\\Services\\Kiosk\\AutomatedReports\\AutomatedReportsService;\nuse Psr\\Log\\LoggerInterface;\n\nclass AutomatedReportsCommand extends Command\n{\n /**\n * Log prefix for all log messages\n */\n private const string LOG_PREFIX = '[automated-reports]';\n\n /**\n * The name and signature of the console command.\n *\n * @var string\n */\n protected $signature = 'automated-reports';\n\n /**\n * The console command description.\n *\n * @var string\n */\n protected $description = 'Process automated reports based on their frequency (weekly, monthly, quarterly)';\n\n\n public function __construct(\n private readonly LoggerInterface $logger,\n private readonly BusDispatcher $dispatcher,\n private readonly AutomatedReportsRepository $reportRepository\n ) {\n parent::__construct();\n }\n\n /**\n * Execute the console command.\n *\n * @return int\n */\n public function handle(): int\n {\n $this->logger->info(self::LOG_PREFIX . ' Started');\n\n $now = Carbon::now();\n $isMonday = $now->isMonday();\n $isFirstDayOfMonth = $now->day === 1;\n $currentMonth = $now->month;\n\n // Check if the current month is a quarterly month (January, April, July, October)\n $isQuarterlyMonth = in_array($currentMonth, [1, 4, 7, 10], true);\n\n $this->logger->info(self::LOG_PREFIX . ' Checking conditions', [\n 'isMonday' => $isMonday,\n 'isFirstDayOfMonth' => $isFirstDayOfMonth,\n 'currentMonth' => $currentMonth,\n 'isQuarterlyMonth' => $isQuarterlyMonth,\n ]);\n\n // Process daily reports\n $this->processReports(AutomatedReportsService::FREQUENCY_DAILY);\n\n // Process weekly reports on Mondays\n if ($isMonday) {\n $this->processReports(AutomatedReportsService::FREQUENCY_WEEKLY);\n }\n\n // Process monthly reports on the first day of the month\n if ($isFirstDayOfMonth) {\n $this->processReports(AutomatedReportsService::FREQUENCY_MONTHLY);\n }\n\n // Process quarterly reports on the first day of January, April, July, and October\n if ($isFirstDayOfMonth && $isQuarterlyMonth) {\n $this->processReports(AutomatedReportsService::FREQUENCY_QUARTERLY);\n }\n\n $this->logger->info(self::LOG_PREFIX . ' Completed');\n\n return 0;\n }\n\n /**\n * Process reports for a specific frequency.\n *\n * @param string $frequency\n *\n * @return void\n */\n private function processReports(string $frequency): void\n {\n $this->logger->info(self::LOG_PREFIX . \" Processing $frequency reports\");\n\n // Get all enabled, not deleted reports with active teams for the specified frequency\n $reports = $this->reportRepository->getActiveReportsByFrequency($frequency);\n // $reports = collect([AutomatedReport::find(68)]);\n\n $this->logger->info(self::LOG_PREFIX . \" Found {$reports->count()} $frequency reports to process\");\n\n /** @var AutomatedReport $report */\n foreach ($reports as $report) {\n $this->logger->info(self::LOG_PREFIX . ' Dispatching Generate Report job for report', [\n 'reportUuid' => $report->getUuid(),\n 'teamId' => $report->getTeamId(),\n 'frequency' => $report->getFrequency(),\n 'type' => $report->getType(),\n ]);\n\n $job = $report->isAskJiminnyReport()\n ? new RequestGenerateAskJiminnyReportJob($report->getUuid())\n : new RequestGenerateReportJob($report->getUuid());\n\n // $this->dispatcher->dispatch($job);\n $this->dispatcher->dispatchSync($job);\n }\n }\n}","depth":4,"value":"<?php\n\ndeclare(strict_types=1);\n\nnamespace Jiminny\\Console\\Commands\\Reports;\n\nuse Carbon\\Carbon;\nuse Illuminate\\Console\\Command;\nuse Illuminate\\Contracts\\Bus\\Dispatcher as BusDispatcher;\nuse Jiminny\\Jobs\\AutomatedReports\\RequestGenerateAskJiminnyReportJob;\nuse Jiminny\\Jobs\\AutomatedReports\\RequestGenerateReportJob;\nuse Jiminny\\Models\\AutomatedReport;\nuse Jiminny\\Repositories\\AutomatedReportsRepository;\nuse Jiminny\\Services\\Kiosk\\AutomatedReports\\AutomatedReportsService;\nuse Psr\\Log\\LoggerInterface;\n\nclass AutomatedReportsCommand extends Command\n{\n /**\n * Log prefix for all log messages\n */\n private const string LOG_PREFIX = '[automated-reports]';\n\n /**\n * The name and signature of the console command.\n *\n * @var string\n */\n protected $signature = 'automated-reports';\n\n /**\n * The console command description.\n *\n * @var string\n */\n protected $description = 'Process automated reports based on their frequency (weekly, monthly, quarterly)';\n\n\n public function __construct(\n private readonly LoggerInterface $logger,\n private readonly BusDispatcher $dispatcher,\n private readonly AutomatedReportsRepository $reportRepository\n ) {\n parent::__construct();\n }\n\n /**\n * Execute the console command.\n *\n * @return int\n */\n public function handle(): int\n {\n $this->logger->info(self::LOG_PREFIX . ' Started');\n\n $now = Carbon::now();\n $isMonday = $now->isMonday();\n $isFirstDayOfMonth = $now->day === 1;\n $currentMonth = $now->month;\n\n // Check if the current month is a quarterly month (January, April, July, October)\n $isQuarterlyMonth = in_array($currentMonth, [1, 4, 7, 10], true);\n\n $this->logger->info(self::LOG_PREFIX . ' Checking conditions', [\n 'isMonday' => $isMonday,\n 'isFirstDayOfMonth' => $isFirstDayOfMonth,\n 'currentMonth' => $currentMonth,\n 'isQuarterlyMonth' => $isQuarterlyMonth,\n ]);\n\n // Process daily reports\n $this->processReports(AutomatedReportsService::FREQUENCY_DAILY);\n\n // Process weekly reports on Mondays\n if ($isMonday) {\n $this->processReports(AutomatedReportsService::FREQUENCY_WEEKLY);\n }\n\n // Process monthly reports on the first day of the month\n if ($isFirstDayOfMonth) {\n $this->processReports(AutomatedReportsService::FREQUENCY_MONTHLY);\n }\n\n // Process quarterly reports on the first day of January, April, July, and October\n if ($isFirstDayOfMonth && $isQuarterlyMonth) {\n $this->processReports(AutomatedReportsService::FREQUENCY_QUARTERLY);\n }\n\n $this->logger->info(self::LOG_PREFIX . ' Completed');\n\n return 0;\n }\n\n /**\n * Process reports for a specific frequency.\n *\n * @param string $frequency\n *\n * @return void\n */\n private function processReports(string $frequency): void\n {\n $this->logger->info(self::LOG_PREFIX . \" Processing $frequency reports\");\n\n // Get all enabled, not deleted reports with active teams for the specified frequency\n $reports = $this->reportRepository->getActiveReportsByFrequency($frequency);\n // $reports = collect([AutomatedReport::find(68)]);\n\n $this->logger->info(self::LOG_PREFIX . \" Found {$reports->count()} $frequency reports to process\");\n\n /** @var AutomatedReport $report */\n foreach ($reports as $report) {\n $this->logger->info(self::LOG_PREFIX . ' Dispatching Generate Report job for report', [\n 'reportUuid' => $report->getUuid(),\n 'teamId' => $report->getTeamId(),\n 'frequency' => $report->getFrequency(),\n 'type' => $report->getType(),\n ]);\n\n $job = $report->isAskJiminnyReport()\n ? new RequestGenerateAskJiminnyReportJob($report->getUuid())\n : new RequestGenerateReportJob($report->getUuid());\n\n // $this->dispatcher->dispatch($job);\n $this->dispatcher->dispatchSync($job);\n }\n }\n}","role_description":"text entry area","is_enabled":true,"is_focused":true,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Sync Changes","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.01015625,"height":0.0},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Hide This Notification","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.01015625,"height":0.0},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Code changed:","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.049609374,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Hide","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.01015625,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"1","depth":4,"bounds":{"left":0.9339844,"top":0.0875,"width":0.00859375,"height":0.013194445},"role_description":"text"},{"role":"AXStaticText","text":"14","depth":4,"bounds":{"left":0.94492185,"top":0.0875,"width":0.011328125,"height":0.013194445},"role_description":"text"},{"role":"AXStaticText","text":"4","depth":4,"bounds":{"left":0.9585937,"top":0.0875,"width":0.009375,"height":0.013194445},"role_description":"text"},{"role":"AXButton","text":"Previous Highlighted Error","depth":4,"bounds":{"left":0.9699219,"top":0.08611111,"width":0.00859375,"height":0.015972223},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Next Highlighted Error","depth":4,"bounds":{"left":0.9785156,"top":0.08611111,"width":0.008203125,"height":0.015972223},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"<?php\n\ndeclare(strict_types=1);\n\nnamespace Tests\\Unit\\Jobs\\AutomatedReports;\n\nuse Carbon\\Carbon;\nuse Jiminny\\Component\\ProphetAi\\Exceptions\\ProphetException;\nuse Jiminny\\Component\\ProphetAi\\ProphetClient;\nuse Jiminny\\Jobs\\AutomatedReports\\RequestGenerateAskJiminnyReportJob;\nuse Jiminny\\Models\\AutomatedReport;\nuse Jiminny\\Models\\AutomatedReportResult;\nuse Jiminny\\Models\\Team;\nuse Jiminny\\Models\\User;\nuse Jiminny\\Services\\Kiosk\\AutomatedReports\\AskJiminnyReportActivityService;\nuse Jiminny\\Services\\Kiosk\\AutomatedReports\\AutomatedReportsService;\nuse PHPUnit\\Framework\\MockObject\\MockObject;\nuse PHPUnit\\Framework\\TestCase;\nuse Psr\\Log\\LoggerInterface;\n\nclass RequestGenerateAskJiminnyReportJobTest extends TestCase\n{\n private AutomatedReportsService&MockObject $reportService;\n private AskJiminnyReportActivityService&MockObject $activityService;\n private ProphetClient&MockObject $prophetClient;\n private LoggerInterface&MockObject $logger;\n\n protected function setUp(): void\n {\n $this->reportService = $this->createMock(AutomatedReportsService::class);\n $this->activityService = $this->createMock(AskJiminnyReportActivityService::class);\n $this->prophetClient = $this->createMock(ProphetClient::class);\n $this->logger = $this->createMock(LoggerInterface::class);\n }\n\n private function makeJob(string $uuid = 'report-uuid'): RequestGenerateAskJiminnyReportJob\n {\n return new RequestGenerateAskJiminnyReportJob($uuid);\n }\n\n private function makeActiveReport(\n string $type = AutomatedReportsService::TYPE_ASK_JIMINNY,\n bool $status = true,\n string $teamStatus = Team::STATUS_ACTIVE,\n ): AutomatedReport&MockObject { // @phpstan-ignore-line\n $team = $this->createMock(Team::class);\n $team->method('getStatus')->willReturn($teamStatus);\n\n $report = $this->createMock(AutomatedReport::class);\n $report->method('getType')->willReturn($type);\n $report->method('getStatus')->willReturn($status);\n $report->method('getTeam')->willReturn($team);\n\n return $report;\n }\n\n public function testUniqueIdReturnsReportUuid(): void\n {\n $job = $this->makeJob('my-unique-uuid');\n\n $this->assertEquals('my-unique-uuid', $job->uniqueId());\n }\n\n public function testHandleSkipsWhenReportTypeIsNotAskJiminny(): void\n {\n $report = $this->makeActiveReport(type: 'exec_summary');\n\n $this->reportService->expects($this->once())\n ->method('getReport')\n ->willReturn($report);\n\n $this->logger->expects($this->once())\n ->method('info')\n ->with($this->stringContains('Started'));\n\n $this->logger->expects($this->once())\n ->method('warning')\n ->with($this->stringContains('not an ask_jiminny report'));\n\n $this->reportService->expects($this->never())->method('createReportResult');\n\n $job = $this->makeJob();\n $job->handle($this->reportService, $this->activityService, $this->prophetClient, $this->logger);\n }\n\n public function testHandleSkipsWhenReportIsInactive(): void\n {\n $report = $this->makeActiveReport(status: false);\n\n $this->reportService->expects($this->once())\n ->method('getReport')\n ->willReturn($report);\n\n $this->logger->expects($this->exactly(2))\n ->method('info');\n\n $this->reportService->expects($this->never())->method('createReportResult');\n\n $job = $this->makeJob();\n $job->handle($this->reportService, $this->activityService, $this->prophetClient, $this->logger);\n }\n\n public function testHandleSkipsWhenTeamIsInactive(): void\n {\n $report = $this->makeActiveReport(teamStatus: Team::STATUS_DEACTIVATED);\n\n $this->reportService->expects($this->once())\n ->method('getReport')\n ->willReturn($report);\n\n $this->logger->expects($this->exactly(2))\n ->method('info');\n\n $this->reportService->expects($this->never())->method('createReportResult');\n\n $job = $this->makeJob();\n $job->handle($this->reportService, $this->activityService, $this->prophetClient, $this->logger);\n }\n\n public function testHandleSkipsWhenCreatorIsNull(): void\n {\n $report = $this->makeActiveReport();\n $report->method('getCreator')->willReturn(null);\n\n $this->reportService->expects($this->once())\n ->method('getReport')\n ->willReturn($report);\n\n $this->logger->expects($this->once())\n ->method('warning')\n ->with($this->stringContains('report creator not found'));\n\n $this->reportService->expects($this->never())->method('createReportResult');\n\n $job = $this->makeJob();\n $job->handle($this->reportService, $this->activityService, $this->prophetClient, $this->logger);\n }\n\n public function testHandleSkipsWhenSavedSearchIsNull(): void\n {\n $creator = $this->createMock(User::class);\n\n $report = $this->makeActiveReport();\n $report->method('getCreator')->willReturn($creator);\n $report->method('getSavedSearch')->willReturn(null);\n\n $this->reportService->expects($this->once())\n ->method('getReport')\n ->willReturn($report);\n\n $this->logger->expects($this->once())\n ->method('warning')\n ->with($this->stringContains('saved search not found'));\n\n $this->reportService->expects($this->never())->method('createReportResult');\n\n $job = $this->makeJob();\n $job->handle($this->reportService, $this->activityService, $this->prophetClient, $this->logger);\n }\n\n public function testHandleSkipsWhenPromptIsNull(): void\n {\n $creator = $this->createMock(User::class);\n $savedSearch = $this->createMock(\\Jiminny\\Models\\Activity\\Search::class);\n\n $report = $this->makeActiveReport();\n $report->method('getCreator')->willReturn($creator);\n $report->method('getSavedSearch')->willReturn($savedSearch);\n $report->method('getAskAnythingPrompt')->willReturn(null);\n\n $this->reportService->expects($this->once())\n ->method('getReport')\n ->willReturn($report);\n\n $this->logger->expects($this->once())\n ->method('warning')\n ->with($this->stringContains('ask anything prompt not found'));\n\n $this->reportService->expects($this->never())->method('createReportResult');\n\n $job = $this->makeJob();\n $job->handle($this->reportService, $this->activityService, $this->prophetClient, $this->logger);\n }\n\n public function testHandleFailsReportWhenNotEnoughActivities(): void\n {\n $creator = $this->createMock(User::class);\n $savedSearch = $this->createMock(\\Jiminny\\Models\\Activity\\Search::class);\n $prompt = $this->createMock(\\Jiminny\\Models\\AskAnything\\AskAnythingPrompt::class);\n\n $report = $this->makeActiveReport();\n $report->method('getCreator')->willReturn($creator);\n $report->method('getSavedSearch')->willReturn($savedSearch);\n $report->method('getAskAnythingPrompt')->willReturn($prompt);\n\n $reportResult = $this->createMock(AutomatedReportResult::class);\n $reportResult->expects($this->once())\n ->method('update')\n ->with($this->callback(fn ($data) => $data['status'] === AutomatedReportResult::STATUS_FAILED\n && $data['reason'] === AutomatedReportResult::REASON_NOT_ENOUGH_ACTIVITIES));\n\n $this->reportService->expects($this->once())\n ->method('getReport')\n ->willReturn($report);\n\n $this->reportService->expects($this->once())\n ->method('createReportResult')\n ->willReturn($reportResult);\n\n $this->activityService->expects($this->once())\n ->method('getActivityIdsForSavedSearch')\n ->willReturn([]);\n\n $this->logger->expects($this->exactly(3))\n ->method('info');\n\n $job = $this->makeJob();\n $job->handle($this->reportService, $this->activityService, $this->prophetClient, $this->logger);\n }\n\n public function testHandleSuccessfullyRequestsReport(): void\n {\n Carbon::setTestNow(Carbon::parse('2026-04-07 10:00:00'));\n\n $creator = $this->createMock(User::class);\n $savedSearch = $this->createMock(\\Jiminny\\Models\\Activity\\Search::class);\n $prompt = $this->createMock(\\Jiminny\\Models\\AskAnything\\AskAnythingPrompt::class);\n\n $report = $this->makeActiveReport();\n $report->method('getCreator')->willReturn($creator);\n $report->method('getSavedSearch')->willReturn($savedSearch);\n $report->method('getAskAnythingPrompt')->willReturn($prompt);\n $report->method('getUuid')->willReturn('report-uuid');\n\n $reportResult = $this->createMock(AutomatedReportResult::class);\n $reportResult->method('getUuid')->willReturn('result-uuid');\n $reportResult->expects($this->once())\n ->method('update')\n ->with($this->callback(fn ($data) => $data['status'] === AutomatedReportResult::STATUS_REQUESTED\n && isset($data['name'], $data['payload'], $data['requested_at'])));\n\n $this->reportService->expects($this->once())\n ->method('getReport')\n ->willReturn($report);\n\n $this->reportService->expects($this->once())\n ->method('createReportResult')\n ->willReturn($reportResult);\n\n $this->reportService->expects($this->once())\n ->method('getAskJiminnyGenerateReportPayload')\n ->willReturn(['key' => 'value']);\n\n $this->reportService->expects($this->once())\n ->method('getReportFileName')\n ->willReturn('My Report - 7 Apr 2026');\n\n $this->activityService->expects($this->once())\n ->method('getActivityIdsForSavedSearch')\n ->willReturn(['act-1', 'act-2']);\n\n $this->prophetClient->expects($this->once())\n ->method('sendRequest')\n ->willReturn(new \\Jiminny\\Component\\ProphetAi\\Dtos\\ProphetResponseDto([]));\n\n $this->logger->expects($this->exactly(4))\n ->method('info');\n\n $job = $this->makeJob();\n $job->handle($this->reportService, $this->activityService, $this->prophetClient, $this->logger);\n\n Carbon::setTestNow();\n }\n\n public function testHandleCatchesGenericExceptionAndLogsError(): void\n {\n $this->reportService->expects($this->once())\n ->method('getReport')\n ->willThrowException(new \\RuntimeException('DB error'));\n\n $this->logger->expects($this->once())\n ->method('error')\n ->with($this->stringContains('Error'));\n\n $job = $this->makeJob();\n\n $reflection = new \\ReflectionClass($job);\n $triesProp = $reflection->getProperty('tries');\n $triesProp->setAccessible(true);\n\n $job->handle($this->reportService, $this->activityService, $this->prophetClient, $this->logger);\n }\n\n public function testHandleCatchesProphetExceptionAndSetsCorrectReason(): void\n {\n $creator = $this->createMock(User::class);\n $savedSearch = $this->createMock(\\Jiminny\\Models\\Activity\\Search::class);\n $prompt = $this->createMock(\\Jiminny\\Models\\AskAnything\\AskAnythingPrompt::class);\n\n $report = $this->makeActiveReport();\n $report->method('getCreator')->willReturn($creator);\n $report->method('getSavedSearch')->willReturn($savedSearch);\n $report->method('getAskAnythingPrompt')->willReturn($prompt);\n\n $reportResult = $this->createMock(AutomatedReportResult::class);\n $reportResult->method('getUuid')->willReturn('result-uuid');\n $reportResult->expects($this->once())\n ->method('update')\n ->with($this->callback(fn ($data) => $data['reason'] === AutomatedReportResult::REASON_PROPHET_API_ERROR));\n\n $this->reportService->expects($this->once())\n ->method('getReport')\n ->willReturn($report);\n\n $this->reportService->expects($this->once())\n ->method('createReportResult')\n ->willReturn($reportResult);\n\n $this->activityService->expects($this->once())\n ->method('getActivityIdsForSavedSearch')\n ->willThrowException(new ProphetException('Prophet failed'));\n\n $this->logger->expects($this->once())\n ->method('error');\n\n $job = $this->makeJob();\n $job->handle($this->reportService, $this->activityService, $this->prophetClient, $this->logger);\n }\n\n public function testHandleCreatesReportResultBeforeActivityFetch(): void\n {\n $creator = $this->createMock(User::class);\n $savedSearch = $this->createMock(\\Jiminny\\Models\\Activity\\Search::class);\n $prompt = $this->createMock(\\Jiminny\\Models\\AskAnything\\AskAnythingPrompt::class);\n\n $report = $this->makeActiveReport();\n $report->method('getCreator')->willReturn($creator);\n $report->method('getSavedSearch')->willReturn($savedSearch);\n $report->method('getAskAnythingPrompt')->willReturn($prompt);\n\n $reportResult = $this->createMock(AutomatedReportResult::class);\n $reportResult->method('getUuid')->willReturn('result-uuid');\n\n $callOrder = [];\n\n $this->reportService->expects($this->once())\n ->method('getReport')\n ->willReturn($report);\n\n $this->reportService->expects($this->once())\n ->method('createReportResult')\n ->willReturnCallback(function () use ($reportResult, &$callOrder) {\n $callOrder[] = 'createReportResult';\n\n return $reportResult;\n });\n\n $this->activityService->expects($this->once())\n ->method('getActivityIdsForSavedSearch')\n ->willReturnCallback(function () use (&$callOrder) {\n $callOrder[] = 'getActivityIds';\n\n return [];\n });\n\n $job = $this->makeJob();\n $job->handle($this->reportService, $this->activityService, $this->prophetClient, $this->logger);\n\n $this->assertEquals(['createReportResult', 'getActivityIds'], $callOrder);\n }\n\n public function testHandlePassesCorrectDataToCreateReportResult(): void\n {\n $creator = $this->createMock(User::class);\n $savedSearch = $this->createMock(\\Jiminny\\Models\\Activity\\Search::class);\n $prompt = $this->createMock(\\Jiminny\\Models\\AskAnything\\AskAnythingPrompt::class);\n\n $report = $this->makeActiveReport();\n $report->method('getCreator')->willReturn($creator);\n $report->method('getSavedSearch')->willReturn($savedSearch);\n $report->method('getAskAnythingPrompt')->willReturn($prompt);\n\n $reportResult = $this->createMock(AutomatedReportResult::class);\n $reportResult->method('getUuid')->willReturn('result-uuid');\n $reportResult->method('update')->willReturn(true);\n\n $this->reportService->expects($this->once())\n ->method('getReport')\n ->willReturn($report);\n\n $this->reportService->expects($this->once())\n ->method('createReportResult')\n ->with(\n automatedReport: $report,\n data: $this->callback(fn ($data) => $data['status'] === AutomatedReportResult::STATUS_DEFAULT\n && $data['media_type'] === AutomatedReportsService::MEDIA_TYPE_PDF)\n )\n ->willReturn($reportResult);\n\n $this->activityService->expects($this->once())\n ->method('getActivityIdsForSavedSearch')\n ->willReturn([]);\n\n $job = $this->makeJob();\n $job->handle($this->reportService, $this->activityService, $this->prophetClient, $this->logger);\n }\n}","depth":4,"bounds":{"left":0.55507815,"top":0.08472222,"width":0.43125,"height":0.9152778},"value":"<?php\n\ndeclare(strict_types=1);\n\nnamespace Tests\\Unit\\Jobs\\AutomatedReports;\n\nuse Carbon\\Carbon;\nuse Jiminny\\Component\\ProphetAi\\Exceptions\\ProphetException;\nuse Jiminny\\Component\\ProphetAi\\ProphetClient;\nuse Jiminny\\Jobs\\AutomatedReports\\RequestGenerateAskJiminnyReportJob;\nuse Jiminny\\Models\\AutomatedReport;\nuse Jiminny\\Models\\AutomatedReportResult;\nuse Jiminny\\Models\\Team;\nuse Jiminny\\Models\\User;\nuse Jiminny\\Services\\Kiosk\\AutomatedReports\\AskJiminnyReportActivityService;\nuse Jiminny\\Services\\Kiosk\\AutomatedReports\\AutomatedReportsService;\nuse PHPUnit\\Framework\\MockObject\\MockObject;\nuse PHPUnit\\Framework\\TestCase;\nuse Psr\\Log\\LoggerInterface;\n\nclass RequestGenerateAskJiminnyReportJobTest extends TestCase\n{\n private AutomatedReportsService&MockObject $reportService;\n private AskJiminnyReportActivityService&MockObject $activityService;\n private ProphetClient&MockObject $prophetClient;\n private LoggerInterface&MockObject $logger;\n\n protected function setUp(): void\n {\n $this->reportService = $this->createMock(AutomatedReportsService::class);\n $this->activityService = $this->createMock(AskJiminnyReportActivityService::class);\n $this->prophetClient = $this->createMock(ProphetClient::class);\n $this->logger = $this->createMock(LoggerInterface::class);\n }\n\n private function makeJob(string $uuid = 'report-uuid'): RequestGenerateAskJiminnyReportJob\n {\n return new RequestGenerateAskJiminnyReportJob($uuid);\n }\n\n private function makeActiveReport(\n string $type = AutomatedReportsService::TYPE_ASK_JIMINNY,\n bool $status = true,\n string $teamStatus = Team::STATUS_ACTIVE,\n ): AutomatedReport&MockObject { // @phpstan-ignore-line\n $team = $this->createMock(Team::class);\n $team->method('getStatus')->willReturn($teamStatus);\n\n $report = $this->createMock(AutomatedReport::class);\n $report->method('getType')->willReturn($type);\n $report->method('getStatus')->willReturn($status);\n $report->method('getTeam')->willReturn($team);\n\n return $report;\n }\n\n public function testUniqueIdReturnsReportUuid(): void\n {\n $job = $this->makeJob('my-unique-uuid');\n\n $this->assertEquals('my-unique-uuid', $job->uniqueId());\n }\n\n public function testHandleSkipsWhenReportTypeIsNotAskJiminny(): void\n {\n $report = $this->makeActiveReport(type: 'exec_summary');\n\n $this->reportService->expects($this->once())\n ->method('getReport')\n ->willReturn($report);\n\n $this->logger->expects($this->once())\n ->method('info')\n ->with($this->stringContains('Started'));\n\n $this->logger->expects($this->once())\n ->method('warning')\n ->with($this->stringContains('not an ask_jiminny report'));\n\n $this->reportService->expects($this->never())->method('createReportResult');\n\n $job = $this->makeJob();\n $job->handle($this->reportService, $this->activityService, $this->prophetClient, $this->logger);\n }\n\n public function testHandleSkipsWhenReportIsInactive(): void\n {\n $report = $this->makeActiveReport(status: false);\n\n $this->reportService->expects($this->once())\n ->method('getReport')\n ->willReturn($report);\n\n $this->logger->expects($this->exactly(2))\n ->method('info');\n\n $this->reportService->expects($this->never())->method('createReportResult');\n\n $job = $this->makeJob();\n $job->handle($this->reportService, $this->activityService, $this->prophetClient, $this->logger);\n }\n\n public function testHandleSkipsWhenTeamIsInactive(): void\n {\n $report = $this->makeActiveReport(teamStatus: Team::STATUS_DEACTIVATED);\n\n $this->reportService->expects($this->once())\n ->method('getReport')\n ->willReturn($report);\n\n $this->logger->expects($this->exactly(2))\n ->method('info');\n\n $this->reportService->expects($this->never())->method('createReportResult');\n\n $job = $this->makeJob();\n $job->handle($this->reportService, $this->activityService, $this->prophetClient, $this->logger);\n }\n\n public function testHandleSkipsWhenCreatorIsNull(): void\n {\n $report = $this->makeActiveReport();\n $report->method('getCreator')->willReturn(null);\n\n $this->reportService->expects($this->once())\n ->method('getReport')\n ->willReturn($report);\n\n $this->logger->expects($this->once())\n ->method('warning')\n ->with($this->stringContains('report creator not found'));\n\n $this->reportService->expects($this->never())->method('createReportResult');\n\n $job = $this->makeJob();\n $job->handle($this->reportService, $this->activityService, $this->prophetClient, $this->logger);\n }\n\n public function testHandleSkipsWhenSavedSearchIsNull(): void\n {\n $creator = $this->createMock(User::class);\n\n $report = $this->makeActiveReport();\n $report->method('getCreator')->willReturn($creator);\n $report->method('getSavedSearch')->willReturn(null);\n\n $this->reportService->expects($this->once())\n ->method('getReport')\n ->willReturn($report);\n\n $this->logger->expects($this->once())\n ->method('warning')\n ->with($this->stringContains('saved search not found'));\n\n $this->reportService->expects($this->never())->method('createReportResult');\n\n $job = $this->makeJob();\n $job->handle($this->reportService, $this->activityService, $this->prophetClient, $this->logger);\n }\n\n public function testHandleSkipsWhenPromptIsNull(): void\n {\n $creator = $this->createMock(User::class);\n $savedSearch = $this->createMock(\\Jiminny\\Models\\Activity\\Search::class);\n\n $report = $this->makeActiveReport();\n $report->method('getCreator')->willReturn($creator);\n $report->method('getSavedSearch')->willReturn($savedSearch);\n $report->method('getAskAnythingPrompt')->willReturn(null);\n\n $this->reportService->expects($this->once())\n ->method('getReport')\n ->willReturn($report);\n\n $this->logger->expects($this->once())\n ->method('warning')\n ->with($this->stringContains('ask anything prompt not found'));\n\n $this->reportService->expects($this->never())->method('createReportResult');\n\n $job = $this->makeJob();\n $job->handle($this->reportService, $this->activityService, $this->prophetClient, $this->logger);\n }\n\n public function testHandleFailsReportWhenNotEnoughActivities(): void\n {\n $creator = $this->createMock(User::class);\n $savedSearch = $this->createMock(\\Jiminny\\Models\\Activity\\Search::class);\n $prompt = $this->createMock(\\Jiminny\\Models\\AskAnything\\AskAnythingPrompt::class);\n\n $report = $this->makeActiveReport();\n $report->method('getCreator')->willReturn($creator);\n $report->method('getSavedSearch')->willReturn($savedSearch);\n $report->method('getAskAnythingPrompt')->willReturn($prompt);\n\n $reportResult = $this->createMock(AutomatedReportResult::class);\n $reportResult->expects($this->once())\n ->method('update')\n ->with($this->callback(fn ($data) => $data['status'] === AutomatedReportResult::STATUS_FAILED\n && $data['reason'] === AutomatedReportResult::REASON_NOT_ENOUGH_ACTIVITIES));\n\n $this->reportService->expects($this->once())\n ->method('getReport')\n ->willReturn($report);\n\n $this->reportService->expects($this->once())\n ->method('createReportResult')\n ->willReturn($reportResult);\n\n $this->activityService->expects($this->once())\n ->method('getActivityIdsForSavedSearch')\n ->willReturn([]);\n\n $this->logger->expects($this->exactly(3))\n ->method('info');\n\n $job = $this->makeJob();\n $job->handle($this->reportService, $this->activityService, $this->prophetClient, $this->logger);\n }\n\n public function testHandleSuccessfullyRequestsReport(): void\n {\n Carbon::setTestNow(Carbon::parse('2026-04-07 10:00:00'));\n\n $creator = $this->createMock(User::class);\n $savedSearch = $this->createMock(\\Jiminny\\Models\\Activity\\Search::class);\n $prompt = $this->createMock(\\Jiminny\\Models\\AskAnything\\AskAnythingPrompt::class);\n\n $report = $this->makeActiveReport();\n $report->method('getCreator')->willReturn($creator);\n $report->method('getSavedSearch')->willReturn($savedSearch);\n $report->method('getAskAnythingPrompt')->willReturn($prompt);\n $report->method('getUuid')->willReturn('report-uuid');\n\n $reportResult = $this->createMock(AutomatedReportResult::class);\n $reportResult->method('getUuid')->willReturn('result-uuid');\n $reportResult->expects($this->once())\n ->method('update')\n ->with($this->callback(fn ($data) => $data['status'] === AutomatedReportResult::STATUS_REQUESTED\n && isset($data['name'], $data['payload'], $data['requested_at'])));\n\n $this->reportService->expects($this->once())\n ->method('getReport')\n ->willReturn($report);\n\n $this->reportService->expects($this->once())\n ->method('createReportResult')\n ->willReturn($reportResult);\n\n $this->reportService->expects($this->once())\n ->method('getAskJiminnyGenerateReportPayload')\n ->willReturn(['key' => 'value']);\n\n $this->reportService->expects($this->once())\n ->method('getReportFileName')\n ->willReturn('My Report - 7 Apr 2026');\n\n $this->activityService->expects($this->once())\n ->method('getActivityIdsForSavedSearch')\n ->willReturn(['act-1', 'act-2']);\n\n $this->prophetClient->expects($this->once())\n ->method('sendRequest')\n ->willReturn(new \\Jiminny\\Component\\ProphetAi\\Dtos\\ProphetResponseDto([]));\n\n $this->logger->expects($this->exactly(4))\n ->method('info');\n\n $job = $this->makeJob();\n $job->handle($this->reportService, $this->activityService, $this->prophetClient, $this->logger);\n\n Carbon::setTestNow();\n }\n\n public function testHandleCatchesGenericExceptionAndLogsError(): void\n {\n $this->reportService->expects($this->once())\n ->method('getReport')\n ->willThrowException(new \\RuntimeException('DB error'));\n\n $this->logger->expects($this->once())\n ->method('error')\n ->with($this->stringContains('Error'));\n\n $job = $this->makeJob();\n\n $reflection = new \\ReflectionClass($job);\n $triesProp = $reflection->getProperty('tries');\n $triesProp->setAccessible(true);\n\n $job->handle($this->reportService, $this->activityService, $this->prophetClient, $this->logger);\n }\n\n public function testHandleCatchesProphetExceptionAndSetsCorrectReason(): void\n {\n $creator = $this->createMock(User::class);\n $savedSearch = $this->createMock(\\Jiminny\\Models\\Activity\\Search::class);\n $prompt = $this->createMock(\\Jiminny\\Models\\AskAnything\\AskAnythingPrompt::class);\n\n $report = $this->makeActiveReport();\n $report->method('getCreator')->willReturn($creator);\n $report->method('getSavedSearch')->willReturn($savedSearch);\n $report->method('getAskAnythingPrompt')->willReturn($prompt);\n\n $reportResult = $this->createMock(AutomatedReportResult::class);\n $reportResult->method('getUuid')->willReturn('result-uuid');\n $reportResult->expects($this->once())\n ->method('update')\n ->with($this->callback(fn ($data) => $data['reason'] === AutomatedReportResult::REASON_PROPHET_API_ERROR));\n\n $this->reportService->expects($this->once())\n ->method('getReport')\n ->willReturn($report);\n\n $this->reportService->expects($this->once())\n ->method('createReportResult')\n ->willReturn($reportResult);\n\n $this->activityService->expects($this->once())\n ->method('getActivityIdsForSavedSearch')\n ->willThrowException(new ProphetException('Prophet failed'));\n\n $this->logger->expects($this->once())\n ->method('error');\n\n $job = $this->makeJob();\n $job->handle($this->reportService, $this->activityService, $this->prophetClient, $this->logger);\n }\n\n public function testHandleCreatesReportResultBeforeActivityFetch(): void\n {\n $creator = $this->createMock(User::class);\n $savedSearch = $this->createMock(\\Jiminny\\Models\\Activity\\Search::class);\n $prompt = $this->createMock(\\Jiminny\\Models\\AskAnything\\AskAnythingPrompt::class);\n\n $report = $this->makeActiveReport();\n $report->method('getCreator')->willReturn($creator);\n $report->method('getSavedSearch')->willReturn($savedSearch);\n $report->method('getAskAnythingPrompt')->willReturn($prompt);\n\n $reportResult = $this->createMock(AutomatedReportResult::class);\n $reportResult->method('getUuid')->willReturn('result-uuid');\n\n $callOrder = [];\n\n $this->reportService->expects($this->once())\n ->method('getReport')\n ->willReturn($report);\n\n $this->reportService->expects($this->once())\n ->method('createReportResult')\n ->willReturnCallback(function () use ($reportResult, &$callOrder) {\n $callOrder[] = 'createReportResult';\n\n return $reportResult;\n });\n\n $this->activityService->expects($this->once())\n ->method('getActivityIdsForSavedSearch')\n ->willReturnCallback(function () use (&$callOrder) {\n $callOrder[] = 'getActivityIds';\n\n return [];\n });\n\n $job = $this->makeJob();\n $job->handle($this->reportService, $this->activityService, $this->prophetClient, $this->logger);\n\n $this->assertEquals(['createReportResult', 'getActivityIds'], $callOrder);\n }\n\n public function testHandlePassesCorrectDataToCreateReportResult(): void\n {\n $creator = $this->createMock(User::class);\n $savedSearch = $this->createMock(\\Jiminny\\Models\\Activity\\Search::class);\n $prompt = $this->createMock(\\Jiminny\\Models\\AskAnything\\AskAnythingPrompt::class);\n\n $report = $this->makeActiveReport();\n $report->method('getCreator')->willReturn($creator);\n $report->method('getSavedSearch')->willReturn($savedSearch);\n $report->method('getAskAnythingPrompt')->willReturn($prompt);\n\n $reportResult = $this->createMock(AutomatedReportResult::class);\n $reportResult->method('getUuid')->willReturn('result-uuid');\n $reportResult->method('update')->willReturn(true);\n\n $this->reportService->expects($this->once())\n ->method('getReport')\n ->willReturn($report);\n\n $this->reportService->expects($this->once())\n ->method('createReportResult')\n ->with(\n automatedReport: $report,\n data: $this->callback(fn ($data) => $data['status'] === AutomatedReportResult::STATUS_DEFAULT\n && $data['media_type'] === AutomatedReportsService::MEDIA_TYPE_PDF)\n )\n ->willReturn($reportResult);\n\n $this->activityService->expects($this->once())\n ->method('getActivityIdsForSavedSearch')\n ->willReturn([]);\n\n $job = $this->makeJob();\n $job->handle($this->reportService, $this->activityService, $this->prophetClient, $this->logger);\n }\n}","role_description":"text entry area","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Project","depth":3,"role_description":"text"},{"role":"AXButton","text":"Project","depth":3,"bounds":{"left":0.0140625,"top":0.041666668,"width":0.028515626,"height":0.021527778},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"New File or Directory…","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.01015625,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Expand Selected","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.01015625,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Collapse All","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.01015625,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Options","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.01015625,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Hide","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.01015625,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false}]...
|
-8992757920745852993
|
8722295178528246161
|
idle
|
accessibility
|
NULL
|
Project: faVsco.js, menu
#11894 on JY-18909-automa Project: faVsco.js, menu
#11894 on JY-18909-automated-reports-ask-jiminny, menu
Start Listening for PHP Debug Connections
RequestGenerateAskJiminnyReportJobTest
Run 'RequestGenerateAskJiminnyReportJobTest'
Debug 'RequestGenerateAskJiminnyReportJobTest'
More Actions
JetBrains AI
Search Everywhere
IDE and Project Settings
Sync Changes
Hide This Notification
Code changed:
Hide
Analyzing…
<?php
declare(strict_types=1);
namespace Jiminny\Console\Commands\Reports;
use Carbon\Carbon;
use Illuminate\Console\Command;
use Illuminate\Contracts\Bus\Dispatcher as BusDispatcher;
use Jiminny\Jobs\AutomatedReports\RequestGenerateAskJiminnyReportJob;
use Jiminny\Jobs\AutomatedReports\RequestGenerateReportJob;
use Jiminny\Models\AutomatedReport;
use Jiminny\Repositories\AutomatedReportsRepository;
use Jiminny\Services\Kiosk\AutomatedReports\AutomatedReportsService;
use Psr\Log\LoggerInterface;
class AutomatedReportsCommand extends Command
{
/**
* Log prefix for all log messages
*/
private const string LOG_PREFIX = '[automated-reports]';
/**
* The name and signature of the console command.
*
* @var string
*/
protected $signature = 'automated-reports';
/**
* The console command description.
*
* @var string
*/
protected $description = 'Process automated reports based on their frequency (weekly, monthly, quarterly)';
public function __construct(
private readonly LoggerInterface $logger,
private readonly BusDispatcher $dispatcher,
private readonly AutomatedReportsRepository $reportRepository
) {
parent::__construct();
}
/**
* Execute the console command.
*
* @return int
*/
public function handle(): int
{
$this->logger->info(self::LOG_PREFIX . ' Started');
$now = Carbon::now();
$isMonday = $now->isMonday();
$isFirstDayOfMonth = $now->day === 1;
$currentMonth = $now->month;
// Check if the current month is a quarterly month (January, April, July, October)
$isQuarterlyMonth = in_array($currentMonth, [1, 4, 7, 10], true);
$this->logger->info(self::LOG_PREFIX . ' Checking conditions', [
'isMonday' => $isMonday,
'isFirstDayOfMonth' => $isFirstDayOfMonth,
'currentMonth' => $currentMonth,
'isQuarterlyMonth' => $isQuarterlyMonth,
]);
// Process daily reports
$this->processReports(AutomatedReportsService::FREQUENCY_DAILY);
// Process weekly reports on Mondays
if ($isMonday) {
$this->processReports(AutomatedReportsService::FREQUENCY_WEEKLY);
}
// Process monthly reports on the first day of the month
if ($isFirstDayOfMonth) {
$this->processReports(AutomatedReportsService::FREQUENCY_MONTHLY);
}
// Process quarterly reports on the first day of January, April, July, and October
if ($isFirstDayOfMonth && $isQuarterlyMonth) {
$this->processReports(AutomatedReportsService::FREQUENCY_QUARTERLY);
}
$this->logger->info(self::LOG_PREFIX . ' Completed');
return 0;
}
/**
* Process reports for a specific frequency.
*
* @param string $frequency
*
* @return void
*/
private function processReports(string $frequency): void
{
$this->logger->info(self::LOG_PREFIX . " Processing $frequency reports");
// Get all enabled, not deleted reports with active teams for the specified frequency
$reports = $this->reportRepository->getActiveReportsByFrequency($frequency);
// $reports = collect([AutomatedReport::find(68)]);
$this->logger->info(self::LOG_PREFIX . " Found {$reports->count()} $frequency reports to process");
/** @var AutomatedReport $report */
foreach ($reports as $report) {
$this->logger->info(self::LOG_PREFIX . ' Dispatching Generate Report job for report', [
'reportUuid' => $report->getUuid(),
'teamId' => $report->getTeamId(),
'frequency' => $report->getFrequency(),
'type' => $report->getType(),
]);
$job = $report->isAskJiminnyReport()
? new RequestGenerateAskJiminnyReportJob($report->getUuid())
: new RequestGenerateReportJob($report->getUuid());
// $this->dispatcher->dispatch($job);
$this->dispatcher->dispatchSync($job);
}
}
}
Sync Changes
Hide This Notification
Code changed:
Hide
1
14
4
Previous Highlighted Error
Next Highlighted Error
<?php
declare(strict_types=1);
namespace Tests\Unit\Jobs\AutomatedReports;
use Carbon\Carbon;
use Jiminny\Component\ProphetAi\Exceptions\ProphetException;
use Jiminny\Component\ProphetAi\ProphetClient;
use Jiminny\Jobs\AutomatedReports\RequestGenerateAskJiminnyReportJob;
use Jiminny\Models\AutomatedReport;
use Jiminny\Models\AutomatedReportResult;
use Jiminny\Models\Team;
use Jiminny\Models\User;
use Jiminny\Services\Kiosk\AutomatedReports\AskJiminnyReportActivityService;
use Jiminny\Services\Kiosk\AutomatedReports\AutomatedReportsService;
use PHPUnit\Framework\MockObject\MockObject;
use PHPUnit\Framework\TestCase;
use Psr\Log\LoggerInterface;
class RequestGenerateAskJiminnyReportJobTest extends TestCase
{
private AutomatedReportsService&MockObject $reportService;
private AskJiminnyReportActivityService&MockObject $activityService;
private ProphetClient&MockObject $prophetClient;
private LoggerInterface&MockObject $logger;
protected function setUp(): void
{
$this->reportService = $this->createMock(AutomatedReportsService::class);
$this->activityService = $this->createMock(AskJiminnyReportActivityService::class);
$this->prophetClient = $this->createMock(ProphetClient::class);
$this->logger = $this->createMock(LoggerInterface::class);
}
private function makeJob(string $uuid = 'report-uuid'): RequestGenerateAskJiminnyReportJob
{
return new RequestGenerateAskJiminnyReportJob($uuid);
}
private function makeActiveReport(
string $type = AutomatedReportsService::TYPE_ASK_JIMINNY,
bool $status = true,
string $teamStatus = Team::STATUS_ACTIVE,
): AutomatedReport&MockObject { // @phpstan-ignore-line
$team = $this->createMock(Team::class);
$team->method('getStatus')->willReturn($teamStatus);
$report = $this->createMock(AutomatedReport::class);
$report->method('getType')->willReturn($type);
$report->method('getStatus')->willReturn($status);
$report->method('getTeam')->willReturn($team);
return $report;
}
public function testUniqueIdReturnsReportUuid(): void
{
$job = $this->makeJob('my-unique-uuid');
$this->assertEquals('my-unique-uuid', $job->uniqueId());
}
public function testHandleSkipsWhenReportTypeIsNotAskJiminny(): void
{
$report = $this->makeActiveReport(type: 'exec_summary');
$this->reportService->expects($this->once())
->method('getReport')
->willReturn($report);
$this->logger->expects($this->once())
->method('info')
->with($this->stringContains('Started'));
$this->logger->expects($this->once())
->method('warning')
->with($this->stringContains('not an ask_jiminny report'));
$this->reportService->expects($this->never())->method('createReportResult');
$job = $this->makeJob();
$job->handle($this->reportService, $this->activityService, $this->prophetClient, $this->logger);
}
public function testHandleSkipsWhenReportIsInactive(): void
{
$report = $this->makeActiveReport(status: false);
$this->reportService->expects($this->once())
->method('getReport')
->willReturn($report);
$this->logger->expects($this->exactly(2))
->method('info');
$this->reportService->expects($this->never())->method('createReportResult');
$job = $this->makeJob();
$job->handle($this->reportService, $this->activityService, $this->prophetClient, $this->logger);
}
public function testHandleSkipsWhenTeamIsInactive(): void
{
$report = $this->makeActiveReport(teamStatus: Team::STATUS_DEACTIVATED);
$this->reportService->expects($this->once())
->method('getReport')
->willReturn($report);
$this->logger->expects($this->exactly(2))
->method('info');
$this->reportService->expects($this->never())->method('createReportResult');
$job = $this->makeJob();
$job->handle($this->reportService, $this->activityService, $this->prophetClient, $this->logger);
}
public function testHandleSkipsWhenCreatorIsNull(): void
{
$report = $this->makeActiveReport();
$report->method('getCreator')->willReturn(null);
$this->reportService->expects($this->once())
->method('getReport')
->willReturn($report);
$this->logger->expects($this->once())
->method('warning')
->with($this->stringContains('report creator not found'));
$this->reportService->expects($this->never())->method('createReportResult');
$job = $this->makeJob();
$job->handle($this->reportService, $this->activityService, $this->prophetClient, $this->logger);
}
public function testHandleSkipsWhenSavedSearchIsNull(): void
{
$creator = $this->createMock(User::class);
$report = $this->makeActiveReport();
$report->method('getCreator')->willReturn($creator);
$report->method('getSavedSearch')->willReturn(null);
$this->reportService->expects($this->once())
->method('getReport')
->willReturn($report);
$this->logger->expects($this->once())
->method('warning')
->with($this->stringContains('saved search not found'));
$this->reportService->expects($this->never())->method('createReportResult');
$job = $this->makeJob();
$job->handle($this->reportService, $this->activityService, $this->prophetClient, $this->logger);
}
public function testHandleSkipsWhenPromptIsNull(): void
{
$creator = $this->createMock(User::class);
$savedSearch = $this->createMock(\Jiminny\Models\Activity\Search::class);
$report = $this->makeActiveReport();
$report->method('getCreator')->willReturn($creator);
$report->method('getSavedSearch')->willReturn($savedSearch);
$report->method('getAskAnythingPrompt')->willReturn(null);
$this->reportService->expects($this->once())
->method('getReport')
->willReturn($report);
$this->logger->expects($this->once())
->method('warning')
->with($this->stringContains('ask anything prompt not found'));
$this->reportService->expects($this->never())->method('createReportResult');
$job = $this->makeJob();
$job->handle($this->reportService, $this->activityService, $this->prophetClient, $this->logger);
}
public function testHandleFailsReportWhenNotEnoughActivities(): void
{
$creator = $this->createMock(User::class);
$savedSearch = $this->createMock(\Jiminny\Models\Activity\Search::class);
$prompt = $this->createMock(\Jiminny\Models\AskAnything\AskAnythingPrompt::class);
$report = $this->makeActiveReport();
$report->method('getCreator')->willReturn($creator);
$report->method('getSavedSearch')->willReturn($savedSearch);
$report->method('getAskAnythingPrompt')->willReturn($prompt);
$reportResult = $this->createMock(AutomatedReportResult::class);
$reportResult->expects($this->once())
->method('update')
->with($this->callback(fn ($data) => $data['status'] === AutomatedReportResult::STATUS_FAILED
&& $data['reason'] === AutomatedReportResult::REASON_NOT_ENOUGH_ACTIVITIES));
$this->reportService->expects($this->once())
->method('getReport')
->willReturn($report);
$this->reportService->expects($this->once())
->method('createReportResult')
->willReturn($reportResult);
$this->activityService->expects($this->once())
->method('getActivityIdsForSavedSearch')
->willReturn([]);
$this->logger->expects($this->exactly(3))
->method('info');
$job = $this->makeJob();
$job->handle($this->reportService, $this->activityService, $this->prophetClient, $this->logger);
}
public function testHandleSuccessfullyRequestsReport(): void
{
Carbon::setTestNow(Carbon::parse('2026-04-07 10:00:00'));
$creator = $this->createMock(User::class);
$savedSearch = $this->createMock(\Jiminny\Models\Activity\Search::class);
$prompt = $this->createMock(\Jiminny\Models\AskAnything\AskAnythingPrompt::class);
$report = $this->makeActiveReport();
$report->method('getCreator')->willReturn($creator);
$report->method('getSavedSearch')->willReturn($savedSearch);
$report->method('getAskAnythingPrompt')->willReturn($prompt);
$report->method('getUuid')->willReturn('report-uuid');
$reportResult = $this->createMock(AutomatedReportResult::class);
$reportResult->method('getUuid')->willReturn('result-uuid');
$reportResult->expects($this->once())
->method('update')
->with($this->callback(fn ($data) => $data['status'] === AutomatedReportResult::STATUS_REQUESTED
&& isset($data['name'], $data['payload'], $data['requested_at'])));
$this->reportService->expects($this->once())
->method('getReport')
->willReturn($report);
$this->reportService->expects($this->once())
->method('createReportResult')
->willReturn($reportResult);
$this->reportService->expects($this->once())
->method('getAskJiminnyGenerateReportPayload')
->willReturn(['key' => 'value']);
$this->reportService->expects($this->once())
->method('getReportFileName')
->willReturn('My Report - 7 Apr 2026');
$this->activityService->expects($this->once())
->method('getActivityIdsForSavedSearch')
->willReturn(['act-1', 'act-2']);
$this->prophetClient->expects($this->once())
->method('sendRequest')
->willReturn(new \Jiminny\Component\ProphetAi\Dtos\ProphetResponseDto([]));
$this->logger->expects($this->exactly(4))
->method('info');
$job = $this->makeJob();
$job->handle($this->reportService, $this->activityService, $this->prophetClient, $this->logger);
Carbon::setTestNow();
}
public function testHandleCatchesGenericExceptionAndLogsError(): void
{
$this->reportService->expects($this->once())
->method('getReport')
->willThrowException(new \RuntimeException('DB error'));
$this->logger->expects($this->once())
->method('error')
->with($this->stringContains('Error'));
$job = $this->makeJob();
$reflection = new \ReflectionClass($job);
$triesProp = $reflection->getProperty('tries');
$triesProp->setAccessible(true);
$job->handle($this->reportService, $this->activityService, $this->prophetClient, $this->logger);
}
public function testHandleCatchesProphetExceptionAndSetsCorrectReason(): void
{
$creator = $this->createMock(User::class);
$savedSearch = $this->createMock(\Jiminny\Models\Activity\Search::class);
$prompt = $this->createMock(\Jiminny\Models\AskAnything\AskAnythingPrompt::class);
$report = $this->makeActiveReport();
$report->method('getCreator')->willReturn($creator);
$report->method('getSavedSearch')->willReturn($savedSearch);
$report->method('getAskAnythingPrompt')->willReturn($prompt);
$reportResult = $this->createMock(AutomatedReportResult::class);
$reportResult->method('getUuid')->willReturn('result-uuid');
$reportResult->expects($this->once())
->method('update')
->with($this->callback(fn ($data) => $data['reason'] === AutomatedReportResult::REASON_PROPHET_API_ERROR));
$this->reportService->expects($this->once())
->method('getReport')
->willReturn($report);
$this->reportService->expects($this->once())
->method('createReportResult')
->willReturn($reportResult);
$this->activityService->expects($this->once())
->method('getActivityIdsForSavedSearch')
->willThrowException(new ProphetException('Prophet failed'));
$this->logger->expects($this->once())
->method('error');
$job = $this->makeJob();
$job->handle($this->reportService, $this->activityService, $this->prophetClient, $this->logger);
}
public function testHandleCreatesReportResultBeforeActivityFetch(): void
{
$creator = $this->createMock(User::class);
$savedSearch = $this->createMock(\Jiminny\Models\Activity\Search::class);
$prompt = $this->createMock(\Jiminny\Models\AskAnything\AskAnythingPrompt::class);
$report = $this->makeActiveReport();
$report->method('getCreator')->willReturn($creator);
$report->method('getSavedSearch')->willReturn($savedSearch);
$report->method('getAskAnythingPrompt')->willReturn($prompt);
$reportResult = $this->createMock(AutomatedReportResult::class);
$reportResult->method('getUuid')->willReturn('result-uuid');
$callOrder = [];
$this->reportService->expects($this->once())
->method('getReport')
->willReturn($report);
$this->reportService->expects($this->once())
->method('createReportResult')
->willReturnCallback(function () use ($reportResult, &$callOrder) {
$callOrder[] = 'createReportResult';
return $reportResult;
});
$this->activityService->expects($this->once())
->method('getActivityIdsForSavedSearch')
->willReturnCallback(function () use (&$callOrder) {
$callOrder[] = 'getActivityIds';
return [];
});
$job = $this->makeJob();
$job->handle($this->reportService, $this->activityService, $this->prophetClient, $this->logger);
$this->assertEquals(['createReportResult', 'getActivityIds'], $callOrder);
}
public function testHandlePassesCorrectDataToCreateReportResult(): void
{
$creator = $this->createMock(User::class);
$savedSearch = $this->createMock(\Jiminny\Models\Activity\Search::class);
$prompt = $this->createMock(\Jiminny\Models\AskAnything\AskAnythingPrompt::class);
$report = $this->makeActiveReport();
$report->method('getCreator')->willReturn($creator);
$report->method('getSavedSearch')->willReturn($savedSearch);
$report->method('getAskAnythingPrompt')->willReturn($prompt);
$reportResult = $this->createMock(AutomatedReportResult::class);
$reportResult->method('getUuid')->willReturn('result-uuid');
$reportResult->method('update')->willReturn(true);
$this->reportService->expects($this->once())
->method('getReport')
->willReturn($report);
$this->reportService->expects($this->once())
->method('createReportResult')
->with(
automatedReport: $report,
data: $this->callback(fn ($data) => $data['status'] === AutomatedReportResult::STATUS_DEFAULT
&& $data['media_type'] === AutomatedReportsService::MEDIA_TYPE_PDF)
)
->willReturn($reportResult);
$this->activityService->expects($this->once())
->method('getActivityIdsForSavedSearch')
->willReturn([]);
$job = $this->makeJob();
$job->handle($this->reportService, $this->activityService, $this->prophetClient, $this->logger);
}
}
Project
Project
New File or Directory…
Expand Selected
Collapse All
Options
Hide...
|
NULL
|
|
54769
|
1184
|
19
|
2026-04-20T09:18:49.593252+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-20/1776 /Users/lukas/.screenpipe/data/data/2026-04-20/1776676729593_m2.jpg...
|
PhpStorm
|
faVsco.js – SF [jiminny@localhost]
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
Project: faVsco.js, menu
#11894 on JY-18909-automa Project: faVsco.js, menu
#11894 on JY-18909-automated-reports-ask-jiminny, menu
Start Listening for PHP Debug Connections
AskJiminnyReportActivityServiceTest
Run 'AskJiminnyReportActivityServiceTest'
Debug 'AskJiminnyReportActivityServiceTest'
More Actions
JetBrains AI
Search Everywhere
IDE and Project Settings
Code changed:
Hide
Sync Changes
Hide This Notification
<?php
declare(strict_types=1);
namespace Jiminny\Console\Commands\Reports;
use Illuminate\Console\Command;
use Illuminate\Contracts\Bus\Dispatcher as BusDispatcher;
use Jiminny\Jobs\AutomatedReports\SendReportJob;
use Jiminny\Models\AutomatedReportResult;
use Jiminny\Repositories\AutomatedReportsRepository;
use Jiminny\Services\Kiosk\AutomatedReports\AutomatedReportsService;
use Psr\Log\LoggerInterface;
use Symfony\Component\Console\Command\Command as CommandAlias;
class AutomatedReportsSendCommand extends Command
{
private const string LOG_PREFIX = '[automated-reports:send]';
/**
* The name and signature of the console command.
*
* @var string
*/
protected $signature = 'automated-reports:send
{--result-id= : Force send a specific AutomatedReportResult by ID, bypassing the scheduled time check}';
/**
* The console command description.
*
* @var string
*/
protected $description = 'Sends automated reports based on user timezone';
public function __construct(
private readonly LoggerInterface $logger,
private readonly AutomatedReportsRepository $reportRepository,
private readonly AutomatedReportsService $automatedReportsService,
private readonly BusDispatcher $dispatcher,
) {
parent::__construct();
}
/**
* Execute the console command.
*
* @return int
*/
public function handle(): int
{
$resultId = $this->option('result-id');
if ($resultId !== null) {
return $this->handleForceSend((int) $resultId);
}
$reportResults = $this->reportRepository->getGeneratedNotSentResults();
foreach ($reportResults as $reportResult) {
/** @var AutomatedReportResult $reportResult */
$validRecipients = $this->automatedReportsService->getValidRecipientUsers($reportResult->getReport());
if ($this->automatedReportsService->shouldSendReport($validRecipients, $reportResult->getGeneratedAt())) {
$this->logger->info(self::LOG_PREFIX . ' Dispatching job', [
'uuid' => $reportResult->getUuid(),
]);
$this->dispatcher->dispatch(new SendReportJob($reportResult->getUuid()));
}
}
return CommandAlias::SUCCESS;
}
private function handleForceSend(int $resultId): int
{
$reportResult = AutomatedReportResult::find($resultId);
if ($reportResult === null) {
$this->logger->error(self::LOG_PREFIX . ' Result not found', ['result_id' => $resultId]);
return CommandAlias::FAILURE;
}
$validRecipients = $this->automatedReportsService->getValidRecipientUsers($reportResult->getReport());
if (empty($validRecipients)) {
$this->logger->error(self::LOG_PREFIX . ' No valid recipients found', [
'result_id' => $resultId,
'uuid' => $reportResult->getUuid(),
]);
return CommandAlias::FAILURE;
}
$this->logger->info(self::LOG_PREFIX . ' Force dispatching job', [
'result_id' => $resultId,
'uuid' => $reportResult->getUuid(),
]);
$this->dispatcher->dispatch(new SendReportJob($reportResult->getUuid()));
return CommandAlias::SUCCESS;
}
}
Execute
Explain Plan
Browse Query History
View Parameters
Open Query Execution Settings…
In-Editor Results
Tx: Auto
Cancel Running Statements
Playground
jiminny
Code changed:
Hide
Sync Changes
Hide This Notification
10
12
2
4
Previous Highlighted Error
Next Highlighted Error
SELECT a.id, a.uuid, a.actual_start_time, o.id, o.uuid FROM opportunities o
JOIN activities a ON o.id = a.opportunity_id
WHERE a.crm_configuration_id = 39
AND a.actual_start_time > '2025-10-13'
AND a.type IN ('conference', 'softphone-inbound', 'softphone-outbound')
;
SELECT * FROM activities
WHERE crm_configuration_id = 39 and user_id = 143
and actual_start_time >= '2025-10-13'
AND type IN ('conference', 'softphone-inbound', 'softphone-outbound')
;
SELECT * FROM opportunities WHERE account_id IN (178);
select * from activities where id IN (620137, 620187, 620188, 620189, 620230);
# HS
SELECT * FROM opportunities WHERE id IN (238);
select * from activities where id IN (477,2076);
select * from users;
SELECT COUNT(*) FROM users;
SELECT COUNT(*) FROM activities;
SELECT COUNT(*) FROM opportunities;
UPDATE activities
SET
actual_start_time = '2025-12-19 09:00:00',
actual_end_time = '2025-12-19 10:30:00',
scheduled_start_time = '2025-12-19 09:00:00',
scheduled_end_time = '2025-12-19 10:30:00'
WHERE id IN (407509,407375);
select * from partners;
SELECT id, uuid, type, actual_start_time, user_id, crm_configuration_id
FROM activities
WHERE user_id = 143
AND actual_start_time >= '2025-10-13 00:00:00'
AND actual_start_time <= '2026-01-13 23:59:59'
ORDER BY actual_start_time DESC;
SELECT * FROM activities WHERE uuid_to_bin('78eda160-3086-435f-88a5-bb0c71b6008d') = uuid;
SELECT * FROM crm_layouts where crm_configuration_id = 39;
SELECT * FROM crm_layout_entities WHERE crm_layout_id = 282;
# lead_id
# account_id 177
# contact_id 3969
# opportunity_id
# stage_id 203
SELECT * FROM opportunities WHERE opportunities.crm_configuration_id = id = 282;
SELECT * FROM activities where crm_configuration_id = 39 AND type = 'conference'
AND user_id = 143 and actual_start_time >= '2025-10-13';
SELECT * FROM activities a
# JOIN opportunities o ON a.opportunity_id = o.id
WHERE a.crm_configuration_id = 39 AND a.type = 'conference'
and status = 'completed' and recording_state = 'recorded'
and a.actual_start_time >= '2025-10-13'
AND a.user_id = 143
;
select * from leads
where crm_configuration_id = 39; # 112 -> ac. 178, 109 => op. 1707
SELECT * FROM activities WHERE id IN (356013,616188,616202,616310,407509,407375,356001,356008);
SELECT * FROM activities WHERE id IN (356013,616188,616202,616310);
SELECT * FROM activities WHERE id IN (407509,407375); # leads: 112, 109 | status - 198
SELECT * FROM activities WHERE id IN (356001, 356008); # contacts:
SELECT * FROM opportunities WHERE id IN (1707);
SELECT * FROM stages where id IN (204, 198);
SELECT * FROM opportunities WHERE account_id IN (178);
SELECT * FROM opportunities WHERE crm_configuration_id = 39 AND created_at > '2025-01-01';
SELECT * FROM contacts WHERE account_id IN (178); # 4118 Musaibe, 4448 Ceco Personal
SELECT * FROM activities where crm_configuration_id = 39
AND opportunity_id IS NULL
AND is_internal = false
and status = 'completed' and recording_state = 'recorded'
AND actual_start_time >= '2025-10-13'
AND (lead_id IS NOT NULL OR contact_id IS NOT NULL OR account_id IS NOT NULL)
# AND lead_id IN (112, 109)
;
SELECT * FROM crm_profiles WHERE user_id = 143;
select * from inboxes; # 212
select * from users where id = 143; # 143
select * from inbox_email_batches where inbox_id = 212
and updated_at >= '2026-01-28 00:00:00' order by id desc;
select * from inbox_emails where inbox_id = 212
and batch_id = 95885 order by id desc;
select * from email_messages where origin_user_id = 143;
select * from activities where user_id = 143 and updated_at >= '2026-01-28 00:00:00';
select * from participants where activity_id = 620247;
select * from crm_profiles where user_id = 143;
SELECT * FROM activities WHERE uuid_to_bin('458cf915-b914-4000-b083-5687b32b2956') = uuid; # 356001
select * from transcription where activity_id = 356001; # 6943
select * from ai_prompts where transcription_id = 6943;
SELECT * FROM activity_summary_logs where activity_id = 356001;
SELECT * FROM social_accounts WHERE sociable_id = 143;
# [PASSWORD_DOTS]
SELECT * FROM activities WHERE uuid_to_bin('0164a4fb-cb95-454e-9edd-4d804e4999bd') = uuid;
# 422515 softphone tr. 8100
SELECT * FROM activities WHERE uuid_to_bin('7520add8-8d87-41a5-98e5-fc4edf96f21e') = uuid;
# 407509 conference tr. 7670 crmId: 00UD1000002J9aTMAS
select * from ai_prompts where transcription_id IN (8100, 7670);
select * from activity_summary_logs where activity_id = 407509;
select * from sidekick_settings;
select * from default_activity_types;
SELECT * FROM contacts WHERE crm_configuration_id = 39 and email = '[EMAIL]';
SELECT * FROM leads WHERE crm_configuration_id = 39 and email = '[EMAIL]';
SELECT * FROM activity_searches where user_id = 143;
SELECT * FROM groups where team_id = 1;
select * from teams where id = 1;
select * from groups where team_id = 1; # 1150 - 7e75f8025c22
select id, name, group_id, status, deleted_at, email
from users where team_id = 1 order by group_id desc ;
select * from activity_searches where id in (1977, 1978, 1979);
select * from activity_search_filters where activity_search_id IN (1977, 1978, 1979);
select * from activity_search_filters where filter = 'group_id' and value = '443f26b8-8512-437e-a9f9-7e75f8025c22'; # 10268, 10272, 10277
select * from nudges where activity_search_id IN (1977, 1978, 1979); # 877, 878, 879
INSERT INTO `activity_search_filters`
(`activity_search_id`, `filter`, `value`) VALUES
(1977, 'group_id', '443f26b8-8512-437e-a9f9-7e75f8025c22'),
(1978, 'group_id', '443f26b8-8512-437e-a9f9-7e75f8025c22'),
(1979, 'group_id', '443f26b8-8512-437e-a9f9-7e75f8025c22')
;
select * from crm_configurations where id = 39;
select * from teams where id = 1;
select * from team_features where team_id = 1;
select * from features;
SELECT * FROM activity_searches where id = 1982; # 1981
SELECT * FROM activity_search_filters WHERE activity_search_id = 1982;
SELECT * FROM automated_reports where id = 68;
SELECT * FROM automated_report_results where id = 275;
SELECT * FROM automated_reports order by id desc;
SELECT * FROM automated_report_results order by id desc;
select * from activity_searches where user_id = 143;
select * from ask_anything_prompts;
SELECT * FROM groups WHERE id = 1439;
SELECT * FROM users WHERE group_id = 1439;
select * from permissions; # 158
select * from roles;
select * from permission_role
select * from teams where id = 1;
select * from groups g JOIN playbooks p on g.playbook_id = p.id where g.team_id = 1;
select * from groups where id = 28;
select * from playbooks where team_id = 1;
select * from playbooks where id = 179;
select * from playbook_categories where id = 1391;
select * from users where id = 143;
select * from crm_profiles where user_id = 143;
select * from activities where crm_configuration_id = 39 and type = 'conference'
and crm_provider_id IS NOT NULL ORDER by id desc;
select * from activities where id = 422003; # 00UO400000pB6fpMAC
SELECT ar.id, ar.uuid, ar.media_type, ar.status, a.type
FROM automated_report_results ar
JOIN automated_reports a ON a.id = ar.report_id
WHERE a.type = 'ask_jiminny'
LIMIT 10;
select * from teams where id = 3143;
select * from crm_configurations where id = 500;
select * from users where name = 'Integration Account'; # 1695
SELECT * FROM social_accounts WHERE sociable_id = 1695;
select * from activities where crm_configuration_id = 39
and recording_state = 'recorded' and duration > 60
and status = 'completed' and actual_start_time >= '2025-12-01'
SELECT * FROM activities WHERE uuid_to_bin('458cf915-b914-4000-b083-5687b32b2956') = uuid;
Project
Project
New File or Directory…
Expand Selected
Collapse All
Options
Hide...
|
[{"role":"AXButton","text" [{"role":"AXButton","text":"Project: faVsco.js, menu","depth":5,"bounds":{"left":0.025930852,"top":0.019952115,"width":0.03856383,"height":0.025538707},"help_text":"~/jiminny/app","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"#11894 on JY-18909-automated-reports-ask-jiminny, menu","depth":5,"bounds":{"left":0.064494684,"top":0.019952115,"width":0.12134308,"height":0.025538707},"help_text":"Pull request #11894 exists for current branch JY-18909-automated-reports-ask-jiminny","role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Start Listening for PHP Debug Connections","depth":5,"bounds":{"left":0.8081782,"top":0.019952115,"width":0.011303191,"height":0.025538707},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"AskJiminnyReportActivityServiceTest","depth":6,"bounds":{"left":0.8234708,"top":0.019952115,"width":0.09208777,"height":0.025538707},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Run 'AskJiminnyReportActivityServiceTest'","depth":6,"bounds":{"left":0.9155585,"top":0.019952115,"width":0.011303191,"height":0.025538707},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Debug 'AskJiminnyReportActivityServiceTest'","depth":6,"bounds":{"left":0.9268617,"top":0.019952115,"width":0.011303191,"height":0.025538707},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"More Actions","depth":6,"bounds":{"left":0.9381649,"top":0.019952115,"width":0.011303191,"height":0.025538707},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"JetBrains AI","depth":5,"bounds":{"left":0.96609044,"top":0.019952115,"width":0.011303191,"height":0.025538707},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Search Everywhere","depth":5,"bounds":{"left":0.9773936,"top":0.019952115,"width":0.011303191,"height":0.025538707},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"IDE and Project Settings","depth":5,"bounds":{"left":0.9886968,"top":0.019952115,"width":0.011303186,"height":0.025538707},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Code changed:","depth":4,"bounds":{"left":0.27027926,"top":1.0,"width":0.042220745,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Hide","depth":4,"bounds":{"left":0.27027926,"top":1.0,"width":0.008643617,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Sync Changes","depth":4,"bounds":{"left":0.27027926,"top":1.0,"width":0.008643617,"height":0.0},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Hide This Notification","depth":4,"bounds":{"left":0.27027926,"top":1.0,"width":0.008643617,"height":0.0},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"<?php\n\ndeclare(strict_types=1);\n\nnamespace Jiminny\\Console\\Commands\\Reports;\n\nuse Illuminate\\Console\\Command;\nuse Illuminate\\Contracts\\Bus\\Dispatcher as BusDispatcher;\nuse Jiminny\\Jobs\\AutomatedReports\\SendReportJob;\nuse Jiminny\\Models\\AutomatedReportResult;\nuse Jiminny\\Repositories\\AutomatedReportsRepository;\nuse Jiminny\\Services\\Kiosk\\AutomatedReports\\AutomatedReportsService;\nuse Psr\\Log\\LoggerInterface;\nuse Symfony\\Component\\Console\\Command\\Command as CommandAlias;\n\nclass AutomatedReportsSendCommand extends Command\n{\n private const string LOG_PREFIX = '[automated-reports:send]';\n\n /**\n * The name and signature of the console command.\n *\n * @var string\n */\n protected $signature = 'automated-reports:send\n {--result-id= : Force send a specific AutomatedReportResult by ID, bypassing the scheduled time check}';\n\n /**\n * The console command description.\n *\n * @var string\n */\n protected $description = 'Sends automated reports based on user timezone';\n\n\n public function __construct(\n private readonly LoggerInterface $logger,\n private readonly AutomatedReportsRepository $reportRepository,\n private readonly AutomatedReportsService $automatedReportsService,\n private readonly BusDispatcher $dispatcher,\n ) {\n parent::__construct();\n }\n\n /**\n * Execute the console command.\n *\n * @return int\n */\n public function handle(): int\n {\n $resultId = $this->option('result-id');\n\n if ($resultId !== null) {\n return $this->handleForceSend((int) $resultId);\n }\n\n $reportResults = $this->reportRepository->getGeneratedNotSentResults();\n\n foreach ($reportResults as $reportResult) {\n /** @var AutomatedReportResult $reportResult */\n $validRecipients = $this->automatedReportsService->getValidRecipientUsers($reportResult->getReport());\n if ($this->automatedReportsService->shouldSendReport($validRecipients, $reportResult->getGeneratedAt())) {\n $this->logger->info(self::LOG_PREFIX . ' Dispatching job', [\n 'uuid' => $reportResult->getUuid(),\n ]);\n\n $this->dispatcher->dispatch(new SendReportJob($reportResult->getUuid()));\n }\n }\n\n return CommandAlias::SUCCESS;\n }\n\n private function handleForceSend(int $resultId): int\n {\n $reportResult = AutomatedReportResult::find($resultId);\n\n if ($reportResult === null) {\n $this->logger->error(self::LOG_PREFIX . ' Result not found', ['result_id' => $resultId]);\n\n return CommandAlias::FAILURE;\n }\n\n $validRecipients = $this->automatedReportsService->getValidRecipientUsers($reportResult->getReport());\n\n if (empty($validRecipients)) {\n $this->logger->error(self::LOG_PREFIX . ' No valid recipients found', [\n 'result_id' => $resultId,\n 'uuid' => $reportResult->getUuid(),\n ]);\n\n return CommandAlias::FAILURE;\n }\n\n $this->logger->info(self::LOG_PREFIX . ' Force dispatching job', [\n 'result_id' => $resultId,\n 'uuid' => $reportResult->getUuid(),\n ]);\n\n $this->dispatcher->dispatch(new SendReportJob($reportResult->getUuid()));\n\n return CommandAlias::SUCCESS;\n }\n}","depth":4,"bounds":{"left":0.13863032,"top":0.049481247,"width":0.31349733,"height":0.9505187},"value":"<?php\n\ndeclare(strict_types=1);\n\nnamespace Jiminny\\Console\\Commands\\Reports;\n\nuse Illuminate\\Console\\Command;\nuse Illuminate\\Contracts\\Bus\\Dispatcher as BusDispatcher;\nuse Jiminny\\Jobs\\AutomatedReports\\SendReportJob;\nuse Jiminny\\Models\\AutomatedReportResult;\nuse Jiminny\\Repositories\\AutomatedReportsRepository;\nuse Jiminny\\Services\\Kiosk\\AutomatedReports\\AutomatedReportsService;\nuse Psr\\Log\\LoggerInterface;\nuse Symfony\\Component\\Console\\Command\\Command as CommandAlias;\n\nclass AutomatedReportsSendCommand extends Command\n{\n private const string LOG_PREFIX = '[automated-reports:send]';\n\n /**\n * The name and signature of the console command.\n *\n * @var string\n */\n protected $signature = 'automated-reports:send\n {--result-id= : Force send a specific AutomatedReportResult by ID, bypassing the scheduled time check}';\n\n /**\n * The console command description.\n *\n * @var string\n */\n protected $description = 'Sends automated reports based on user timezone';\n\n\n public function __construct(\n private readonly LoggerInterface $logger,\n private readonly AutomatedReportsRepository $reportRepository,\n private readonly AutomatedReportsService $automatedReportsService,\n private readonly BusDispatcher $dispatcher,\n ) {\n parent::__construct();\n }\n\n /**\n * Execute the console command.\n *\n * @return int\n */\n public function handle(): int\n {\n $resultId = $this->option('result-id');\n\n if ($resultId !== null) {\n return $this->handleForceSend((int) $resultId);\n }\n\n $reportResults = $this->reportRepository->getGeneratedNotSentResults();\n\n foreach ($reportResults as $reportResult) {\n /** @var AutomatedReportResult $reportResult */\n $validRecipients = $this->automatedReportsService->getValidRecipientUsers($reportResult->getReport());\n if ($this->automatedReportsService->shouldSendReport($validRecipients, $reportResult->getGeneratedAt())) {\n $this->logger->info(self::LOG_PREFIX . ' Dispatching job', [\n 'uuid' => $reportResult->getUuid(),\n ]);\n\n $this->dispatcher->dispatch(new SendReportJob($reportResult->getUuid()));\n }\n }\n\n return CommandAlias::SUCCESS;\n }\n\n private function handleForceSend(int $resultId): int\n {\n $reportResult = AutomatedReportResult::find($resultId);\n\n if ($reportResult === null) {\n $this->logger->error(self::LOG_PREFIX . ' Result not found', ['result_id' => $resultId]);\n\n return CommandAlias::FAILURE;\n }\n\n $validRecipients = $this->automatedReportsService->getValidRecipientUsers($reportResult->getReport());\n\n if (empty($validRecipients)) {\n $this->logger->error(self::LOG_PREFIX . ' No valid recipients found', [\n 'result_id' => $resultId,\n 'uuid' => $reportResult->getUuid(),\n ]);\n\n return CommandAlias::FAILURE;\n }\n\n $this->logger->info(self::LOG_PREFIX . ' Force dispatching job', [\n 'result_id' => $resultId,\n 'uuid' => $reportResult->getUuid(),\n ]);\n\n $this->dispatcher->dispatch(new SendReportJob($reportResult->getUuid()));\n\n return CommandAlias::SUCCESS;\n }\n}","role_description":"text entry area","is_enabled":true,"is_focused":true,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Execute","depth":4,"bounds":{"left":0.40492022,"top":0.09896249,"width":0.008643617,"height":0.01915403},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Explain Plan","depth":4,"bounds":{"left":0.41356382,"top":0.09896249,"width":0.008643617,"height":0.01915403},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Browse Query History","depth":4,"bounds":{"left":0.4245346,"top":0.09896249,"width":0.008643617,"height":0.01915403},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"View Parameters","depth":4,"bounds":{"left":0.4331782,"top":0.09896249,"width":0.008643617,"height":0.01915403},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Open Query Execution Settings…","depth":4,"bounds":{"left":0.4418218,"top":0.09896249,"width":0.008643617,"height":0.01915403},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"In-Editor Results","depth":4,"bounds":{"left":0.45279256,"top":0.09896249,"width":0.008643617,"height":0.01915403},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Tx: Auto","depth":4,"bounds":{"left":0.4637633,"top":0.09896249,"width":0.024268618,"height":0.01915403},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Cancel Running Statements","depth":4,"bounds":{"left":0.49035904,"top":0.09896249,"width":0.008643617,"height":0.01915403},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Playground","depth":4,"bounds":{"left":0.5013298,"top":0.09896249,"width":0.029587766,"height":0.01915403},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"jiminny","depth":4,"bounds":{"left":0.69913566,"top":0.09896249,"width":0.02825798,"height":0.01915403},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Code changed:","depth":4,"bounds":{"left":0.27027926,"top":1.0,"width":0.042220745,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Hide","depth":4,"bounds":{"left":0.27027926,"top":1.0,"width":0.008643617,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Sync Changes","depth":4,"bounds":{"left":0.27027926,"top":1.0,"width":0.008643617,"height":0.0},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Hide This Notification","depth":4,"bounds":{"left":0.27027926,"top":1.0,"width":0.008643617,"height":0.0},"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"10","depth":4,"bounds":{"left":0.6715425,"top":0.123703115,"width":0.009640957,"height":0.015163607},"role_description":"text"},{"role":"AXStaticText","text":"12","depth":4,"bounds":{"left":0.6831782,"top":0.123703115,"width":0.009640957,"height":0.015163607},"role_description":"text"},{"role":"AXStaticText","text":"2","depth":4,"bounds":{"left":0.69481385,"top":0.123703115,"width":0.007978723,"height":0.015163607},"role_description":"text"},{"role":"AXStaticText","text":"4","depth":4,"bounds":{"left":0.70478725,"top":0.123703115,"width":0.007978723,"height":0.015163607},"role_description":"text"},{"role":"AXButton","text":"Previous Highlighted Error","depth":4,"bounds":{"left":0.7144282,"top":0.12210695,"width":0.00731383,"height":0.018355945},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Next Highlighted Error","depth":4,"bounds":{"left":0.72174203,"top":0.12210695,"width":0.006981383,"height":0.018355945},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXTextArea","text":"SELECT a.id, a.uuid, a.actual_start_time, o.id, o.uuid FROM opportunities o\nJOIN activities a ON o.id = a.opportunity_id\nWHERE a.crm_configuration_id = 39\nAND a.actual_start_time > '2025-10-13'\nAND a.type IN ('conference', 'softphone-inbound', 'softphone-outbound')\n;\n\nSELECT * FROM activities\nWHERE crm_configuration_id = 39 and user_id = 143\nand actual_start_time >= '2025-10-13'\nAND type IN ('conference', 'softphone-inbound', 'softphone-outbound')\n;\n\nSELECT * FROM opportunities WHERE account_id IN (178);\nselect * from activities where id IN (620137, 620187, 620188, 620189, 620230);\n\n# HS\nSELECT * FROM opportunities WHERE id IN (238);\nselect * from activities where id IN (477,2076);\n\nselect * from users;\n\nSELECT COUNT(*) FROM users;\nSELECT COUNT(*) FROM activities;\nSELECT COUNT(*) FROM opportunities;\n\nUPDATE activities\nSET\n actual_start_time = '2025-12-19 09:00:00',\n actual_end_time = '2025-12-19 10:30:00',\n scheduled_start_time = '2025-12-19 09:00:00',\n scheduled_end_time = '2025-12-19 10:30:00'\nWHERE id IN (407509,407375);\n\nselect * from partners;\n\nSELECT id, uuid, type, actual_start_time, user_id, crm_configuration_id\nFROM activities\nWHERE user_id = 143\nAND actual_start_time >= '2025-10-13 00:00:00'\nAND actual_start_time <= '2026-01-13 23:59:59'\nORDER BY actual_start_time DESC;\n\nSELECT * FROM activities WHERE uuid_to_bin('78eda160-3086-435f-88a5-bb0c71b6008d') = uuid;\nSELECT * FROM crm_layouts where crm_configuration_id = 39;\nSELECT * FROM crm_layout_entities WHERE crm_layout_id = 282;\n# lead_id\n# account_id 177\n# contact_id 3969\n# opportunity_id\n# stage_id 203\n\nSELECT * FROM opportunities WHERE opportunities.crm_configuration_id = id = 282;\n\nSELECT * FROM activities where crm_configuration_id = 39 AND type = 'conference'\nAND user_id = 143 and actual_start_time >= '2025-10-13';\n\nSELECT * FROM activities a\n# JOIN opportunities o ON a.opportunity_id = o.id\nWHERE a.crm_configuration_id = 39 AND a.type = 'conference'\nand status = 'completed' and recording_state = 'recorded'\nand a.actual_start_time >= '2025-10-13'\nAND a.user_id = 143\n;\n\nselect * from leads\nwhere crm_configuration_id = 39; # 112 -> ac. 178, 109 => op. 1707\n\nSELECT * FROM activities WHERE id IN (356013,616188,616202,616310,407509,407375,356001,356008);\nSELECT * FROM activities WHERE id IN (356013,616188,616202,616310);\nSELECT * FROM activities WHERE id IN (407509,407375); # leads: 112, 109 | status - 198\nSELECT * FROM activities WHERE id IN (356001, 356008); # contacts:\n\nSELECT * FROM opportunities WHERE id IN (1707);\nSELECT * FROM stages where id IN (204, 198);\nSELECT * FROM opportunities WHERE account_id IN (178);\nSELECT * FROM opportunities WHERE crm_configuration_id = 39 AND created_at > '2025-01-01';\nSELECT * FROM contacts WHERE account_id IN (178); # 4118 Musaibe, 4448 Ceco Personal\n\nSELECT * FROM activities where crm_configuration_id = 39\nAND opportunity_id IS NULL\nAND is_internal = false\nand status = 'completed' and recording_state = 'recorded'\nAND actual_start_time >= '2025-10-13'\nAND (lead_id IS NOT NULL OR contact_id IS NOT NULL OR account_id IS NOT NULL)\n# AND lead_id IN (112, 109)\n;\n\nSELECT * FROM crm_profiles WHERE user_id = 143;\n\nselect * from inboxes; # 212\nselect * from users where id = 143; # 143\nselect * from inbox_email_batches where inbox_id = 212\nand updated_at >= '2026-01-28 00:00:00' order by id desc;\nselect * from inbox_emails where inbox_id = 212\nand batch_id = 95885 order by id desc;\nselect * from email_messages where origin_user_id = 143;\nselect * from activities where user_id = 143 and updated_at >= '2026-01-28 00:00:00';\nselect * from participants where activity_id = 620247;\n\nselect * from crm_profiles where user_id = 143;\n\nSELECT * FROM activities WHERE uuid_to_bin('458cf915-b914-4000-b083-5687b32b2956') = uuid; # 356001\nselect * from transcription where activity_id = 356001; # 6943\nselect * from ai_prompts where transcription_id = 6943;\nSELECT * FROM activity_summary_logs where activity_id = 356001;\n\nSELECT * FROM social_accounts WHERE sociable_id = 143;\n\n# ************************************************************************************\nSELECT * FROM activities WHERE uuid_to_bin('0164a4fb-cb95-454e-9edd-4d804e4999bd') = uuid;\n# 422515 softphone tr. 8100\n\nSELECT * FROM activities WHERE uuid_to_bin('7520add8-8d87-41a5-98e5-fc4edf96f21e') = uuid;\n# 407509 conference tr. 7670 crmId: 00UD1000002J9aTMAS\n\nselect * from ai_prompts where transcription_id IN (8100, 7670);\nselect * from activity_summary_logs where activity_id = 407509;\n\nselect * from sidekick_settings;\nselect * from default_activity_types;\n\nSELECT * FROM contacts WHERE crm_configuration_id = 39 and email = 'm.kogoj@gmx.at';\nSELECT * FROM leads WHERE crm_configuration_id = 39 and email = 'm.kogoj@gmx.at';\n\nSELECT * FROM activity_searches where user_id = 143;\nSELECT * FROM groups where team_id = 1;\n\nselect * from teams where id = 1;\nselect * from groups where team_id = 1; # 1150 - 7e75f8025c22\nselect id, name, group_id, status, deleted_at, email\nfrom users where team_id = 1 order by group_id desc ;\n\nselect * from activity_searches where id in (1977, 1978, 1979);\nselect * from activity_search_filters where activity_search_id IN (1977, 1978, 1979);\nselect * from activity_search_filters where filter = 'group_id' and value = '443f26b8-8512-437e-a9f9-7e75f8025c22'; # 10268, 10272, 10277\nselect * from nudges where activity_search_id IN (1977, 1978, 1979); # 877, 878, 879\n\nINSERT INTO `activity_search_filters`\n(`activity_search_id`, `filter`, `value`) VALUES\n(1977, 'group_id', '443f26b8-8512-437e-a9f9-7e75f8025c22'),\n(1978, 'group_id', '443f26b8-8512-437e-a9f9-7e75f8025c22'),\n(1979, 'group_id', '443f26b8-8512-437e-a9f9-7e75f8025c22')\n;\n\nselect * from crm_configurations where id = 39;\n\nselect * from teams where id = 1;\nselect * from team_features where team_id = 1;\nselect * from features;\n\nSELECT * FROM activity_searches where id = 1982; # 1981\nSELECT * FROM activity_search_filters WHERE activity_search_id = 1982;\n\nSELECT * FROM automated_reports where id = 68;\nSELECT * FROM automated_report_results where id = 275;\n\nSELECT * FROM automated_reports order by id desc;\nSELECT * FROM automated_report_results order by id desc;\nselect * from activity_searches where user_id = 143;\nselect * from ask_anything_prompts;\n\nSELECT * FROM groups WHERE id = 1439;\nSELECT * FROM users WHERE group_id = 1439;\n\nselect * from permissions; # 158\nselect * from roles;\nselect * from permission_role\n\nselect * from teams where id = 1;\nselect * from groups g JOIN playbooks p on g.playbook_id = p.id where g.team_id = 1;\nselect * from groups where id = 28;\nselect * from playbooks where team_id = 1;\nselect * from playbooks where id = 179;\nselect * from playbook_categories where id = 1391;\nselect * from users where id = 143;\nselect * from crm_profiles where user_id = 143;\nselect * from activities where crm_configuration_id = 39 and type = 'conference'\nand crm_provider_id IS NOT NULL ORDER by id desc;\nselect * from activities where id = 422003; # 00UO400000pB6fpMAC\n\nSELECT ar.id, ar.uuid, ar.media_type, ar.status, a.type\nFROM automated_report_results ar\nJOIN automated_reports a ON a.id = ar.report_id\nWHERE a.type = 'ask_jiminny'\nLIMIT 10;\n\n\nselect * from teams where id = 3143;\nselect * from crm_configurations where id = 500;\nselect * from users where name = 'Integration Account'; # 1695\nSELECT * FROM social_accounts WHERE sociable_id = 1695;\n\nselect * from activities where crm_configuration_id = 39\nand recording_state = 'recorded' and duration > 60\nand status = 'completed' and actual_start_time >= '2025-12-01'\n\nSELECT * FROM activities WHERE uuid_to_bin('458cf915-b914-4000-b083-5687b32b2956') = uuid;","depth":4,"value":"SELECT a.id, a.uuid, a.actual_start_time, o.id, o.uuid FROM opportunities o\nJOIN activities a ON o.id = a.opportunity_id\nWHERE a.crm_configuration_id = 39\nAND a.actual_start_time > '2025-10-13'\nAND a.type IN ('conference', 'softphone-inbound', 'softphone-outbound')\n;\n\nSELECT * FROM activities\nWHERE crm_configuration_id = 39 and user_id = 143\nand actual_start_time >= '2025-10-13'\nAND type IN ('conference', 'softphone-inbound', 'softphone-outbound')\n;\n\nSELECT * FROM opportunities WHERE account_id IN (178);\nselect * from activities where id IN (620137, 620187, 620188, 620189, 620230);\n\n# HS\nSELECT * FROM opportunities WHERE id IN (238);\nselect * from activities where id IN (477,2076);\n\nselect * from users;\n\nSELECT COUNT(*) FROM users;\nSELECT COUNT(*) FROM activities;\nSELECT COUNT(*) FROM opportunities;\n\nUPDATE activities\nSET\n actual_start_time = '2025-12-19 09:00:00',\n actual_end_time = '2025-12-19 10:30:00',\n scheduled_start_time = '2025-12-19 09:00:00',\n scheduled_end_time = '2025-12-19 10:30:00'\nWHERE id IN (407509,407375);\n\nselect * from partners;\n\nSELECT id, uuid, type, actual_start_time, user_id, crm_configuration_id\nFROM activities\nWHERE user_id = 143\nAND actual_start_time >= '2025-10-13 00:00:00'\nAND actual_start_time <= '2026-01-13 23:59:59'\nORDER BY actual_start_time DESC;\n\nSELECT * FROM activities WHERE uuid_to_bin('78eda160-3086-435f-88a5-bb0c71b6008d') = uuid;\nSELECT * FROM crm_layouts where crm_configuration_id = 39;\nSELECT * FROM crm_layout_entities WHERE crm_layout_id = 282;\n# lead_id\n# account_id 177\n# contact_id 3969\n# opportunity_id\n# stage_id 203\n\nSELECT * FROM opportunities WHERE opportunities.crm_configuration_id = id = 282;\n\nSELECT * FROM activities where crm_configuration_id = 39 AND type = 'conference'\nAND user_id = 143 and actual_start_time >= '2025-10-13';\n\nSELECT * FROM activities a\n# JOIN opportunities o ON a.opportunity_id = o.id\nWHERE a.crm_configuration_id = 39 AND a.type = 'conference'\nand status = 'completed' and recording_state = 'recorded'\nand a.actual_start_time >= '2025-10-13'\nAND a.user_id = 143\n;\n\nselect * from leads\nwhere crm_configuration_id = 39; # 112 -> ac. 178, 109 => op. 1707\n\nSELECT * FROM activities WHERE id IN (356013,616188,616202,616310,407509,407375,356001,356008);\nSELECT * FROM activities WHERE id IN (356013,616188,616202,616310);\nSELECT * FROM activities WHERE id IN (407509,407375); # leads: 112, 109 | status - 198\nSELECT * FROM activities WHERE id IN (356001, 356008); # contacts:\n\nSELECT * FROM opportunities WHERE id IN (1707);\nSELECT * FROM stages where id IN (204, 198);\nSELECT * FROM opportunities WHERE account_id IN (178);\nSELECT * FROM opportunities WHERE crm_configuration_id = 39 AND created_at > '2025-01-01';\nSELECT * FROM contacts WHERE account_id IN (178); # 4118 Musaibe, 4448 Ceco Personal\n\nSELECT * FROM activities where crm_configuration_id = 39\nAND opportunity_id IS NULL\nAND is_internal = false\nand status = 'completed' and recording_state = 'recorded'\nAND actual_start_time >= '2025-10-13'\nAND (lead_id IS NOT NULL OR contact_id IS NOT NULL OR account_id IS NOT NULL)\n# AND lead_id IN (112, 109)\n;\n\nSELECT * FROM crm_profiles WHERE user_id = 143;\n\nselect * from inboxes; # 212\nselect * from users where id = 143; # 143\nselect * from inbox_email_batches where inbox_id = 212\nand updated_at >= '2026-01-28 00:00:00' order by id desc;\nselect * from inbox_emails where inbox_id = 212\nand batch_id = 95885 order by id desc;\nselect * from email_messages where origin_user_id = 143;\nselect * from activities where user_id = 143 and updated_at >= '2026-01-28 00:00:00';\nselect * from participants where activity_id = 620247;\n\nselect * from crm_profiles where user_id = 143;\n\nSELECT * FROM activities WHERE uuid_to_bin('458cf915-b914-4000-b083-5687b32b2956') = uuid; # 356001\nselect * from transcription where activity_id = 356001; # 6943\nselect * from ai_prompts where transcription_id = 6943;\nSELECT * FROM activity_summary_logs where activity_id = 356001;\n\nSELECT * FROM social_accounts WHERE sociable_id = 143;\n\n# ************************************************************************************\nSELECT * FROM activities WHERE uuid_to_bin('0164a4fb-cb95-454e-9edd-4d804e4999bd') = uuid;\n# 422515 softphone tr. 8100\n\nSELECT * FROM activities WHERE uuid_to_bin('7520add8-8d87-41a5-98e5-fc4edf96f21e') = uuid;\n# 407509 conference tr. 7670 crmId: 00UD1000002J9aTMAS\n\nselect * from ai_prompts where transcription_id IN (8100, 7670);\nselect * from activity_summary_logs where activity_id = 407509;\n\nselect * from sidekick_settings;\nselect * from default_activity_types;\n\nSELECT * FROM contacts WHERE crm_configuration_id = 39 and email = 'm.kogoj@gmx.at';\nSELECT * FROM leads WHERE crm_configuration_id = 39 and email = 'm.kogoj@gmx.at';\n\nSELECT * FROM activity_searches where user_id = 143;\nSELECT * FROM groups where team_id = 1;\n\nselect * from teams where id = 1;\nselect * from groups where team_id = 1; # 1150 - 7e75f8025c22\nselect id, name, group_id, status, deleted_at, email\nfrom users where team_id = 1 order by group_id desc ;\n\nselect * from activity_searches where id in (1977, 1978, 1979);\nselect * from activity_search_filters where activity_search_id IN (1977, 1978, 1979);\nselect * from activity_search_filters where filter = 'group_id' and value = '443f26b8-8512-437e-a9f9-7e75f8025c22'; # 10268, 10272, 10277\nselect * from nudges where activity_search_id IN (1977, 1978, 1979); # 877, 878, 879\n\nINSERT INTO `activity_search_filters`\n(`activity_search_id`, `filter`, `value`) VALUES\n(1977, 'group_id', '443f26b8-8512-437e-a9f9-7e75f8025c22'),\n(1978, 'group_id', '443f26b8-8512-437e-a9f9-7e75f8025c22'),\n(1979, 'group_id', '443f26b8-8512-437e-a9f9-7e75f8025c22')\n;\n\nselect * from crm_configurations where id = 39;\n\nselect * from teams where id = 1;\nselect * from team_features where team_id = 1;\nselect * from features;\n\nSELECT * FROM activity_searches where id = 1982; # 1981\nSELECT * FROM activity_search_filters WHERE activity_search_id = 1982;\n\nSELECT * FROM automated_reports where id = 68;\nSELECT * FROM automated_report_results where id = 275;\n\nSELECT * FROM automated_reports order by id desc;\nSELECT * FROM automated_report_results order by id desc;\nselect * from activity_searches where user_id = 143;\nselect * from ask_anything_prompts;\n\nSELECT * FROM groups WHERE id = 1439;\nSELECT * FROM users WHERE group_id = 1439;\n\nselect * from permissions; # 158\nselect * from roles;\nselect * from permission_role\n\nselect * from teams where id = 1;\nselect * from groups g JOIN playbooks p on g.playbook_id = p.id where g.team_id = 1;\nselect * from groups where id = 28;\nselect * from playbooks where team_id = 1;\nselect * from playbooks where id = 179;\nselect * from playbook_categories where id = 1391;\nselect * from users where id = 143;\nselect * from crm_profiles where user_id = 143;\nselect * from activities where crm_configuration_id = 39 and type = 'conference'\nand crm_provider_id IS NOT NULL ORDER by id desc;\nselect * from activities where id = 422003; # 00UO400000pB6fpMAC\n\nSELECT ar.id, ar.uuid, ar.media_type, ar.status, a.type\nFROM automated_report_results ar\nJOIN automated_reports a ON a.id = ar.report_id\nWHERE a.type = 'ask_jiminny'\nLIMIT 10;\n\n\nselect * from teams where id = 3143;\nselect * from crm_configurations where id = 500;\nselect * from users where name = 'Integration Account'; # 1695\nSELECT * FROM social_accounts WHERE sociable_id = 1695;\n\nselect * from activities where crm_configuration_id = 39\nand recording_state = 'recorded' and duration > 60\nand status = 'completed' and actual_start_time >= '2025-12-01'\n\nSELECT * FROM activities WHERE uuid_to_bin('458cf915-b914-4000-b083-5687b32b2956') = uuid;","role_description":"text entry area","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Project","depth":3,"role_description":"text"},{"role":"AXButton","text":"Project","depth":3,"bounds":{"left":0.011968086,"top":0.047885075,"width":0.024268618,"height":0.024740623},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"New File or Directory…","depth":4,"bounds":{"left":0.27027926,"top":1.0,"width":0.008643617,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Expand Selected","depth":4,"bounds":{"left":0.27027926,"top":1.0,"width":0.008643617,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Collapse All","depth":4,"bounds":{"left":0.27027926,"top":1.0,"width":0.008643617,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Options","depth":4,"bounds":{"left":0.27027926,"top":1.0,"width":0.008643617,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Hide","depth":4,"bounds":{"left":0.27027926,"top":1.0,"width":0.008643617,"height":0.0},"role_description":"button","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false}]...
|
-8992718661005252248
|
6830445021720089157
|
click
|
accessibility
|
NULL
|
Project: faVsco.js, menu
#11894 on JY-18909-automa Project: faVsco.js, menu
#11894 on JY-18909-automated-reports-ask-jiminny, menu
Start Listening for PHP Debug Connections
AskJiminnyReportActivityServiceTest
Run 'AskJiminnyReportActivityServiceTest'
Debug 'AskJiminnyReportActivityServiceTest'
More Actions
JetBrains AI
Search Everywhere
IDE and Project Settings
Code changed:
Hide
Sync Changes
Hide This Notification
<?php
declare(strict_types=1);
namespace Jiminny\Console\Commands\Reports;
use Illuminate\Console\Command;
use Illuminate\Contracts\Bus\Dispatcher as BusDispatcher;
use Jiminny\Jobs\AutomatedReports\SendReportJob;
use Jiminny\Models\AutomatedReportResult;
use Jiminny\Repositories\AutomatedReportsRepository;
use Jiminny\Services\Kiosk\AutomatedReports\AutomatedReportsService;
use Psr\Log\LoggerInterface;
use Symfony\Component\Console\Command\Command as CommandAlias;
class AutomatedReportsSendCommand extends Command
{
private const string LOG_PREFIX = '[automated-reports:send]';
/**
* The name and signature of the console command.
*
* @var string
*/
protected $signature = 'automated-reports:send
{--result-id= : Force send a specific AutomatedReportResult by ID, bypassing the scheduled time check}';
/**
* The console command description.
*
* @var string
*/
protected $description = 'Sends automated reports based on user timezone';
public function __construct(
private readonly LoggerInterface $logger,
private readonly AutomatedReportsRepository $reportRepository,
private readonly AutomatedReportsService $automatedReportsService,
private readonly BusDispatcher $dispatcher,
) {
parent::__construct();
}
/**
* Execute the console command.
*
* @return int
*/
public function handle(): int
{
$resultId = $this->option('result-id');
if ($resultId !== null) {
return $this->handleForceSend((int) $resultId);
}
$reportResults = $this->reportRepository->getGeneratedNotSentResults();
foreach ($reportResults as $reportResult) {
/** @var AutomatedReportResult $reportResult */
$validRecipients = $this->automatedReportsService->getValidRecipientUsers($reportResult->getReport());
if ($this->automatedReportsService->shouldSendReport($validRecipients, $reportResult->getGeneratedAt())) {
$this->logger->info(self::LOG_PREFIX . ' Dispatching job', [
'uuid' => $reportResult->getUuid(),
]);
$this->dispatcher->dispatch(new SendReportJob($reportResult->getUuid()));
}
}
return CommandAlias::SUCCESS;
}
private function handleForceSend(int $resultId): int
{
$reportResult = AutomatedReportResult::find($resultId);
if ($reportResult === null) {
$this->logger->error(self::LOG_PREFIX . ' Result not found', ['result_id' => $resultId]);
return CommandAlias::FAILURE;
}
$validRecipients = $this->automatedReportsService->getValidRecipientUsers($reportResult->getReport());
if (empty($validRecipients)) {
$this->logger->error(self::LOG_PREFIX . ' No valid recipients found', [
'result_id' => $resultId,
'uuid' => $reportResult->getUuid(),
]);
return CommandAlias::FAILURE;
}
$this->logger->info(self::LOG_PREFIX . ' Force dispatching job', [
'result_id' => $resultId,
'uuid' => $reportResult->getUuid(),
]);
$this->dispatcher->dispatch(new SendReportJob($reportResult->getUuid()));
return CommandAlias::SUCCESS;
}
}
Execute
Explain Plan
Browse Query History
View Parameters
Open Query Execution Settings…
In-Editor Results
Tx: Auto
Cancel Running Statements
Playground
jiminny
Code changed:
Hide
Sync Changes
Hide This Notification
10
12
2
4
Previous Highlighted Error
Next Highlighted Error
SELECT a.id, a.uuid, a.actual_start_time, o.id, o.uuid FROM opportunities o
JOIN activities a ON o.id = a.opportunity_id
WHERE a.crm_configuration_id = 39
AND a.actual_start_time > '2025-10-13'
AND a.type IN ('conference', 'softphone-inbound', 'softphone-outbound')
;
SELECT * FROM activities
WHERE crm_configuration_id = 39 and user_id = 143
and actual_start_time >= '2025-10-13'
AND type IN ('conference', 'softphone-inbound', 'softphone-outbound')
;
SELECT * FROM opportunities WHERE account_id IN (178);
select * from activities where id IN (620137, 620187, 620188, 620189, 620230);
# HS
SELECT * FROM opportunities WHERE id IN (238);
select * from activities where id IN (477,2076);
select * from users;
SELECT COUNT(*) FROM users;
SELECT COUNT(*) FROM activities;
SELECT COUNT(*) FROM opportunities;
UPDATE activities
SET
actual_start_time = '2025-12-19 09:00:00',
actual_end_time = '2025-12-19 10:30:00',
scheduled_start_time = '2025-12-19 09:00:00',
scheduled_end_time = '2025-12-19 10:30:00'
WHERE id IN (407509,407375);
select * from partners;
SELECT id, uuid, type, actual_start_time, user_id, crm_configuration_id
FROM activities
WHERE user_id = 143
AND actual_start_time >= '2025-10-13 00:00:00'
AND actual_start_time <= '2026-01-13 23:59:59'
ORDER BY actual_start_time DESC;
SELECT * FROM activities WHERE uuid_to_bin('78eda160-3086-435f-88a5-bb0c71b6008d') = uuid;
SELECT * FROM crm_layouts where crm_configuration_id = 39;
SELECT * FROM crm_layout_entities WHERE crm_layout_id = 282;
# lead_id
# account_id 177
# contact_id 3969
# opportunity_id
# stage_id 203
SELECT * FROM opportunities WHERE opportunities.crm_configuration_id = id = 282;
SELECT * FROM activities where crm_configuration_id = 39 AND type = 'conference'
AND user_id = 143 and actual_start_time >= '2025-10-13';
SELECT * FROM activities a
# JOIN opportunities o ON a.opportunity_id = o.id
WHERE a.crm_configuration_id = 39 AND a.type = 'conference'
and status = 'completed' and recording_state = 'recorded'
and a.actual_start_time >= '2025-10-13'
AND a.user_id = 143
;
select * from leads
where crm_configuration_id = 39; # 112 -> ac. 178, 109 => op. 1707
SELECT * FROM activities WHERE id IN (356013,616188,616202,616310,407509,407375,356001,356008);
SELECT * FROM activities WHERE id IN (356013,616188,616202,616310);
SELECT * FROM activities WHERE id IN (407509,407375); # leads: 112, 109 | status - 198
SELECT * FROM activities WHERE id IN (356001, 356008); # contacts:
SELECT * FROM opportunities WHERE id IN (1707);
SELECT * FROM stages where id IN (204, 198);
SELECT * FROM opportunities WHERE account_id IN (178);
SELECT * FROM opportunities WHERE crm_configuration_id = 39 AND created_at > '2025-01-01';
SELECT * FROM contacts WHERE account_id IN (178); # 4118 Musaibe, 4448 Ceco Personal
SELECT * FROM activities where crm_configuration_id = 39
AND opportunity_id IS NULL
AND is_internal = false
and status = 'completed' and recording_state = 'recorded'
AND actual_start_time >= '2025-10-13'
AND (lead_id IS NOT NULL OR contact_id IS NOT NULL OR account_id IS NOT NULL)
# AND lead_id IN (112, 109)
;
SELECT * FROM crm_profiles WHERE user_id = 143;
select * from inboxes; # 212
select * from users where id = 143; # 143
select * from inbox_email_batches where inbox_id = 212
and updated_at >= '2026-01-28 00:00:00' order by id desc;
select * from inbox_emails where inbox_id = 212
and batch_id = 95885 order by id desc;
select * from email_messages where origin_user_id = 143;
select * from activities where user_id = 143 and updated_at >= '2026-01-28 00:00:00';
select * from participants where activity_id = 620247;
select * from crm_profiles where user_id = 143;
SELECT * FROM activities WHERE uuid_to_bin('458cf915-b914-4000-b083-5687b32b2956') = uuid; # 356001
select * from transcription where activity_id = 356001; # 6943
select * from ai_prompts where transcription_id = 6943;
SELECT * FROM activity_summary_logs where activity_id = 356001;
SELECT * FROM social_accounts WHERE sociable_id = 143;
# [PASSWORD_DOTS]
SELECT * FROM activities WHERE uuid_to_bin('0164a4fb-cb95-454e-9edd-4d804e4999bd') = uuid;
# 422515 softphone tr. 8100
SELECT * FROM activities WHERE uuid_to_bin('7520add8-8d87-41a5-98e5-fc4edf96f21e') = uuid;
# 407509 conference tr. 7670 crmId: 00UD1000002J9aTMAS
select * from ai_prompts where transcription_id IN (8100, 7670);
select * from activity_summary_logs where activity_id = 407509;
select * from sidekick_settings;
select * from default_activity_types;
SELECT * FROM contacts WHERE crm_configuration_id = 39 and email = '[EMAIL]';
SELECT * FROM leads WHERE crm_configuration_id = 39 and email = '[EMAIL]';
SELECT * FROM activity_searches where user_id = 143;
SELECT * FROM groups where team_id = 1;
select * from teams where id = 1;
select * from groups where team_id = 1; # 1150 - 7e75f8025c22
select id, name, group_id, status, deleted_at, email
from users where team_id = 1 order by group_id desc ;
select * from activity_searches where id in (1977, 1978, 1979);
select * from activity_search_filters where activity_search_id IN (1977, 1978, 1979);
select * from activity_search_filters where filter = 'group_id' and value = '443f26b8-8512-437e-a9f9-7e75f8025c22'; # 10268, 10272, 10277
select * from nudges where activity_search_id IN (1977, 1978, 1979); # 877, 878, 879
INSERT INTO `activity_search_filters`
(`activity_search_id`, `filter`, `value`) VALUES
(1977, 'group_id', '443f26b8-8512-437e-a9f9-7e75f8025c22'),
(1978, 'group_id', '443f26b8-8512-437e-a9f9-7e75f8025c22'),
(1979, 'group_id', '443f26b8-8512-437e-a9f9-7e75f8025c22')
;
select * from crm_configurations where id = 39;
select * from teams where id = 1;
select * from team_features where team_id = 1;
select * from features;
SELECT * FROM activity_searches where id = 1982; # 1981
SELECT * FROM activity_search_filters WHERE activity_search_id = 1982;
SELECT * FROM automated_reports where id = 68;
SELECT * FROM automated_report_results where id = 275;
SELECT * FROM automated_reports order by id desc;
SELECT * FROM automated_report_results order by id desc;
select * from activity_searches where user_id = 143;
select * from ask_anything_prompts;
SELECT * FROM groups WHERE id = 1439;
SELECT * FROM users WHERE group_id = 1439;
select * from permissions; # 158
select * from roles;
select * from permission_role
select * from teams where id = 1;
select * from groups g JOIN playbooks p on g.playbook_id = p.id where g.team_id = 1;
select * from groups where id = 28;
select * from playbooks where team_id = 1;
select * from playbooks where id = 179;
select * from playbook_categories where id = 1391;
select * from users where id = 143;
select * from crm_profiles where user_id = 143;
select * from activities where crm_configuration_id = 39 and type = 'conference'
and crm_provider_id IS NOT NULL ORDER by id desc;
select * from activities where id = 422003; # 00UO400000pB6fpMAC
SELECT ar.id, ar.uuid, ar.media_type, ar.status, a.type
FROM automated_report_results ar
JOIN automated_reports a ON a.id = ar.report_id
WHERE a.type = 'ask_jiminny'
LIMIT 10;
select * from teams where id = 3143;
select * from crm_configurations where id = 500;
select * from users where name = 'Integration Account'; # 1695
SELECT * FROM social_accounts WHERE sociable_id = 1695;
select * from activities where crm_configuration_id = 39
and recording_state = 'recorded' and duration > 60
and status = 'completed' and actual_start_time >= '2025-12-01'
SELECT * FROM activities WHERE uuid_to_bin('458cf915-b914-4000-b083-5687b32b2956') = uuid;
Project
Project
New File or Directory…
Expand Selected
Collapse All
Options
Hide...
|
54766
|
|
44006
|
931
|
83
|
2026-04-17T08:29:23.335977+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-17/1776 /Users/lukas/.screenpipe/data/data/2026-04-17/1776414563335_m1.jpg...
|
Firefox
|
Developers | HubSpot — Work
|
1
|
app.hubspot.com/developer/2752939/application/3848 app.hubspot.com/developer/2752939/application/38484/monitoring/webhooks?objectTypeIds=0-3&subscriptionTypes=deal.creation&subscriptionTypes=deal.propertyChange&subscriptionTypes=deal.associationChange...
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
Workers | Datadog
Developers | HubSpot
Developers Workers | Datadog
Developers | HubSpot
Developers | HubSpot
Close tab
Inbox (1,574) - [EMAIL] - Jiminny Mail
Inbox (1,574) - [EMAIL] - Jiminny Mail
Inbox (3,737) - [EMAIL] - Jiminny Mail
Inbox (3,737) - [EMAIL] - Jiminny Mail
New Tab
Customize sidebar
Open Google Gemini (⌃X)
Tabs from other devices
Open history (⇧⌘H)
Open bookmarks (⌘B)
HubSpot logo
Find or Ask
⌘
K
Create new
Scroll up
Scroll down
Back to all apps
Back to all apps
Jiminny
Jiminny
Created by
Jiminny #127
Jiminny
#
127
Basic info
Basic info
Contact & support
Contact & support
Monitoring
Monitoring
Features
Features
CRM cards
CRM cards
UI extensions BETA
UI extensions
BETA
Timeline events
Timeline events
Webhooks
Webhooks
App settings
App settings
More features
More features
API calls
API calls
Webhooks
Webhooks
App settings
App settings
UI extensions BETA
UI extensions
BETA
Log traces BETA
Log traces
BETA
OAuth
OAuth
Filter by:
Deal Close
Deal
Close
deal.creation Close deal.propertyChange Close deal.associationChange Close
deal.creation
Close
deal.propertyChange
Close
deal.associationChange
Close
Status
Status
Start date
End date
04/12/2026
to
04/17/2026
Log ID
Log ID
Search by log ID
Export logs (CSV)
Export logs (CSV)
STATUS
SUBSCRIPTION TYPE...
|
[{"role":"AXRadioButton","text [{"role":"AXRadioButton","text":"Workers | Datadog","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"Developers | HubSpot","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":true},{"role":"AXStaticText","text":"Developers | HubSpot","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Close tab","depth":5,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"Inbox (1,574) - lukas.kovalik@jiminny.com - Jiminny Mail","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Inbox (1,574) - lukas.kovalik@jiminny.com - Jiminny Mail","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Inbox (3,737) - integration-account@jiminny.com - Jiminny Mail","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Inbox (3,737) - integration-account@jiminny.com - Jiminny Mail","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"New Tab","depth":4,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Customize sidebar","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open Google Gemini (⌃X)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Tabs from other devices","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open history (⇧⌘H)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open bookmarks (⌘B)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXLink","text":"HubSpot logo","depth":9,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXTextField","text":"Find or Ask","depth":11,"help_text":"","role_description":"search text field","subrole":"AXSearchField","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"⌘","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"K","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXMenuButton","text":"Create new","depth":9,"help_text":"","role_description":"menu button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Scroll up","depth":9,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Scroll down","depth":9,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXLink","text":"Back to all apps","depth":10,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Back to all apps","depth":12,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXHeading","text":"Jiminny","depth":10,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Jiminny","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Created by","depth":10,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"Jiminny #127","depth":10,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Jiminny","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"#","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"127","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"Basic info","depth":12,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Basic info","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"Contact & support","depth":12,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Contact & support","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"Monitoring","depth":12,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":true},{"role":"AXStaticText","text":"Monitoring","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXHeading","text":"Features","depth":10,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Features","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"CRM cards","depth":12,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"CRM cards","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"UI extensions BETA","depth":12,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"UI extensions","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"BETA","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"Timeline events","depth":12,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Timeline events","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"Webhooks","depth":12,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":true},{"role":"AXStaticText","text":"Webhooks","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"App settings","depth":12,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"App settings","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"More features","depth":12,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"More features","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"API calls","depth":12,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"API calls","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"Webhooks","depth":12,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Webhooks","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"App settings","depth":12,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"App settings","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"UI extensions BETA","depth":12,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"UI extensions","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"BETA","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"Log traces BETA","depth":12,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Log traces","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"BETA","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"OAuth","depth":12,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"OAuth","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Filter by:","depth":11,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXMenuButton","text":"Deal Close","depth":12,"help_text":"","role_description":"menu button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Deal","depth":21,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Close","depth":16,"role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXMenuButton","text":"deal.creation Close deal.propertyChange Close deal.associationChange Close","depth":12,"help_text":"","role_description":"menu button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"deal.creation","depth":21,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Close","depth":16,"role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"deal.propertyChange","depth":21,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Close","depth":16,"role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"deal.associationChange","depth":21,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Close","depth":16,"role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXMenuButton","text":"Status","depth":12,"help_text":"","role_description":"menu button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Status","depth":15,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Start date","depth":12,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"End date","depth":12,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXTextField","text":"04/12/2026","depth":12,"value":"04/12/2026","help_text":"","placeholder":"MM/DD/YYYY","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"to","depth":12,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXTextField","text":"04/17/2026","depth":12,"value":"04/17/2026","help_text":"","placeholder":"MM/DD/YYYY","role_description":"text field","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXMenuButton","text":"Log ID","depth":12,"help_text":"","role_description":"menu button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Log ID","depth":18,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXTextField","text":"Search by log ID","depth":12,"help_text":"","role_description":"search text field","subrole":"AXSearchField","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Export logs (CSV)","depth":11,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Export logs (CSV)","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"STATUS","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"SUBSCRIPTION TYPE","depth":13,"help_text":"","role_description":"text","subrole":"AXUnknown"}]...
|
-8992373757141163385
|
-4880353125295942771
|
visual_change
|
accessibility
|
NULL
|
Workers | Datadog
Developers | HubSpot
Developers Workers | Datadog
Developers | HubSpot
Developers | HubSpot
Close tab
Inbox (1,574) - [EMAIL] - Jiminny Mail
Inbox (1,574) - [EMAIL] - Jiminny Mail
Inbox (3,737) - [EMAIL] - Jiminny Mail
Inbox (3,737) - [EMAIL] - Jiminny Mail
New Tab
Customize sidebar
Open Google Gemini (⌃X)
Tabs from other devices
Open history (⇧⌘H)
Open bookmarks (⌘B)
HubSpot logo
Find or Ask
⌘
K
Create new
Scroll up
Scroll down
Back to all apps
Back to all apps
Jiminny
Jiminny
Created by
Jiminny #127
Jiminny
#
127
Basic info
Basic info
Contact & support
Contact & support
Monitoring
Monitoring
Features
Features
CRM cards
CRM cards
UI extensions BETA
UI extensions
BETA
Timeline events
Timeline events
Webhooks
Webhooks
App settings
App settings
More features
More features
API calls
API calls
Webhooks
Webhooks
App settings
App settings
UI extensions BETA
UI extensions
BETA
Log traces BETA
Log traces
BETA
OAuth
OAuth
Filter by:
Deal Close
Deal
Close
deal.creation Close deal.propertyChange Close deal.associationChange Close
deal.creation
Close
deal.propertyChange
Close
deal.associationChange
Close
Status
Status
Start date
End date
04/12/2026
to
04/17/2026
Log ID
Log ID
Search by log ID
Export logs (CSV)
Export logs (CSV)
STATUS
SUBSCRIPTION TYPE...
|
44004
|
|
42986
|
916
|
12
|
2026-04-17T07:46:57.033284+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-17/1776 /Users/lukas/.screenpipe/data/data/2026-04-17/1776412017033_m1.jpg...
|
PhpStorm
|
faVsco.js – OpportunitySyncTrait.php
|
1
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
FirefoxFileEditViewHistory→BookmarksProfilesToolsW FirefoxFileEditViewHistory→BookmarksProfilesToolsWindowHelp>•.(alolBackend Chapter • 44 m leftmeet.google.com/gjc-ikxu-wxu?authuser=lukas.kovalik%40jiminny.comNikolay Nikolov (Presenting, annotating)Platform Sprint 2 Q2 - Platform Tea[SRD-6793] Les Mills activity typeProblem loading pageSymfony|Component|Debug\ExcepCloudWatch | us-east-2Configure SSH access to multiple e*• FM17 Aor 10:40Jiminny Ine~= backendcsure tiekets= confusion-clinic= curiosity. lab# engineeringO fies8 BockomarksE Open Positions8 Benehts$2 Pins₴rikeovanoreNesterday -Hi team, thanks to @Nikolay Yarkov when dependabot finds security vulnerabilities. PRs are open like the above SI sugpest that developers on SRD from both teams review and test them, so that they can be merged timelyaPS$ISlack= prophet-dev= random= releases= support= thank-yous= the.people_of_jiminny6 Direct messagesA Aneliya Angelova, Ilan Kyachukov #2. Lukas Kovalik +N2. Mario GeongieyP,M• #11970 fudsecurityl: composer dependency updates - 2026-04-15 (secfix/composer- 28260415)|llian Kyuchukov 1028We have a broken loop of syncing Stage changes for two cfents, which results in non-stop requests to Prophet (which costs moneyHas there been any changes to the logic?opportunity_stagesopportunity_id - 7594349 hax 10267 recordsMessage #enginceringAa10:46 AM ||Backend Chapter100% (42• 8• Fri 17 Apr 10:46:56Lukas Kovalik...
|
NULL
|
-8992347828549896598
|
NULL
|
app_switch
|
ocr
|
NULL
|
FirefoxFileEditViewHistory→BookmarksProfilesToolsW FirefoxFileEditViewHistory→BookmarksProfilesToolsWindowHelp>•.(alolBackend Chapter • 44 m leftmeet.google.com/gjc-ikxu-wxu?authuser=lukas.kovalik%40jiminny.comNikolay Nikolov (Presenting, annotating)Platform Sprint 2 Q2 - Platform Tea[SRD-6793] Les Mills activity typeProblem loading pageSymfony|Component|Debug\ExcepCloudWatch | us-east-2Configure SSH access to multiple e*• FM17 Aor 10:40Jiminny Ine~= backendcsure tiekets= confusion-clinic= curiosity. lab# engineeringO fies8 BockomarksE Open Positions8 Benehts$2 Pins₴rikeovanoreNesterday -Hi team, thanks to @Nikolay Yarkov when dependabot finds security vulnerabilities. PRs are open like the above SI sugpest that developers on SRD from both teams review and test them, so that they can be merged timelyaPS$ISlack= prophet-dev= random= releases= support= thank-yous= the.people_of_jiminny6 Direct messagesA Aneliya Angelova, Ilan Kyachukov #2. Lukas Kovalik +N2. Mario GeongieyP,M• #11970 fudsecurityl: composer dependency updates - 2026-04-15 (secfix/composer- 28260415)|llian Kyuchukov 1028We have a broken loop of syncing Stage changes for two cfents, which results in non-stop requests to Prophet (which costs moneyHas there been any changes to the logic?opportunity_stagesopportunity_id - 7594349 hax 10267 recordsMessage #enginceringAa10:46 AM ||Backend Chapter100% (42• 8• Fri 17 Apr 10:46:56Lukas Kovalik...
|
NULL
|
|
38019
|
778
|
51
|
2026-04-16T12:59:23.392035+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-16/1776 /Users/lukas/.screenpipe/data/data/2026-04-16/1776344363392_m1.jpg...
|
Boosteroid
|
Boosteroid
|
1
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
ClaudeFileEditViewWindowHelpC$O l 0100% <47Thu ClaudeFileEditViewWindowHelpC$O l 0100% <47Thu 16 Apr 15:59:23-zshDOCKER881Last login: Thu Apr 16 15:48:11 on ttys009DEV (-zsh)882APP (-zsh)*3-zsh• $84-zshPoetry could not find a pyproject.toml file in /Users/lukas or its parentsPoetry could not find a pyproject.toml file in /Users/lukas or its parentslukas@Lukas-Kovaliks-MacBook-Pro-Jiminny~S sqlite3 ~/.screenpipe/db.sqlite "SELECT app_name, window_name FROM ocr_text WHERE app_name LIKE "%Safari%" OR window_name LIKE "%Boostroid%"ORDER BY created_at DESC LIMIT 20;"Error: in prepare, no such column: created_atari%' OR window_name LIKE "%Boosteroid%' ORDER BY created_at DESC LIMIT 20;error here--^Lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT app_name, window_name FROM ocr_text WHERE app_name LIKE "%Safari%' OR window_name LIKE "%Boostroid%'ORDER BYcreated_at DESC LIMIT 20;"Error: in prepare, no such column: created_atari%' OR window_name LIKE '%Boosteroid%' ORDER BY created_at DESC LIMIT 20;error here ---^lukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT app_name, window_name FROM ocr_text WHERE app_name LIKE "%Safari%' OR window_name LIKE "%Boostroid%' ORDER BYcreated_at DESC LIMIT 20;"Error: in prepare, no such column: created_atari%' OR window_name LIKE '%Boosteroid%' ORDER BY created_at DESC LIMIT 20;error here ---лlukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ U...
|
NULL
|
-8992312142812776987
|
NULL
|
click
|
ocr
|
NULL
|
ClaudeFileEditViewWindowHelpC$O l 0100% <47Thu ClaudeFileEditViewWindowHelpC$O l 0100% <47Thu 16 Apr 15:59:23-zshDOCKER881Last login: Thu Apr 16 15:48:11 on ttys009DEV (-zsh)882APP (-zsh)*3-zsh• $84-zshPoetry could not find a pyproject.toml file in /Users/lukas or its parentsPoetry could not find a pyproject.toml file in /Users/lukas or its parentslukas@Lukas-Kovaliks-MacBook-Pro-Jiminny~S sqlite3 ~/.screenpipe/db.sqlite "SELECT app_name, window_name FROM ocr_text WHERE app_name LIKE "%Safari%" OR window_name LIKE "%Boostroid%"ORDER BY created_at DESC LIMIT 20;"Error: in prepare, no such column: created_atari%' OR window_name LIKE "%Boosteroid%' ORDER BY created_at DESC LIMIT 20;error here--^Lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT app_name, window_name FROM ocr_text WHERE app_name LIKE "%Safari%' OR window_name LIKE "%Boostroid%'ORDER BYcreated_at DESC LIMIT 20;"Error: in prepare, no such column: created_atari%' OR window_name LIKE '%Boosteroid%' ORDER BY created_at DESC LIMIT 20;error here ---^lukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sqlite3 ~/.screenpipe/db.sqlite "SELECT app_name, window_name FROM ocr_text WHERE app_name LIKE "%Safari%' OR window_name LIKE "%Boostroid%' ORDER BYcreated_at DESC LIMIT 20;"Error: in prepare, no such column: created_atari%' OR window_name LIKE '%Boosteroid%' ORDER BY created_at DESC LIMIT 20;error here ---лlukas®Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ U...
|
NULL
|
|
17154
|
373
|
67
|
2026-04-14T15:39:03.006413+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776181143006_m2.jpg...
|
Boosteroid
|
Boosteroid
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
76916866348/80-Pikeman Created----Warning: You are 76916866348/80-Pikeman Created----Warning: You are being attacked byPlayer 5 Danylo Kobiakovych!!!---Ballistics Research Complete----Longbowman Created-Right-click to mine for stone. Build a MiningCamp nearby to gather stone faster.Castle AgeGame Paused (P)5 Danylo Kobiakovych: 3818/38186 Prithviraj Chauhan: 3650/36508 Ellac the Hun: 3546/35467 Vikramaditya I: 3413/34133 Mari Djata I: 3413/3413 6 IYekuno Amlak: 3328/3328 Ikovaliklukas: 2802/28024 Wen Tianxiang: 2562/2562...
|
NULL
|
-8991723720283249436
|
NULL
|
click
|
ocr
|
NULL
|
76916866348/80-Pikeman Created----Warning: You are 76916866348/80-Pikeman Created----Warning: You are being attacked byPlayer 5 Danylo Kobiakovych!!!---Ballistics Research Complete----Longbowman Created-Right-click to mine for stone. Build a MiningCamp nearby to gather stone faster.Castle AgeGame Paused (P)5 Danylo Kobiakovych: 3818/38186 Prithviraj Chauhan: 3650/36508 Ellac the Hun: 3546/35467 Vikramaditya I: 3413/34133 Mari Djata I: 3413/3413 6 IYekuno Amlak: 3328/3328 Ikovaliklukas: 2802/28024 Wen Tianxiang: 2562/2562...
|
NULL
|
|
15101
|
338
|
18
|
2026-04-14T14:23:26.829426+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776176606829_m1.jpg...
|
NULL
|
NULL
|
1
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
FirefoxFileEdit→ViewHistoryBookmarksProfilesToolsW FirefoxFileEdit→ViewHistoryBookmarksProfilesToolsWindowHelpmeet.google.com/bdj-nvho-br1ah|sinny.comRetro - Platform • 52 m left100% C8 • Tue 14 Apr 17:23:26=22:34õ0Aneliya AngelovaNikolay YankovSteliyan GeorgievNikolay IvanovLukas Kovalik5:23 PM | Retro - PlatformLộ3...
|
NULL
|
-8991332899217939807
|
NULL
|
click
|
ocr
|
NULL
|
FirefoxFileEdit→ViewHistoryBookmarksProfilesToolsW FirefoxFileEdit→ViewHistoryBookmarksProfilesToolsWindowHelpmeet.google.com/bdj-nvho-br1ah|sinny.comRetro - Platform • 52 m left100% C8 • Tue 14 Apr 17:23:26=22:34õ0Aneliya AngelovaNikolay YankovSteliyan GeorgievNikolay IvanovLukas Kovalik5:23 PM | Retro - PlatformLộ3...
|
15099
|
|
78099
|
1973
|
26
|
2026-04-24T11:00:20.918394+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-24/1777 /Users/lukas/.screenpipe/data/data/2026-04-24/1777028420918_m1.jpg...
|
Firefox
|
Meet — Work
|
1
|
meet.google.com/axk-zwsm-vok?authuser=lukas.kovali meet.google.com/axk-zwsm-vok?authuser=lukas.kovalik%40jiminny.com...
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
Platform Sprint 2 Q2 - Platform Team - Scrum Board Platform Sprint 2 Q2 - Platform Team - Scrum Board - Jira
JY-20489 | Optimize Nudges - Phase 2 by yalokin-jiminny · Pull Request #11997 · jiminny/app
JY-20489 | Optimize Nudges - Phase 2 by yalokin-jiminny · Pull Request #11997 · jiminny/app
New Tab
New Tab
AI reports promotion pages by nikolay-yankov · Pull Request #11998 · jiminny/app
AI reports promotion pages by nikolay-yankov · Pull Request #11998 · jiminny/app
JY-20738 add debug logs on AJ report UP tracking by LakyLak · Pull Request #12013 · jiminny/app
JY-20738 add debug logs on AJ report UP tracking by LakyLak · Pull Request #12013 · jiminny/app
JY-20157 add not enough activities notification by LakyLak · Pull Request #12011 · jiminny/app
JY-20157 add not enough activities notification by LakyLak · Pull Request #12011 · jiminny/app
Jiminny
Jiminny
Userpilot | Nudge-created
Userpilot | Nudge-created
Pipelines - jiminny/app
Pipelines - jiminny/app
Your 'Not enpough activities' report wasn't generated - [EMAIL] - Jiminny Mail
Your 'Not enpough activities' report wasn't generated - [EMAIL] - Jiminny Mail
Login | Salesforce
Login | Salesforce
Symfony\Component\Debug\Exception\FatalThrowableError: League\Flysystem\Filesystem::has(): Argument #1 ($location) must be of type string, null given, called in /home/jiminny/vendor/laravel/framework/src/Illuminate/Filesystem/FilesystemAdapter.php on line
Symfony\Component\Debug\Exception\FatalThrowableError: League\Flysystem\Filesystem::has(): Argument #1 ($location) must be of type string, null given, called in /home/jiminny/vendor/laravel/framework/src/Illuminate/Filesystem/FilesystemAdapter.php on line
Meet
Meet
Close tab
New Tab
Customize sidebar
Open Google Gemini (⌃X)
Tabs from other devices
Open history (⇧⌘H)
Open bookmarks (⌘B)
Return to home screen
[EMAIL]
Switch account
Switch account
Speaker: System Default Speaker Device
Lukas/Stefka 121
Lukas/Stefka 121
No one else is here
Join now
Join now
Other ways to join
Gemini is available in Meet as your personal in-meeting assistant. It can analyze conversation via temporary access to meeting captions. Using Ask Gemini won't create a recording or store meeting data. The meeting host can turn it off.
Learn more
Learn more...
|
[{"role":"AXRadioButton","text [{"role":"AXRadioButton","text":"Platform Sprint 2 Q2 - Platform Team - Scrum Board - Jira","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"JY-20489 | Optimize Nudges - Phase 2 by yalokin-jiminny · Pull Request #11997 · jiminny/app","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"JY-20489 | Optimize Nudges - Phase 2 by yalokin-jiminny · Pull Request #11997 · jiminny/app","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"New Tab","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"New Tab","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"AI reports promotion pages by nikolay-yankov · Pull Request #11998 · jiminny/app","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"AI reports promotion pages by nikolay-yankov · Pull Request #11998 · jiminny/app","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"JY-20738 add debug logs on AJ report UP tracking by LakyLak · Pull Request #12013 · jiminny/app","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"JY-20738 add debug logs on AJ report UP tracking by LakyLak · Pull Request #12013 · jiminny/app","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"JY-20157 add not enough activities notification by LakyLak · Pull Request #12011 · jiminny/app","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"JY-20157 add not enough activities notification by LakyLak · Pull Request #12011 · jiminny/app","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Jiminny","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Jiminny","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Userpilot | Nudge-created","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Userpilot | Nudge-created","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Pipelines - jiminny/app","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Pipelines - jiminny/app","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Your 'Not enpough activities' report wasn't generated - lukas.kovalik@jiminny.com - Jiminny Mail","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Your 'Not enpough activities' report wasn't generated - lukas.kovalik@jiminny.com - Jiminny Mail","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Login | Salesforce","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Login | Salesforce","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Symfony\\Component\\Debug\\Exception\\FatalThrowableError: League\\Flysystem\\Filesystem::has(): Argument #1 ($location) must be of type string, null given, called in /home/jiminny/vendor/laravel/framework/src/Illuminate/Filesystem/FilesystemAdapter.php on line","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Symfony\\Component\\Debug\\Exception\\FatalThrowableError: League\\Flysystem\\Filesystem::has(): Argument #1 ($location) must be of type string, null given, called in /home/jiminny/vendor/laravel/framework/src/Illuminate/Filesystem/FilesystemAdapter.php on line","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Meet","depth":4,"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":true},{"role":"AXStaticText","text":"Meet","depth":5,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Close tab","depth":5,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"New Tab","depth":4,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Customize sidebar","depth":6,"bounds":{"left":0.0,"top":0.0,"width":0.022222223,"height":0.035555556},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open Google Gemini (⌃X)","depth":6,"bounds":{"left":0.0,"top":0.0,"width":0.022222223,"height":0.035555556},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Tabs from other devices","depth":6,"bounds":{"left":0.0,"top":0.0,"width":0.022222223,"height":0.035555556},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open history (⇧⌘H)","depth":6,"bounds":{"left":0.0,"top":0.0,"width":0.022222223,"height":0.035555556},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open bookmarks (⌘B)","depth":6,"bounds":{"left":0.016666668,"top":0.0,"width":0.022222223,"height":0.035555556},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXLink","text":"Return to home screen","depth":10,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"lukas.kovalik@jiminny.com","depth":12,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"Switch account","depth":11,"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Switch account","depth":12,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Speaker: System Default Speaker Device","depth":12,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXHeading","text":"Lukas/Stefka 121","depth":12,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Lukas/Stefka 121","depth":15,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"No one else is here","depth":14,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Join now","depth":13,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":true,"is_selected":false},{"role":"AXStaticText","text":"Join now","depth":15,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Other ways to join","depth":13,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Gemini is available in Meet as your personal in-meeting assistant. It can analyze conversation via temporary access to meeting captions. Using Ask Gemini won't create a recording or store meeting data. The meeting host can turn it off.","depth":12,"bounds":{"left":0.58402777,"top":0.0,"width":0.41597223,"height":0.055},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"Learn more","depth":12,"bounds":{"left":0.8357639,"top":0.0,"width":0.049652778,"height":0.018333333},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Learn more","depth":13,"bounds":{"left":0.8357639,"top":0.0,"width":0.049652778,"height":0.018333333},"help_text":"","role_description":"text","subrole":"AXUnknown"}]...
|
-8991167390359306827
|
-7053904272102034742
|
click
|
accessibility
|
NULL
|
Platform Sprint 2 Q2 - Platform Team - Scrum Board Platform Sprint 2 Q2 - Platform Team - Scrum Board - Jira
JY-20489 | Optimize Nudges - Phase 2 by yalokin-jiminny · Pull Request #11997 · jiminny/app
JY-20489 | Optimize Nudges - Phase 2 by yalokin-jiminny · Pull Request #11997 · jiminny/app
New Tab
New Tab
AI reports promotion pages by nikolay-yankov · Pull Request #11998 · jiminny/app
AI reports promotion pages by nikolay-yankov · Pull Request #11998 · jiminny/app
JY-20738 add debug logs on AJ report UP tracking by LakyLak · Pull Request #12013 · jiminny/app
JY-20738 add debug logs on AJ report UP tracking by LakyLak · Pull Request #12013 · jiminny/app
JY-20157 add not enough activities notification by LakyLak · Pull Request #12011 · jiminny/app
JY-20157 add not enough activities notification by LakyLak · Pull Request #12011 · jiminny/app
Jiminny
Jiminny
Userpilot | Nudge-created
Userpilot | Nudge-created
Pipelines - jiminny/app
Pipelines - jiminny/app
Your 'Not enpough activities' report wasn't generated - [EMAIL] - Jiminny Mail
Your 'Not enpough activities' report wasn't generated - [EMAIL] - Jiminny Mail
Login | Salesforce
Login | Salesforce
Symfony\Component\Debug\Exception\FatalThrowableError: League\Flysystem\Filesystem::has(): Argument #1 ($location) must be of type string, null given, called in /home/jiminny/vendor/laravel/framework/src/Illuminate/Filesystem/FilesystemAdapter.php on line
Symfony\Component\Debug\Exception\FatalThrowableError: League\Flysystem\Filesystem::has(): Argument #1 ($location) must be of type string, null given, called in /home/jiminny/vendor/laravel/framework/src/Illuminate/Filesystem/FilesystemAdapter.php on line
Meet
Meet
Close tab
New Tab
Customize sidebar
Open Google Gemini (⌃X)
Tabs from other devices
Open history (⇧⌘H)
Open bookmarks (⌘B)
Return to home screen
[EMAIL]
Switch account
Switch account
Speaker: System Default Speaker Device
Lukas/Stefka 121
Lukas/Stefka 121
No one else is here
Join now
Join now
Other ways to join
Gemini is available in Meet as your personal in-meeting assistant. It can analyze conversation via temporary access to meeting captions. Using Ask Gemini won't create a recording or store meeting data. The meeting host can turn it off.
Learn more
Learn more...
|
78097
|
|
78100
|
1974
|
25
|
2026-04-24T11:00:20.993764+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-24/1777 /Users/lukas/.screenpipe/data/data/2026-04-24/1777028420993_m2.jpg...
|
Firefox
|
Meet — Work
|
1
|
meet.google.com/axk-zwsm-vok?authuser=lukas.kovali meet.google.com/axk-zwsm-vok?authuser=lukas.kovalik%40jiminny.com...
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
Platform Sprint 2 Q2 - Platform Team - Scrum Board Platform Sprint 2 Q2 - Platform Team - Scrum Board - Jira
JY-20489 | Optimize Nudges - Phase 2 by yalokin-jiminny · Pull Request #11997 · jiminny/app
JY-20489 | Optimize Nudges - Phase 2 by yalokin-jiminny · Pull Request #11997 · jiminny/app
New Tab
New Tab
AI reports promotion pages by nikolay-yankov · Pull Request #11998 · jiminny/app
AI reports promotion pages by nikolay-yankov · Pull Request #11998 · jiminny/app
JY-20738 add debug logs on AJ report UP tracking by LakyLak · Pull Request #12013 · jiminny/app
JY-20738 add debug logs on AJ report UP tracking by LakyLak · Pull Request #12013 · jiminny/app
JY-20157 add not enough activities notification by LakyLak · Pull Request #12011 · jiminny/app
JY-20157 add not enough activities notification by LakyLak · Pull Request #12011 · jiminny/app
Jiminny
Jiminny
Userpilot | Nudge-created
Userpilot | Nudge-created
Pipelines - jiminny/app
Pipelines - jiminny/app
Your 'Not enpough activities' report wasn't generated - [EMAIL] - Jiminny Mail
Your 'Not enpough activities' report wasn't generated - [EMAIL] - Jiminny Mail
Login | Salesforce
Login | Salesforce
Symfony\Component\Debug\Exception\FatalThrowableError: League\Flysystem\Filesystem::has(): Argument #1 ($location) must be of type string, null given, called in /home/jiminny/vendor/laravel/framework/src/Illuminate/Filesystem/FilesystemAdapter.php on line
Symfony\Component\Debug\Exception\FatalThrowableError: League\Flysystem\Filesystem::has(): Argument #1 ($location) must be of type string, null given, called in /home/jiminny/vendor/laravel/framework/src/Illuminate/Filesystem/FilesystemAdapter.php on line
Meet
Meet
Close tab
New Tab
Customize sidebar
Open Google Gemini (⌃X)
Tabs from other devices
Open history (⇧⌘H)
Open bookmarks (⌘B)
Return to home screen
[EMAIL]
Switch account
Switch account
Speaker: System Default Speaker Device
Lukas/Stefka 121
Lukas/Stefka 121
No one else is here
Join now
Join now
Other ways to join
Gemini is available in Meet as your personal in-meeting assistant. It can analyze conversation via temporary access to meeting captions. Using Ask Gemini won't create a recording or store meeting data. The meeting host can turn it off.
Learn more
Learn more...
|
[{"role":"AXRadioButton","text [{"role":"AXRadioButton","text":"Platform Sprint 2 Q2 - Platform Team - Scrum Board - Jira","depth":4,"bounds":{"left":0.23287898,"top":0.0518755,"width":0.07596409,"height":0.032721467},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXRadioButton","text":"JY-20489 | Optimize Nudges - Phase 2 by yalokin-jiminny · Pull Request #11997 · jiminny/app","depth":4,"bounds":{"left":0.23105054,"top":0.09497207,"width":0.07962101,"height":0.032721467},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"JY-20489 | Optimize Nudges - Phase 2 by yalokin-jiminny · Pull Request #11997 · jiminny/app","depth":5,"bounds":{"left":0.2443484,"top":0.10614525,"width":0.1619016,"height":0.010774142},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"New Tab","depth":4,"bounds":{"left":0.23105054,"top":0.12769353,"width":0.07962101,"height":0.032721467},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"New Tab","depth":5,"bounds":{"left":0.2443484,"top":0.13886672,"width":0.014960106,"height":0.010774142},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"AI reports promotion pages by nikolay-yankov · Pull Request #11998 · jiminny/app","depth":4,"bounds":{"left":0.23105054,"top":0.16041501,"width":0.07962101,"height":0.032721467},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"AI reports promotion pages by nikolay-yankov · Pull Request #11998 · jiminny/app","depth":5,"bounds":{"left":0.2443484,"top":0.17158818,"width":0.14128989,"height":0.010774142},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"JY-20738 add debug logs on AJ report UP tracking by LakyLak · Pull Request #12013 · jiminny/app","depth":4,"bounds":{"left":0.23105054,"top":0.19313647,"width":0.07962101,"height":0.032721467},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"JY-20738 add debug logs on AJ report UP tracking by LakyLak · Pull Request #12013 · jiminny/app","depth":5,"bounds":{"left":0.2443484,"top":0.20430966,"width":0.17087767,"height":0.010774142},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"JY-20157 add not enough activities notification by LakyLak · Pull Request #12011 · jiminny/app","depth":4,"bounds":{"left":0.23105054,"top":0.22585794,"width":0.07962101,"height":0.032721467},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"JY-20157 add not enough activities notification by LakyLak · Pull Request #12011 · jiminny/app","depth":5,"bounds":{"left":0.2443484,"top":0.23703113,"width":0.16356383,"height":0.010774142},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Jiminny","depth":4,"bounds":{"left":0.23105054,"top":0.2585794,"width":0.07962101,"height":0.032721467},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Jiminny","depth":5,"bounds":{"left":0.2443484,"top":0.2697526,"width":0.013131649,"height":0.010774142},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Userpilot | Nudge-created","depth":4,"bounds":{"left":0.23105054,"top":0.29130086,"width":0.07962101,"height":0.032721467},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Userpilot | Nudge-created","depth":5,"bounds":{"left":0.2443484,"top":0.30247405,"width":0.04537899,"height":0.010774142},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Pipelines - jiminny/app","depth":4,"bounds":{"left":0.23105054,"top":0.32402235,"width":0.07962101,"height":0.032721467},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Pipelines - jiminny/app","depth":5,"bounds":{"left":0.2443484,"top":0.33519554,"width":0.039228722,"height":0.010774142},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Your 'Not enpough activities' report wasn't generated - lukas.kovalik@jiminny.com - Jiminny Mail","depth":4,"bounds":{"left":0.23105054,"top":0.3567438,"width":0.07962101,"height":0.032721467},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Your 'Not enpough activities' report wasn't generated - lukas.kovalik@jiminny.com - Jiminny Mail","depth":5,"bounds":{"left":0.2443484,"top":0.367917,"width":0.16821809,"height":0.010774142},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Login | Salesforce","depth":4,"bounds":{"left":0.23105054,"top":0.38946527,"width":0.07962101,"height":0.032721467},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Login | Salesforce","depth":5,"bounds":{"left":0.2443484,"top":0.40063846,"width":0.030917553,"height":0.010774142},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Symfony\\Component\\Debug\\Exception\\FatalThrowableError: League\\Flysystem\\Filesystem::has(): Argument #1 ($location) must be of type string, null given, called in /home/jiminny/vendor/laravel/framework/src/Illuminate/Filesystem/FilesystemAdapter.php on line","depth":4,"bounds":{"left":0.23105054,"top":0.42218676,"width":0.07962101,"height":0.032721467},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Symfony\\Component\\Debug\\Exception\\FatalThrowableError: League\\Flysystem\\Filesystem::has(): Argument #1 ($location) must be of type string, null given, called in /home/jiminny/vendor/laravel/framework/src/Illuminate/Filesystem/FilesystemAdapter.php on line","depth":5,"bounds":{"left":0.2443484,"top":0.43335995,"width":0.45462102,"height":0.010774142},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXRadioButton","text":"Meet","depth":4,"bounds":{"left":0.23105054,"top":0.45411015,"width":0.07962101,"height":0.032721467},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":true},{"role":"AXStaticText","text":"Meet","depth":5,"bounds":{"left":0.2443484,"top":0.46528333,"width":0.008643617,"height":0.010774142},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Close tab","depth":5,"bounds":{"left":0.29837102,"top":0.4612929,"width":0.007978723,"height":0.01915403},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"New Tab","depth":4,"bounds":{"left":0.23387633,"top":0.48922586,"width":0.07413564,"height":0.025538707},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Customize sidebar","depth":6,"bounds":{"left":0.23387633,"top":0.97007185,"width":0.010638298,"height":0.025538707},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open Google Gemini (⌃X)","depth":6,"bounds":{"left":0.24484707,"top":0.97007185,"width":0.010638298,"height":0.025538707},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Tabs from other devices","depth":6,"bounds":{"left":0.25598404,"top":0.97007185,"width":0.010638298,"height":0.025538707},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open history (⇧⌘H)","depth":6,"bounds":{"left":0.26712102,"top":0.97007185,"width":0.010638298,"height":0.025538707},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open bookmarks (⌘B)","depth":6,"bounds":{"left":0.27825797,"top":0.97007185,"width":0.010638298,"height":0.025538707},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXLink","text":"Return to home screen","depth":10,"bounds":{"left":0.3159907,"top":0.06464485,"width":0.034906916,"height":0.031923383},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"lukas.kovalik@jiminny.com","depth":12,"bounds":{"left":0.9227061,"top":0.06584198,"width":0.055684842,"height":0.0131683955},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"Switch account","depth":11,"bounds":{"left":0.9488032,"top":0.079010375,"width":0.029587766,"height":0.012769354},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Switch account","depth":12,"bounds":{"left":0.9488032,"top":0.079010375,"width":0.029587766,"height":0.012769354},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Speaker: System Default Speaker Device","depth":12,"bounds":{"left":0.53789896,"top":0.6711891,"width":0.08028591,"height":0.025538707},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXHeading","text":"Lukas/Stefka 121","depth":12,"bounds":{"left":0.70644945,"top":0.41340783,"width":0.14893617,"height":0.028731046},"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Lukas/Stefka 121","depth":15,"bounds":{"left":0.7468417,"top":0.41340783,"width":0.06798537,"height":0.028731046},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"No one else is here","depth":14,"bounds":{"left":0.75980717,"top":0.46209097,"width":0.042054523,"height":0.014764565},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Join now","depth":13,"bounds":{"left":0.74102396,"top":0.49002394,"width":0.07978723,"height":0.044692736},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":true,"is_selected":false},{"role":"AXStaticText","text":"Join now","depth":15,"bounds":{"left":0.77111036,"top":0.5051876,"width":0.019448139,"height":0.014764565},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Other ways to join","depth":13,"bounds":{"left":0.74983376,"top":0.55706304,"width":0.06200133,"height":0.031923383},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Gemini is available in Meet as your personal in-meeting assistant. It can analyze conversation via temporary access to meeting captions. Using Ask Gemini won't create a recording or store meeting data. The meeting host can turn it off.","depth":12,"bounds":{"left":0.54986703,"top":0.9281724,"width":0.22390293,"height":0.039505187},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXLink","text":"Learn more","depth":12,"bounds":{"left":0.670379,"top":0.9545092,"width":0.023769947,"height":0.0131683955},"help_text":"","role_description":"link","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Learn more","depth":13,"bounds":{"left":0.670379,"top":0.9545092,"width":0.023769947,"height":0.0131683955},"help_text":"","role_description":"text","subrole":"AXUnknown"}]...
|
-8991167390359306827
|
-7053904272102034742
|
click
|
accessibility
|
NULL
|
Platform Sprint 2 Q2 - Platform Team - Scrum Board Platform Sprint 2 Q2 - Platform Team - Scrum Board - Jira
JY-20489 | Optimize Nudges - Phase 2 by yalokin-jiminny · Pull Request #11997 · jiminny/app
JY-20489 | Optimize Nudges - Phase 2 by yalokin-jiminny · Pull Request #11997 · jiminny/app
New Tab
New Tab
AI reports promotion pages by nikolay-yankov · Pull Request #11998 · jiminny/app
AI reports promotion pages by nikolay-yankov · Pull Request #11998 · jiminny/app
JY-20738 add debug logs on AJ report UP tracking by LakyLak · Pull Request #12013 · jiminny/app
JY-20738 add debug logs on AJ report UP tracking by LakyLak · Pull Request #12013 · jiminny/app
JY-20157 add not enough activities notification by LakyLak · Pull Request #12011 · jiminny/app
JY-20157 add not enough activities notification by LakyLak · Pull Request #12011 · jiminny/app
Jiminny
Jiminny
Userpilot | Nudge-created
Userpilot | Nudge-created
Pipelines - jiminny/app
Pipelines - jiminny/app
Your 'Not enpough activities' report wasn't generated - [EMAIL] - Jiminny Mail
Your 'Not enpough activities' report wasn't generated - [EMAIL] - Jiminny Mail
Login | Salesforce
Login | Salesforce
Symfony\Component\Debug\Exception\FatalThrowableError: League\Flysystem\Filesystem::has(): Argument #1 ($location) must be of type string, null given, called in /home/jiminny/vendor/laravel/framework/src/Illuminate/Filesystem/FilesystemAdapter.php on line
Symfony\Component\Debug\Exception\FatalThrowableError: League\Flysystem\Filesystem::has(): Argument #1 ($location) must be of type string, null given, called in /home/jiminny/vendor/laravel/framework/src/Illuminate/Filesystem/FilesystemAdapter.php on line
Meet
Meet
Close tab
New Tab
Customize sidebar
Open Google Gemini (⌃X)
Tabs from other devices
Open history (⇧⌘H)
Open bookmarks (⌘B)
Return to home screen
[EMAIL]
Switch account
Switch account
Speaker: System Default Speaker Device
Lukas/Stefka 121
Lukas/Stefka 121
No one else is here
Join now
Join now
Other ways to join
Gemini is available in Meet as your personal in-meeting assistant. It can analyze conversation via temporary access to meeting captions. Using Ask Gemini won't create a recording or store meeting data. The meeting host can turn it off.
Learn more
Learn more...
|
78098
|
|
34772
|
706
|
10
|
2026-04-16T09:09:58.032270+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-16/1776 /Users/lukas/.screenpipe/data/data/2026-04-16/1776330598032_m1.jpg...
|
NULL
|
NULL
|
1
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
FirefoxFileEditViewHistoryBookmarksProfilesToolsWi FirefoxFileEditViewHistoryBookmarksProfilesToolsWindowHelp(aolSupport Daily • in 2h 51 m100% <478Thu 16 Apr 12:09:57-zshDOCKER• 812026-04-16711:26:15.500463Z2026-04-16T11:26:26.014153Z2026-04-16T11:31:28.731069Z\nFROM\nframes \nWHERE\nd=2.600208041s2026-04-16T11:31:28.732839Z2026-04-16T11:31:33.926759Z2026-04-16T11:31:48.403273Z2026-04-16T11:36:43.378402Z2026-04-16T11:36:48.650708Z2026-04-16711:36:52.354970Z2026-04-16T11:36:58.18176772026-04-16T11:36:58.523722Z2026-04-16111:37:20.17021922026-04-16T11:37:56.882597Z2026-04-16T11:42:00.309082Z\nFROM\nframes\nWHERE\nd-1.772983458s2026-04-16T11:42:00.309197Z2026-04-16T11:42:03.033086Z2026-04-16711:42:07.608266Z2026-04-16T11:47:07.854850Z2026-04-16T11:47:09.544446Z2026-04-16111:47:12.78591122026-04-16T11:50:53.949646Z2026-04-16T11:52:16.266043Z\nFROM\nframes\nWHERE\n=3.464891083s2026-04-16T11:52:16.266769Z2026-04-16T11:52:19.048528Z2026-04-16711:52:24.793563Z2026-04-16T11:57:24.972375Z2026-04-16T11:57:27.250981Z2026-04-16T11:57:30.491852Z2026-04-16T12:02:32.932960Z\nFROM\nframes\nWHERE\nd=2.425023041s2026-04-16T12:02:32.933357Z2026-04-16T12:02:39.409221Z2026-04-16T12:02:54.944437Z2026-04-16712:05:57.651378Z2026-04-16T12:07:55.052631Z2026-04-16T12:07:55.949632Z2026-04-16T12:07:56.805212ZDEV (docker)282APP (-zsh)83ec2-user@ip-10-30-...84-zsh• 85-zsh86-zsh₴7* Unable to acce...O 88INFOscreenpipe_engine::snapshot_compaction:snapshotcompaction:32 frames,12.1MBdeletedINFOscreenpipe_engine::snapshot_compaction:compaction:+ 2.4MB (5.0x), 32 JPEGSsnapshot80 frames,13.4MBWARN→ 6.4MB (2.1x),80 JPEGSdeletedsqlx::query:summary="SELECT id,snapshot_path, device_name,."db.statement="\n\nSELECT\n id,\nsnapshot_path, \ndevice_name, \ntimestampsnapshot_path IS NOT NULL\nAND timestamp < ?1\nORDER BY\ndevice_name, \ntimestamp ASC\nLIMIT\n5000\n" rows_affected-0 rows_returned-128 elapseINFOscreenpipe_engine::snapshot_compaction:snapshotcompaction: found 128eligible framesINFOscreenpipe_engine::snapshot_compaction:snapshotINFOcompaction: 40 frames, 11.9MB → 2.6MB (4.6x), 40 JPEGs deletedscreenpipe_engine::snapshot_compaction: snapshotcompaction:86 frames,19.OMB→ 6.3MB (3.0x), 86 JPEGs deletedINFOscreenpipe_engine::event_driven_capture:contentdedup:skipping capture for monitor 2 (hash=-8093524035767003282, trigger=visual_change)INFOscreenpipe_engine::snapshot_compaction: snapshotcompaction:found 164 eligible framesINFOscreenpipe_engine::snapshot_compaction:snapshotcompaction: 62 frames,INFOscreenpipe_engine::snapshot_compaction:20.4MB → 2.3MB (9.1x), 62 JPEGs deletedsnapshotcompaction: 99 frames,17.2MB→ 5.3MB (3.2x), 99 JPEGSdeletedINFOscreenpipe_engine::snapshot_compaction:snapshotcompaction: 1 frames,0.3MB → 0.4MB (0.8x),1 JPEGSdeletedINFOscreenpipe_engine::event_driven_capture:contentdedup:skipping capturefor monitor 2 (hash=-8093524035767003282, trigger=visual_change)INFOWARNscreenpipe_engine::event_driven_capture:contentdedup:skipping capture for monitor 2 (hash=-8093524035767003282, trigger=visual_change)sqlx::query:summary="SELECT id,snapshot_path,device_name, .."db.statement="\n\nSELECT\n id,\nsnapshot_path, \ndevice_name, intimestampsnapshot_path IS NOT NULL\nAND timestamp < ?1\nORDER BY\ndevice_name, \ntimestamp ASC\nLIMIT\n5000\n" rows_affected-0 rows_returned-102 elapseINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 102 eligible framesINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 42 frames, 13.9MB + 3.1MB (4.5x), 42 JPEGs deletedINFOscreenpipe_engine::snapshot_compaction: snapshotINFOcompaction: 57 frames, 12.6MB → 6.2MB (2.0x), 57 JPEGs deletedscreenpipe_engine::snapshot_compaction: snapshotcompaction: found 70 eligible framesINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 26 frames, 8.8MB 1.0MB (9.2x), 26 JPEGs deletedINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 42 frames, 10.5MB → 4.7MB (2.2x), 42 JPEGs deletedINFOscreenpipe_engine::event_driven_capture: content dedup:skipping capture for monitor 1 (hash=-7465795543963075308, trigger=click)WARNsqlx:: query:summary="SELECT id,snapshot_path, device_name,db.statement="\n\nSELECT\nsnapshot_path, \ndevice_name, \ntimestampsnapshot_path IS NOT NULL\nAND timestamp < ?1\nORDER BY\ndevice_name, \ntimestamp ASC\nLIMIT\n5000\n" rows_affected-0 rows_returned-61 elapsedINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible framesINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 28 frames, 9.6MB 1.4MB (6.7x),INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 8.9MB → 2.1MB (4.2x), 31 JPEGs deletede (6. 70), 3а е:28 JPEGs deletedINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 33eligible framesINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 5.2MB → 1.1MB (4.8x), 15 JPEGs deletedINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 4.6MB→ 1.2MB (3.8x), 16 JPEGs deletedWARNsqlx:: query:summary="SELECT id, snapshot_path, device_name, ."db.statement="\n\nSELECT\nid, \nsnapshot_path, \n device_name, \ntimestampsnapshot_path IS NOT NULL\nAND timestamp < ?1\nORDER BY\n device_name, \ntimestamp ASC\nLIMIT\n5000\n" rows_affected-0 rows_returned-112 elapseINFOscreenpipe_engine::snapshot_compaction: snapshotcompaction: found 112 eligible framesINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 49 frames, 14.5MB + 2.7MB (5.4x), 49 JPEGs deletedINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 13.6MB + 4.6MB (2.9x), 61 JPEGs deletedINFOINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7465795543963075308, trigger=click)screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible framesINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames,3.4MB → 0.8MB (4.4x), 10 JPEGs deletedINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.7MB → 0.4MB (6.4x), 10 JPEGs deleted...
|
NULL
|
-8991051845474405492
|
NULL
|
click
|
ocr
|
NULL
|
FirefoxFileEditViewHistoryBookmarksProfilesToolsWi FirefoxFileEditViewHistoryBookmarksProfilesToolsWindowHelp(aolSupport Daily • in 2h 51 m100% <478Thu 16 Apr 12:09:57-zshDOCKER• 812026-04-16711:26:15.500463Z2026-04-16T11:26:26.014153Z2026-04-16T11:31:28.731069Z\nFROM\nframes \nWHERE\nd=2.600208041s2026-04-16T11:31:28.732839Z2026-04-16T11:31:33.926759Z2026-04-16T11:31:48.403273Z2026-04-16T11:36:43.378402Z2026-04-16T11:36:48.650708Z2026-04-16711:36:52.354970Z2026-04-16T11:36:58.18176772026-04-16T11:36:58.523722Z2026-04-16111:37:20.17021922026-04-16T11:37:56.882597Z2026-04-16T11:42:00.309082Z\nFROM\nframes\nWHERE\nd-1.772983458s2026-04-16T11:42:00.309197Z2026-04-16T11:42:03.033086Z2026-04-16711:42:07.608266Z2026-04-16T11:47:07.854850Z2026-04-16T11:47:09.544446Z2026-04-16111:47:12.78591122026-04-16T11:50:53.949646Z2026-04-16T11:52:16.266043Z\nFROM\nframes\nWHERE\n=3.464891083s2026-04-16T11:52:16.266769Z2026-04-16T11:52:19.048528Z2026-04-16711:52:24.793563Z2026-04-16T11:57:24.972375Z2026-04-16T11:57:27.250981Z2026-04-16T11:57:30.491852Z2026-04-16T12:02:32.932960Z\nFROM\nframes\nWHERE\nd=2.425023041s2026-04-16T12:02:32.933357Z2026-04-16T12:02:39.409221Z2026-04-16T12:02:54.944437Z2026-04-16712:05:57.651378Z2026-04-16T12:07:55.052631Z2026-04-16T12:07:55.949632Z2026-04-16T12:07:56.805212ZDEV (docker)282APP (-zsh)83ec2-user@ip-10-30-...84-zsh• 85-zsh86-zsh₴7* Unable to acce...O 88INFOscreenpipe_engine::snapshot_compaction:snapshotcompaction:32 frames,12.1MBdeletedINFOscreenpipe_engine::snapshot_compaction:compaction:+ 2.4MB (5.0x), 32 JPEGSsnapshot80 frames,13.4MBWARN→ 6.4MB (2.1x),80 JPEGSdeletedsqlx::query:summary="SELECT id,snapshot_path, device_name,."db.statement="\n\nSELECT\n id,\nsnapshot_path, \ndevice_name, \ntimestampsnapshot_path IS NOT NULL\nAND timestamp < ?1\nORDER BY\ndevice_name, \ntimestamp ASC\nLIMIT\n5000\n" rows_affected-0 rows_returned-128 elapseINFOscreenpipe_engine::snapshot_compaction:snapshotcompaction: found 128eligible framesINFOscreenpipe_engine::snapshot_compaction:snapshotINFOcompaction: 40 frames, 11.9MB → 2.6MB (4.6x), 40 JPEGs deletedscreenpipe_engine::snapshot_compaction: snapshotcompaction:86 frames,19.OMB→ 6.3MB (3.0x), 86 JPEGs deletedINFOscreenpipe_engine::event_driven_capture:contentdedup:skipping capture for monitor 2 (hash=-8093524035767003282, trigger=visual_change)INFOscreenpipe_engine::snapshot_compaction: snapshotcompaction:found 164 eligible framesINFOscreenpipe_engine::snapshot_compaction:snapshotcompaction: 62 frames,INFOscreenpipe_engine::snapshot_compaction:20.4MB → 2.3MB (9.1x), 62 JPEGs deletedsnapshotcompaction: 99 frames,17.2MB→ 5.3MB (3.2x), 99 JPEGSdeletedINFOscreenpipe_engine::snapshot_compaction:snapshotcompaction: 1 frames,0.3MB → 0.4MB (0.8x),1 JPEGSdeletedINFOscreenpipe_engine::event_driven_capture:contentdedup:skipping capturefor monitor 2 (hash=-8093524035767003282, trigger=visual_change)INFOWARNscreenpipe_engine::event_driven_capture:contentdedup:skipping capture for monitor 2 (hash=-8093524035767003282, trigger=visual_change)sqlx::query:summary="SELECT id,snapshot_path,device_name, .."db.statement="\n\nSELECT\n id,\nsnapshot_path, \ndevice_name, intimestampsnapshot_path IS NOT NULL\nAND timestamp < ?1\nORDER BY\ndevice_name, \ntimestamp ASC\nLIMIT\n5000\n" rows_affected-0 rows_returned-102 elapseINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 102 eligible framesINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 42 frames, 13.9MB + 3.1MB (4.5x), 42 JPEGs deletedINFOscreenpipe_engine::snapshot_compaction: snapshotINFOcompaction: 57 frames, 12.6MB → 6.2MB (2.0x), 57 JPEGs deletedscreenpipe_engine::snapshot_compaction: snapshotcompaction: found 70 eligible framesINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 26 frames, 8.8MB 1.0MB (9.2x), 26 JPEGs deletedINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 42 frames, 10.5MB → 4.7MB (2.2x), 42 JPEGs deletedINFOscreenpipe_engine::event_driven_capture: content dedup:skipping capture for monitor 1 (hash=-7465795543963075308, trigger=click)WARNsqlx:: query:summary="SELECT id,snapshot_path, device_name,db.statement="\n\nSELECT\nsnapshot_path, \ndevice_name, \ntimestampsnapshot_path IS NOT NULL\nAND timestamp < ?1\nORDER BY\ndevice_name, \ntimestamp ASC\nLIMIT\n5000\n" rows_affected-0 rows_returned-61 elapsedINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible framesINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 28 frames, 9.6MB 1.4MB (6.7x),INFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 8.9MB → 2.1MB (4.2x), 31 JPEGs deletede (6. 70), 3а е:28 JPEGs deletedINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: found 33eligible framesINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 5.2MB → 1.1MB (4.8x), 15 JPEGs deletedINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 4.6MB→ 1.2MB (3.8x), 16 JPEGs deletedWARNsqlx:: query:summary="SELECT id, snapshot_path, device_name, ."db.statement="\n\nSELECT\nid, \nsnapshot_path, \n device_name, \ntimestampsnapshot_path IS NOT NULL\nAND timestamp < ?1\nORDER BY\n device_name, \ntimestamp ASC\nLIMIT\n5000\n" rows_affected-0 rows_returned-112 elapseINFOscreenpipe_engine::snapshot_compaction: snapshotcompaction: found 112 eligible framesINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 49 frames, 14.5MB + 2.7MB (5.4x), 49 JPEGs deletedINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 61 frames, 13.6MB + 4.6MB (2.9x), 61 JPEGs deletedINFOINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7465795543963075308, trigger=click)screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible framesINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames,3.4MB → 0.8MB (4.4x), 10 JPEGs deletedINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.7MB → 0.4MB (6.4x), 10 JPEGs deleted...
|
34768
|
|
44020
|
933
|
7
|
2026-04-17T08:30:03.988908+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-17/1776 /Users/lukas/.screenpipe/data/data/2026-04-17/1776414603988_m1.jpg...
|
Firefox
|
Meet - Daily - Processing — Work
|
1
|
meet.google.com/xpx-omah-rkn
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
Meet - Daily - Processing
Close tab
New Tab
Open G Meet - Daily - Processing
Close tab
New Tab
Open Google Gemini (⌃X)
Tabs from other devices
Open history (⇧⌘H)
Open bookmarks (⌘B)
Customize sidebar
Ilian Kyuchukov (Presenting, annotating)
Ilian Kyuchukov (Presenting, annotating)
People
6
Take notes with Gemini
Take notes with Gemini
Gemini
Gemini
Pop out this video More screens are more fun. Play this video while you do other things.
Pop out this video
More screens are more fun. Play this video while you do other things.
Unpin Ilian Kyuchukov's presentation from your main screen
You can't unmute someone else's presentation
More options for Ilian Kyuchukov
Zoom in
Open in new window
Enter Full Screen
Pop out this video More screens are more fun. Play this video while you do other things.
Pop out this video
More screens are more fun. Play this video while you do other things.
Pin Vasil Vasilev to your main screen
Mute Vasil Vasilev's microphone
More options for Vasil Vasilev
Vasil Vasilev
Pop out this video More screens are more fun. Play this video while you do other things.
Pop out this video
More screens are more fun. Play this video while you do other things.
Pin Ilian Kyuchukov to your main screen
Mute Ilian Kyuchukov's microphone
More options for Ilian Kyuchukov
Ilian Kyuchukov
Pop out this video More screens are more fun. Play this video while you do other things.
Pop out this video
More screens are more fun. Play this video while you do other things.
Pin Mihail Mihaylov to your main screen
You can't unmute someone else
More options for Mihail Mihaylov
Mihail Mihaylov
Pin Nikolay Nikolov to your main screen
Mute Nikolay Nikolov's microphone
More options for Nikolay Nikolov
Nikolay Nikolov
Pop out this video More screens are more fun. Play this video while you do other things.
Pop out this video
More screens are more fun. Play this video while you do other things.
You’re continuously framed
Backgrounds and effects
More options for Lukas Kovalik
Lukas Kovalik
Others might see more of your background. Click to view your full video.
11:30
AM
Daily - Processing
Daily - Processing
Audio settings
Turn off microphone
Video settings
Turn off camera
Ilian Kyuchukov is presenting
Send a reaction
Turn on captions
Raise hand (ctrl + ⌘ + h)
More options
Leave call
Meeting details
Chat with everyone
Meeting tools
Your microphone is on....
|
[{"role":"AXRadioButton","text [{"role":"AXRadioButton","text":"Meet - Daily - Processing","depth":4,"bounds":{"left":0.0,"top":0.072222225,"width":0.033680554,"height":0.045555554},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":true},{"role":"AXButton","text":"Close tab","depth":5,"bounds":{"left":0.0013888889,"top":0.072222225,"width":0.010416667,"height":0.016666668},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"New Tab","depth":4,"bounds":{"left":0.005902778,"top":0.12,"width":0.022222223,"height":0.035555556},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open Google Gemini (⌃X)","depth":6,"bounds":{"left":0.0,"top":0.7977778,"width":0.033680554,"height":0.043333333},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Tabs from other devices","depth":6,"bounds":{"left":0.0,"top":0.8411111,"width":0.033680554,"height":0.038333334},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open history (⇧⌘H)","depth":6,"bounds":{"left":0.0,"top":0.8794444,"width":0.033680554,"height":0.03888889},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open bookmarks (⌘B)","depth":6,"bounds":{"left":0.0,"top":0.91833335,"width":0.033680554,"height":0.038333334},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Customize sidebar","depth":6,"bounds":{"left":0.0,"top":0.95666665,"width":0.033680554,"height":0.043333333},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXHeading","text":"Ilian Kyuchukov (Presenting, annotating)","depth":12,"bounds":{"left":0.07534722,"top":0.101111114,"width":0.18055555,"height":0.022222223},"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Ilian Kyuchukov (Presenting, annotating)","depth":13,"bounds":{"left":0.07534722,"top":0.10222222,"width":0.18055555,"height":0.020555556},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"People","depth":15,"bounds":{"left":0.88680553,"top":0.08944444,"width":0.04097222,"height":0.04},"role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"6","depth":22,"bounds":{"left":0.9145833,"top":0.101111114,"width":0.0048611113,"height":0.017222222},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Take notes with Gemini","depth":14,"bounds":{"left":0.93333334,"top":0.08944444,"width":0.025,"height":0.04},"role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Take notes with Gemini","depth":17,"bounds":{"left":0.9361111,"top":0.101111114,"width":0.06388891,"height":0.017222222},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Gemini","depth":22,"bounds":{"left":0.96666664,"top":0.101111114,"width":0.028125,"height":0.017222222},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Gemini","depth":21,"bounds":{"left":0.96458334,"top":0.090555556,"width":0.023611112,"height":0.037777778},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Pop out this video More screens are more fun. Play this video while you do other things.","depth":15,"bounds":{"left":0.5798611,"top":0.62833333,"width":0.14652778,"height":0.08888889},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Pop out this video","depth":17,"bounds":{"left":0.7239583,"top":0.6427778,"width":0.08090278,"height":0.018888889},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"More screens are more fun. Play this video while you do other things.","depth":16,"bounds":{"left":0.7017361,"top":0.6388889,"width":0.11076389,"height":0.05666667},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Unpin Ilian Kyuchukov's presentation from your main screen","depth":13,"bounds":{"left":0.346875,"top":0.5083333,"width":0.027777778,"height":0.044444446},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"You can't unmute someone else's presentation","depth":13,"bounds":{"left":0.37465277,"top":0.5061111,"width":0.030555556,"height":0.04888889},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":false,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"More options for Ilian Kyuchukov","depth":13,"bounds":{"left":0.40520832,"top":0.5083333,"width":0.027777778,"height":0.044444446},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Zoom in","depth":13,"bounds":{"left":0.6315972,"top":0.83111113,"width":0.027777778,"height":0.044444446},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Open in new window","depth":13,"bounds":{"left":0.6649306,"top":0.83111113,"width":0.027777778,"height":0.044444446},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Enter Full Screen","depth":13,"bounds":{"left":0.6982639,"top":0.83111113,"width":0.027777778,"height":0.044444446},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Pop out this video More screens are more fun. Play this video while you do other things.","depth":15,"bounds":{"left":0.7861111,"top":0.27611113,"width":0.14652778,"height":0.07722222},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Pop out this video","depth":17,"bounds":{"left":0.9305556,"top":0.29166666,"width":0.06944442,"height":0.017777778},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"More screens are more fun. Play this video while you do other things.","depth":16,"bounds":{"left":0.9079861,"top":0.28666666,"width":0.092013896,"height":0.045},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Pin Vasil Vasilev to your main screen","depth":13,"bounds":{"left":0.76180553,"top":0.25111112,"width":0.027777778,"height":0.044444446},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Mute Vasil Vasilev's microphone","depth":13,"bounds":{"left":0.7895833,"top":0.2488889,"width":0.030555556,"height":0.04888889},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"More options for Vasil Vasilev","depth":13,"bounds":{"left":0.8201389,"top":0.25111112,"width":0.027777778,"height":0.044444446},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Vasil Vasilev","depth":17,"bounds":{"left":0.75451386,"top":0.36277777,"width":0.061805554,"height":0.022777777},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Pop out this video More screens are more fun. Play this video while you do other things.","depth":15,"bounds":{"left":0.91180557,"top":0.27611113,"width":0.08819443,"height":0.07722222},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Pop out this video","depth":17,"bounds":{"left":1.0,"top":0.29166666,"width":-0.056249976,"height":0.017777778},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"More screens are more fun. Play this video while you do other things.","depth":16,"bounds":{"left":1.0,"top":0.28666666,"width":-0.03368056,"height":0.045},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Pin Ilian Kyuchukov to your main screen","depth":13,"bounds":{"left":0.8875,"top":0.25111112,"width":0.027777778,"height":0.044444446},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Mute Ilian Kyuchukov's microphone","depth":13,"bounds":{"left":0.9152778,"top":0.2488889,"width":0.030555556,"height":0.04888889},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"More options for Ilian Kyuchukov","depth":13,"bounds":{"left":0.9458333,"top":0.25111112,"width":0.027777778,"height":0.044444446},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Ilian Kyuchukov","depth":17,"bounds":{"left":0.8802083,"top":0.36277777,"width":0.07986111,"height":0.022777777},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Pop out this video More screens are more fun. Play this video while you do other things.","depth":15,"bounds":{"left":0.7861111,"top":0.5338889,"width":0.14652778,"height":0.07722222},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Pop out this video","depth":17,"bounds":{"left":0.9305556,"top":0.54944444,"width":0.06944442,"height":0.017777778},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"More screens are more fun. Play this video while you do other things.","depth":16,"bounds":{"left":0.9079861,"top":0.54444444,"width":0.092013896,"height":0.045},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Pin Mihail Mihaylov to your main screen","depth":13,"bounds":{"left":0.76180553,"top":0.5088889,"width":0.027777778,"height":0.044444446},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"You can't unmute someone else","depth":13,"bounds":{"left":0.7895833,"top":0.50666666,"width":0.030555556,"height":0.04888889},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":false,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"More options for Mihail Mihaylov","depth":13,"bounds":{"left":0.8201389,"top":0.5088889,"width":0.027777778,"height":0.044444446},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Mihail Mihaylov","depth":17,"bounds":{"left":0.75451386,"top":0.6205556,"width":0.07847222,"height":0.022777777},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Pin Nikolay Nikolov to your main screen","depth":13,"bounds":{"left":0.8875,"top":0.5088889,"width":0.027777778,"height":0.044444446},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Mute Nikolay Nikolov's microphone","depth":13,"bounds":{"left":0.9152778,"top":0.50666666,"width":0.030555556,"height":0.04888889},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"More options for Nikolay Nikolov","depth":13,"bounds":{"left":0.9458333,"top":0.5088889,"width":0.027777778,"height":0.044444446},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Nikolay Nikolov","depth":17,"bounds":{"left":0.8802083,"top":0.6205556,"width":0.07847222,"height":0.022777777},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Pop out this video More screens are more fun. Play this video while you do other things.","depth":15,"bounds":{"left":0.73888886,"top":0.7916667,"width":0.14652778,"height":0.07722222},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Pop out this video","depth":17,"bounds":{"left":0.665625,"top":0.8066667,"width":0.07569444,"height":0.017777778},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"More screens are more fun. Play this video while you do other things.","depth":16,"bounds":{"left":0.64618057,"top":0.80222225,"width":0.11736111,"height":0.045},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"You’re continuously framed","depth":13,"bounds":{"left":0.8229167,"top":0.7644445,"width":0.030555556,"height":0.04888889},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":false,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Backgrounds and effects","depth":13,"bounds":{"left":0.85347223,"top":0.7644445,"width":0.030555556,"height":0.04888889},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"More options for Lukas Kovalik","depth":13,"bounds":{"left":0.8840278,"top":0.76666665,"width":0.027777778,"height":0.044444446},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Lukas Kovalik","depth":17,"bounds":{"left":0.75381947,"top":0.87833333,"width":0.06875,"height":0.022777777},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Others might see more of your background. Click to view your full video.","depth":14,"bounds":{"left":0.96631944,"top":0.875,"width":0.018055556,"height":0.028888889},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"11:30","depth":12,"bounds":{"left":0.050347224,"top":0.9444444,"width":0.02673611,"height":0.022777777},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"AM","depth":12,"bounds":{"left":0.08055556,"top":0.9444444,"width":0.017708333,"height":0.022777777},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXHeading","text":"Daily - Processing","depth":12,"bounds":{"left":0.115625,"top":0.9111111,"width":0.093055554,"height":0.08888888},"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Daily - Processing","depth":15,"bounds":{"left":0.115625,"top":0.9444444,"width":0.093055554,"height":0.022777777},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Audio settings","depth":13,"bounds":{"left":0.32118055,"top":0.9288889,"width":0.06111111,"height":0.053333335},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Turn off microphone","depth":13,"bounds":{"left":0.34895834,"top":0.9288889,"width":0.033333335,"height":0.053333335},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":true,"is_selected":false},{"role":"AXButton","text":"Video settings","depth":13,"bounds":{"left":0.38784721,"top":0.9288889,"width":0.06111111,"height":0.053333335},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Turn off camera","depth":13,"bounds":{"left":0.415625,"top":0.9288889,"width":0.033333335,"height":0.053333335},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Ilian Kyuchukov is presenting","depth":12,"bounds":{"left":0.45451388,"top":0.9288889,"width":0.03888889,"height":0.053333335},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Send a reaction","depth":12,"bounds":{"left":0.49895832,"top":0.9288889,"width":0.03888889,"height":0.053333335},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Turn on captions","depth":13,"bounds":{"left":0.5434028,"top":0.9288889,"width":0.03888889,"height":0.053333335},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Raise hand (ctrl + ⌘ + h)","depth":12,"bounds":{"left":0.58784723,"top":0.9288889,"width":0.03888889,"height":0.053333335},"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"More options","depth":12,"bounds":{"left":0.6322917,"top":0.9288889,"width":0.025,"height":0.053333335},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Leave call","depth":12,"bounds":{"left":0.6628472,"top":0.9288889,"width":0.05,"height":0.053333335},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Meeting details","depth":12,"bounds":{"left":0.89166665,"top":0.9288889,"width":0.033333335,"height":0.053333335},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Chat with everyone","depth":12,"bounds":{"left":0.925,"top":0.9288889,"width":0.033333335,"height":0.053333335},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Meeting tools","depth":12,"bounds":{"left":0.9583333,"top":0.9288889,"width":0.033333335,"height":0.053333335},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Your microphone is on.","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"}]...
|
-8990993870871061846
|
-6560652577411957968
|
visual_change
|
accessibility
|
NULL
|
Meet - Daily - Processing
Close tab
New Tab
Open G Meet - Daily - Processing
Close tab
New Tab
Open Google Gemini (⌃X)
Tabs from other devices
Open history (⇧⌘H)
Open bookmarks (⌘B)
Customize sidebar
Ilian Kyuchukov (Presenting, annotating)
Ilian Kyuchukov (Presenting, annotating)
People
6
Take notes with Gemini
Take notes with Gemini
Gemini
Gemini
Pop out this video More screens are more fun. Play this video while you do other things.
Pop out this video
More screens are more fun. Play this video while you do other things.
Unpin Ilian Kyuchukov's presentation from your main screen
You can't unmute someone else's presentation
More options for Ilian Kyuchukov
Zoom in
Open in new window
Enter Full Screen
Pop out this video More screens are more fun. Play this video while you do other things.
Pop out this video
More screens are more fun. Play this video while you do other things.
Pin Vasil Vasilev to your main screen
Mute Vasil Vasilev's microphone
More options for Vasil Vasilev
Vasil Vasilev
Pop out this video More screens are more fun. Play this video while you do other things.
Pop out this video
More screens are more fun. Play this video while you do other things.
Pin Ilian Kyuchukov to your main screen
Mute Ilian Kyuchukov's microphone
More options for Ilian Kyuchukov
Ilian Kyuchukov
Pop out this video More screens are more fun. Play this video while you do other things.
Pop out this video
More screens are more fun. Play this video while you do other things.
Pin Mihail Mihaylov to your main screen
You can't unmute someone else
More options for Mihail Mihaylov
Mihail Mihaylov
Pin Nikolay Nikolov to your main screen
Mute Nikolay Nikolov's microphone
More options for Nikolay Nikolov
Nikolay Nikolov
Pop out this video More screens are more fun. Play this video while you do other things.
Pop out this video
More screens are more fun. Play this video while you do other things.
You’re continuously framed
Backgrounds and effects
More options for Lukas Kovalik
Lukas Kovalik
Others might see more of your background. Click to view your full video.
11:30
AM
Daily - Processing
Daily - Processing
Audio settings
Turn off microphone
Video settings
Turn off camera
Ilian Kyuchukov is presenting
Send a reaction
Turn on captions
Raise hand (ctrl + ⌘ + h)
More options
Leave call
Meeting details
Chat with everyone
Meeting tools
Your microphone is on....
|
44019
|
|
44021
|
934
|
3
|
2026-04-17T08:30:07.269772+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-17/1776 /Users/lukas/.screenpipe/data/data/2026-04-17/1776414607269_m2.jpg...
|
Firefox
|
Meet - Daily - Processing — Work
|
1
|
meet.google.com/xpx-omah-rkn
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
Meet - Daily - Processing
Close tab
New Tab
Open G Meet - Daily - Processing
Close tab
New Tab
Open Google Gemini (⌃X)
Tabs from other devices
Open history (⇧⌘H)
Open bookmarks (⌘B)
Customize sidebar
Ilian Kyuchukov (Presenting, annotating)
Ilian Kyuchukov (Presenting, annotating)
People
6
Take notes with Gemini
Take notes with Gemini
Gemini
Gemini
Pop out this video More screens are more fun. Play this video while you do other things.
Pop out this video
More screens are more fun. Play this video while you do other things.
Unpin Ilian Kyuchukov's presentation from your main screen
You can't unmute someone else's presentation
More options for Ilian Kyuchukov
Zoom in
Open in new window
Enter Full Screen
Pop out this video More screens are more fun. Play this video while you do other things.
Pop out this video
More screens are more fun. Play this video while you do other things.
Pin Vasil Vasilev to your main screen
Mute Vasil Vasilev's microphone
More options for Vasil Vasilev
Vasil Vasilev
Pop out this video More screens are more fun. Play this video while you do other things.
Pop out this video
More screens are more fun. Play this video while you do other things.
Pin Ilian Kyuchukov to your main screen
Mute Ilian Kyuchukov's microphone
More options for Ilian Kyuchukov
Ilian Kyuchukov
Pop out this video More screens are more fun. Play this video while you do other things.
Pop out this video
More screens are more fun. Play this video while you do other things.
Pin Mihail Mihaylov to your main screen
You can't unmute someone else
More options for Mihail Mihaylov
Mihail Mihaylov
Pin Nikolay Nikolov to your main screen
Mute Nikolay Nikolov's microphone
More options for Nikolay Nikolov
Nikolay Nikolov
Pop out this video More screens are more fun. Play this video while you do other things.
Pop out this video
More screens are more fun. Play this video while you do other things.
You’re continuously framed
Backgrounds and effects
More options for Lukas Kovalik
Lukas Kovalik
Others might see more of your background. Click to view your full video.
11:30
AM
Daily - Processing
Daily - Processing
Audio settings
Turn off microphone
Video settings
Turn off camera
Ilian Kyuchukov is presenting
Send a reaction
Turn on captions
Raise hand (ctrl + ⌘ + h)
More options
Leave call
Meeting details
Chat with everyone
Meeting tools
Your microphone is on....
|
[{"role":"AXRadioButton","text [{"role":"AXRadioButton","text":"Meet - Daily - Processing","depth":4,"bounds":{"left":0.23320313,"top":1.0,"width":0.018945312,"height":-0.045138836},"help_text":"","role_description":"tab","subrole":"AXTabButton","is_enabled":true,"is_focused":false,"is_selected":true},{"role":"AXButton","text":"Close tab","depth":5,"bounds":{"left":0.23398438,"top":1.0,"width":0.005859375,"height":-0.045138836},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"New Tab","depth":4,"bounds":{"left":0.23652343,"top":1.0,"width":0.0125,"height":-0.07500005},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open Google Gemini (⌃X)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Tabs from other devices","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open history (⇧⌘H)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Open bookmarks (⌘B)","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Customize sidebar","depth":6,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXHeading","text":"Ilian Kyuchukov (Presenting, annotating)","depth":12,"bounds":{"left":0.27558595,"top":1.0,"width":0.1015625,"height":-0.063194394},"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Ilian Kyuchukov (Presenting, annotating)","depth":13,"bounds":{"left":0.27558595,"top":1.0,"width":0.1015625,"height":-0.06388891},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"People","depth":15,"bounds":{"left":0.7320312,"top":1.0,"width":0.023046875,"height":-0.05590272},"role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"6","depth":22,"bounds":{"left":0.7476562,"top":1.0,"width":0.002734375,"height":-0.063194394},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Take notes with Gemini","depth":14,"bounds":{"left":0.75820315,"top":1.0,"width":0.0140625,"height":-0.05590272},"role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Take notes with Gemini","depth":17,"bounds":{"left":0.7597656,"top":1.0,"width":0.051171876,"height":-0.063194394},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Gemini","depth":22,"bounds":{"left":0.7769531,"top":1.0,"width":0.015820313,"height":-0.063194394},"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Gemini","depth":21,"bounds":{"left":0.7757813,"top":1.0,"width":0.01328125,"height":-0.056597233},"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Pop out this video More screens are more fun. Play this video while you do other things.","depth":15,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Pop out this video","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"More screens are more fun. Play this video while you do other things.","depth":16,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Unpin Ilian Kyuchukov's presentation from your main screen","depth":13,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"You can't unmute someone else's presentation","depth":13,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":false,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"More options for Ilian Kyuchukov","depth":13,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Zoom in","depth":13,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Open in new window","depth":13,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Enter Full Screen","depth":13,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Pop out this video More screens are more fun. Play this video while you do other things.","depth":15,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Pop out this video","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"More screens are more fun. Play this video while you do other things.","depth":16,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Pin Vasil Vasilev to your main screen","depth":13,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Mute Vasil Vasilev's microphone","depth":13,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"More options for Vasil Vasilev","depth":13,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Vasil Vasilev","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Pop out this video More screens are more fun. Play this video while you do other things.","depth":15,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Pop out this video","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"More screens are more fun. Play this video while you do other things.","depth":16,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Pin Ilian Kyuchukov to your main screen","depth":13,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Mute Ilian Kyuchukov's microphone","depth":13,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"More options for Ilian Kyuchukov","depth":13,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Ilian Kyuchukov","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Pop out this video More screens are more fun. Play this video while you do other things.","depth":15,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Pop out this video","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"More screens are more fun. Play this video while you do other things.","depth":16,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Pin Mihail Mihaylov to your main screen","depth":13,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"You can't unmute someone else","depth":13,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":false,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"More options for Mihail Mihaylov","depth":13,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Mihail Mihaylov","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Pin Nikolay Nikolov to your main screen","depth":13,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Mute Nikolay Nikolov's microphone","depth":13,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"More options for Nikolay Nikolov","depth":13,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Nikolay Nikolov","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Pop out this video More screens are more fun. Play this video while you do other things.","depth":15,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"Pop out this video","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"More screens are more fun. Play this video while you do other things.","depth":16,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"You’re continuously framed","depth":13,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":false,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Backgrounds and effects","depth":13,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"More options for Lukas Kovalik","depth":13,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Lukas Kovalik","depth":17,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Others might see more of your background. Click to view your full video.","depth":14,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXStaticText","text":"11:30","depth":12,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXStaticText","text":"AM","depth":12,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXHeading","text":"Daily - Processing","depth":12,"help_text":"","role_description":"heading","subrole":"AXUnknown"},{"role":"AXStaticText","text":"Daily - Processing","depth":15,"help_text":"","role_description":"text","subrole":"AXUnknown"},{"role":"AXButton","text":"Audio settings","depth":13,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Turn off microphone","depth":13,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":true,"is_selected":false},{"role":"AXButton","text":"Video settings","depth":13,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Turn off camera","depth":13,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Ilian Kyuchukov is presenting","depth":12,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Send a reaction","depth":12,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Turn on captions","depth":13,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXCheckBox","text":"Raise hand (ctrl + ⌘ + h)","depth":12,"help_text":"","role_description":"toggle button","subrole":"AXToggle","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"More options","depth":12,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Leave call","depth":12,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false},{"role":"AXButton","text":"Meeting details","depth":12,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Chat with everyone","depth":12,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Meeting tools","depth":12,"help_text":"","role_description":"button","subrole":"AXUnknown","is_enabled":true,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"Your microphone is on.","depth":8,"help_text":"","role_description":"text","subrole":"AXUnknown"}]...
|
-8990993870871061846
|
-6560652577411957968
|
click
|
accessibility
|
NULL
|
Meet - Daily - Processing
Close tab
New Tab
Open G Meet - Daily - Processing
Close tab
New Tab
Open Google Gemini (⌃X)
Tabs from other devices
Open history (⇧⌘H)
Open bookmarks (⌘B)
Customize sidebar
Ilian Kyuchukov (Presenting, annotating)
Ilian Kyuchukov (Presenting, annotating)
People
6
Take notes with Gemini
Take notes with Gemini
Gemini
Gemini
Pop out this video More screens are more fun. Play this video while you do other things.
Pop out this video
More screens are more fun. Play this video while you do other things.
Unpin Ilian Kyuchukov's presentation from your main screen
You can't unmute someone else's presentation
More options for Ilian Kyuchukov
Zoom in
Open in new window
Enter Full Screen
Pop out this video More screens are more fun. Play this video while you do other things.
Pop out this video
More screens are more fun. Play this video while you do other things.
Pin Vasil Vasilev to your main screen
Mute Vasil Vasilev's microphone
More options for Vasil Vasilev
Vasil Vasilev
Pop out this video More screens are more fun. Play this video while you do other things.
Pop out this video
More screens are more fun. Play this video while you do other things.
Pin Ilian Kyuchukov to your main screen
Mute Ilian Kyuchukov's microphone
More options for Ilian Kyuchukov
Ilian Kyuchukov
Pop out this video More screens are more fun. Play this video while you do other things.
Pop out this video
More screens are more fun. Play this video while you do other things.
Pin Mihail Mihaylov to your main screen
You can't unmute someone else
More options for Mihail Mihaylov
Mihail Mihaylov
Pin Nikolay Nikolov to your main screen
Mute Nikolay Nikolov's microphone
More options for Nikolay Nikolov
Nikolay Nikolov
Pop out this video More screens are more fun. Play this video while you do other things.
Pop out this video
More screens are more fun. Play this video while you do other things.
You’re continuously framed
Backgrounds and effects
More options for Lukas Kovalik
Lukas Kovalik
Others might see more of your background. Click to view your full video.
11:30
AM
Daily - Processing
Daily - Processing
Audio settings
Turn off microphone
Video settings
Turn off camera
Ilian Kyuchukov is presenting
Send a reaction
Turn on captions
Raise hand (ctrl + ⌘ + h)
More options
Leave call
Meeting details
Chat with everyone
Meeting tools
Your microphone is on....
|
NULL
|
|
18708
|
393
|
90
|
2026-04-14T16:25:31.529306+00:00
|
/Users/lukas/.screenpipe/data/data/2026-04-14/1776 /Users/lukas/.screenpipe/data/data/2026-04-14/1776183931529_m1.jpg...
|
iTerm2
|
✳ Unable to access screenpipe activity data
|
1
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
╭─── Claude Code v2.1.97 ───────────────────────── ╭─── Claude Code v2.1.97 ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ │ Tips for getting started │
│ Welcome back Lukas! │ Run /init to create a CLAUDE.md file with instructions for Claude │
│ │ Note: You have launched claude in your home directory. For the best experience, launch it in a project directory instead│
│ ▐▛███▜▌ │ ────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────│
│ ▝▜█████▛▘ │ Recent activity │
│ ▘▘ ▝▝ │ No recent activity │
│ Sonnet 4.6 · Claude Pro · │ │
│ [EMAIL]'s Organization │ │
│ /Users/lukas │ │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
❯ what did I do yesterday? Give me summary of my activity from screenpipe
⏺ Here's your activity summary for yesterday (April 11):
---
Total active time: ~3 hours (roughly 15:00–21:00 UTC)
Main focus areas
Screenpipe development (~2h combined)
- Heavy terminal work in iTerm2 (67 min in zsh + SSH)
- Building a screenpipe data UI — working remotely on [IP_ADDRESS] via SSH
- Editing report.py and a bash script in VS Code
- Checking the Screenpipe Dashboard in Firefox
Work (Jiminny) (~15 min)
- Checked the Scrum Board for Platform Sprint 1 Q2
- Looked at service desk queues
- Checked an email about an "Ask Jiminny" |