|
53900
|
root@docker_lamp_1:/home/jiminny# diff \
vendor/ root@docker_lamp_1:/home/jiminny# diff \
vendor/laravel/passport/src/HasApiTokens.php \
app/Traits/HasApiTokens.php
3c3
< namespace Laravel\Passport;
---
> namespace Jiminny\Traits;
5,9c5
< use Illuminate\Database\Eloquent\Builder;
< use Illuminate\Database\Eloquent\Relations\HasMany;
< use Illuminate\Database\Eloquent\Relations\MorphMany;
< use Laravel\Passport\Contracts\ScopeAuthorizable;
< use LogicException;
---
> use Laravel\Passport\TransientToken;
11,13d6
< /**
< * @phpstan-require-implements \Laravel\Passport\Contracts\OAuthenticatable
< */
18,44d10
< */
< protected ?ScopeAuthorizable $accessToken = null;
<
< /**
< * Get all of the user's registered OAuth clients.
< *
< * @deprecated Use oauthApps()
< *
< * @return \Illuminate\Database\Eloquent\Relations\HasMany<\Laravel\Passport\Client, $this>
< */
< public function clients(): HasMany
< {
< return $this->hasMany(Passport::clientModel(), 'user_id');
< }
<
< /**
< * Get all of the user's registered OAuth applications.
< *
< * @return \Illuminate\Database\Eloquent\Relations\MorphMany<\Laravel\Passport\Client, $this>
< */
< public function oauthApps(): MorphMany
< {
< return $this->morphMany(Passport::clientModel(), 'owner');
< }
<
< /**
< * Get all of the access tokens for the user.
46c12
< * @return \Illuminate\Database\Eloquent\Relations\HasMany<\Laravel\Passport\Token, $this>
---
> * @var Laravel\Passport\TransientToken
48,62c14
< public function tokens(): HasMany
< {
< return $this->hasMany(Passport::tokenModel(), 'user_id', $this->getAuthIdentifierName())
< ->where(function (Builder $query): void {
< $query->whereHas('client', function (Builder $query): void {
< $query->where(function (Builder $query): void {
< $provider = $this->getProviderName();
<
< $query->when($provider === config('auth.guards.api.provider'), function (Builder $query): void {
< $query->orWhereNull('provider');
< })->orWhere('provider', $provider);
< });
< });
< });
< }
---
> protected $accessToken;
65c17
< * Get the access token currently associated with the user.
---
> * Get the current access token being used by the user.
67,75c19
< public function token(): ?ScopeAuthorizable
< {
< return $this->currentAccessToken();
< }
<
< /**
< * Get the access token currently associated with the user.
< */
< public function currentAccessToken(): ?ScopeAuthorizable
---
> public function token(): ?TransientToken
85,123c29
< return $this->accessToken && $this->accessToken->can($scope);
< }
<
< /**
< * Determine if the current API token is missing a given scope.
< */
< public function tokenCant(string $scope): bool
< {
< return ! $this->tokenCan($scope);
< }
<
< /**
< * Create a new personal access token for the user.
< *
< * @param string[] $scopes
< */
< public function createToken(string $name, array $scopes = []): PersonalAccessTokenResult
< {
< return app(PersonalAccessTokenFactory::class)->make(
< $this->getAuthIdentifier(), $name, $scopes, $this->getProviderName()
< );
< }
<
< /**
< * Get the user provider name.
< *
< * @throws \LogicException
< */
< public function getProviderName(): string
< {
< $providers = collect(config('auth.guards'))->where('driver', 'passport')->pluck('provider')->all();
<
< foreach (config('auth.providers') as $provider => $config) {
< if (in_array($provider, $providers) && $config['driver'] === 'eloquent' && is_a($this, $config['model'])) {
< return $provider;
< }
< }
<
< throw new LogicException('Unable to determine authentication provider for this model from configuration.');
---
> return $this->accessToken ? $this->accessToken->can($scope) : false;
129c35
< public function withAccessToken(?ScopeAuthorizable $accessToken): static
---
> public function withAccessToken(TransientToken $accessToken): static
root@docker_lamp_1:/home/jiminny# cat vendor/laravel/passport/src/Contracts/OAuthenticatable.php
<?php
namespace Laravel\Passport\Contracts;
use Illuminate\Contracts\Auth\Authenticatable;
use Illuminate\Database\Eloquent\Relations\HasMany;
use Illuminate\Database\Eloquent\Relations\MorphMany;
use Laravel\Passport\PersonalAccessTokenResult;
interface OAuthenticatable extends Authenticatable
{
/**
* Get all the user's registered OAuth applications.
*
* @return \Illuminate\Database\Eloquent\Relations\MorphMany<\Laravel\Passport\Client, \Illuminate\Foundation\Auth\User>
*/
public function oauthApps(): MorphMany;
/**
* Get all the access tokens for the user.
*
* @return \Illuminate\Database\Eloquent\Relations\HasMany<\Laravel\Passport\Token, \Illuminate\Foundation\Auth\User>
*/
public function tokens(): HasMany;
/**
* Determine if the current API token has a given scope.
*/
public function tokenCan(string $scope): bool;
/**
* Determine if the current API token is missing a given scope.
*/
public function tokenCant(string $scope): bool;
/**
* Create a new personal access token for the user.
*
* @param string[] $scopes
*/
public function createToken(string $name, array $scopes = []): PersonalAccessTokenResult;
/**
* Get the access token currently associated with the user.
*/
public function currentAccessToken(): ?ScopeAuthorizable;
/**
* Set the current access token for the user.
*/
public function withAccessToken(?ScopeAuthorizable $accessToken): static;
/**
* Get the user provider name.
*/
public function getProviderName(): string;
}
root@docker_lamp_1:/home/jiminny# grep -n "use HasApiTokens" app/Models/User.php app/Models/Partner.php app/Traits/HasApiTokens.php
app/Models/User.php:243: use HasApiTokens;
app/Models/Partner.php:78: use HasApiTokens;
root@docker_lamp_1:/home/jiminny# # Does User use Jiminny's or Passport's?
grep -rn "HasApiTokens" app/Models/User.php
43:use Laravel\Passport\HasApiTokens;
243: use HasApiTokens;
root@docker_lamp_1:/home/jiminny# grep -rn "Jiminny\\\Traits\\\HasApiTokens" app/
root@docker_lamp_1:/home/jiminny# grep -rn "use Jiminny\\\\Traits\\\\HasApiTokens" app/
root@docker_lamp_1:/home/jiminny#
DOCKER
Close Tab
DEV (docker)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
⌥⌘1
DEV (docker)...
|
iTerm2
|
DEV (docker)
|
NULL
|
53900
|
|
53901
|
root@docker_lamp_1:/home/jiminny# diff \
vendor/ root@docker_lamp_1:/home/jiminny# diff \
vendor/laravel/passport/src/HasApiTokens.php \
app/Traits/HasApiTokens.php
3c3
< namespace Laravel\Passport;
---
> namespace Jiminny\Traits;
5,9c5
< use Illuminate\Database\Eloquent\Builder;
< use Illuminate\Database\Eloquent\Relations\HasMany;
< use Illuminate\Database\Eloquent\Relations\MorphMany;
< use Laravel\Passport\Contracts\ScopeAuthorizable;
< use LogicException;
---
> use Laravel\Passport\TransientToken;
11,13d6
< /**
< * @phpstan-require-implements \Laravel\Passport\Contracts\OAuthenticatable
< */
18,44d10
< */
< protected ?ScopeAuthorizable $accessToken = null;
<
< /**
< * Get all of the user's registered OAuth clients.
< *
< * @deprecated Use oauthApps()
< *
< * @return \Illuminate\Database\Eloquent\Relations\HasMany<\Laravel\Passport\Client, $this>
< */
< public function clients(): HasMany
< {
< return $this->hasMany(Passport::clientModel(), 'user_id');
< }
<
< /**
< * Get all of the user's registered OAuth applications.
< *
< * @return \Illuminate\Database\Eloquent\Relations\MorphMany<\Laravel\Passport\Client, $this>
< */
< public function oauthApps(): MorphMany
< {
< return $this->morphMany(Passport::clientModel(), 'owner');
< }
<
< /**
< * Get all of the access tokens for the user.
46c12
< * @return \Illuminate\Database\Eloquent\Relations\HasMany<\Laravel\Passport\Token, $this>
---
> * @var Laravel\Passport\TransientToken
48,62c14
< public function tokens(): HasMany
< {
< return $this->hasMany(Passport::tokenModel(), 'user_id', $this->getAuthIdentifierName())
< ->where(function (Builder $query): void {
< $query->whereHas('client', function (Builder $query): void {
< $query->where(function (Builder $query): void {
< $provider = $this->getProviderName();
<
< $query->when($provider === config('auth.guards.api.provider'), function (Builder $query): void {
< $query->orWhereNull('provider');
< })->orWhere('provider', $provider);
< });
< });
< });
< }
---
> protected $accessToken;
65c17
< * Get the access token currently associated with the user.
---
> * Get the current access token being used by the user.
67,75c19
< public function token(): ?ScopeAuthorizable
< {
< return $this->currentAccessToken();
< }
<
< /**
< * Get the access token currently associated with the user.
< */
< public function currentAccessToken(): ?ScopeAuthorizable
---
> public function token(): ?TransientToken
85,123c29
< return $this->accessToken && $this->accessToken->can($scope);
< }
<
< /**
< * Determine if the current API token is missing a given scope.
< */
< public function tokenCant(string $scope): bool
< {
< return ! $this->tokenCan($scope);
< }
<
< /**
< * Create a new personal access token for the user.
< *
< * @param string[] $scopes
< */
< public function createToken(string $name, array $scopes = []): PersonalAccessTokenResult
< {
< return app(PersonalAccessTokenFactory::class)->make(
< $this->getAuthIdentifier(), $name, $scopes, $this->getProviderName()
< );
< }
<
< /**
< * Get the user provider name.
< *
< * @throws \LogicException
< */
< public function getProviderName(): string
< {
< $providers = collect(config('auth.guards'))->where('driver', 'passport')->pluck('provider')->all();
<
< foreach (config('auth.providers') as $provider => $config) {
< if (in_array($provider, $providers) && $config['driver'] === 'eloquent' && is_a($this, $config['model'])) {
< return $provider;
< }
< }
<
< throw new LogicException('Unable to determine authentication provider for this model from configuration.');
---
> return $this->accessToken ? $this->accessToken->can($scope) : false;
129c35
< public function withAccessToken(?ScopeAuthorizable $accessToken): static
---
> public function withAccessToken(TransientToken $accessToken): static
root@docker_lamp_1:/home/jiminny# cat vendor/laravel/passport/src/Contracts/OAuthenticatable.php
<?php
namespace Laravel\Passport\Contracts;
use Illuminate\Contracts\Auth\Authenticatable;
use Illuminate\Database\Eloquent\Relations\HasMany;
use Illuminate\Database\Eloquent\Relations\MorphMany;
use Laravel\Passport\PersonalAccessTokenResult;
interface OAuthenticatable extends Authenticatable
{
/**
* Get all the user's registered OAuth applications.
*
* @return \Illuminate\Database\Eloquent\Relations\MorphMany<\Laravel\Passport\Client, \Illuminate\Foundation\Auth\User>
*/
public function oauthApps(): MorphMany;
/**
* Get all the access tokens for the user.
*
* @return \Illuminate\Database\Eloquent\Relations\HasMany<\Laravel\Passport\Token, \Illuminate\Foundation\Auth\User>
*/
public function tokens(): HasMany;
/**
* Determine if the current API token has a given scope.
*/
public function tokenCan(string $scope): bool;
/**
* Determine if the current API token is missing a given scope.
*/
public function tokenCant(string $scope): bool;
/**
* Create a new personal access token for the user.
*
* @param string[] $scopes
*/
public function createToken(string $name, array $scopes = []): PersonalAccessTokenResult;
/**
* Get the access token currently associated with the user.
*/
public function currentAccessToken(): ?ScopeAuthorizable;
/**
* Set the current access token for the user.
*/
public function withAccessToken(?ScopeAuthorizable $accessToken): static;
/**
* Get the user provider name.
*/
public function getProviderName(): string;
}
root@docker_lamp_1:/home/jiminny# grep -n "use HasApiTokens" app/Models/User.php app/Models/Partner.php app/Traits/HasApiTokens.php
app/Models/User.php:243: use HasApiTokens;
app/Models/Partner.php:78: use HasApiTokens;
root@docker_lamp_1:/home/jiminny# # Does User use Jiminny's or Passport's?
grep -rn "HasApiTokens" app/Models/User.php
43:use Laravel\Passport\HasApiTokens;
243: use HasApiTokens;
root@docker_lamp_1:/home/jiminny# grep -rn "Jiminny\\\Traits\\\HasApiTokens" app/
root@docker_lamp_1:/home/jiminny# grep -rn "use Jiminny\\\\Traits\\\\HasApiTokens" app/
root@docker_lamp_1:/home/jiminny#
DOCKER
Close Tab
DEV (docker)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
⌥⌘1
DEV (docker)...
|
iTerm2
|
DEV (docker)
|
NULL
|
53901
|
|
53902
|
root@docker_lamp_1:/home/jiminny# diff \
vendor/ root@docker_lamp_1:/home/jiminny# diff \
vendor/laravel/passport/src/HasApiTokens.php \
app/Traits/HasApiTokens.php
3c3
< namespace Laravel\Passport;
---
> namespace Jiminny\Traits;
5,9c5
< use Illuminate\Database\Eloquent\Builder;
< use Illuminate\Database\Eloquent\Relations\HasMany;
< use Illuminate\Database\Eloquent\Relations\MorphMany;
< use Laravel\Passport\Contracts\ScopeAuthorizable;
< use LogicException;
---
> use Laravel\Passport\TransientToken;
11,13d6
< /**
< * @phpstan-require-implements \Laravel\Passport\Contracts\OAuthenticatable
< */
18,44d10
< */
< protected ?ScopeAuthorizable $accessToken = null;
<
< /**
< * Get all of the user's registered OAuth clients.
< *
< * @deprecated Use oauthApps()
< *
< * @return \Illuminate\Database\Eloquent\Relations\HasMany<\Laravel\Passport\Client, $this>
< */
< public function clients(): HasMany
< {
< return $this->hasMany(Passport::clientModel(), 'user_id');
< }
<
< /**
< * Get all of the user's registered OAuth applications.
< *
< * @return \Illuminate\Database\Eloquent\Relations\MorphMany<\Laravel\Passport\Client, $this>
< */
< public function oauthApps(): MorphMany
< {
< return $this->morphMany(Passport::clientModel(), 'owner');
< }
<
< /**
< * Get all of the access tokens for the user.
46c12
< * @return \Illuminate\Database\Eloquent\Relations\HasMany<\Laravel\Passport\Token, $this>
---
> * @var Laravel\Passport\TransientToken
48,62c14
< public function tokens(): HasMany
< {
< return $this->hasMany(Passport::tokenModel(), 'user_id', $this->getAuthIdentifierName())
< ->where(function (Builder $query): void {
< $query->whereHas('client', function (Builder $query): void {
< $query->where(function (Builder $query): void {
< $provider = $this->getProviderName();
<
< $query->when($provider === config('auth.guards.api.provider'), function (Builder $query): void {
< $query->orWhereNull('provider');
< })->orWhere('provider', $provider);
< });
< });
< });
< }
---
> protected $accessToken;
65c17
< * Get the access token currently associated with the user.
---
> * Get the current access token being used by the user.
67,75c19
< public function token(): ?ScopeAuthorizable
< {
< return $this->currentAccessToken();
< }
<
< /**
< * Get the access token currently associated with the user.
< */
< public function currentAccessToken(): ?ScopeAuthorizable
---
> public function token(): ?TransientToken
85,123c29
< return $this->accessToken && $this->accessToken->can($scope);
< }
<
< /**
< * Determine if the current API token is missing a given scope.
< */
< public function tokenCant(string $scope): bool
< {
< return ! $this->tokenCan($scope);
< }
<
< /**
< * Create a new personal access token for the user.
< *
< * @param string[] $scopes
< */
< public function createToken(string $name, array $scopes = []): PersonalAccessTokenResult
< {
< return app(PersonalAccessTokenFactory::class)->make(
< $this->getAuthIdentifier(), $name, $scopes, $this->getProviderName()
< );
< }
<
< /**
< * Get the user provider name.
< *
< * @throws \LogicException
< */
< public function getProviderName(): string
< {
< $providers = collect(config('auth.guards'))->where('driver', 'passport')->pluck('provider')->all();
<
< foreach (config('auth.providers') as $provider => $config) {
< if (in_array($provider, $providers) && $config['driver'] === 'eloquent' && is_a($this, $config['model'])) {
< return $provider;
< }
< }
<
< throw new LogicException('Unable to determine authentication provider for this model from configuration.');
---
> return $this->accessToken ? $this->accessToken->can($scope) : false;
129c35
< public function withAccessToken(?ScopeAuthorizable $accessToken): static
---
> public function withAccessToken(TransientToken $accessToken): static
root@docker_lamp_1:/home/jiminny# cat vendor/laravel/passport/src/Contracts/OAuthenticatable.php
<?php
namespace Laravel\Passport\Contracts;
use Illuminate\Contracts\Auth\Authenticatable;
use Illuminate\Database\Eloquent\Relations\HasMany;
use Illuminate\Database\Eloquent\Relations\MorphMany;
use Laravel\Passport\PersonalAccessTokenResult;
interface OAuthenticatable extends Authenticatable
{
/**
* Get all the user's registered OAuth applications.
*
* @return \Illuminate\Database\Eloquent\Relations\MorphMany<\Laravel\Passport\Client, \Illuminate\Foundation\Auth\User>
*/
public function oauthApps(): MorphMany;
/**
* Get all the access tokens for the user.
*
* @return \Illuminate\Database\Eloquent\Relations\HasMany<\Laravel\Passport\Token, \Illuminate\Foundation\Auth\User>
*/
public function tokens(): HasMany;
/**
* Determine if the current API token has a given scope.
*/
public function tokenCan(string $scope): bool;
/**
* Determine if the current API token is missing a given scope.
*/
public function tokenCant(string $scope): bool;
/**
* Create a new personal access token for the user.
*
* @param string[] $scopes
*/
public function createToken(string $name, array $scopes = []): PersonalAccessTokenResult;
/**
* Get the access token currently associated with the user.
*/
public function currentAccessToken(): ?ScopeAuthorizable;
/**
* Set the current access token for the user.
*/
public function withAccessToken(?ScopeAuthorizable $accessToken): static;
/**
* Get the user provider name.
*/
public function getProviderName(): string;
}
root@docker_lamp_1:/home/jiminny# grep -n "use HasApiTokens" app/Models/User.php app/Models/Partner.php app/Traits/HasApiTokens.php
app/Models/User.php:243: use HasApiTokens;
app/Models/Partner.php:78: use HasApiTokens;
root@docker_lamp_1:/home/jiminny# # Does User use Jiminny's or Passport's?
grep -rn "HasApiTokens" app/Models/User.php
43:use Laravel\Passport\HasApiTokens;
243: use HasApiTokens;
root@docker_lamp_1:/home/jiminny# grep -rn "Jiminny\\\Traits\\\HasApiTokens" app/
root@docker_lamp_1:/home/jiminny# grep -rn "use Jiminny\\\\Traits\\\\HasApiTokens" app/
root@docker_lamp_1:/home/jiminny# clear
DOCKER
Close Tab
DEV (docker)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
⌥⌘1
DEV (docker)...
|
iTerm2
|
DEV (docker)
|
NULL
|
53902
|
|
53903
|
iTerm2ShellEdit|ViewSessionScriptsProfilesWindowHe iTerm2ShellEdit|ViewSessionScriptsProfilesWindowHelpDEV (docker)$82‹$0DEV (docker)APP (-zsh)|DOCKER₴81public function tokens(: HasMany;*3-zsh• ₴4100% C47 8 Mon 20 Apr 11:32:39T₴1|screenpipe"• ₴5|/***/* Determine if the current API token has a given scope.public function tokenCan(string $scope): bool;/***/* Determine if the current API token is missing a given scope.public function tokenCant(string$scope): bool;/*** Createa new personal accesstoken for the user.* @param*/string(]Sscopespublic function createToken(string Sname, array $scopes = []): PersonalAccessTokenResult;/***/* Get the access token currently associated with the user.public function currentAccessToken(): ?ScopeAuthorizable;/***/* Set the current access token for the user.public function withAccessToken(?ScopeAuthorizable SaccessToken): static;/*** Get the user provider name.*/public function getProviderName(): string;root@docker_lamp_1:/home/jiminny#grep-n "use HasApiTokens" app/Models/User.php app/Models/Partner.php app/Traits/HasApiTokens.phpapp/Models/User.php:243:use HasApiTokens;app/Models/Partner.php:78:use HasApiTokens;root@docker_lamp_1:/home/jiminny# # Does User use Jiminny's or Passport's?greprn"HasApiTokens"app/Models/User.php43:use Laravel\Passport\HasApiTokens;243:use HasApiTokens;root@docker_lamp_1:/home/jiminny# grep -rn "Jiminny\\\Traits\\\HasApiTokens" app/root@docker_lamp_1:/home/jiminny# grep-rn "use Jiminny)||\Traits|||\HasApiTokens* app/root@docker_lamp_1:/home/jiminny# clearlDEV...
|
iTerm2
|
NULL
|
NULL
|
53903
|
|
53904
|
claude100% LzPMon 20 Apr 11:32:40••• =Security pat claude100% LzPMon 20 Apr 11:32:40••• =Security patch review and testing guidanceActivitycaltVIeWWindowmeltJiminny ...381 Directorie.Eh External connections.# Starred8 jiminny-x-integrati...8 platform-inner-team® Channelsa al-chanter# alerts# backend* confusion-clinid# curiosity_lab# engineering# frontend# general# infra-changes# jiminny-bgi nlatform-ackets# product_launches# random# releases# sofia-office# support# thank-yous# the_people_of_jimi...6 Direct messagesP. Aneliya Angelova®. Galya Dimitrova2 Stefka StovanovalR. Stoyan TomovB Aneliya Angelova,..Nikolav Nikolov&. Stoyan TanevVasil Vasilev. Nikolay IvanovP. Vesi: Apps• Toastf Jira Cloud¿ 8. Aneliya Angelova• Messagest Add canvasur FilesAneliya Angelova 9:34 AMкато тоыгнах да качвам на ники оранча и уж се деплоива па иміariday, Marca p7th редата и гледам че стои. ХубспотLukas Kovalik 9:35 AMслучва сеиначе май си раоотидо сега друго не сьм виждалAneliya Angelova 9:35 AMдаже не знам от кога вес е счупил деплоя и колко време все съм тествала едно и сьщо без да се усетя че деплойването не е работелоLukas Kovallik 9:36 AMIThursday, April 16throutendoiktra telt /hAptokins aprep-mroot@docker_lamp_1:/home/jiminny# grep-rn"useJiminny(||| Traitsl|||HasApiTokens" app/root@docker_lamp 1:home/iiminnv#Confirmed - nothing uses it. The custom trait is completely orphaned.Summary of the full review:• Security PR is safe to stay mergedAsporE/cerety hins lorawepasgieto Becagt gocha om both ker andPartner• The PlaylistPolicyTest failure is a pre-existing flaky factory seed collision, unrelatedto the PR• app/Traits/HasApiTokens. php is dead code — worth a cleanup ticket to delete itYou're good.Aneliya Angelova 10:00 AMЛукаш кога искаш да се чуемLukas Kovallk 10-01 AMайде след 15 мин че се зарових в зохоd1Lukas Kovalik 10:32 AMако искаш да се чуем сегаAneliya Angelova 10:33 AMA huddle happened 10:33 AMIukac Kovalik 10-41 AMphp artisan automated-reports --report-id 39php artisan automated-reports:send --result-id 64Aneliya Angelova 9:41 AMЗдрасти Лукаш, струва ми се, че репортите се генерират върху всички активитита със съответния Saved search bez da e dobawen filtyr za dataLukas Kovalik 10:31AMАни след малко може да се чуемAneliya Angelova 11:27 AMнапnaво званни когато можецMessage Aneliva Angelove+ Дạ.Reply...Sonnet 4.6Claude is Al and can make mistakes. Please double-check responses....
|
iTerm2
|
NULL
|
NULL
|
53904
|
|
53905
|
root@docker_lamp_1:/home/jiminny# diff \
vendor/ root@docker_lamp_1:/home/jiminny# diff \
vendor/laravel/passport/src/HasApiTokens.php \
app/Traits/HasApiTokens.php
3c3
< namespace Laravel\Passport;
---
> namespace Jiminny\Traits;
5,9c5
< use Illuminate\Database\Eloquent\Builder;
< use Illuminate\Database\Eloquent\Relations\HasMany;
< use Illuminate\Database\Eloquent\Relations\MorphMany;
< use Laravel\Passport\Contracts\ScopeAuthorizable;
< use LogicException;
---
> use Laravel\Passport\TransientToken;
11,13d6
< /**
< * @phpstan-require-implements \Laravel\Passport\Contracts\OAuthenticatable
< */
18,44d10
< */
< protected ?ScopeAuthorizable $accessToken = null;
<
< /**
< * Get all of the user's registered OAuth clients.
< *
< * @deprecated Use oauthApps()
< *
< * @return \Illuminate\Database\Eloquent\Relations\HasMany<\Laravel\Passport\Client, $this>
< */
< public function clients(): HasMany
< {
< return $this->hasMany(Passport::clientModel(), 'user_id');
< }
<
< /**
< * Get all of the user's registered OAuth applications.
< *
< * @return \Illuminate\Database\Eloquent\Relations\MorphMany<\Laravel\Passport\Client, $this>
< */
< public function oauthApps(): MorphMany
< {
< return $this->morphMany(Passport::clientModel(), 'owner');
< }
<
< /**
< * Get all of the access tokens for the user.
46c12
< * @return \Illuminate\Database\Eloquent\Relations\HasMany<\Laravel\Passport\Token, $this>
---
> * @var Laravel\Passport\TransientToken
48,62c14
< public function tokens(): HasMany
< {
< return $this->hasMany(Passport::tokenModel(), 'user_id', $this->getAuthIdentifierName())
< ->where(function (Builder $query): void {
< $query->whereHas('client', function (Builder $query): void {
< $query->where(function (Builder $query): void {
< $provider = $this->getProviderName();
<
< $query->when($provider === config('auth.guards.api.provider'), function (Builder $query): void {
< $query->orWhereNull('provider');
< })->orWhere('provider', $provider);
< });
< });
< });
< }
---
> protected $accessToken;
65c17
< * Get the access token currently associated with the user.
---
> * Get the current access token being used by the user.
67,75c19
< public function token(): ?ScopeAuthorizable
< {
< return $this->currentAccessToken();
< }
<
< /**
< * Get the access token currently associated with the user.
< */
< public function currentAccessToken(): ?ScopeAuthorizable
---
> public function token(): ?TransientToken
85,123c29
< return $this->accessToken && $this->accessToken->can($scope);
< }
<
< /**
< * Determine if the current API token is missing a given scope.
< */
< public function tokenCant(string $scope): bool
< {
< return ! $this->tokenCan($scope);
< }
<
< /**
< * Create a new personal access token for the user.
< *
< * @param string[] $scopes
< */
< public function createToken(string $name, array $scopes = []): PersonalAccessTokenResult
< {
< return app(PersonalAccessTokenFactory::class)->make(
< $this->getAuthIdentifier(), $name, $scopes, $this->getProviderName()
< );
< }
<
< /**
< * Get the user provider name.
< *
< * @throws \LogicException
< */
< public function getProviderName(): string
< {
< $providers = collect(config('auth.guards'))->where('driver', 'passport')->pluck('provider')->all();
<
< foreach (config('auth.providers') as $provider => $config) {
< if (in_array($provider, $providers) && $config['driver'] === 'eloquent' && is_a($this, $config['model'])) {
< return $provider;
< }
< }
<
< throw new LogicException('Unable to determine authentication provider for this model from configuration.');
---
> return $this->accessToken ? $this->accessToken->can($scope) : false;
129c35
< public function withAccessToken(?ScopeAuthorizable $accessToken): static
---
> public function withAccessToken(TransientToken $accessToken): static
root@docker_lamp_1:/home/jiminny# cat vendor/laravel/passport/src/Contracts/OAuthenticatable.php
<?php
namespace Laravel\Passport\Contracts;
use Illuminate\Contracts\Auth\Authenticatable;
use Illuminate\Database\Eloquent\Relations\HasMany;
use Illuminate\Database\Eloquent\Relations\MorphMany;
use Laravel\Passport\PersonalAccessTokenResult;
interface OAuthenticatable extends Authenticatable
{
/**
* Get all the user's registered OAuth applications.
*
* @return \Illuminate\Database\Eloquent\Relations\MorphMany<\Laravel\Passport\Client, \Illuminate\Foundation\Auth\User>
*/
public function oauthApps(): MorphMany;
/**
* Get all the access tokens for the user.
*
* @return \Illuminate\Database\Eloquent\Relations\HasMany<\Laravel\Passport\Token, \Illuminate\Foundation\Auth\User>
*/
public function tokens(): HasMany;
/**
* Determine if the current API token has a given scope.
*/
public function tokenCan(string $scope): bool;
/**
* Determine if the current API token is missing a given scope.
*/
public function tokenCant(string $scope): bool;
/**
* Create a new personal access token for the user.
*
* @param string[] $scopes
*/
public function createToken(string $name, array $scopes = []): PersonalAccessTokenResult;
/**
* Get the access token currently associated with the user.
*/
public function currentAccessToken(): ?ScopeAuthorizable;
/**
* Set the current access token for the user.
*/
public function withAccessToken(?ScopeAuthorizable $accessToken): static;
/**
* Get the user provider name.
*/
public function getProviderName(): string;
}
root@docker_lamp_1:/home/jiminny# grep -n "use HasApiTokens" app/Models/User.php app/Models/Partner.php app/Traits/HasApiTokens.php
app/Models/User.php:243: use HasApiTokens;
app/Models/Partner.php:78: use HasApiTokens;
root@docker_lamp_1:/home/jiminny# # Does User use Jiminny's or Passport's?
grep -rn "HasApiTokens" app/Models/User.php
43:use Laravel\Passport\HasApiTokens;
243: use HasApiTokens;
root@docker_lamp_1:/home/jiminny# grep -rn "Jiminny\\\Traits\\\HasApiTokens" app/
root@docker_lamp_1:/home/jiminny# grep -rn "use Jiminny\\\\Traits\\\\HasApiTokens" app/
root@docker_lamp_1:/home/jiminny# clear
DOCKER
Close Tab
DEV (docker)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
⌥⌘1
DEV (docker)...
|
iTerm2
|
DEV (docker)
|
NULL
|
53905
|
|
53906
|
root@docker_lamp_1:/home/jiminny# diff \
vendor/ root@docker_lamp_1:/home/jiminny# diff \
vendor/laravel/passport/src/HasApiTokens.php \
app/Traits/HasApiTokens.php
3c3
< namespace Laravel\Passport;
---
> namespace Jiminny\Traits;
5,9c5
< use Illuminate\Database\Eloquent\Builder;
< use Illuminate\Database\Eloquent\Relations\HasMany;
< use Illuminate\Database\Eloquent\Relations\MorphMany;
< use Laravel\Passport\Contracts\ScopeAuthorizable;
< use LogicException;
---
> use Laravel\Passport\TransientToken;
11,13d6
< /**
< * @phpstan-require-implements \Laravel\Passport\Contracts\OAuthenticatable
< */
18,44d10
< */
< protected ?ScopeAuthorizable $accessToken = null;
<
< /**
< * Get all of the user's registered OAuth clients.
< *
< * @deprecated Use oauthApps()
< *
< * @return \Illuminate\Database\Eloquent\Relations\HasMany<\Laravel\Passport\Client, $this>
< */
< public function clients(): HasMany
< {
< return $this->hasMany(Passport::clientModel(), 'user_id');
< }
<
< /**
< * Get all of the user's registered OAuth applications.
< *
< * @return \Illuminate\Database\Eloquent\Relations\MorphMany<\Laravel\Passport\Client, $this>
< */
< public function oauthApps(): MorphMany
< {
< return $this->morphMany(Passport::clientModel(), 'owner');
< }
<
< /**
< * Get all of the access tokens for the user.
46c12
< * @return \Illuminate\Database\Eloquent\Relations\HasMany<\Laravel\Passport\Token, $this>
---
> * @var Laravel\Passport\TransientToken
48,62c14
< public function tokens(): HasMany
< {
< return $this->hasMany(Passport::tokenModel(), 'user_id', $this->getAuthIdentifierName())
< ->where(function (Builder $query): void {
< $query->whereHas('client', function (Builder $query): void {
< $query->where(function (Builder $query): void {
< $provider = $this->getProviderName();
<
< $query->when($provider === config('auth.guards.api.provider'), function (Builder $query): void {
< $query->orWhereNull('provider');
< })->orWhere('provider', $provider);
< });
< });
< });
< }
---
> protected $accessToken;
65c17
< * Get the access token currently associated with the user.
---
> * Get the current access token being used by the user.
67,75c19
< public function token(): ?ScopeAuthorizable
< {
< return $this->currentAccessToken();
< }
<
< /**
< * Get the access token currently associated with the user.
< */
< public function currentAccessToken(): ?ScopeAuthorizable
---
> public function token(): ?TransientToken
85,123c29
< return $this->accessToken && $this->accessToken->can($scope);
< }
<
< /**
< * Determine if the current API token is missing a given scope.
< */
< public function tokenCant(string $scope): bool
< {
< return ! $this->tokenCan($scope);
< }
<
< /**
< * Create a new personal access token for the user.
< *
< * @param string[] $scopes
< */
< public function createToken(string $name, array $scopes = []): PersonalAccessTokenResult
< {
< return app(PersonalAccessTokenFactory::class)->make(
< $this->getAuthIdentifier(), $name, $scopes, $this->getProviderName()
< );
< }
<
< /**
< * Get the user provider name.
< *
< * @throws \LogicException
< */
< public function getProviderName(): string
< {
< $providers = collect(config('auth.guards'))->where('driver', 'passport')->pluck('provider')->all();
<
< foreach (config('auth.providers') as $provider => $config) {
< if (in_array($provider, $providers) && $config['driver'] === 'eloquent' && is_a($this, $config['model'])) {
< return $provider;
< }
< }
<
< throw new LogicException('Unable to determine authentication provider for this model from configuration.');
---
> return $this->accessToken ? $this->accessToken->can($scope) : false;
129c35
< public function withAccessToken(?ScopeAuthorizable $accessToken): static
---
> public function withAccessToken(TransientToken $accessToken): static
root@docker_lamp_1:/home/jiminny# cat vendor/laravel/passport/src/Contracts/OAuthenticatable.php
<?php
namespace Laravel\Passport\Contracts;
use Illuminate\Contracts\Auth\Authenticatable;
use Illuminate\Database\Eloquent\Relations\HasMany;
use Illuminate\Database\Eloquent\Relations\MorphMany;
use Laravel\Passport\PersonalAccessTokenResult;
interface OAuthenticatable extends Authenticatable
{
/**
* Get all the user's registered OAuth applications.
*
* @return \Illuminate\Database\Eloquent\Relations\MorphMany<\Laravel\Passport\Client, \Illuminate\Foundation\Auth\User>
*/
public function oauthApps(): MorphMany;
/**
* Get all the access tokens for the user.
*
* @return \Illuminate\Database\Eloquent\Relations\HasMany<\Laravel\Passport\Token, \Illuminate\Foundation\Auth\User>
*/
public function tokens(): HasMany;
/**
* Determine if the current API token has a given scope.
*/
public function tokenCan(string $scope): bool;
/**
* Determine if the current API token is missing a given scope.
*/
public function tokenCant(string $scope): bool;
/**
* Create a new personal access token for the user.
*
* @param string[] $scopes
*/
public function createToken(string $name, array $scopes = []): PersonalAccessTokenResult;
/**
* Get the access token currently associated with the user.
*/
public function currentAccessToken(): ?ScopeAuthorizable;
/**
* Set the current access token for the user.
*/
public function withAccessToken(?ScopeAuthorizable $accessToken): static;
/**
* Get the user provider name.
*/
public function getProviderName(): string;
}
root@docker_lamp_1:/home/jiminny# grep -n "use HasApiTokens" app/Models/User.php app/Models/Partner.php app/Traits/HasApiTokens.php
app/Models/User.php:243: use HasApiTokens;
app/Models/Partner.php:78: use HasApiTokens;
root@docker_lamp_1:/home/jiminny# # Does User use Jiminny's or Passport's?
grep -rn "HasApiTokens" app/Models/User.php
43:use Laravel\Passport\HasApiTokens;
243: use HasApiTokens;
root@docker_lamp_1:/home/jiminny# grep -rn "Jiminny\\\Traits\\\HasApiTokens" app/
root@docker_lamp_1:/home/jiminny# grep -rn "use Jiminny\\\\Traits\\\\HasApiTokens" app/
root@docker_lamp_1:/home/jiminny# clear
DOCKER
Close Tab
DEV (docker)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
⌥⌘1
DEV (docker)...
|
iTerm2
|
DEV (docker)
|
NULL
|
53906
|
|
53911
|
root@docker_lamp_1:/home/jiminny#
DOCKER
Close Tab root@docker_lamp_1:/home/jiminny#
DOCKER
Close Tab
DEV (docker)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
⌥⌘1
DEV (docker)...
|
iTerm2
|
DEV (docker)
|
NULL
|
53911
|
|
53912
|
claude100% L2PMon 20 Apr 11:32:56••• =Security pat claude100% L2PMon 20 Apr 11:32:56••• =Security patch review and testing guidanceActivitycaltVIeWWindowmeltJiminny ...381 Directorie.Eh External connections.# Starred8 jiminny-x-integrati...8 platform-inner-team® Channelsa al-chanter# alerts# backend* confusion-clinid# curiosity_lab# engineering# frontend# general# infra-changes# jiminny-bgi nlatform-ackets# product_launches# random# releases# sofia-office# support# thank-yous# the_people_of_jimi...6 Direct messagesP. Aneliya Angelova®. Galya Dimitrova2 Stefka StovanovalR. Stoyan TomovB Aneliya Angelova,..Nikolav Nikolov&. Stoyan TanevVasil Vasilev. Nikolay IvanovP. Vesi: Apps• Toastf Jira Cloud¿ 8. Aneliya Angelova• Messagest Add canvasur FilesAneliya Angelova 9:34 AMкато тоыгнах да качвам на ники оранча и уж се деплоива па иміariday, Marca p7th редата и гледам че стои. ХубспотLukas Kovalik 9:35 AMслучва сеиначе май си раоотидо сега друго не сьм виждалAneliya Angelova 9:35 AMдаже не знам от кога вес е счупил деплоя и колко време все съм тествала едно и сьщо без да се усетя че деплойването не е работелоLukas Kovallik 9:36 AMIThursday, April 16throutendoiktra telt /hAptokins aprep-mroot@docker_lamp_1:/home/jiminny# grep-rn"useJiminny(||| Traitsl|||HasApiTokens" app/root@docker_lamp 1:home/iiminnv#Confirmed - nothing uses it. The custom trait is completely orphaned.Summary of the full review:• Security PR is safe to stay mergedAsporE/cerety hins lorawepasgieto Becagt gocha om both ker andPartner• The PlaylistPolicyTest failure is a pre-existing flaky factory seed collision, unrelatedto the PR• app/Traits/HasApiTokens. php is dead code — worth a cleanup ticket to delete itYou're good.Aneliya Angelova 10:00 AMЛукаш кога искаш да се чуемLukas Kovallk 10-01 AMайде след 15 мин че се зарових в зохоd1Lukas Kovalik 10:32 AMако искаш да се чуем сегаAneliya Angelova 10:33 AMA huddle happened 10:33 AMIukac Kovalik 10-41 AMphp artisan automated-reports --report-id 39php artisan automated-reports:send --result-id 64Aneliya Angelova 9:41 AMЗдрасти Лукаш, струва ми се, че репортите се генерират върху всички активитита със съответния Saved search bez da e dobawen filtyr za dataLukas Kovalik 10:31AMАни след малко може да се чуемAneliya Angelova 11:27 AMнапnaво званни когато можецMessage Aneliva Angelove+ Дạ.Reply..Sonnet 4.6Claude is Al and can make mistakes. Please double-check responses....
|
iTerm2
|
NULL
|
NULL
|
53912
|
|
53917
|
root@docker_lamp_1:/home/jiminny#
DOCKER
Close Tab root@docker_lamp_1:/home/jiminny#
DOCKER
Close Tab
DEV (docker)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
⌥⌘1
DEV (docker)...
|
iTerm2
|
DEV (docker)
|
NULL
|
53917
|
|
53918
|
root@docker_lamp_1:/home/jiminny#
DOCKER
Close Tab root@docker_lamp_1:/home/jiminny#
DOCKER
Close Tab
DEV (docker)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
⌥⌘1
DEV (docker)...
|
iTerm2
|
DEV (docker)
|
NULL
|
53918
|
|
53919
|
VIewWinaow100% LzPMon 20 Apr 11:33:05( JY-20553 | VIewWinaow100% LzPMon 20 Apr 11:33:05( JY-20553 | Improve crm-sync dela[SRD-6793] Les Mills activity type@ JY-20698 handle failed field syncJY-20692 change confirmation pa(JY-20543] AJ Reports > Tracking(JY-18909 /Part2) Automated rerAsk Jiminny Reports by nikolay-ya*) New Tabu Product Growth Platform I Useroiu Userpilot Logged-activity(0 fix(security): composer dependenPipelines - jiminny/appFeed - iminny — Sentryfix(security): composer depender8 JiminnyJ New Tal08MehimasrheInsiahtsIssuesreedErrors & OutagesBreached MetricsWarningsUser FeedbackAll ViewsConfigureAlertsmy senty.lo issues:environment-production-eudenviro!• Jiminnv Excentions EmailActivitvlmnortFycention(Email Import) Failed for InboxEmail ID: 121778827: Error: Call to a member function error® on nullSAPP-I-NS• Jiminny Exceptions\RuntimeExceptionUnable to create inbox for user ID 13927 and provider "google" - social account is not connected (state: full-refresh)Re APP.1RYR IJann/johc/Mailhox/Createlnboy nhn in liminnv. lohs. Mailhox\Createlnhoyshandleuminate Database Ouerv ExceptionSOLSTATEIHY000: General error 1205 Lock wait timeout exceeded: try restartina transaction (Connection: mvsal. Host: liminnv-db-eu-orod68 APP-1FA4 /app/Jobs/Crm/MatchActivityCrmData.php in Jiminny \Jobs\Crm\MatchActivityCrmData:resetCrmMappings• Jiminny\Component\Transcription\TranscriptionProcessor\Gladia\Exceptions\InvalidTranslationResponseExceptionMAPP-1CGEJaop/comoonent/Aranscriotion/Service/AranslationService.oho.iniminny.ComoonentTranscriofion.ServiceranslationServicorcetranslatectranscIlluminate\Database\QueryException1 SQLSTATE[23000]: Integrity constraint violation: 1452 Cannot add or update a child row: a foreign key constraint fails Gjiminny'.'activities*, CC(7 APP-1E9E | /app/Models/Activitv.php in Jiminny\Models\Activitv::updateActivityCrmData• Jiminnv Comnonent PronhetAi Excentions PronhetExcentionUnexpected service error.Server error: 'POST https://prophet.jiminny.eu/crm/deal/extract-field-values* resulted in a '504 Gateway Time-out( APP-1DZ3 | /app/Component/ProphetAi/ProphetClient.php in Jiminny\Component\ProphetAi\ProphetClient::sendRequest• Jiminny\Exceptions|SocialAccountrokenInvalidExceptiorSocial account for HubSpot cannot be found. Please login to Jiminny to connect.1e App-1BY3 | lann/Services/Crm/RaceService nhn in Jiminnv|Services|Crm|RaseService-validatelIcerAccountFyisteIlluminate\ Database\QueryExceptiorSOL STATFIHY000 : General error 1205.Lock wait timeout exceeded.tnv restartino transactionConnection.mvsal.Host.liminnv-db-eu-orodfe APP-1F58 |/app/Jobs/Crm/MatchActivitvCrmData.pho in Jiminnv|Jobs\Crm\MatchActivitvCrmDatauresetCrmMappinas"iminnyl Cvcontionel Coriol/csountT.koninuolidEvoontior1 Social account for HubSpot cannot be found. Please loain to Jiminny to connect.E APP-1ET9/app/Services/Crm/BaseService.ohp in JiralidateUserAccountExistsIlluminate\Database\QueryException1 SOLSTATE[HY000]: General error: 1205 Lock wait timeout exceeded: try restarting transaction (Connection: mysal. Host: liminny-db-eu-prod.89 APP-1FP3 |/app/Jobs/Crm/Delete/DeleteCrmEntityTrait.php in Jiminny\Jobs\Crm\Delete\DeleteLeadJob::Jiminny\Jobs\Crm\Delete\(closure)BadMethodCallExcentioni1 Required parameter not passed: "refresh_token"Re App.1ENg |lann/Sorvicos/SocialAccountSorvico nhn in Jiminnv|Sorvicoe|SocialAccountSorvico«Jiminnv|Sorvicac\fclocurol• Jiminny\Exceptions\JobTimeoutException1 Joh timed out Jiminnv\ Iisteners\Activities\Crm\UndateCrmDataI Jann/Queue/Worker/Worker.nhn in Jiminnv\ Queuel Workerl Worker-Jiminnv\Queuel Worker\(closure)Illuminate\Queue\MaxAttemptsExceededExceptionaiminnv Listeners Activities Crm UodateCrmData has been attemoted too manv times.f App-1902 |/app/Queue/Worker/Worker.oho in Jiminnv Queue Worker Worker-rocessTiminnyl Cvcontionel CoriolAccountTokoninvolidEvcantior1 Social account for HubSpot cannot be found. Please login to Jiminny to connect.APP-18V3/app/Services/Crm/BaseService.php in Jiminny Services CrmBaseService::validateUserAccountExistsSecurity patch review and testing guidancerootinyllTraitesllasApitokensnapprep-rnConnrmed — nothino uses ii. The custom trait is comnlete v ornhaned.Summary of the full review:• Securitv PR is safe to stav merged• All 5 CVE fixes are patch/minor bumps with no breaking changes• Passport is correctlv using Laravel\ Passport HasApiTokens on both User andPartner• The PlavlistPolicvTest failure is a pre-existing flaky factorv seed collision. unrelatedto the PR• app/Traits/HasApiTokens.php is dead code - worth a cleanup ticket to delete itYou re goodReplv.Sonnet 4.6vClaude is Al and can make mistakes. Please double-check responses....
|
iTerm2
|
NULL
|
NULL
|
53919
|
|
53920
|
iTerm2ShellEditViewSessionScriptsProfilesWindowHel iTerm2ShellEditViewSessionScriptsProfilesWindowHelpDOCKER₴81root@docker_lamp_1:/home/jiminny# ]DEV (docker)$82DEV (docker)APP (-zsh)*3-zsh100% C47 8 Mon 20 Apr 11:33:05T₴1|• ₴4screenpipe"• *5DEV...
|
iTerm2
|
NULL
|
NULL
|
53920
|
|
53921
|
VIewWinaow100% LzMOn 2U A0r 11:33.00( JY-20553 | I VIewWinaow100% LzMOn 2U A0r 11:33.00( JY-20553 | Improve crm-sync dela[SRD-6793] Les Mills activity type@ JY-20698 handle failed field syncJY-20692 change confirmation pa(JY-20543] AJ Reports > Tracking(JY-18909 /Part2) Automated rerAsk Jiminny Reports by nikolay-ya*) New Tabu Product Growth Platform I Useroiu Userpilot Logged-activity(0 fix(security): composer dependenPipelines - jiminny/appFeed - iminny — Sentry)fix(security): composer depender8 JiminnyJ New Tal08aehmharheInsiahtsIssuesreedErrors & OutagesBreached MetricsWarningsUser FeedbackAll ViewsConfigureAlertsmy senty.lo issues:environment-production-eudenviro!• Jiminnv Excentions EmailActivitvlmnortFycention(Email Import) Failed for InboxEmail ID: 121778827: Error: Call to a member function error® on nullAPP-I-NS• Jiminny Exceptions\RuntimeExceptionUnable to create inbox for user ID 13927 and provider "google" - social account is not connected (state: full-refresh)ReAPP.1RYRIJann/Johc/Mailhox/Createlnboy nhn in liminnv.lohs.Mailhox\Createlnhoyshandleuminate Database Ouerv Exception• SQLSTATE[HY000J: General error: 1205 Lock wait timeout exceeded; try restarting transaction (Connection: mysql, Host: jiminny-db-eu-prod68 APP-1FA4| /app/Jobs/Crm/MatchActivityCrmData.php in Jiminny \Jobs\Crm\MatchActivityCrmData::resetCrmMappings• Jiminny\Component\Transcription\TranscriptionProcessor\Gladia\Exceptions\InvalidTranslationResponseExceptionMAPP-1CGEJaop/comoonent/Aranscriotion/Service/AranslationService.oho.iniminny.ComoonentTranscriofion.ServiceranslationServicorcetranslatectranscIlluminate\Database\QueryExceptior1 SQLSTATE[23000]: Integrity constraint violation: 1452 Cannot add or update a child row: a foreign key constraint fails Ciiminny'.'activities*, CC(7 APP-1E9E | /app/Models/Activitv.php in Jiminny\Models\Activitv::updateActivityCrmData• Jiminnv Comnonent PronhetAi Excentions PronhetSxcentionUnexpected service error.Server error: 'POST https://prophet.jiminny.eu/crm/deal/extract-field-values* resulted in a '504 Gateway Time-out)( APP-1DZ3 | /app/Component/ProphetAi/ProphetClient.php in Jiminny\Component\ProphetAi\ProphetClient::sendRequest• Jiminny\Exceptions|SocialAccounttokenInvalidExceptiorSocial account for HubSpot cannot be found. Please login to Jiminny to connect.1e App-1BY3 | lann/Services/Crm/RaceService nhn in Jiminnv|Services|Crm|RasoService-validatelJserAccountFyistsIlluminate\ Database\OueryExceptiorSOL STATFIHY000 : General error 1205.Lock wait timeout exceeded.tnv restartino transactionConnection.mvsal.Host.liminnv-db-eu-orodfe APp-1F58 |/app/Jobs/Crm/MatchActivitvCrmData.pho in.Jiminnv|Jobs\Crm|MatchActivitvCrmDatauresetCrmMappinas"iminnyl Cvcontionel Coriol/csountT.konlnuolidEvoontior1 Social account for HubSpot cannot be found. Please loain to Jiminny to connect.E APP-1ET9 |/app/Services/Crm/BaseService.ohp in Jir/alidateUserAccountExistsIlluminate\Database\QueryException1 SOLSTATE[HY000]: General error: 1205 Lock wait timeout exceeded: try restarting transaction (Connection: mysal. Host: fiminny-db-eu-prod.89 APP-1FP3 |/app/Jobs/Crm/Delete/DeleteCrmEntityTrait.php in Jiminny\Jobs\Crm\Delete\DeleteLeadJob::Jiminny\Jobs\Crm\Delete\(closure)BadMethodCallExcentioni1 Required parameter not passed: "refresh_token"Re App.1ENg |lann/Sorvicos/SocialAccountSorvico nhn in Jiminnv|Sorvicoe|SocialAccountSorvico«Jiminnv|Sorvicac\fclocurol• Jiminny\Exceptions\JobTimeoutException1 Joh timed out Jiminnv\ Iisteners\Activities\Crm\UndateCrmDataI Jann/Queue/Worker/Worker.nhn in Jiminnv Queue\ Worker) Worker«Jiminnv\Queue\ Worker\(closure)Illuminate\Queue\ MaxAttemptsExceededExceptionJiminny\Listeners\Activities\Crm\UpdateCrmData has been attempted too many times.f App-1902 |/app/Queue/Worker/Worker.oho in Jiminnv Queue Worker Worker-rocessTiminnyl Cvcontionel CoriolAccountTokoninvolidEvcantior1 Social account for HubSpot cannot be found. Please login to Jiminny to connect.APP-18V3/app/Services/Crm/BaseService.php in Jiminny Services\CrmBaseService:oltraralicarhashuntewiote•• 0Security patch review and testing guidanceRewew testtesetyrty ce enteary upechang-esimphse - 202re these safe?patch/minor bumps. Alert #463 (phpunit/phpunit) is listed under Skipped11:06 1Reading frontend design skill ›fixed alertssklpped alertsoreaking changesmerge verdietsate wi caveatFIXED - SAFF TO MERGEalertpackageseverityversion#457laravel/passportCVE-2026-39976 - 13.6.0 → 13.7.4high#434e 203050640- 4335 7 4.336 (ranaitive)highpatchhighoatchiCV6.2024-22025 ÷ CVE.2026-40104.2.0.40 ₴ 20.51#429patchevsnva%esottraneirivoSKIPPED -— ACTION REQUIRED SEPARATELYHAA2pnpunic/pnpunitNo CVE • 11.X → 12.x — major breaking bumphigh)major bumpRemoves iniSet(), setLocale(),getMockFor,getMockForTrait(),createTestmctflacel)keolv..CannotAhClaude ic Aland can make mistakes Plosce double-chock recnoncac)...
|
iTerm2
|
NULL
|
NULL
|
53921
|
|
53923
|
root@docker_lamp_1:/home/jiminny#
DOCKER
Close Tab root@docker_lamp_1:/home/jiminny#
DOCKER
Close Tab
DEV (docker)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
⌥⌘1
DEV (docker)...
|
iTerm2
|
DEV (docker)
|
NULL
|
53923
|
|
53927
|
iTerm2ShelllEditViewSessionScriptsProfilesWindowHe iTerm2ShelllEditViewSessionScriptsProfilesWindowHelpDOCKERroot@docker_lamp_1:/home/jiminny# ]DEV (docker)$82DEV (docker)APP (-zsh)*3‹$0100% C47 8 Mon 20 Apr 11:33:28T₴1|-zsh• ₴4screenpipe"• *5DEV...
|
iTerm2
|
NULL
|
NULL
|
53927
|
|
53934
|
Last login: Mon Apr 20 10:16:41 on ttys009
Poetry Last login: Mon Apr 20 10:16:41 on ttys009
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-04-20T10:17:08.672567Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store
checking permissions...
screen recording: ok
accessibility: ok
2026-04-20T10:17:08.735636Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-04-20T10:17:09.168849Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-04-20T10:17:09.170474Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-04-20T10:17:09.170918Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-04-20T10:17:09.203704Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-04-20T10:17:09.203780Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-04-20T10:17:09.203962Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-04-20T10:17:09.203976Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-04-20T10:17:09.203934Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-04-20T10:17:09.204030Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-04-20T10:17:09.203954Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-04-20T10:17:09.215020Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))
2026-04-20T10:17:09.220127Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-04-20T10:17:09.220306Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-04-20T10:17:09.220863Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-04-20T10:17:09.221034Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-04-20T10:17:09.221177Z INFO screenpipe_core::pipes: loaded pipe: video-export
2026-04-20T10:17:09.221820Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary
2026-04-20T10:17:09.221839Z INFO screenpipe_core::pipes: loaded 6 pipes from "/Users/lukas/.screenpipe/pipes"
_
__________________ ___ ____ ____ (_____ ___
/ ___/ ___/ ___/ _ \/ _ \/ __ \ / __ \/ / __ \/ _ \
(__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/
/____/\___/_/ \___/\___/_/ /_/ / .___/_/ .___/\___/
/_/ /_/
power AI by everything you've seen, said or heard
open source | runs locally | developer friendly
┌────────────────────────┬────────────────────────────────────┐
│ setting │ value │
├────────────────────────┼────────────────────────────────────┤
│ audio chunk duration │ 30 seconds │
│ port │ 3030 │
│ audio disabled │ true │
│ vision disabled │ false │
│ pause on DRM content │ false │
│ audio engine │ Parakeet │
│ vad engine │ Silero │
│ data directory │ /Users/lukas/.screenpipe │
│ debug mode │ false │
│ telemetry │ true │
│ use pii removal │ true │
│ use all monitors │ true │
2026-04-20T10:17:09.223448Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)
│ ignored windows │ ["Boosteroid"] │
│ included windows │ [] │
│ cloud sync │ disabled │
│ auto-destruct pid │ 0 │
│ deepgram key │ not set │
│ api auth │ enabled │
2026-04-20T10:17:09.227535Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh
│ encrypt secrets │ disabled │
│ retention days │ 14 │
├────────────────────────┼────────────────────────────────────┤
│ languages │ │
│ │ all languages │
├────────────────────────┼────────────────────────────────────┤
│ monitors │ │
│ │ id: 1 │
│ │ id: 2 │
├────────────────────────┼────────────────────────────────────┤
│ audio devices │ │
│ │ disabled │
└────────────────────────┴────────────────────────────────────┘
you are using local processing. all your data stays on your computer.
warning: telemetry is enabled. only error-level data will be sent.
to disable, use the --disable-telemetry flag.
check latest changes here: https://github.com/screenpipe/screenpipe/releases
2026-04-20T10:17:09.240088Z INFO screenpipe: starting UI event capture
2026-04-20T10:17:09.253668Z INFO screenpipe_engine::ui_recorder: Starting UI event capture
2026-04-20T10:17:09.267973Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)
2026-04-20T10:17:09.268072Z INFO screenpipe_engine::ui_recorder: UI recording session started: f196d677-2a10-4dec-93e7-9dd9048a1d8e
2026-04-20T10:17:09.268173Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-04-19 07:17:09.268169 UTC to 2026-04-20 07:17:09.268169 UTC)
2026-04-20T10:17:09.268665Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)
2026-04-20T10:17:09.275204Z INFO screenpipe_engine::server: Server listening on [IP_ADDRESS]:3030
2026-04-20T10:17:09.280547Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030
2026-04-20T10:17:09.284876Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)
2026-04-20T10:17:09.284906Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)
2026-04-20T10:17:09.284942Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)
2026-04-20T10:17:09.316523Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)
2026-04-20T10:17:09.316557Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)
2026-04-20T10:17:09.316583Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)
2026-04-20T10:17:09.316603Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)
2026-04-20T10:17:09.975374Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)
2026-04-20T10:17:10.050320Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)
2026-04-20T10:17:10.109022Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=52481, dur=72ms
2026-04-20T10:17:10.197530Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=52482, dur=98ms
2026-04-20T10:17:10.926185Z WARN sqlx::query: summary="SELECT f.id, f.timestamp, f.offset_index, …" db.statement="\n\nSELECT\n f.id,\n f.timestamp,\n f.offset_index,\n COALESCE(\n SUBSTR(f.full_text, 1, 200),\n SUBSTR(f.accessibility_text, 1, 200),\n (\n SELECT\n SUBSTR(ot.text, 1, 200)\n FROM\n ocr_text ot\n WHERE\n ot.frame_id = f.id\n LIMIT\n 1\n )\n ) as text,\n COALESCE(\n f.app_name,\n (\n SELECT\n ot.app_name\n FROM\n ocr_text ot\n WHERE\n ot.frame_id = f.id\n LIMIT\n 1\n )\n ) as app_name,\n COALESCE(\n f.window_name,\n (\n SELECT\n ot.window_name\n FROM\n ocr_text ot\n WHERE\n ot.frame_id = f.id\n LIMIT\n 1\n )\n ) as window_name,\n COALESCE(vc.device_name, f.device_name) as screen_device,\n COALESCE(vc.file_path, f.snapshot_path) as video_path,\n COALESCE(vc.fps, 0.033) as chunk_fps,\n f.browser_url,\n f.machine_id\nFROM\n frames f\n LEFT JOIN video_chunks vc ON f.video_chunk_id = vc.id\nWHERE\n f.timestamp >= ?1\n AND f.timestamp <= ?2\n AND COALESCE(vc.file_path, f.snapshot_path, '') NOT LIKE 'cloud://%'\nORDER BY\n f.timestamp DESC,\n f.offset_index DESC\nLIMIT\n 10000\n" rows_affected=0 rows_returned=974 elapsed=1.657379083s
2026-04-20T10:17:10.928810Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 974 frame entries, coverage from 2026-04-19 07:17:09.268169 UTC
2026-04-20T10:17:36.605708Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5556097941235749601, trigger=visual_change)
2026-04-20T10:17:41.066595Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5621935701738529327, trigger=click)
2026-04-20T10:17:41.100078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5621935701738529327, trigger=click)
2026-04-20T10:17:46.116429Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5621935701738529327, trigger=click)
2026-04-20T10:17:46.148269Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5621935701738529327, trigger=click)
2026-04-20T10:18:13.360099Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=145 elapsed=4.153777416s
2026-04-20T10:18:13.360276Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 145 eligible frames
2026-04-20T10:18:18.937138Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 90 frames, 15.2MB → 6.4MB (2.4x), 90 JPEGs deleted
2026-04-20T10:18:22.014745Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 53 frames, 9.4MB → 2.0MB (4.6x), 53 JPEGs deleted
2026-04-20T10:18:56.067965Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1399546062189663050, trigger=visual_change)
2026-04-20T10:18:56.859644Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1399546062189663050, trigger=click)
2026-04-20T10:18:59.894779Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=[CREDIT_CARD], trigger=click)
2026-04-20T10:19:12.201247Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5621935701738529327, trigger=visual_change)
2026-04-20T10:21:22.063263Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1399546062189663050, trigger=visual_change)
2026-04-20T10:21:35.657143Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5007800743451086391, trigger=visual_change)
2026-04-20T10:21:35.899663Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5007800743451086391, trigger=visual_change)
2026-04-20T10:21:38.094166Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5007800743451086391, trigger=click)
2026-04-20T10:21:38.149655Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5007800743451086391, trigger=click)
2026-04-20T10:21:38.947641Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5007800743451086391, trigger=click)
2026-04-20T10:21:38.991934Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5007800743451086391, trigger=click)
2026-04-20T10:23:28.231526Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=2 elapsed=6.103025792s
2026-04-20T10:23:28.232845Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames
2026-04-20T10:25:18.292352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=133505750984754566, trigger=click)
2026-04-20T10:25:33.154631Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:25:33.227754Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:25:34.786990Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:25:36.507114Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:25:36.556707Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:25:37.741060Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:25:39.466175Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:25:39.547293Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:26:02.072902Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2625703622302799632, trigger=visual_change)
2026-04-20T10:26:05.038754Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8395829747728977847, trigger=visual_change)
2026-04-20T10:26:10.400901Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:26:10.459718Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:26:14.431146Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:26:17.437868Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:26:35.296162Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:26:35.339241Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:26:37.233387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:26:37.326557Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:00.031681Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:00.067495Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:01.950749Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:02.027316Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:13.045805Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:13.116607Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:15.272022Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:15.311144Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:17.880859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:17.952143Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:21.645455Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:21.706889Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:36.304603Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:36.380537Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:37.368951Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:37.459157Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:40.420505Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:40.469217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:41.179717Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:28:00.173884Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:00.251737Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:01.241028Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:01.288002Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:02.985445Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:03.078932Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:04.726087Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:04.770305Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:18.186992Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:18.272249Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:28.337807Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 14 eligible frames
2026-04-20T10:28:29.608030Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 8 frames, 0.7MB → 0.5MB (1.4x), 8 JPEGs deleted
2026-04-20T10:28:30.685845Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 6 frames, 1.2MB → 0.7MB (1.8x), 6 JPEGs deleted
2026-04-20T10:28:49.943477Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:49.984595Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:50.611087Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:50.628530Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:54.853245Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:57.739309Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:29:03.177558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:03.231322Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:03.857989Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:29:04.993121Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:05.032838Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:06.923393Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:29:07.890421Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:07.960410Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:08.812301Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:26.656780Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:26.775833Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:27.602791Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:27.639583Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:34.060332Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2389025338591748766, trigger=visual_change)
2026-04-20T10:29:37.050675Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2389025338591748766, trigger=click)
2026-04-20T10:29:37.085946Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2389025338591748766, trigger=click)
2026-04-20T10:29:40.501396Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2389025338591748766, trigger=visual_change)
2026-04-20T10:29:43.751715Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:29:43.843367Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:44.468329Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:46.931137Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:49.616400Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:49.692474Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:50.298335Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:29:51.348506Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:51.436585Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:30:12.602958Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8200761366188343712, trigger=click)
2026-04-20T10:31:17.535958Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5166044279428207369, trigger=click)
2026-04-20T10:31:18.668547Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5166044279428207369, trigger=visual_change)
2026-04-20T10:31:19.518515Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5166044279428207369, trigger=click)
2026-04-20T10:31:19.681398Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5166044279428207369, trigger=click)
2026-04-20T10:31:21.044436Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5166044279428207369, trigger=click)
2026-04-20T10:31:21.086009Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5166044279428207369, trigger=click)
2026-04-20T10:31:21.680970Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5166044279428207369, trigger=visual_change)
2026-04-20T10:32:05.428125Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6999516640019587394, trigger=visual_change)
2026-04-20T10:32:07.004460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:07.088172Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:08.380482Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6999516640019587394, trigger=visual_change)
2026-04-20T10:32:11.588306Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:11.689288Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:12.318265Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:12.381069Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:20.139124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:20.175356Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:23.490851Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:27.111949Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6999516640019587394, trigger=visual_change)
2026-04-20T10:32:37.220458Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:37.303363Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:38.554270Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:38.619116Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:44.030894Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4838132251856752988, trigger=click)
2026-04-20T10:32:44.098803Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4838132251856752988, trigger=click)
2026-04-20T10:32:45.233990Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4838132251856752988, trigger=click)
2026-04-20T10:32:45.238569Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4838132251856752988, trigger=click)
2026-04-20T10:32:48.884987Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4838132251856752988, trigger=visual_change)
2026-04-20T10:32:51.832116Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:51.860110Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:53.754008Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:53.796899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:55.635715Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:55.675828Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:57.084341Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:57.128626Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:58.841455Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:58.882031Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:33:00.965217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:33:01.040922Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:33:02.591751Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:33:02.633245Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:33:03.324241Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:33:03.353493Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:33:05.802391Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:33:05.849275Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:33:06.911518Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=visual_change)
2026-04-20T10:33:14.484135Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4838132251856752988, trigger=click)
2026-04-20T10:33:14.530843Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4838132251856752988, trigger=click)
2026-04-20T10:33:34.189406Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4838132251856752988, trigger=click)
2026-04-20T10:33:34.205308Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=94 elapsed=3.603974333s
2026-04-20T10:33:34.205567Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 94 eligible frames
2026-04-20T10:33:34.240884Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4838132251856752988, trigger=visual_change)
2026-04-20T10:33:35.686677Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4838132251856752988, trigger=click)
2026-04-20T10:33:35.780825Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4838132251856752988, trigger=click)
2026-04-20T10:33:37.134576Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 8.0MB → 4.4MB (1.8x), 38 JPEGs deleted
2026-04-20T10:33:40.850354Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 54 frames, 7.9MB → 3.4MB (2.3x), 54 JPEGs deleted
2026-04-20T10:33:55.372436Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4838132251856752988, trigger=visual_change)
2026-04-20T10:35:01.169212Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:35:01.245363Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:35:02.392419Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=visual_change)
2026-04-20T10:35:05.029174Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:35:05.073174Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:35:07.222477Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:35:07.329020Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:35:08.707660Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=visual_change)
2026-04-20T10:35:27.744689Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:35:27.812062Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:36:18.265456Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:36:18.437457Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:36:23.437791Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:36:23.487637Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:36:24.299771Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=visual_change)
2026-04-20T10:36:25.135894Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:36:25.257064Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:36:27.317393Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=visual_change)
2026-04-20T10:36:50.815358Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:38:04.728644Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4435744464912499495, trigger=visual_change)
2026-04-20T10:38:07.749721Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4435744464912499495, trigger=visual_change)
2026-04-20T10:38:13.318000Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=visual_change)
2026-04-20T10:38:13.969769Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=visual_change)
2026-04-20T10:38:14.800566Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:38:14.834512Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:38:17.252696Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:38:17.328544Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:38:24.892322Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:38:24.943640Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:38:35.256001Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:38:35.322251Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:38:40.980335Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 88 eligible frames
2026-04-20T10:38:43.345927Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 39 frames, 6.6MB → 2.6MB (2.5x), 39 JPEGs deleted
2026-04-20T10:38:46.544495Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 47 frames, 7.3MB → 2.8MB (2.6x), 47 JPEGs deleted
2026-04-20T10:39:26.663352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=visual_change)
2026-04-20T10:39:29.597544Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:39:29.637879Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:40:07.495065Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=visual_change)
2026-04-20T10:40:11.064923Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3919322128440588956, trigger=visual_change)
2026-04-20T10:40:11.431065Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3919322128440588956, trigger=click)
2026-04-20T10:40:12.068565Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3919322128440588956, trigger=click)
2026-04-20T10:40:12.110719Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3919322128440588956, trigger=click)
2026-04-20T10:40:14.179306Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3919322128440588956, trigger=click)
2026-04-20T10:40:14.239361Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3919322128440588956, trigger=click)
2026-04-20T10:41:20.489623Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3919322128440588956, trigger=click)
2026-04-20T10:43:48.184341Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=82 elapsed=1.63218175s
2026-04-20T10:43:48.184571Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 82 eligible frames
2026-04-20T10:43:50.234957Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 30 frames, 2.2MB → 0.1MB (16.1x), 30 JPEGs deleted
2026-04-20T10:43:55.342383Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 50 frames, 7.9MB → 3.2MB (2.5x), 50 JPEGs deleted
2026-04-20T10:44:06.225390Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4079037146782974603, trigger=click)
2026-04-20T10:44:14.808445Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Slack, signals=2)
2026-04-20T10:44:19.110273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-539912533838677065, trigger=click)
2026-04-20T10:44:19.155111Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-539912533838677065, trigger=click)
2026-04-20T10:44:19.832463Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Slack, signals=2, browser=false)
2026-04-20T10:44:19.834928Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=3, app=Slack, title=None)
2026-04-20T10:44:27.766267Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5412550087722993493, trigger=visual_change)
2026-04-20T10:44:39.799864Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5412550087722993493, trigger=visual_change)
2026-04-20T10:44:57.832108Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5412550087722993493, trigger=visual_change)
2026-04-20T10:44:57.940548Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5412550087722993493, trigger=click)
2026-04-20T10:44:58.605782Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5412550087722993493, trigger=click)
2026-04-20T10:44:58.637243Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5412550087722993493, trigger=click)
2026-04-20T10:45:00.807501Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5412550087722993493, trigger=visual_change)
2026-04-20T10:45:16.166619Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8594311245071571574, trigger=visual_change)
2026-04-20T10:45:56.391618Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3919322128440588956, trigger=click)
2026-04-20T10:45:56.468127Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3919322128440588956, trigger=click)
2026-04-20T10:46:03.056730Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8594311245071571574, trigger=visual_change)
2026-04-20T10:46:12.195973Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8594311245071571574, trigger=visual_change)
2026-04-20T10:46:17.958643Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3919322128440588956, trigger=click)
2026-04-20T10:46:18.011452Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3919322128440588956, trigger=click)
2026-04-20T10:47:02.211065Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5662459752758049610, trigger=click)
2026-04-20T10:47:02.257675Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5662459752758049610, trigger=click)
2026-04-20T10:47:05.697096Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5662459752758049610, trigger=click)
2026-04-20T10:47:06.566076Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5662459752758049610, trigger=click)
2026-04-20T10:47:07.827281Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping captur...
|
iTerm2
|
screenpipe"
|
NULL
|
53934
|
|
53935
|
Last login: Mon Apr 20 10:16:41 on ttys009
Poetry Last login: Mon Apr 20 10:16:41 on ttys009
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-04-20T10:17:08.672567Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store
checking permissions...
screen recording: ok
accessibility: ok
2026-04-20T10:17:08.735636Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-04-20T10:17:09.168849Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-04-20T10:17:09.170474Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-04-20T10:17:09.170918Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-04-20T10:17:09.203704Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-04-20T10:17:09.203780Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-04-20T10:17:09.203962Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-04-20T10:17:09.203976Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-04-20T10:17:09.203934Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-04-20T10:17:09.204030Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-04-20T10:17:09.203954Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-04-20T10:17:09.215020Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))
2026-04-20T10:17:09.220127Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-04-20T10:17:09.220306Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-04-20T10:17:09.220863Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-04-20T10:17:09.221034Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-04-20T10:17:09.221177Z INFO screenpipe_core::pipes: loaded pipe: video-export
2026-04-20T10:17:09.221820Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary
2026-04-20T10:17:09.221839Z INFO screenpipe_core::pipes: loaded 6 pipes from "/Users/lukas/.screenpipe/pipes"
_
__________________ ___ ____ ____ (_____ ___
/ ___/ ___/ ___/ _ \/ _ \/ __ \ / __ \/ / __ \/ _ \
(__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/
/____/\___/_/ \___/\___/_/ /_/ / .___/_/ .___/\___/
/_/ /_/
power AI by everything you've seen, said or heard
open source | runs locally | developer friendly
┌────────────────────────┬────────────────────────────────────┐
│ setting │ value │
├────────────────────────┼────────────────────────────────────┤
│ audio chunk duration │ 30 seconds │
│ port │ 3030 │
│ audio disabled │ true │
│ vision disabled │ false │
│ pause on DRM content │ false │
│ audio engine │ Parakeet │
│ vad engine │ Silero │
│ data directory │ /Users/lukas/.screenpipe │
│ debug mode │ false │
│ telemetry │ true │
│ use pii removal │ true │
│ use all monitors │ true │
2026-04-20T10:17:09.223448Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)
│ ignored windows │ ["Boosteroid"] │
│ included windows │ [] │
│ cloud sync │ disabled │
│ auto-destruct pid │ 0 │
│ deepgram key │ not set │
│ api auth │ enabled │
2026-04-20T10:17:09.227535Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh
│ encrypt secrets │ disabled │
│ retention days │ 14 │
├────────────────────────┼────────────────────────────────────┤
│ languages │ │
│ │ all languages │
├────────────────────────┼────────────────────────────────────┤
│ monitors │ │
│ │ id: 1 │
│ │ id: 2 │
├────────────────────────┼────────────────────────────────────┤
│ audio devices │ │
│ │ disabled │
└────────────────────────┴────────────────────────────────────┘
you are using local processing. all your data stays on your computer.
warning: telemetry is enabled. only error-level data will be sent.
to disable, use the --disable-telemetry flag.
check latest changes here: https://github.com/screenpipe/screenpipe/releases
2026-04-20T10:17:09.240088Z INFO screenpipe: starting UI event capture
2026-04-20T10:17:09.253668Z INFO screenpipe_engine::ui_recorder: Starting UI event capture
2026-04-20T10:17:09.267973Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)
2026-04-20T10:17:09.268072Z INFO screenpipe_engine::ui_recorder: UI recording session started: f196d677-2a10-4dec-93e7-9dd9048a1d8e
2026-04-20T10:17:09.268173Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-04-19 07:17:09.268169 UTC to 2026-04-20 07:17:09.268169 UTC)
2026-04-20T10:17:09.268665Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)
2026-04-20T10:17:09.275204Z INFO screenpipe_engine::server: Server listening on [IP_ADDRESS]:3030
2026-04-20T10:17:09.280547Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030
2026-04-20T10:17:09.284876Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)
2026-04-20T10:17:09.284906Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)
2026-04-20T10:17:09.284942Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)
2026-04-20T10:17:09.316523Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)
2026-04-20T10:17:09.316557Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)
2026-04-20T10:17:09.316583Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)
2026-04-20T10:17:09.316603Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)
2026-04-20T10:17:09.975374Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)
2026-04-20T10:17:10.050320Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)
2026-04-20T10:17:10.109022Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=52481, dur=72ms
2026-04-20T10:17:10.197530Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=52482, dur=98ms
2026-04-20T10:17:10.926185Z WARN sqlx::query: summary="SELECT f.id, f.timestamp, f.offset_index, …" db.statement="\n\nSELECT\n f.id,\n f.timestamp,\n f.offset_index,\n COALESCE(\n SUBSTR(f.full_text, 1, 200),\n SUBSTR(f.accessibility_text, 1, 200),\n (\n SELECT\n SUBSTR(ot.text, 1, 200)\n FROM\n ocr_text ot\n WHERE\n ot.frame_id = f.id\n LIMIT\n 1\n )\n ) as text,\n COALESCE(\n f.app_name,\n (\n SELECT\n ot.app_name\n FROM\n ocr_text ot\n WHERE\n ot.frame_id = f.id\n LIMIT\n 1\n )\n ) as app_name,\n COALESCE(\n f.window_name,\n (\n SELECT\n ot.window_name\n FROM\n ocr_text ot\n WHERE\n ot.frame_id = f.id\n LIMIT\n 1\n )\n ) as window_name,\n COALESCE(vc.device_name, f.device_name) as screen_device,\n COALESCE(vc.file_path, f.snapshot_path) as video_path,\n COALESCE(vc.fps, 0.033) as chunk_fps,\n f.browser_url,\n f.machine_id\nFROM\n frames f\n LEFT JOIN video_chunks vc ON f.video_chunk_id = vc.id\nWHERE\n f.timestamp >= ?1\n AND f.timestamp <= ?2\n AND COALESCE(vc.file_path, f.snapshot_path, '') NOT LIKE 'cloud://%'\nORDER BY\n f.timestamp DESC,\n f.offset_index DESC\nLIMIT\n 10000\n" rows_affected=0 rows_returned=974 elapsed=1.657379083s
2026-04-20T10:17:10.928810Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 974 frame entries, coverage from 2026-04-19 07:17:09.268169 UTC
2026-04-20T10:17:36.605708Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5556097941235749601, trigger=visual_change)
2026-04-20T10:17:41.066595Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5621935701738529327, trigger=click)
2026-04-20T10:17:41.100078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5621935701738529327, trigger=click)
2026-04-20T10:17:46.116429Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5621935701738529327, trigger=click)
2026-04-20T10:17:46.148269Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5621935701738529327, trigger=click)
2026-04-20T10:18:13.360099Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=145 elapsed=4.153777416s
2026-04-20T10:18:13.360276Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 145 eligible frames
2026-04-20T10:18:18.937138Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 90 frames, 15.2MB → 6.4MB (2.4x), 90 JPEGs deleted
2026-04-20T10:18:22.014745Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 53 frames, 9.4MB → 2.0MB (4.6x), 53 JPEGs deleted
2026-04-20T10:18:56.067965Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1399546062189663050, trigger=visual_change)
2026-04-20T10:18:56.859644Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1399546062189663050, trigger=click)
2026-04-20T10:18:59.894779Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=[CREDIT_CARD], trigger=click)
2026-04-20T10:19:12.201247Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5621935701738529327, trigger=visual_change)
2026-04-20T10:21:22.063263Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1399546062189663050, trigger=visual_change)
2026-04-20T10:21:35.657143Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5007800743451086391, trigger=visual_change)
2026-04-20T10:21:35.899663Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5007800743451086391, trigger=visual_change)
2026-04-20T10:21:38.094166Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5007800743451086391, trigger=click)
2026-04-20T10:21:38.149655Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5007800743451086391, trigger=click)
2026-04-20T10:21:38.947641Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5007800743451086391, trigger=click)
2026-04-20T10:21:38.991934Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5007800743451086391, trigger=click)
2026-04-20T10:23:28.231526Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=2 elapsed=6.103025792s
2026-04-20T10:23:28.232845Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames
2026-04-20T10:25:18.292352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=133505750984754566, trigger=click)
2026-04-20T10:25:33.154631Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:25:33.227754Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:25:34.786990Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:25:36.507114Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:25:36.556707Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:25:37.741060Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:25:39.466175Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:25:39.547293Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:26:02.072902Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2625703622302799632, trigger=visual_change)
2026-04-20T10:26:05.038754Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8395829747728977847, trigger=visual_change)
2026-04-20T10:26:10.400901Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:26:10.459718Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:26:14.431146Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:26:17.437868Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:26:35.296162Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:26:35.339241Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:26:37.233387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:26:37.326557Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:00.031681Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:00.067495Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:01.950749Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:02.027316Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:13.045805Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:13.116607Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:15.272022Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:15.311144Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:17.880859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:17.952143Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:21.645455Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:21.706889Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:36.304603Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:36.380537Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:37.368951Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:37.459157Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:40.420505Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:40.469217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:41.179717Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:28:00.173884Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:00.251737Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:01.241028Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:01.288002Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:02.985445Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:03.078932Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:04.726087Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:04.770305Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:18.186992Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:18.272249Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:28.337807Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 14 eligible frames
2026-04-20T10:28:29.608030Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 8 frames, 0.7MB → 0.5MB (1.4x), 8 JPEGs deleted
2026-04-20T10:28:30.685845Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 6 frames, 1.2MB → 0.7MB (1.8x), 6 JPEGs deleted
2026-04-20T10:28:49.943477Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:49.984595Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:50.611087Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:50.628530Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:54.853245Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:57.739309Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:29:03.177558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:03.231322Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:03.857989Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:29:04.993121Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:05.032838Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:06.923393Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:29:07.890421Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:07.960410Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:08.812301Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:26.656780Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:26.775833Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:27.602791Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:27.639583Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:34.060332Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2389025338591748766, trigger=visual_change)
2026-04-20T10:29:37.050675Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2389025338591748766, trigger=click)
2026-04-20T10:29:37.085946Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2389025338591748766, trigger=click)
2026-04-20T10:29:40.501396Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2389025338591748766, trigger=visual_change)
2026-04-20T10:29:43.751715Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:29:43.843367Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:44.468329Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:46.931137Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:49.616400Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:49.692474Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:50.298335Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:29:51.348506Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:51.436585Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:30:12.602958Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8200761366188343712, trigger=click)
2026-04-20T10:31:17.535958Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5166044279428207369, trigger=click)
2026-04-20T10:31:18.668547Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5166044279428207369, trigger=visual_change)
2026-04-20T10:31:19.518515Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5166044279428207369, trigger=click)
2026-04-20T10:31:19.681398Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5166044279428207369, trigger=click)
2026-04-20T10:31:21.044436Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5166044279428207369, trigger=click)
2026-04-20T10:31:21.086009Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5166044279428207369, trigger=click)
2026-04-20T10:31:21.680970Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5166044279428207369, trigger=visual_change)
2026-04-20T10:32:05.428125Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6999516640019587394, trigger=visual_change)
2026-04-20T10:32:07.004460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:07.088172Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:08.380482Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6999516640019587394, trigger=visual_change)
2026-04-20T10:32:11.588306Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:11.689288Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:12.318265Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:12.381069Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:20.139124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:20.175356Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:23.490851Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:27.111949Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6999516640019587394, trigger=visual_change)
2026-04-20T10:32:37.220458Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:37.303363Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:38.554270Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:38.619116Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:44.030894Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4838132251856752988, trigger=click)
2026-04-20T10:32:44.098803Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4838132251856752988, trigger=click)
2026-04-20T10:32:45.233990Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4838132251856752988, trigger=click)
2026-04-20T10:32:45.238569Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4838132251856752988, trigger=click)
2026-04-20T10:32:48.884987Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4838132251856752988, trigger=visual_change)
2026-04-20T10:32:51.832116Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:51.860110Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:53.754008Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:53.796899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:55.635715Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:55.675828Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:57.084341Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:57.128626Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:58.841455Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:58.882031Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:33:00.965217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:33:01.040922Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:33:02.591751Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:33:02.633245Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:33:03.324241Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:33:03.353493Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:33:05.802391Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:33:05.849275Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:33:06.911518Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=visual_change)
2026-04-20T10:33:14.484135Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4838132251856752988, trigger=click)
2026-04-20T10:33:14.530843Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4838132251856752988, trigger=click)
2026-04-20T10:33:34.189406Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4838132251856752988, trigger=click)
2026-04-20T10:33:34.205308Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=94 elapsed=3.603974333s
2026-04-20T10:33:34.205567Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 94 eligible frames
2026-04-20T10:33:34.240884Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4838132251856752988, trigger=visual_change)
2026-04-20T10:33:35.686677Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4838132251856752988, trigger=click)
2026-04-20T10:33:35.780825Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4838132251856752988, trigger=click)
2026-04-20T10:33:37.134576Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 8.0MB → 4.4MB (1.8x), 38 JPEGs deleted
2026-04-20T10:33:40.850354Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 54 frames, 7.9MB → 3.4MB (2.3x), 54 JPEGs deleted
2026-04-20T10:33:55.372436Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4838132251856752988, trigger=visual_change)
2026-04-20T10:35:01.169212Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:35:01.245363Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:35:02.392419Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=visual_change)
2026-04-20T10:35:05.029174Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:35:05.073174Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:35:07.222477Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:35:07.329020Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:35:08.707660Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=visual_change)
2026-04-20T10:35:27.744689Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:35:27.812062Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:36:18.265456Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:36:18.437457Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:36:23.437791Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:36:23.487637Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:36:24.299771Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=visual_change)
2026-04-20T10:36:25.135894Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:36:25.257064Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:36:27.317393Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=visual_change)
2026-04-20T10:36:50.815358Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:38:04.728644Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4435744464912499495, trigger=visual_change)
2026-04-20T10:38:07.749721Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4435744464912499495, trigger=visual_change)
2026-04-20T10:38:13.318000Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=visual_change)
2026-04-20T10:38:13.969769Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=visual_change)
2026-04-20T10:38:14.800566Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:38:14.834512Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:38:17.252696Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:38:17.328544Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:38:24.892322Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:38:24.943640Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:38:35.256001Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:38:35.322251Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:38:40.980335Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 88 eligible frames
2026-04-20T10:38:43.345927Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 39 frames, 6.6MB → 2.6MB (2.5x), 39 JPEGs deleted
2026-04-20T10:38:46.544495Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 47 frames, 7.3MB → 2.8MB (2.6x), 47 JPEGs deleted
2026-04-20T10:39:26.663352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=visual_change)
2026-04-20T10:39:29.597544Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:39:29.637879Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:40:07.495065Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=visual_change)
2026-04-20T10:40:11.064923Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3919322128440588956, trigger=visual_change)
2026-04-20T10:40:11.431065Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3919322128440588956, trigger=click)
2026-04-20T10:40:12.068565Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3919322128440588956, trigger=click)
2026-04-20T10:40:12.110719Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3919322128440588956, trigger=click)
2026-04-20T10:40:14.179306Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3919322128440588956, trigger=click)
2026-04-20T10:40:14.239361Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3919322128440588956, trigger=click)
2026-04-20T10:41:20.489623Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3919322128440588956, trigger=click)
2026-04-20T10:43:48.184341Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=82 elapsed=1.63218175s
2026-04-20T10:43:48.184571Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 82 eligible frames
2026-04-20T10:43:50.234957Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 30 frames, 2.2MB → 0.1MB (16.1x), 30 JPEGs deleted
2026-04-20T10:43:55.342383Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 50 frames, 7.9MB → 3.2MB (2.5x), 50 JPEGs deleted
2026-04-20T10:44:06.225390Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4079037146782974603, trigger=click)
2026-04-20T10:44:14.808445Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Slack, signals=2)
2026-04-20T10:44:19.110273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-539912533838677065, trigger=click)
2026-04-20T10:44:19.155111Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-539912533838677065, trigger=click)
2026-04-20T10:44:19.832463Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Slack, signals=2, browser=false)
2026-04-20T10:44:19.834928Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=3, app=Slack, title=None)
2026-04-20T10:44:27.766267Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5412550087722993493, trigger=visual_change)
2026-04-20T10:44:39.799864Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5412550087722993493, trigger=visual_change)
2026-04-20T10:44:57.832108Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5412550087722993493, trigger=visual_change)
2026-04-20T10:44:57.940548Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5412550087722993493, trigger=click)
2026-04-20T10:44:58.605782Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5412550087722993493, trigger=click)
2026-04-20T10:44:58.637243Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5412550087722993493, trigger=click)
2026-04-20T10:45:00.807501Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5412550087722993493, trigger=visual_change)
2026-04-20T10:45:16.166619Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8594311245071571574, trigger=visual_change)
2026-04-20T10:45:56.391618Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3919322128440588956, trigger=click)
2026-04-20T10:45:56.468127Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3919322128440588956, trigger=click)
2026-04-20T10:46:03.056730Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8594311245071571574, trigger=visual_change)
2026-04-20T10:46:12.195973Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8594311245071571574, trigger=visual_change)
2026-04-20T10:46:17.958643Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3919322128440588956, trigger=click)
2026-04-20T10:46:18.011452Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3919322128440588956, trigger=click)
2026-04-20T10:47:02.211065Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5662459752758049610, trigger=click)
2026-04-20T10:47:02.257675Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5662459752758049610, trigger=click)
2026-04-20T10:47:05.697096Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5662459752758049610, trigger=click)
2026-04-20T10:47:06.566076Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5662459752758049610, trigger=click)
2026-04-20T10:47:07.827281Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping captur...
|
iTerm2
|
screenpipe"
|
NULL
|
53935
|
|
53978
|
iTerm2Shell|EditViewSessionScriptsProfilesWindowHe iTerm2Shell|EditViewSessionScriptsProfilesWindowHelp100% C8 Mon 20 Apr 11:35:47screenpipe"DOCKER2026-04-20111:28:15.09933522026-04-20T11:28:18.161712Z2026-04-20T11:28:24.420260Z2026-04-20T11:29:09.322794Z2026-04-20T11:29:12.232781Z2026-04-20T11:29:13.714491Z2026-04-20T11:29:15.29707822026-04-20T11:29:18.279439Z2026-04-20T11:29:21.288709Z2026-04-20T11:29:36.889190Z2026-04-20111:29:36.93591422026-04-20T11:29:44.265375Z2026-04-20T11:29:45.438891Z2026-04-20111:29:48.445512Z2026-04-20T11:30:00.582835Z2026-04-20T11:30:00.930875Z2026-04-20T11:30:03.983533Z2026-04-20T11:30:25.190331ZROM\nframes \nWHERE\n3845166S2026-04-20111:30:25.191014Z2026-04-20T11:30:28.644851Z2026-04-20T11:30:34.292740Z2026-04-20T11:30:49.731059Z2026-04-20T11:30:52.714807Z2026-04-20T11:30:52.764209Z2026-04-20T11:30:53.030418Z2026-04-20T11:30:56.085725Z2026-04-20T11:30:57.236790Z2026-04-20T11:31:57.345054Z2026-04-20111:32:34.844223Z2026-04-20T11:33:01.295072Z2026-04-20T11:33:02.667241Z2026-04-20T11:33:40.313987Z2026-04-20T11:33:40.621030Z2026-04-20T11:33:45.357469Z2026-04-20T11:33:45.361133Z2026-04-20T11:33:50.248270Z2026-04-20T11:33:55.493928Z2026-04-20T11:34:26.223427Z2026-04-20111:34:26.415026Z2026-04-20T11:35:35.008400Z2026-04-20T11:35:37.449048Z2026-04-20T11:35:40.752978ZO ₴1DEV (docker)₴2APP (-zsh)83-zsh• ₴4screenpipe"INFOscreenpipe_engine::event_driven_capture:contentdedup:skipping capture for monitor 2INFOChash=8004693622225847515,trigger=click)screenpipe_engine::event_driven_capture: content dedup:skipping capture for monitor 2 (hash=-3897675075138840599, trigger=visual_change)INFOscreenpipe_engine::event_driven_capture: contentdedup:skipping capture for monitor 1(hash=8004693622225847515, trigger=click)INFOscreenpipe_engine::event,_driven_capture:contentdedup:skipping capture for monitor 1(hash=6684718794164531158, trigger=visual_change)INFOscreenpipe_engine:: event,driven_capture:contentdedup:skipping capture for monitor 1 (hash=6684718794164531158, trigger=visual_change)INFOscreenpipe_engine::event_driven_capture:contentdedup: skippingcapture for monitor 1 (hash=6684718794164531158, trigger=click)INFOscreenpipe_engine::event_driven_capture:contentdedup: skippingINFOcapture for monitor 1 (hash=6684718794164531158, trigger=visual_change)screenpipe_engine::event_driven_capture: contentdedup: skipping capture for monitor 1 (hash=6684718794164531158, trigger=visual_change)INFOscreenpipe_engine::event_driven_capture: content dedup:skipping capture for monitor 1 (hash=6684718794164531158, trigger=visual_change)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1183751968977138305, trigger=click)INFOscreenpipe_engine::event_driven_capture: contentINFOdedup: skipping capture for monitor 2 (hash=-1183751968977138305, trigger=click)screenpipe_engine::event_driven_capture: contentdedup: skipping capture for monitor 1 (hash=1744865349186139800, trigger=click)INFOscreenpipe_engine::event_driven_capture: contentdedup: skippingcapture for monitor 1 (hash=1744865349186139800, trigger=visual_change)INFOscreenpipe_engine::event_driven_capture:content dedup:skippingcapture for monitor 1 (hash=1744865349186139800, trigger=visual_change)INFOscreenpipe_engine::event_driven_capture: content dedup:skipping capture for monitor 1 (hash=214677970165296243, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup:INFOskipping capture for monitor 1 (hash=214677970165296243, trigger=visual_change)screenpipe_engine::event_driven_capture: content dedup:skipping capture for monitor 1 (hash=214677970165296243, trigger=visual_change)WARNsqlx::query:summary="SELECT id, snapshot_path, device_name, ."db.statement="\n\nSELECT\nid, \nsnapshot_path, \ndevice_name, \nsnapshot_path IS NOT NULL\nAND timestamp < ?1\nORDER BY\ndevice_name, \ntimestamp ASC\nLIMIT\n5000\n"timestamp\nFrows_affected=0 rows_returned=144 elapsed=2.41INFOscreenpipe_engine::snapshot_compaction: snapshotcompaction: found 144 eligible framesINFOINFOscreenpipe_engine::snapshot_compaction: snapshot compaction: 59 frames, 8.9MB → 1.9MB (4.8x), 59 JPEGs deletedscreenpipe_engine::snapshot_compaction: snapshot compaction: 83 frames, 12.OMB → 6.2MB (1.9X), 83 JPEGs deletedINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 Chash=-6771186432168714093,trigger=visual_change)INFOscreenpipe_engine::event_driven_capture: contentdedup:skipping capture for monitor 1 (hash=-6771186432168714093,INFOtrigger=click)screenpipe_engine::event_driven_capture: contentdedup: skippingcapture for monitor 2 Chash=-6771186432168714093,trigger=click)INFOscreenpipe_engine:: event._driven_capture: contentdedup:skippingcapture for monitor 1 (hash=-6771186432168714093,trigger=visual_change)INFOscreenpipe_engine::event_driven_capture: contentdedup: skipping capture for monitor 1 (hash=-6771186432168714093, trigger=visual_change)INFOscreenpipe_engine::event_driven_capture: content dedup:skipping capture for monitor 2 (hash=-6771186432168714093, trigger=visual_change)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5799305003809379240, trigger=visual_change)INFOscreenpipe_engine::event,_driven_capture: contentdedup:skipping capture for monitor 2 (hash=-5799305003809379240, trigger=click)INFOINFOscreenpipe_engine::event_driven_capture: contentdedup:skipping capture for monitor 1 (hash=-2331312136567929026, trigger=visual_change)screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2331312136567929026, trigger=visual_change)INFOscreenpipe_engine: :meeting_detector: meeting v2: Idle -> Confirming (app=Slack, signals=2)INFOscreenpipe_engine::event_driven_capture:content dedup:skipping capture for monitor 1 (hash=6376510702070023487, trigger=visual_change)INFOscreenpipe_engine::meeting_detector: meeting v2: ConfirmingINFO-› Active (app=Slack, signals=2, browser=false)screenpipe_engine::meeting_detector: meeting v2:meeting started (id=4, app=Slack, title=None)INFOscreenpipe_engine::event_driven_capture:contentdedup:skipping capture for monitor 2 (hash=2305043043211837966, trigger=visual_change)INFOscreenpipe_engine: :meeting_detector: meeting v2:Active->Ending (nocontrols, app=Slack,id=4, grace=30s)INFOscreenpipe_engine::meeting_detector: meeting v2:Ending -> Idle (timeout=30s, app=Slack, id=4)INFOscreenpipe_engine::meeting_detector: meeting v2: meetingended (id=4)INFOINFOscreenpipe_engine::snapshot_compaction: snapshotcompaction: found 86eligible framesscreenpipe_engine::snapshot_compaction: snapshotcompaction: 35 frames,8.2MB → 2.2MB (3.8x), 35 JPEGs deletedINFOscreenpipe_engine::snapshot_compaction: snapshotcompaction: 49 frames, 5.9MB → 3.OMB (2.0x), 49 JPEGs deleted...
|
iTerm2
|
NULL
|
NULL
|
53978
|
|
54188
|
PhostormFV faVsco.jsProletsy• Dapp |>1h Externa PhostormFV faVsco.jsProletsy• Dapp |>1h External Libraries> E° Scratches and ConsolesVIewINavigarecode°9 JY-18909-automated-reports-ask-ji© ReportConti100% C8• Mon 20 Apr 11:43:11L TrackAutomatecortGeneratedeventlestv© ImportActivityTypesTest.php • Playbook.php • Service.php • Field.php • FieldRepository.php • AskJiminnyReportActivityService.php• AutomatedReportsSendCommand.php • AutomatedReportsCommand.php • AutomatedReportsRepository.php• CreateActivityLoggedEvent.php • UserPilotActivityListener.php • ActivityLogged.phpC RequestGeneratereportJob.php• AutomatedReportResult.php © AutomatedReport.phplaravel.logSF (jiminny@localhost]HS_local [jiminny@localhost]console [pROdlconsole [Eulconsole [STAGINGlclass Importactivitylypes 1mplements Shoulduueuepublic function __construct(private readonly Fieldrepository Stleldrepos1tory.private readonly PlaybookcategoryRepository srepository,* Imoort the standard EventTask Tuoe oickuist ootions from the CRMIoublic function handle(PlavbookCreated Sevent: voidSplaybook = Sevent->playbook;// Don't run if somehow we already have categories.i+ (Snlavhook->ae+cateanniec@->icNotFmntvonrecurn,ScrmService = $this->crmResolver->resolveForTeam($playbook->getTeam)):scrmservice-›syncriela solaybook->oeracelvicyrleLanSvalues = $crmService->importPicklistValues(Splaybook->qetActivityFieldO):if (empty(Svalues)) {svalues = sth1s->tetchAct1v1tyr1eldvalues(splaybook->qetactiv1tyr1eldooOpen editors and positions/** @var stdClass{label: strina} Svalue */foreach (svalues as Svalue)Sdata ="tvnel => Plavhookcatedory: TYPE ALLIif (Str:: contains(strtolower(Svalue->label), ['sms sent', 'sms out', 'text in'])) {Sdatalitvne'' = PlavhookCategony:•TYPE SMS OIITROUND•if (Str:: contains(strtolower(Svalve->label), ['sms received', 'sms in', 'text out'])) {Sdatali+unell = PlavhookCatoaonv.•TVDS SMS TAROIINn-Checked out JY-18909-automated-renonts-ask-timinnySthic-snonocitonv-scnonto/Gnlavhook Gdata)•ih 4 spaces...
|
iTerm2
|
NULL
|
NULL
|
54188
|
|
54445
|
Last login: Mon Apr 20 10:16:41 on ttys009
Poetry Last login: Mon Apr 20 10:16:41 on ttys009
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-04-20T10:17:08.672567Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store
checking permissions...
screen recording: ok
accessibility: ok
2026-04-20T10:17:08.735636Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-04-20T10:17:09.168849Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-04-20T10:17:09.170474Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-04-20T10:17:09.170918Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-04-20T10:17:09.203704Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-04-20T10:17:09.203780Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-04-20T10:17:09.203962Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-04-20T10:17:09.203976Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-04-20T10:17:09.203934Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-04-20T10:17:09.204030Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-04-20T10:17:09.203954Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-04-20T10:17:09.215020Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))
2026-04-20T10:17:09.220127Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-04-20T10:17:09.220306Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-04-20T10:17:09.220863Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-04-20T10:17:09.221034Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-04-20T10:17:09.221177Z INFO screenpipe_core::pipes: loaded pipe: video-export
2026-04-20T10:17:09.221820Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary
2026-04-20T10:17:09.221839Z INFO screenpipe_core::pipes: loaded 6 pipes from "/Users/lukas/.screenpipe/pipes"
_
__________________ ___ ____ ____ (_____ ___
/ ___/ ___/ ___/ _ \/ _ \/ __ \ / __ \/ / __ \/ _ \
(__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/
/____/\___/_/ \___/\___/_/ /_/ / .___/_/ .___/\___/
/_/ /_/
power AI by everything you've seen, said or heard
open source | runs locally | developer friendly
┌────────────────────────┬────────────────────────────────────┐
│ setting │ value │
├────────────────────────┼────────────────────────────────────┤
│ audio chunk duration │ 30 seconds │
│ port │ 3030 │
│ audio disabled │ true │
│ vision disabled │ false │
│ pause on DRM content │ false │
│ audio engine │ Parakeet │
│ vad engine │ Silero │
│ data directory │ /Users/lukas/.screenpipe │
│ debug mode │ false │
│ telemetry │ true │
│ use pii removal │ true │
│ use all monitors │ true │
2026-04-20T10:17:09.223448Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)
│ ignored windows │ ["Boosteroid"] │
│ included windows │ [] │
│ cloud sync │ disabled │
│ auto-destruct pid │ 0 │
│ deepgram key │ not set │
│ api auth │ enabled │
2026-04-20T10:17:09.227535Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh
│ encrypt secrets │ disabled │
│ retention days │ 14 │
├────────────────────────┼────────────────────────────────────┤
│ languages │ │
│ │ all languages │
├────────────────────────┼────────────────────────────────────┤
│ monitors │ │
│ │ id: 1 │
│ │ id: 2 │
├────────────────────────┼────────────────────────────────────┤
│ audio devices │ │
│ │ disabled │
└────────────────────────┴────────────────────────────────────┘
you are using local processing. all your data stays on your computer.
warning: telemetry is enabled. only error-level data will be sent.
to disable, use the --disable-telemetry flag.
check latest changes here: https://github.com/screenpipe/screenpipe/releases
2026-04-20T10:17:09.240088Z INFO screenpipe: starting UI event capture
2026-04-20T10:17:09.253668Z INFO screenpipe_engine::ui_recorder: Starting UI event capture
2026-04-20T10:17:09.267973Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)
2026-04-20T10:17:09.268072Z INFO screenpipe_engine::ui_recorder: UI recording session started: f196d677-2a10-4dec-93e7-9dd9048a1d8e
2026-04-20T10:17:09.268173Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-04-19 07:17:09.268169 UTC to 2026-04-20 07:17:09.268169 UTC)
2026-04-20T10:17:09.268665Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)
2026-04-20T10:17:09.275204Z INFO screenpipe_engine::server: Server listening on [IP_ADDRESS]:3030
2026-04-20T10:17:09.280547Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030
2026-04-20T10:17:09.284876Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)
2026-04-20T10:17:09.284906Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)
2026-04-20T10:17:09.284942Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)
2026-04-20T10:17:09.316523Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)
2026-04-20T10:17:09.316557Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)
2026-04-20T10:17:09.316583Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)
2026-04-20T10:17:09.316603Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)
2026-04-20T10:17:09.975374Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)
2026-04-20T10:17:10.050320Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)
2026-04-20T10:17:10.109022Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=52481, dur=72ms
2026-04-20T10:17:10.197530Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=52482, dur=98ms
2026-04-20T10:17:10.926185Z WARN sqlx::query: summary="SELECT f.id, f.timestamp, f.offset_index, …" db.statement="\n\nSELECT\n f.id,\n f.timestamp,\n f.offset_index,\n COALESCE(\n SUBSTR(f.full_text, 1, 200),\n SUBSTR(f.accessibility_text, 1, 200),\n (\n SELECT\n SUBSTR(ot.text, 1, 200)\n FROM\n ocr_text ot\n WHERE\n ot.frame_id = f.id\n LIMIT\n 1\n )\n ) as text,\n COALESCE(\n f.app_name,\n (\n SELECT\n ot.app_name\n FROM\n ocr_text ot\n WHERE\n ot.frame_id = f.id\n LIMIT\n 1\n )\n ) as app_name,\n COALESCE(\n f.window_name,\n (\n SELECT\n ot.window_name\n FROM\n ocr_text ot\n WHERE\n ot.frame_id = f.id\n LIMIT\n 1\n )\n ) as window_name,\n COALESCE(vc.device_name, f.device_name) as screen_device,\n COALESCE(vc.file_path, f.snapshot_path) as video_path,\n COALESCE(vc.fps, 0.033) as chunk_fps,\n f.browser_url,\n f.machine_id\nFROM\n frames f\n LEFT JOIN video_chunks vc ON f.video_chunk_id = vc.id\nWHERE\n f.timestamp >= ?1\n AND f.timestamp <= ?2\n AND COALESCE(vc.file_path, f.snapshot_path, '') NOT LIKE 'cloud://%'\nORDER BY\n f.timestamp DESC,\n f.offset_index DESC\nLIMIT\n 10000\n" rows_affected=0 rows_returned=974 elapsed=1.657379083s
2026-04-20T10:17:10.928810Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 974 frame entries, coverage from 2026-04-19 07:17:09.268169 UTC
2026-04-20T10:17:36.605708Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5556097941235749601, trigger=visual_change)
2026-04-20T10:17:41.066595Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5621935701738529327, trigger=click)
2026-04-20T10:17:41.100078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5621935701738529327, trigger=click)
2026-04-20T10:17:46.116429Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5621935701738529327, trigger=click)
2026-04-20T10:17:46.148269Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5621935701738529327, trigger=click)
2026-04-20T10:18:13.360099Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=145 elapsed=4.153777416s
2026-04-20T10:18:13.360276Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 145 eligible frames
2026-04-20T10:18:18.937138Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 90 frames, 15.2MB → 6.4MB (2.4x), 90 JPEGs deleted
2026-04-20T10:18:22.014745Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 53 frames, 9.4MB → 2.0MB (4.6x), 53 JPEGs deleted
2026-04-20T10:18:56.067965Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1399546062189663050, trigger=visual_change)
2026-04-20T10:18:56.859644Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1399546062189663050, trigger=click)
2026-04-20T10:18:59.894779Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=[CREDIT_CARD], trigger=click)
2026-04-20T10:19:12.201247Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5621935701738529327, trigger=visual_change)
2026-04-20T10:21:22.063263Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1399546062189663050, trigger=visual_change)
2026-04-20T10:21:35.657143Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5007800743451086391, trigger=visual_change)
2026-04-20T10:21:35.899663Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5007800743451086391, trigger=visual_change)
2026-04-20T10:21:38.094166Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5007800743451086391, trigger=click)
2026-04-20T10:21:38.149655Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5007800743451086391, trigger=click)
2026-04-20T10:21:38.947641Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5007800743451086391, trigger=click)
2026-04-20T10:21:38.991934Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5007800743451086391, trigger=click)
2026-04-20T10:23:28.231526Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=2 elapsed=6.103025792s
2026-04-20T10:23:28.232845Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames
2026-04-20T10:25:18.292352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=133505750984754566, trigger=click)
2026-04-20T10:25:33.154631Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:25:33.227754Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:25:34.786990Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:25:36.507114Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:25:36.556707Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:25:37.741060Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:25:39.466175Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:25:39.547293Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:26:02.072902Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2625703622302799632, trigger=visual_change)
2026-04-20T10:26:05.038754Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8395829747728977847, trigger=visual_change)
2026-04-20T10:26:10.400901Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:26:10.459718Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:26:14.431146Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:26:17.437868Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:26:35.296162Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:26:35.339241Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:26:37.233387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:26:37.326557Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:00.031681Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:00.067495Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:01.950749Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:02.027316Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:13.045805Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:13.116607Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:15.272022Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:15.311144Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:17.880859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:17.952143Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:21.645455Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:21.706889Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:36.304603Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:36.380537Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:37.368951Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:37.459157Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:40.420505Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:40.469217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:41.179717Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:28:00.173884Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:00.251737Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:01.241028Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:01.288002Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:02.985445Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:03.078932Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:04.726087Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:04.770305Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:18.186992Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:18.272249Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:28.337807Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 14 eligible frames
2026-04-20T10:28:29.608030Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 8 frames, 0.7MB → 0.5MB (1.4x), 8 JPEGs deleted
2026-04-20T10:28:30.685845Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 6 frames, 1.2MB → 0.7MB (1.8x), 6 JPEGs deleted
2026-04-20T10:28:49.943477Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:49.984595Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:50.611087Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:50.628530Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:54.853245Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:57.739309Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:29:03.177558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:03.231322Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:03.857989Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:29:04.993121Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:05.032838Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:06.923393Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:29:07.890421Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:07.960410Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:08.812301Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:26.656780Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:26.775833Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:27.602791Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:27.639583Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:34.060332Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2389025338591748766, trigger=visual_change)
2026-04-20T10:29:37.050675Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2389025338591748766, trigger=click)
2026-04-20T10:29:37.085946Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2389025338591748766, trigger=click)
2026-04-20T10:29:40.501396Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2389025338591748766, trigger=visual_change)
2026-04-20T10:29:43.751715Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:29:43.843367Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:44.468329Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:46.931137Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:49.616400Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:49.692474Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:50.298335Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:29:51.348506Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:51.436585Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:30:12.602958Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8200761366188343712, trigger=click)
2026-04-20T10:31:17.535958Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5166044279428207369, trigger=click)
2026-04-20T10:31:18.668547Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5166044279428207369, trigger=visual_change)
2026-04-20T10:31:19.518515Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5166044279428207369, trigger=click)
2026-04-20T10:31:19.681398Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5166044279428207369, trigger=click)
2026-04-20T10:31:21.044436Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5166044279428207369, trigger=click)
2026-04-20T10:31:21.086009Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5166044279428207369, trigger=click)
2026-04-20T10:31:21.680970Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5166044279428207369, trigger=visual_change)
2026-04-20T10:32:05.428125Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6999516640019587394, trigger=visual_change)
2026-04-20T10:32:07.004460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:07.088172Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:08.380482Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6999516640019587394, trigger=visual_change)
2026-04-20T10:32:11.588306Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:11.689288Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:12.318265Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:12.381069Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:20.139124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:20.175356Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:23.490851Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:27.111949Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6999516640019587394, trigger=visual_change)
2026-04-20T10:32:37.220458Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:37.303363Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:38.554270Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:38.619116Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:44.030894Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4838132251856752988, trigger=click)
2026-04-20T10:32:44.098803Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4838132251856752988, trigger=click)
2026-04-20T10:32:45.233990Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4838132251856752988, trigger=click)
2026-04-20T10:32:45.238569Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4838132251856752988, trigger=click)
2026-04-20T10:32:48.884987Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4838132251856752988, trigger=visual_change)
2026-04-20T10:32:51.832116Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:51.860110Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:53.754008Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:53.796899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:55.635715Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:55.675828Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:57.084341Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:57.128626Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:58.841455Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:58.882031Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:33:00.965217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:33:01.040922Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:33:02.591751Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:33:02.633245Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:33:03.324241Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:33:03.353493Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:33:05.802391Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:33:05.849275Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:33:06.911518Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=visual_change)
2026-04-20T10:33:14.484135Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4838132251856752988, trigger=click)
2026-04-20T10:33:14.530843Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4838132251856752988, trigger=click)
2026-04-20T10:33:34.189406Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4838132251856752988, trigger=click)
2026-04-20T10:33:34.205308Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=94 elapsed=3.603974333s
2026-04-20T10:33:34.205567Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 94 eligible frames
2026-04-20T10:33:34.240884Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4838132251856752988, trigger=visual_change)
2026-04-20T10:33:35.686677Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4838132251856752988, trigger=click)
2026-04-20T10:33:35.780825Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4838132251856752988, trigger=click)
2026-04-20T10:33:37.134576Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 8.0MB → 4.4MB (1.8x), 38 JPEGs deleted
2026-04-20T10:33:40.850354Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 54 frames, 7.9MB → 3.4MB (2.3x), 54 JPEGs deleted
2026-04-20T10:33:55.372436Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4838132251856752988, trigger=visual_change)
2026-04-20T10:35:01.169212Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:35:01.245363Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:35:02.392419Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=visual_change)
2026-04-20T10:35:05.029174Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:35:05.073174Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:35:07.222477Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:35:07.329020Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:35:08.707660Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=visual_change)
2026-04-20T10:35:27.744689Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:35:27.812062Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:36:18.265456Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:36:18.437457Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:36:23.437791Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:36:23.487637Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:36:24.299771Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=visual_change)
2026-04-20T10:36:25.135894Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:36:25.257064Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:36:27.317393Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=visual_change)
2026-04-20T10:36:50.815358Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:38:04.728644Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4435744464912499495, trigger=visual_change)
2026-04-20T10:38:07.749721Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4435744464912499495, trigger=visual_change)
2026-04-20T10:38:13.318000Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=visual_change)
2026-04-20T10:38:13.969769Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=visual_change)
2026-04-20T10:38:14.800566Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:38:14.834512Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:38:17.252696Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:38:17.328544Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:38:24.892322Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:38:24.943640Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:38:35.256001Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:38:35.322251Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:38:40.980335Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 88 eligible frames
2026-04-20T10:38:43.345927Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 39 frames, 6.6MB → 2.6MB (2.5x), 39 JPEGs deleted
2026-04-20T10:38:46.544495Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 47 frames, 7.3MB → 2.8MB (2.6x), 47 JPEGs deleted
2026-04-20T10:39:26.663352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=visual_change)
2026-04-20T10:39:29.597544Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:39:29.637879Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:40:07.495065Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=visual_change)
2026-04-20T10:40:11.064923Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3919322128440588956, trigger=visual_change)
2026-04-20T10:40:11.431065Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3919322128440588956, trigger=click)
2026-04-20T10:40:12.068565Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3919322128440588956, trigger=click)
2026-04-20T10:40:12.110719Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3919322128440588956, trigger=click)
2026-04-20T10:40:14.179306Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3919322128440588956, trigger=click)
2026-04-20T10:40:14.239361Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3919322128440588956, trigger=click)
2026-04-20T10:41:20.489623Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3919322128440588956, trigger=click)
2026-04-20T10:43:48.184341Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=82 elapsed=1.63218175s
2026-04-20T10:43:48.184571Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 82 eligible frames
2026-04-20T10:43:50.234957Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 30 frames, 2.2MB → 0.1MB (16.1x), 30 JPEGs deleted
2026-04-20T10:43:55.342383Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 50 frames, 7.9MB → 3.2MB (2.5x), 50 JPEGs deleted
2026-04-20T10:44:06.225390Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4079037146782974603, trigger=click)
2026-04-20T10:44:14.808445Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Slack, signals=2)
2026-04-20T10:44:19.110273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-539912533838677065, trigger=click)
2026-04-20T10:44:19.155111Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-539912533838677065, trigger=click)
2026-04-20T10:44:19.832463Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Slack, signals=2, browser=false)
2026-04-20T10:44:19.834928Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=3, app=Slack, title=None)
2026-04-20T10:44:27.766267Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5412550087722993493, trigger=visual_change)
2026-04-20T10:44:39.799864Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5412550087722993493, trigger=visual_change)
2026-04-20T10:44:57.832108Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5412550087722993493, trigger=visual_change)
2026-04-20T10:44:57.940548Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5412550087722993493, trigger=click)
2026-04-20T10:44:58.605782Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5412550087722993493, trigger=click)
2026-04-20T10:44:58.637243Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5412550087722993493, trigger=click)
2026-04-20T10:45:00.807501Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5412550087722993493, trigger=visual_change)
2026-04-20T10:45:16.166619Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8594311245071571574, trigger=visual_change)
2026-04-20T10:45:56.391618Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3919322128440588956, trigger=click)
2026-04-20T10:45:56.468127Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3919322128440588956, trigger=click)
2026-04-20T10:46:03.056730Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8594311245071571574, trigger=visual_change)
2026-04-20T10:46:12.195973Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8594311245071571574, trigger=visual_change)
2026-04-20T10:46:17.958643Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3919322128440588956, trigger=click)
2026-04-20T10:46:18.011452Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3919322128440588956, trigger=click)
2026-04-20T10:47:02.211065Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5662459752758049610, trigger=click)
2026-04-20T10:47:02.257675Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5662459752758049610, trigger=click)
2026-04-20T10:47:05.697096Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5662459752758049610, trigger=click)
2026-04-20T10:47:06.566076Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5662459752758049610, trigger=click)
2026-04-20T10:47:07.827281Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping captur...
|
iTerm2
|
screenpipe"
|
NULL
|
54445
|
|
54470
|
Last login: Mon Apr 20 10:16:41 on ttys009
Poetry Last login: Mon Apr 20 10:16:41 on ttys009
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-04-20T10:17:08.672567Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store
checking permissions...
screen recording: ok
accessibility: ok
2026-04-20T10:17:08.735636Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-04-20T10:17:09.168849Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-04-20T10:17:09.170474Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-04-20T10:17:09.170918Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-04-20T10:17:09.203704Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-04-20T10:17:09.203780Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-04-20T10:17:09.203962Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-04-20T10:17:09.203976Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-04-20T10:17:09.203934Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-04-20T10:17:09.204030Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-04-20T10:17:09.203954Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-04-20T10:17:09.215020Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))
2026-04-20T10:17:09.220127Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-04-20T10:17:09.220306Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-04-20T10:17:09.220863Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-04-20T10:17:09.221034Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-04-20T10:17:09.221177Z INFO screenpipe_core::pipes: loaded pipe: video-export
2026-04-20T10:17:09.221820Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary
2026-04-20T10:17:09.221839Z INFO screenpipe_core::pipes: loaded 6 pipes from "/Users/lukas/.screenpipe/pipes"
_
__________________ ___ ____ ____ (_____ ___
/ ___/ ___/ ___/ _ \/ _ \/ __ \ / __ \/ / __ \/ _ \
(__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/
/____/\___/_/ \___/\___/_/ /_/ / .___/_/ .___/\___/
/_/ /_/
power AI by everything you've seen, said or heard
open source | runs locally | developer friendly
┌────────────────────────┬────────────────────────────────────┐
│ setting │ value │
├────────────────────────┼────────────────────────────────────┤
│ audio chunk duration │ 30 seconds │
│ port │ 3030 │
│ audio disabled │ true │
│ vision disabled │ false │
│ pause on DRM content │ false │
│ audio engine │ Parakeet │
│ vad engine │ Silero │
│ data directory │ /Users/lukas/.screenpipe │
│ debug mode │ false │
│ telemetry │ true │
│ use pii removal │ true │
│ use all monitors │ true │
2026-04-20T10:17:09.223448Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)
│ ignored windows │ ["Boosteroid"] │
│ included windows │ [] │
│ cloud sync │ disabled │
│ auto-destruct pid │ 0 │
│ deepgram key │ not set │
│ api auth │ enabled │
2026-04-20T10:17:09.227535Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh
│ encrypt secrets │ disabled │
│ retention days │ 14 │
├────────────────────────┼────────────────────────────────────┤
│ languages │ │
│ │ all languages │
├────────────────────────┼────────────────────────────────────┤
│ monitors │ │
│ │ id: 1 │
│ │ id: 2 │
├────────────────────────┼────────────────────────────────────┤
│ audio devices │ │
│ │ disabled │
└────────────────────────┴────────────────────────────────────┘
you are using local processing. all your data stays on your computer.
warning: telemetry is enabled. only error-level data will be sent.
to disable, use the --disable-telemetry flag.
check latest changes here: https://github.com/screenpipe/screenpipe/releases
2026-04-20T10:17:09.240088Z INFO screenpipe: starting UI event capture
2026-04-20T10:17:09.253668Z INFO screenpipe_engine::ui_recorder: Starting UI event capture
2026-04-20T10:17:09.267973Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)
2026-04-20T10:17:09.268072Z INFO screenpipe_engine::ui_recorder: UI recording session started: f196d677-2a10-4dec-93e7-9dd9048a1d8e
2026-04-20T10:17:09.268173Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-04-19 07:17:09.268169 UTC to 2026-04-20 07:17:09.268169 UTC)
2026-04-20T10:17:09.268665Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)
2026-04-20T10:17:09.275204Z INFO screenpipe_engine::server: Server listening on [IP_ADDRESS]:3030
2026-04-20T10:17:09.280547Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030
2026-04-20T10:17:09.284876Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)
2026-04-20T10:17:09.284906Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)
2026-04-20T10:17:09.284942Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)
2026-04-20T10:17:09.316523Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)
2026-04-20T10:17:09.316557Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)
2026-04-20T10:17:09.316583Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)
2026-04-20T10:17:09.316603Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)
2026-04-20T10:17:09.975374Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)
2026-04-20T10:17:10.050320Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)
2026-04-20T10:17:10.109022Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=52481, dur=72ms
2026-04-20T10:17:10.197530Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=52482, dur=98ms
2026-04-20T10:17:10.926185Z WARN sqlx::query: summary="SELECT f.id, f.timestamp, f.offset_index, …" db.statement="\n\nSELECT\n f.id,\n f.timestamp,\n f.offset_index,\n COALESCE(\n SUBSTR(f.full_text, 1, 200),\n SUBSTR(f.accessibility_text, 1, 200),\n (\n SELECT\n SUBSTR(ot.text, 1, 200)\n FROM\n ocr_text ot\n WHERE\n ot.frame_id = f.id\n LIMIT\n 1\n )\n ) as text,\n COALESCE(\n f.app_name,\n (\n SELECT\n ot.app_name\n FROM\n ocr_text ot\n WHERE\n ot.frame_id = f.id\n LIMIT\n 1\n )\n ) as app_name,\n COALESCE(\n f.window_name,\n (\n SELECT\n ot.window_name\n FROM\n ocr_text ot\n WHERE\n ot.frame_id = f.id\n LIMIT\n 1\n )\n ) as window_name,\n COALESCE(vc.device_name, f.device_name) as screen_device,\n COALESCE(vc.file_path, f.snapshot_path) as video_path,\n COALESCE(vc.fps, 0.033) as chunk_fps,\n f.browser_url,\n f.machine_id\nFROM\n frames f\n LEFT JOIN video_chunks vc ON f.video_chunk_id = vc.id\nWHERE\n f.timestamp >= ?1\n AND f.timestamp <= ?2\n AND COALESCE(vc.file_path, f.snapshot_path, '') NOT LIKE 'cloud://%'\nORDER BY\n f.timestamp DESC,\n f.offset_index DESC\nLIMIT\n 10000\n" rows_affected=0 rows_returned=974 elapsed=1.657379083s
2026-04-20T10:17:10.928810Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 974 frame entries, coverage from 2026-04-19 07:17:09.268169 UTC
2026-04-20T10:17:36.605708Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5556097941235749601, trigger=visual_change)
2026-04-20T10:17:41.066595Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5621935701738529327, trigger=click)
2026-04-20T10:17:41.100078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5621935701738529327, trigger=click)
2026-04-20T10:17:46.116429Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5621935701738529327, trigger=click)
2026-04-20T10:17:46.148269Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5621935701738529327, trigger=click)
2026-04-20T10:18:13.360099Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=145 elapsed=4.153777416s
2026-04-20T10:18:13.360276Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 145 eligible frames
2026-04-20T10:18:18.937138Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 90 frames, 15.2MB → 6.4MB (2.4x), 90 JPEGs deleted
2026-04-20T10:18:22.014745Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 53 frames, 9.4MB → 2.0MB (4.6x), 53 JPEGs deleted
2026-04-20T10:18:56.067965Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1399546062189663050, trigger=visual_change)
2026-04-20T10:18:56.859644Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1399546062189663050, trigger=click)
2026-04-20T10:18:59.894779Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=[CREDIT_CARD], trigger=click)
2026-04-20T10:19:12.201247Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5621935701738529327, trigger=visual_change)
2026-04-20T10:21:22.063263Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1399546062189663050, trigger=visual_change)
2026-04-20T10:21:35.657143Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5007800743451086391, trigger=visual_change)
2026-04-20T10:21:35.899663Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5007800743451086391, trigger=visual_change)
2026-04-20T10:21:38.094166Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5007800743451086391, trigger=click)
2026-04-20T10:21:38.149655Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5007800743451086391, trigger=click)
2026-04-20T10:21:38.947641Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5007800743451086391, trigger=click)
2026-04-20T10:21:38.991934Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5007800743451086391, trigger=click)
2026-04-20T10:23:28.231526Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=2 elapsed=6.103025792s
2026-04-20T10:23:28.232845Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames
2026-04-20T10:25:18.292352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=133505750984754566, trigger=click)
2026-04-20T10:25:33.154631Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:25:33.227754Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:25:34.786990Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:25:36.507114Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:25:36.556707Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:25:37.741060Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:25:39.466175Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:25:39.547293Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:26:02.072902Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2625703622302799632, trigger=visual_change)
2026-04-20T10:26:05.038754Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8395829747728977847, trigger=visual_change)
2026-04-20T10:26:10.400901Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:26:10.459718Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:26:14.431146Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:26:17.437868Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:26:35.296162Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:26:35.339241Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:26:37.233387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:26:37.326557Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:00.031681Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:00.067495Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:01.950749Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:02.027316Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:13.045805Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:13.116607Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:15.272022Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:15.311144Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:17.880859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:17.952143Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:21.645455Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:21.706889Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:36.304603Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:36.380537Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:37.368951Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:37.459157Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:40.420505Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:40.469217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:41.179717Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:28:00.173884Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:00.251737Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:01.241028Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:01.288002Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:02.985445Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:03.078932Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:04.726087Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:04.770305Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:18.186992Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:18.272249Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:28.337807Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 14 eligible frames
2026-04-20T10:28:29.608030Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 8 frames, 0.7MB → 0.5MB (1.4x), 8 JPEGs deleted
2026-04-20T10:28:30.685845Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 6 frames, 1.2MB → 0.7MB (1.8x), 6 JPEGs deleted
2026-04-20T10:28:49.943477Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:49.984595Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:50.611087Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:50.628530Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:54.853245Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:57.739309Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:29:03.177558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:03.231322Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:03.857989Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:29:04.993121Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:05.032838Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:06.923393Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:29:07.890421Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:07.960410Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:08.812301Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:26.656780Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:26.775833Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:27.602791Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:27.639583Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:34.060332Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2389025338591748766, trigger=visual_change)
2026-04-20T10:29:37.050675Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2389025338591748766, trigger=click)
2026-04-20T10:29:37.085946Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2389025338591748766, trigger=click)
2026-04-20T10:29:40.501396Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2389025338591748766, trigger=visual_change)
2026-04-20T10:29:43.751715Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:29:43.843367Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:44.468329Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:46.931137Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:49.616400Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:49.692474Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:50.298335Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:29:51.348506Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:51.436585Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:30:12.602958Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8200761366188343712, trigger=click)
2026-04-20T10:31:17.535958Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5166044279428207369, trigger=click)
2026-04-20T10:31:18.668547Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5166044279428207369, trigger=visual_change)
2026-04-20T10:31:19.518515Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5166044279428207369, trigger=click)
2026-04-20T10:31:19.681398Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5166044279428207369, trigger=click)
2026-04-20T10:31:21.044436Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5166044279428207369, trigger=click)
2026-04-20T10:31:21.086009Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5166044279428207369, trigger=click)
2026-04-20T10:31:21.680970Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5166044279428207369, trigger=visual_change)
2026-04-20T10:32:05.428125Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6999516640019587394, trigger=visual_change)
2026-04-20T10:32:07.004460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:07.088172Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:08.380482Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6999516640019587394, trigger=visual_change)
2026-04-20T10:32:11.588306Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:11.689288Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:12.318265Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:12.381069Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:20.139124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:20.175356Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:23.490851Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:27.111949Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6999516640019587394, trigger=visual_change)
2026-04-20T10:32:37.220458Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:37.303363Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:38.554270Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:38.619116Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:44.030894Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4838132251856752988, trigger=click)
2026-04-20T10:32:44.098803Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4838132251856752988, trigger=click)
2026-04-20T10:32:45.233990Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4838132251856752988, trigger=click)
2026-04-20T10:32:45.238569Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4838132251856752988, trigger=click)
2026-04-20T10:32:48.884987Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4838132251856752988, trigger=visual_change)
2026-04-20T10:32:51.832116Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:51.860110Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:53.754008Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:53.796899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:55.635715Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:55.675828Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:57.084341Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:57.128626Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:58.841455Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:58.882031Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:33:00.965217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:33:01.040922Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:33:02.591751Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:33:02.633245Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:33:03.324241Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:33:03.353493Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:33:05.802391Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:33:05.849275Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:33:06.911518Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=visual_change)
2026-04-20T10:33:14.484135Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4838132251856752988, trigger=click)
2026-04-20T10:33:14.530843Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4838132251856752988, trigger=click)
2026-04-20T10:33:34.189406Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4838132251856752988, trigger=click)
2026-04-20T10:33:34.205308Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=94 elapsed=3.603974333s
2026-04-20T10:33:34.205567Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 94 eligible frames
2026-04-20T10:33:34.240884Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4838132251856752988, trigger=visual_change)
2026-04-20T10:33:35.686677Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4838132251856752988, trigger=click)
2026-04-20T10:33:35.780825Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4838132251856752988, trigger=click)
2026-04-20T10:33:37.134576Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 8.0MB → 4.4MB (1.8x), 38 JPEGs deleted
2026-04-20T10:33:40.850354Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 54 frames, 7.9MB → 3.4MB (2.3x), 54 JPEGs deleted
2026-04-20T10:33:55.372436Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4838132251856752988, trigger=visual_change)
2026-04-20T10:35:01.169212Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:35:01.245363Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:35:02.392419Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=visual_change)
2026-04-20T10:35:05.029174Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:35:05.073174Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:35:07.222477Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:35:07.329020Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:35:08.707660Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=visual_change)
2026-04-20T10:35:27.744689Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:35:27.812062Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:36:18.265456Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:36:18.437457Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:36:23.437791Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:36:23.487637Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:36:24.299771Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=visual_change)
2026-04-20T10:36:25.135894Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:36:25.257064Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:36:27.317393Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=visual_change)
2026-04-20T10:36:50.815358Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:38:04.728644Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4435744464912499495, trigger=visual_change)
2026-04-20T10:38:07.749721Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4435744464912499495, trigger=visual_change)
2026-04-20T10:38:13.318000Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=visual_change)
2026-04-20T10:38:13.969769Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=visual_change)
2026-04-20T10:38:14.800566Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:38:14.834512Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:38:17.252696Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:38:17.328544Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:38:24.892322Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:38:24.943640Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:38:35.256001Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:38:35.322251Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:38:40.980335Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 88 eligible frames
2026-04-20T10:38:43.345927Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 39 frames, 6.6MB → 2.6MB (2.5x), 39 JPEGs deleted
2026-04-20T10:38:46.544495Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 47 frames, 7.3MB → 2.8MB (2.6x), 47 JPEGs deleted
2026-04-20T10:39:26.663352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=visual_change)
2026-04-20T10:39:29.597544Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:39:29.637879Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:40:07.495065Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=visual_change)
2026-04-20T10:40:11.064923Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3919322128440588956, trigger=visual_change)
2026-04-20T10:40:11.431065Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3919322128440588956, trigger=click)
2026-04-20T10:40:12.068565Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3919322128440588956, trigger=click)
2026-04-20T10:40:12.110719Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3919322128440588956, trigger=click)
2026-04-20T10:40:14.179306Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3919322128440588956, trigger=click)
2026-04-20T10:40:14.239361Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3919322128440588956, trigger=click)
2026-04-20T10:41:20.489623Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3919322128440588956, trigger=click)
2026-04-20T10:43:48.184341Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=82 elapsed=1.63218175s
2026-04-20T10:43:48.184571Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 82 eligible frames
2026-04-20T10:43:50.234957Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 30 frames, 2.2MB → 0.1MB (16.1x), 30 JPEGs deleted
2026-04-20T10:43:55.342383Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 50 frames, 7.9MB → 3.2MB (2.5x), 50 JPEGs deleted
2026-04-20T10:44:06.225390Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4079037146782974603, trigger=click)
2026-04-20T10:44:14.808445Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Slack, signals=2)
2026-04-20T10:44:19.110273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-539912533838677065, trigger=click)
2026-04-20T10:44:19.155111Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-539912533838677065, trigger=click)
2026-04-20T10:44:19.832463Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Slack, signals=2, browser=false)
2026-04-20T10:44:19.834928Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=3, app=Slack, title=None)
2026-04-20T10:44:27.766267Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5412550087722993493, trigger=visual_change)
2026-04-20T10:44:39.799864Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5412550087722993493, trigger=visual_change)
2026-04-20T10:44:57.832108Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5412550087722993493, trigger=visual_change)
2026-04-20T10:44:57.940548Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5412550087722993493, trigger=click)
2026-04-20T10:44:58.605782Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5412550087722993493, trigger=click)
2026-04-20T10:44:58.637243Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5412550087722993493, trigger=click)
2026-04-20T10:45:00.807501Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5412550087722993493, trigger=visual_change)
2026-04-20T10:45:16.166619Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8594311245071571574, trigger=visual_change)
2026-04-20T10:45:56.391618Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3919322128440588956, trigger=click)
2026-04-20T10:45:56.468127Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3919322128440588956, trigger=click)
2026-04-20T10:46:03.056730Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8594311245071571574, trigger=visual_change)
2026-04-20T10:46:12.195973Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8594311245071571574, trigger=visual_change)
2026-04-20T10:46:17.958643Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3919322128440588956, trigger=click)
2026-04-20T10:46:18.011452Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3919322128440588956, trigger=click)
2026-04-20T10:47:02.211065Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5662459752758049610, trigger=click)
2026-04-20T10:47:02.257675Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5662459752758049610, trigger=click)
2026-04-20T10:47:05.697096Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5662459752758049610, trigger=click)
2026-04-20T10:47:06.566076Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5662459752758049610, trigger=click)
2026-04-20T10:47:07.827281Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping captur...
|
iTerm2
|
screenpipe"
|
NULL
|
54470
|
|
54529
|
Activity MonitorFileEditViewWindowHelpDOCKER2026-0 Activity MonitorFileEditViewWindowHelpDOCKER2026-04-20T11:57:24.788972Z2026-04-20T11:57:36.481689Z2026-04-20T11:57:37.756625Z2026-04-20T11:57:37.834390Z2026-04-20T11:57:49.238635Z2026-04-20T11:57:52.246590Z2026-04-20T11:57:55.241832Z2026-04-20T11:57:58.301374Z2026-04-20T11:58:01.337222Z2026-04-20T11:58:26.816413Z2026-04-20111:58:29.856452Z2026-04-20T11:58:30.666522Z2026-04-20T11:58:30.701317Z2026-04-20T11:58:35.989225Z2026-04-20T11:58:38.498940Z2026-04-20T11:58:40.794993Z2026-04-20T11:58:42.377239Z2026-04-20T11:58:59.532131Z2026-04-20T11:59:39.744543Z2026-04-20T11:59:58.627407Z2026-04-20112:01:34.8824792ROM\nframes \nWHERE\n418542s2026-04-20T12:01:34.882676Z2026-04-20T12:01:37.375070Z2026-04-20T12:01:45.894068Z2026-04-20T12:01:50.133673Z2026-04-20T12:01:50.211171Z2026-04-20T12:01:55.273763Z2026-04-20T12:02:00.095574Z2026-04-20112:02:15.11427722026-04-20T12:02:15.166674Z2026-04-20T12:02:16.372669Z2026-04-20T12:02:16.45249622026-04-20T12:02:17.931496Z2026-04-20T12:02:17.993032Z2026-04-20T12:02:20.527678Z2026-04-20T12:02:20.583726Z2026-04-20T12:02:24.944153Z2026-04-20T12:02:26.245682Z2026-04-20112:02:27.227059Z2026-04-20T12:02:27.321541Z2026-04-20T12:02:59.757184Z2026-04-20T12:02:59.854055ZSClDEV (docker)₴82APP (-INFOscreenpipe_engine::event_driven_capture: contentdeduINFOscreenpipe_engine::event_driven_capture: contentdeduINFOscreenpipe_engine::event_driven_capture: contentdeduINFOscreenpipe_engine::event_driven_capture: contentdeduINFOscreenpipe_engine::event_driven_capture: contentdeduINFOscreenpipe_engine::event_driven_capture: contentdeduINFOscreenpipe_engine:: event_driven_capture: contentdeduINFOscreenpipe_engine::event_driven_capture: contentdeduINFOscreenpipe_engine::event_driven_capture: contentdeduINFOscreenpipe_engine::event_driVen_capture: content deduINFOscreenpipe_engine::event_driven_capture: content deduINFOscreenpipe_engine::event_driven_capture: contentdeduINFOscreenpipe_engine::event_driven_capture: contentdeduINFOscreenpipe_engine::event_driven_capture: contentdeduINFOscreenpipe_engine::event_driven_capture: content deduINFOscreenpipe_engine::event_driven_capture: content deduINFOscreenpipe_engine:: event_driven_capture: content deduINFOscreenpipe_engine::event_driven_capture: content deduINFOscreenpipe_engine::event_driven_capture: content deduINFOscreenpipe_engine::event_driven_capture: content deduWARNsqlx::query:summary="SELECT id, snapshot_path,devicsnapshot_path IS NOT NULL\nAND timestamp < ?1\nORDER BY\ndeINFOscreenpipe_engine::snapshot_compaction: snapshotcompINFOscreenpipe_engine::snapshot_compaction: snapshotcompINFOscreenpipe_engine::snapshot_compaction: snapshotcompINFOscreenpipe_engine::event_driven_capture: content deduINFOscreenpipe_engine::event_driven_capture: content deduINFOscreenpipe_engine::event_driven_capture: contentdeduINFOscreenpipe_engine::event_driven_capture: content deduINFOscreenpipe_engine::event_driven_capture: content deduINFOscreenpipe_engine::event_driven_capture: contentdeduINFOscreenpipe_engine::event_driven_capture: contentdeduINFOscreenpipe_engine::event_driven_capture: content deduINFOscreenpipe_engine::event_driven_capture: content deduINFOscreenpipe_engine::event_driven_capture: contentdeduINFOscreenpipe_engine::event_driven_capture: contentdeduINFOscreenpipe_engine::event_driven_capture: contentdeduINFOscreenpipe_engine::event_driven_capture: contentdeduINFOscreenpipe_engine::event_driven_capture: contentdedulINFOscreenpipe_engine::event_driven_capture: content deduINFOscreenpipe_engine::event_driven_capture: content deduINFOscreenpipe_engine::event_driven_capture: content deduINFOscreenpipe_engine::event_driven_capture: content deduActivity MonitorAll ProcessesProcess NamePhpStormkernel_taskscreenpipeWindowServerVirtual Machine Service for Dockercef_server Helper (GPU)cef_server Helper (Renderer)FirefoxFirefoxCP Isolated Web Contentdeletedcef_servermds_storeslanguage_server_macos_armclouddClaudeFirefox GPU HelperScreenTimeAgentmdsActivity MonitortccdtccdiTerm2fairplaydlaunchservicesdSlackFirefoxCP Isolated Web ContentFirefoxCP Isolated Web ContentContextStoreAgentSystem:User:Idle:% CPU239,0204,840,937,325,021,714,214,013,412,311,69,69,08,57,26,85,74,54,53,73,33,02,72,72,52,42,32,3CPU LOAD100% <78Mon 20 Apr 12:03:02CPUMemoryEnergyDiskNetworkCPU TimeThreadsIdie Wake-Ups2:57:54,4157:07,2220:12,8132:00,1855:12,791:49,362:04,309:42,821:36,566,111:10,593:02,855:21,091,712:05,8510:51,200,821:10,032:14,741:20,4320,864:03 680,442:32,992:48,181:28,105:03,3223, Kind51,53%48,00%0,47%Threads:Processes:3 752426...
|
iTerm2
|
screenpipe"
|
NULL
|
54529
|
|
54530
|
Firefox FileEdit•.•D+→ xVIewHistory Bookmarks Prof Firefox FileEdit•.•D+→ xVIewHistory Bookmarks Profiles Tools Window Help• - app.dev.jiminny.com/ondemand100% C4a & Mon 20 Apr 12:03:02.( JY-20553 | Improve crm-sync dela1N (SRD-6793) Les Mills activity type:@ JY-20698 handle failed field syncJY-20692 change confirmation par# (UY-20543] AJ Reports > TrackingJY-189091 [Part21 Automated rerAsk Jiminny Reports by nikolay-yarNew Tabu Product Growth Platform I Useroildu Userpilot | Logged-activityfix(securitv): composer depender© Pipelines - jiminny/appall Feed - jiminny - Sentry)fix(security): composer dependen• Jiminny7 Jiminny8 Jiminny— New TabWaiting for app.dev.liminnv.com...
|
iTerm2
|
screenpipe"
|
NULL
|
54530
|
|
54531
|
Last login: Mon Apr 20 10:16:41 on ttys009
Poetry Last login: Mon Apr 20 10:16:41 on ttys009
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-04-20T10:17:08.672567Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store
checking permissions...
screen recording: ok
accessibility: ok
2026-04-20T10:17:08.735636Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-04-20T10:17:09.168849Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-04-20T10:17:09.170474Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-04-20T10:17:09.170918Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-04-20T10:17:09.203704Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-04-20T10:17:09.203780Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-04-20T10:17:09.203962Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-04-20T10:17:09.203976Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-04-20T10:17:09.203934Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-04-20T10:17:09.204030Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-04-20T10:17:09.203954Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-04-20T10:17:09.215020Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))
2026-04-20T10:17:09.220127Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-04-20T10:17:09.220306Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-04-20T10:17:09.220863Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-04-20T10:17:09.221034Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-04-20T10:17:09.221177Z INFO screenpipe_core::pipes: loaded pipe: video-export
2026-04-20T10:17:09.221820Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary
2026-04-20T10:17:09.221839Z INFO screenpipe_core::pipes: loaded 6 pipes from "/Users/lukas/.screenpipe/pipes"
_
__________________ ___ ____ ____ (_____ ___
/ ___/ ___/ ___/ _ \/ _ \/ __ \ / __ \/ / __ \/ _ \
(__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/
/____/\___/_/ \___/\___/_/ /_/ / .___/_/ .___/\___/
/_/ /_/
power AI by everything you've seen, said or heard
open source | runs locally | developer friendly
┌────────────────────────┬────────────────────────────────────┐
│ setting │ value │
├────────────────────────┼────────────────────────────────────┤
│ audio chunk duration │ 30 seconds │
│ port │ 3030 │
│ audio disabled │ true │
│ vision disabled │ false │
│ pause on DRM content │ false │
│ audio engine │ Parakeet │
│ vad engine │ Silero │
│ data directory │ /Users/lukas/.screenpipe │
│ debug mode │ false │
│ telemetry │ true │
│ use pii removal │ true │
│ use all monitors │ true │
2026-04-20T10:17:09.223448Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)
│ ignored windows │ ["Boosteroid"] │
│ included windows │ [] │
│ cloud sync │ disabled │
│ auto-destruct pid │ 0 │
│ deepgram key │ not set │
│ api auth │ enabled │
2026-04-20T10:17:09.227535Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh
│ encrypt secrets │ disabled │
│ retention days │ 14 │
├────────────────────────┼────────────────────────────────────┤
│ languages │ │
│ │ all languages │
├────────────────────────┼────────────────────────────────────┤
│ monitors │ │
│ │ id: 1 │
│ │ id: 2 │
├────────────────────────┼────────────────────────────────────┤
│ audio devices │ │
│ │ disabled │
└────────────────────────┴────────────────────────────────────┘
you are using local processing. all your data stays on your computer.
warning: telemetry is enabled. only error-level data will be sent.
to disable, use the --disable-telemetry flag.
check latest changes here: https://github.com/screenpipe/screenpipe/releases
2026-04-20T10:17:09.240088Z INFO screenpipe: starting UI event capture
2026-04-20T10:17:09.253668Z INFO screenpipe_engine::ui_recorder: Starting UI event capture
2026-04-20T10:17:09.267973Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)
2026-04-20T10:17:09.268072Z INFO screenpipe_engine::ui_recorder: UI recording session started: f196d677-2a10-4dec-93e7-9dd9048a1d8e
2026-04-20T10:17:09.268173Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-04-19 07:17:09.268169 UTC to 2026-04-20 07:17:09.268169 UTC)
2026-04-20T10:17:09.268665Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)
2026-04-20T10:17:09.275204Z INFO screenpipe_engine::server: Server listening on [IP_ADDRESS]:3030
2026-04-20T10:17:09.280547Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030
2026-04-20T10:17:09.284876Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)
2026-04-20T10:17:09.284906Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)
2026-04-20T10:17:09.284942Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)
2026-04-20T10:17:09.316523Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)
2026-04-20T10:17:09.316557Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)
2026-04-20T10:17:09.316583Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)
2026-04-20T10:17:09.316603Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)
2026-04-20T10:17:09.975374Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)
2026-04-20T10:17:10.050320Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)
2026-04-20T10:17:10.109022Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=52481, dur=72ms
2026-04-20T10:17:10.197530Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=52482, dur=98ms
2026-04-20T10:17:10.926185Z WARN sqlx::query: summary="SELECT f.id, f.timestamp, f.offset_index, …" db.statement="\n\nSELECT\n f.id,\n f.timestamp,\n f.offset_index,\n COALESCE(\n SUBSTR(f.full_text, 1, 200),\n SUBSTR(f.accessibility_text, 1, 200),\n (\n SELECT\n SUBSTR(ot.text, 1, 200)\n FROM\n ocr_text ot\n WHERE\n ot.frame_id = f.id\n LIMIT\n 1\n )\n ) as text,\n COALESCE(\n f.app_name,\n (\n SELECT\n ot.app_name\n FROM\n ocr_text ot\n WHERE\n ot.frame_id = f.id\n LIMIT\n 1\n )\n ) as app_name,\n COALESCE(\n f.window_name,\n (\n SELECT\n ot.window_name\n FROM\n ocr_text ot\n WHERE\n ot.frame_id = f.id\n LIMIT\n 1\n )\n ) as window_name,\n COALESCE(vc.device_name, f.device_name) as screen_device,\n COALESCE(vc.file_path, f.snapshot_path) as video_path,\n COALESCE(vc.fps, 0.033) as chunk_fps,\n f.browser_url,\n f.machine_id\nFROM\n frames f\n LEFT JOIN video_chunks vc ON f.video_chunk_id = vc.id\nWHERE\n f.timestamp >= ?1\n AND f.timestamp <= ?2\n AND COALESCE(vc.file_path, f.snapshot_path, '') NOT LIKE 'cloud://%'\nORDER BY\n f.timestamp DESC,\n f.offset_index DESC\nLIMIT\n 10000\n" rows_affected=0 rows_returned=974 elapsed=1.657379083s
2026-04-20T10:17:10.928810Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 974 frame entries, coverage from 2026-04-19 07:17:09.268169 UTC
2026-04-20T10:17:36.605708Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5556097941235749601, trigger=visual_change)
2026-04-20T10:17:41.066595Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5621935701738529327, trigger=click)
2026-04-20T10:17:41.100078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5621935701738529327, trigger=click)
2026-04-20T10:17:46.116429Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5621935701738529327, trigger=click)
2026-04-20T10:17:46.148269Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5621935701738529327, trigger=click)
2026-04-20T10:18:13.360099Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=145 elapsed=4.153777416s
2026-04-20T10:18:13.360276Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 145 eligible frames
2026-04-20T10:18:18.937138Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 90 frames, 15.2MB → 6.4MB (2.4x), 90 JPEGs deleted
2026-04-20T10:18:22.014745Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 53 frames, 9.4MB → 2.0MB (4.6x), 53 JPEGs deleted
2026-04-20T10:18:56.067965Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1399546062189663050, trigger=visual_change)
2026-04-20T10:18:56.859644Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1399546062189663050, trigger=click)
2026-04-20T10:18:59.894779Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=[CREDIT_CARD], trigger=click)
2026-04-20T10:19:12.201247Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5621935701738529327, trigger=visual_change)
2026-04-20T10:21:22.063263Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1399546062189663050, trigger=visual_change)
2026-04-20T10:21:35.657143Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5007800743451086391, trigger=visual_change)
2026-04-20T10:21:35.899663Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5007800743451086391, trigger=visual_change)
2026-04-20T10:21:38.094166Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5007800743451086391, trigger=click)
2026-04-20T10:21:38.149655Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5007800743451086391, trigger=click)
2026-04-20T10:21:38.947641Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5007800743451086391, trigger=click)
2026-04-20T10:21:38.991934Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5007800743451086391, trigger=click)
2026-04-20T10:23:28.231526Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=2 elapsed=6.103025792s
2026-04-20T10:23:28.232845Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames
2026-04-20T10:25:18.292352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=133505750984754566, trigger=click)
2026-04-20T10:25:33.154631Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:25:33.227754Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:25:34.786990Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:25:36.507114Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:25:36.556707Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:25:37.741060Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:25:39.466175Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:25:39.547293Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:26:02.072902Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2625703622302799632, trigger=visual_change)
2026-04-20T10:26:05.038754Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8395829747728977847, trigger=visual_change)
2026-04-20T10:26:10.400901Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:26:10.459718Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:26:14.431146Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:26:17.437868Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:26:35.296162Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:26:35.339241Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:26:37.233387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:26:37.326557Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:00.031681Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:00.067495Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:01.950749Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:02.027316Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:13.045805Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:13.116607Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:15.272022Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:15.311144Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:17.880859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:17.952143Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:21.645455Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:21.706889Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:36.304603Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:36.380537Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:37.368951Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:37.459157Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:40.420505Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:40.469217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:41.179717Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:28:00.173884Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:00.251737Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:01.241028Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:01.288002Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:02.985445Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:03.078932Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:04.726087Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:04.770305Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:18.186992Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:18.272249Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:28.337807Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 14 eligible frames
2026-04-20T10:28:29.608030Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 8 frames, 0.7MB → 0.5MB (1.4x), 8 JPEGs deleted
2026-04-20T10:28:30.685845Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 6 frames, 1.2MB → 0.7MB (1.8x), 6 JPEGs deleted
2026-04-20T10:28:49.943477Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:49.984595Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:50.611087Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:50.628530Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:54.853245Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:57.739309Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:29:03.177558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:03.231322Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:03.857989Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:29:04.993121Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:05.032838Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:06.923393Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:29:07.890421Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:07.960410Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:08.812301Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:26.656780Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:26.775833Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:27.602791Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:27.639583Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:34.060332Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2389025338591748766, trigger=visual_change)
2026-04-20T10:29:37.050675Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2389025338591748766, trigger=click)
2026-04-20T10:29:37.085946Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2389025338591748766, trigger=click)
2026-04-20T10:29:40.501396Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2389025338591748766, trigger=visual_change)
2026-04-20T10:29:43.751715Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:29:43.843367Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:44.468329Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:46.931137Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:49.616400Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:49.692474Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:50.298335Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:29:51.348506Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:51.436585Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:30:12.602958Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8200761366188343712, trigger=click)
2026-04-20T10:31:17.535958Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5166044279428207369, trigger=click)
2026-04-20T10:31:18.668547Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5166044279428207369, trigger=visual_change)
2026-04-20T10:31:19.518515Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5166044279428207369, trigger=click)
2026-04-20T10:31:19.681398Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5166044279428207369, trigger=click)
2026-04-20T10:31:21.044436Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5166044279428207369, trigger=click)
2026-04-20T10:31:21.086009Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5166044279428207369, trigger=click)
2026-04-20T10:31:21.680970Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5166044279428207369, trigger=visual_change)
2026-04-20T10:32:05.428125Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6999516640019587394, trigger=visual_change)
2026-04-20T10:32:07.004460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:07.088172Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:08.380482Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6999516640019587394, trigger=visual_change)
2026-04-20T10:32:11.588306Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:11.689288Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:12.318265Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:12.381069Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:20.139124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:20.175356Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:23.490851Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:27.111949Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6999516640019587394, trigger=visual_change)
2026-04-20T10:32:37.220458Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:37.303363Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:38.554270Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:38.619116Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:44.030894Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4838132251856752988, trigger=click)
2026-04-20T10:32:44.098803Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4838132251856752988, trigger=click)
2026-04-20T10:32:45.233990Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4838132251856752988, trigger=click)
2026-04-20T10:32:45.238569Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4838132251856752988, trigger=click)
2026-04-20T10:32:48.884987Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4838132251856752988, trigger=visual_change)
2026-04-20T10:32:51.832116Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:51.860110Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:53.754008Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:53.796899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:55.635715Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:55.675828Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:57.084341Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:57.128626Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:58.841455Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:58.882031Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:33:00.965217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:33:01.040922Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:33:02.591751Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:33:02.633245Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:33:03.324241Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:33:03.353493Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:33:05.802391Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:33:05.849275Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:33:06.911518Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=visual_change)
2026-04-20T10:33:14.484135Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4838132251856752988, trigger=click)
2026-04-20T10:33:14.530843Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4838132251856752988, trigger=click)
2026-04-20T10:33:34.189406Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4838132251856752988, trigger=click)
2026-04-20T10:33:34.205308Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=94 elapsed=3.603974333s
2026-04-20T10:33:34.205567Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 94 eligible frames
2026-04-20T10:33:34.240884Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4838132251856752988, trigger=visual_change)
2026-04-20T10:33:35.686677Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4838132251856752988, trigger=click)
2026-04-20T10:33:35.780825Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4838132251856752988, trigger=click)
2026-04-20T10:33:37.134576Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 8.0MB → 4.4MB (1.8x), 38 JPEGs deleted
2026-04-20T10:33:40.850354Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 54 frames, 7.9MB → 3.4MB (2.3x), 54 JPEGs deleted
2026-04-20T10:33:55.372436Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4838132251856752988, trigger=visual_change)
2026-04-20T10:35:01.169212Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:35:01.245363Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:35:02.392419Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=visual_change)
2026-04-20T10:35:05.029174Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:35:05.073174Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:35:07.222477Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:35:07.329020Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:35:08.707660Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=visual_change)
2026-04-20T10:35:27.744689Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:35:27.812062Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:36:18.265456Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:36:18.437457Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:36:23.437791Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:36:23.487637Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:36:24.299771Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=visual_change)
2026-04-20T10:36:25.135894Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:36:25.257064Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:36:27.317393Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=visual_change)
2026-04-20T10:36:50.815358Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:38:04.728644Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4435744464912499495, trigger=visual_change)
2026-04-20T10:38:07.749721Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4435744464912499495, trigger=visual_change)
2026-04-20T10:38:13.318000Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=visual_change)
2026-04-20T10:38:13.969769Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=visual_change)
2026-04-20T10:38:14.800566Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:38:14.834512Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:38:17.252696Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:38:17.328544Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:38:24.892322Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:38:24.943640Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:38:35.256001Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:38:35.322251Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:38:40.980335Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 88 eligible frames
2026-04-20T10:38:43.345927Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 39 frames, 6.6MB → 2.6MB (2.5x), 39 JPEGs deleted
2026-04-20T10:38:46.544495Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 47 frames, 7.3MB → 2.8MB (2.6x), 47 JPEGs deleted
2026-04-20T10:39:26.663352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=visual_change)
2026-04-20T10:39:29.597544Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:39:29.637879Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:40:07.495065Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=visual_change)
2026-04-20T10:40:11.064923Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3919322128440588956, trigger=visual_change)
2026-04-20T10:40:11.431065Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3919322128440588956, trigger=click)
2026-04-20T10:40:12.068565Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3919322128440588956, trigger=click)
2026-04-20T10:40:12.110719Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3919322128440588956, trigger=click)
2026-04-20T10:40:14.179306Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3919322128440588956, trigger=click)
2026-04-20T10:40:14.239361Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3919322128440588956, trigger=click)
2026-04-20T10:41:20.489623Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3919322128440588956, trigger=click)
2026-04-20T10:43:48.184341Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=82 elapsed=1.63218175s
2026-04-20T10:43:48.184571Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 82 eligible frames
2026-04-20T10:43:50.234957Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 30 frames, 2.2MB → 0.1MB (16.1x), 30 JPEGs deleted
2026-04-20T10:43:55.342383Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 50 frames, 7.9MB → 3.2MB (2.5x), 50 JPEGs deleted
2026-04-20T10:44:06.225390Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4079037146782974603, trigger=click)
2026-04-20T10:44:14.808445Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Slack, signals=2)
2026-04-20T10:44:19.110273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-539912533838677065, trigger=click)
2026-04-20T10:44:19.155111Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-539912533838677065, trigger=click)
2026-04-20T10:44:19.832463Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Slack, signals=2, browser=false)
2026-04-20T10:44:19.834928Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=3, app=Slack, title=None)
2026-04-20T10:44:27.766267Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5412550087722993493, trigger=visual_change)
2026-04-20T10:44:39.799864Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5412550087722993493, trigger=visual_change)
2026-04-20T10:44:57.832108Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5412550087722993493, trigger=visual_change)
2026-04-20T10:44:57.940548Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5412550087722993493, trigger=click)
2026-04-20T10:44:58.605782Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5412550087722993493, trigger=click)
2026-04-20T10:44:58.637243Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5412550087722993493, trigger=click)
2026-04-20T10:45:00.807501Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5412550087722993493, trigger=visual_change)
2026-04-20T10:45:16.166619Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8594311245071571574, trigger=visual_change)
2026-04-20T10:45:56.391618Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3919322128440588956, trigger=click)
2026-04-20T10:45:56.468127Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3919322128440588956, trigger=click)
2026-04-20T10:46:03.056730Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8594311245071571574, trigger=visual_change)
2026-04-20T10:46:12.195973Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8594311245071571574, trigger=visual_change)
2026-04-20T10:46:17.958643Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3919322128440588956, trigger=click)
2026-04-20T10:46:18.011452Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3919322128440588956, trigger=click)
2026-04-20T10:47:02.211065Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5662459752758049610, trigger=click)
2026-04-20T10:47:02.257675Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5662459752758049610, trigger=click)
2026-04-20T10:47:05.697096Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5662459752758049610, trigger=click)
2026-04-20T10:47:06.566076Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5662459752758049610, trigger=click)
2026-04-20T10:47:07.827281Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping captur...
|
iTerm2
|
screenpipe"
|
NULL
|
54531
|
|
54532
|
Last login: Mon Apr 20 10:16:41 on ttys009
Poetry Last login: Mon Apr 20 10:16:41 on ttys009
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-04-20T10:17:08.672567Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store
checking permissions...
screen recording: ok
accessibility: ok
2026-04-20T10:17:08.735636Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-04-20T10:17:09.168849Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-04-20T10:17:09.170474Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-04-20T10:17:09.170918Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-04-20T10:17:09.203704Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-04-20T10:17:09.203780Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-04-20T10:17:09.203962Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-04-20T10:17:09.203976Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-04-20T10:17:09.203934Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-04-20T10:17:09.204030Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-04-20T10:17:09.203954Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-04-20T10:17:09.215020Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))
2026-04-20T10:17:09.220127Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-04-20T10:17:09.220306Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-04-20T10:17:09.220863Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-04-20T10:17:09.221034Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-04-20T10:17:09.221177Z INFO screenpipe_core::pipes: loaded pipe: video-export
2026-04-20T10:17:09.221820Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary
2026-04-20T10:17:09.221839Z INFO screenpipe_core::pipes: loaded 6 pipes from "/Users/lukas/.screenpipe/pipes"
_
__________________ ___ ____ ____ (_____ ___
/ ___/ ___/ ___/ _ \/ _ \/ __ \ / __ \/ / __ \/ _ \
(__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/
/____/\___/_/ \___/\___/_/ /_/ / .___/_/ .___/\___/
/_/ /_/
power AI by everything you've seen, said or heard
open source | runs locally | developer friendly
┌────────────────────────┬────────────────────────────────────┐
│ setting │ value │
├────────────────────────┼────────────────────────────────────┤
│ audio chunk duration │ 30 seconds │
│ port │ 3030 │
│ audio disabled │ true │
│ vision disabled │ false │
│ pause on DRM content │ false │
│ audio engine │ Parakeet │
│ vad engine │ Silero │
│ data directory │ /Users/lukas/.screenpipe │
│ debug mode │ false │
│ telemetry │ true │
│ use pii removal │ true │
│ use all monitors │ true │
2026-04-20T10:17:09.223448Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)
│ ignored windows │ ["Boosteroid"] │
│ included windows │ [] │
│ cloud sync │ disabled │
│ auto-destruct pid │ 0 │
│ deepgram key │ not set │
│ api auth │ enabled │
2026-04-20T10:17:09.227535Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh
│ encrypt secrets │ disabled │
│ retention days │ 14 │
├────────────────────────┼────────────────────────────────────┤
│ languages │ │
│ │ all languages │
├────────────────────────┼────────────────────────────────────┤
│ monitors │ │
│ │ id: 1 │
│ │ id: 2 │
├────────────────────────┼────────────────────────────────────┤
│ audio devices │ │
│ │ disabled │
└────────────────────────┴────────────────────────────────────┘
you are using local processing. all your data stays on your computer.
warning: telemetry is enabled. only error-level data will be sent.
to disable, use the --disable-telemetry flag.
check latest changes here: https://github.com/screenpipe/screenpipe/releases
2026-04-20T10:17:09.240088Z INFO screenpipe: starting UI event capture
2026-04-20T10:17:09.253668Z INFO screenpipe_engine::ui_recorder: Starting UI event capture
2026-04-20T10:17:09.267973Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)
2026-04-20T10:17:09.268072Z INFO screenpipe_engine::ui_recorder: UI recording session started: f196d677-2a10-4dec-93e7-9dd9048a1d8e
2026-04-20T10:17:09.268173Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-04-19 07:17:09.268169 UTC to 2026-04-20 07:17:09.268169 UTC)
2026-04-20T10:17:09.268665Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)
2026-04-20T10:17:09.275204Z INFO screenpipe_engine::server: Server listening on [IP_ADDRESS]:3030
2026-04-20T10:17:09.280547Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030
2026-04-20T10:17:09.284876Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)
2026-04-20T10:17:09.284906Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)
2026-04-20T10:17:09.284942Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)
2026-04-20T10:17:09.316523Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)
2026-04-20T10:17:09.316557Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)
2026-04-20T10:17:09.316583Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)
2026-04-20T10:17:09.316603Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)
2026-04-20T10:17:09.975374Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)
2026-04-20T10:17:10.050320Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)
2026-04-20T10:17:10.109022Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=52481, dur=72ms
2026-04-20T10:17:10.197530Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=52482, dur=98ms
2026-04-20T10:17:10.926185Z WARN sqlx::query: summary="SELECT f.id, f.timestamp, f.offset_index, …" db.statement="\n\nSELECT\n f.id,\n f.timestamp,\n f.offset_index,\n COALESCE(\n SUBSTR(f.full_text, 1, 200),\n SUBSTR(f.accessibility_text, 1, 200),\n (\n SELECT\n SUBSTR(ot.text, 1, 200)\n FROM\n ocr_text ot\n WHERE\n ot.frame_id = f.id\n LIMIT\n 1\n )\n ) as text,\n COALESCE(\n f.app_name,\n (\n SELECT\n ot.app_name\n FROM\n ocr_text ot\n WHERE\n ot.frame_id = f.id\n LIMIT\n 1\n )\n ) as app_name,\n COALESCE(\n f.window_name,\n (\n SELECT\n ot.window_name\n FROM\n ocr_text ot\n WHERE\n ot.frame_id = f.id\n LIMIT\n 1\n )\n ) as window_name,\n COALESCE(vc.device_name, f.device_name) as screen_device,\n COALESCE(vc.file_path, f.snapshot_path) as video_path,\n COALESCE(vc.fps, 0.033) as chunk_fps,\n f.browser_url,\n f.machine_id\nFROM\n frames f\n LEFT JOIN video_chunks vc ON f.video_chunk_id = vc.id\nWHERE\n f.timestamp >= ?1\n AND f.timestamp <= ?2\n AND COALESCE(vc.file_path, f.snapshot_path, '') NOT LIKE 'cloud://%'\nORDER BY\n f.timestamp DESC,\n f.offset_index DESC\nLIMIT\n 10000\n" rows_affected=0 rows_returned=974 elapsed=1.657379083s
2026-04-20T10:17:10.928810Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 974 frame entries, coverage from 2026-04-19 07:17:09.268169 UTC
2026-04-20T10:17:36.605708Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5556097941235749601, trigger=visual_change)
2026-04-20T10:17:41.066595Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5621935701738529327, trigger=click)
2026-04-20T10:17:41.100078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5621935701738529327, trigger=click)
2026-04-20T10:17:46.116429Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5621935701738529327, trigger=click)
2026-04-20T10:17:46.148269Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5621935701738529327, trigger=click)
2026-04-20T10:18:13.360099Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=145 elapsed=4.153777416s
2026-04-20T10:18:13.360276Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 145 eligible frames
2026-04-20T10:18:18.937138Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 90 frames, 15.2MB → 6.4MB (2.4x), 90 JPEGs deleted
2026-04-20T10:18:22.014745Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 53 frames, 9.4MB → 2.0MB (4.6x), 53 JPEGs deleted
2026-04-20T10:18:56.067965Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1399546062189663050, trigger=visual_change)
2026-04-20T10:18:56.859644Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1399546062189663050, trigger=click)
2026-04-20T10:18:59.894779Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=[CREDIT_CARD], trigger=click)
2026-04-20T10:19:12.201247Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5621935701738529327, trigger=visual_change)
2026-04-20T10:21:22.063263Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1399546062189663050, trigger=visual_change)
2026-04-20T10:21:35.657143Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5007800743451086391, trigger=visual_change)
2026-04-20T10:21:35.899663Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5007800743451086391, trigger=visual_change)
2026-04-20T10:21:38.094166Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5007800743451086391, trigger=click)
2026-04-20T10:21:38.149655Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5007800743451086391, trigger=click)
2026-04-20T10:21:38.947641Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5007800743451086391, trigger=click)
2026-04-20T10:21:38.991934Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5007800743451086391, trigger=click)
2026-04-20T10:23:28.231526Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=2 elapsed=6.103025792s
2026-04-20T10:23:28.232845Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames
2026-04-20T10:25:18.292352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=133505750984754566, trigger=click)
2026-04-20T10:25:33.154631Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:25:33.227754Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:25:34.786990Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:25:36.507114Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:25:36.556707Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:25:37.741060Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:25:39.466175Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:25:39.547293Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:26:02.072902Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2625703622302799632, trigger=visual_change)
2026-04-20T10:26:05.038754Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8395829747728977847, trigger=visual_change)
2026-04-20T10:26:10.400901Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:26:10.459718Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:26:14.431146Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:26:17.437868Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:26:35.296162Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:26:35.339241Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:26:37.233387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:26:37.326557Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:00.031681Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:00.067495Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:01.950749Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:02.027316Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:13.045805Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:13.116607Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:15.272022Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:15.311144Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:17.880859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:17.952143Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:21.645455Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:21.706889Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:36.304603Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:36.380537Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:37.368951Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:37.459157Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:40.420505Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:40.469217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:27:41.179717Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:28:00.173884Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:00.251737Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:01.241028Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:01.288002Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:02.985445Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:03.078932Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:04.726087Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:04.770305Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:18.186992Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:18.272249Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:28.337807Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 14 eligible frames
2026-04-20T10:28:29.608030Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 8 frames, 0.7MB → 0.5MB (1.4x), 8 JPEGs deleted
2026-04-20T10:28:30.685845Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 6 frames, 1.2MB → 0.7MB (1.8x), 6 JPEGs deleted
2026-04-20T10:28:49.943477Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:49.984595Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:50.611087Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:50.628530Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:54.853245Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:28:57.739309Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:29:03.177558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:03.231322Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:03.857989Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:29:04.993121Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:05.032838Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:06.923393Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:29:07.890421Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:07.960410Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:08.812301Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:26.656780Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:26.775833Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:27.602791Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:27.639583Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:34.060332Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2389025338591748766, trigger=visual_change)
2026-04-20T10:29:37.050675Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2389025338591748766, trigger=click)
2026-04-20T10:29:37.085946Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2389025338591748766, trigger=click)
2026-04-20T10:29:40.501396Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2389025338591748766, trigger=visual_change)
2026-04-20T10:29:43.751715Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:29:43.843367Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:44.468329Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:46.931137Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:49.616400Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:49.692474Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:50.298335Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=visual_change)
2026-04-20T10:29:51.348506Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=588687738866170495, trigger=click)
2026-04-20T10:29:51.436585Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=588687738866170495, trigger=click)
2026-04-20T10:30:12.602958Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8200761366188343712, trigger=click)
2026-04-20T10:31:17.535958Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5166044279428207369, trigger=click)
2026-04-20T10:31:18.668547Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5166044279428207369, trigger=visual_change)
2026-04-20T10:31:19.518515Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5166044279428207369, trigger=click)
2026-04-20T10:31:19.681398Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5166044279428207369, trigger=click)
2026-04-20T10:31:21.044436Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5166044279428207369, trigger=click)
2026-04-20T10:31:21.086009Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5166044279428207369, trigger=click)
2026-04-20T10:31:21.680970Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5166044279428207369, trigger=visual_change)
2026-04-20T10:32:05.428125Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6999516640019587394, trigger=visual_change)
2026-04-20T10:32:07.004460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:07.088172Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:08.380482Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6999516640019587394, trigger=visual_change)
2026-04-20T10:32:11.588306Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:11.689288Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:12.318265Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:12.381069Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:20.139124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:20.175356Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:23.490851Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:27.111949Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6999516640019587394, trigger=visual_change)
2026-04-20T10:32:37.220458Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:37.303363Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:38.554270Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:38.619116Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6999516640019587394, trigger=click)
2026-04-20T10:32:44.030894Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4838132251856752988, trigger=click)
2026-04-20T10:32:44.098803Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4838132251856752988, trigger=click)
2026-04-20T10:32:45.233990Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4838132251856752988, trigger=click)
2026-04-20T10:32:45.238569Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4838132251856752988, trigger=click)
2026-04-20T10:32:48.884987Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4838132251856752988, trigger=visual_change)
2026-04-20T10:32:51.832116Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:51.860110Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:53.754008Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:53.796899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:55.635715Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:55.675828Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:57.084341Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:57.128626Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:58.841455Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:32:58.882031Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:33:00.965217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:33:01.040922Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:33:02.591751Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:33:02.633245Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:33:03.324241Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:33:03.353493Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:33:05.802391Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=click)
2026-04-20T10:33:05.849275Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3564605891676988236, trigger=click)
2026-04-20T10:33:06.911518Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3564605891676988236, trigger=visual_change)
2026-04-20T10:33:14.484135Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4838132251856752988, trigger=click)
2026-04-20T10:33:14.530843Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4838132251856752988, trigger=click)
2026-04-20T10:33:34.189406Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4838132251856752988, trigger=click)
2026-04-20T10:33:34.205308Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=94 elapsed=3.603974333s
2026-04-20T10:33:34.205567Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 94 eligible frames
2026-04-20T10:33:34.240884Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4838132251856752988, trigger=visual_change)
2026-04-20T10:33:35.686677Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4838132251856752988, trigger=click)
2026-04-20T10:33:35.780825Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4838132251856752988, trigger=click)
2026-04-20T10:33:37.134576Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 8.0MB → 4.4MB (1.8x), 38 JPEGs deleted
2026-04-20T10:33:40.850354Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 54 frames, 7.9MB → 3.4MB (2.3x), 54 JPEGs deleted
2026-04-20T10:33:55.372436Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4838132251856752988, trigger=visual_change)
2026-04-20T10:35:01.169212Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:35:01.245363Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:35:02.392419Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=visual_change)
2026-04-20T10:35:05.029174Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:35:05.073174Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:35:07.222477Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:35:07.329020Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:35:08.707660Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=visual_change)
2026-04-20T10:35:27.744689Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:35:27.812062Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:36:18.265456Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:36:18.437457Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:36:23.437791Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:36:23.487637Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:36:24.299771Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=visual_change)
2026-04-20T10:36:25.135894Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:36:25.257064Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:36:27.317393Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=visual_change)
2026-04-20T10:36:50.815358Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:38:04.728644Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4435744464912499495, trigger=visual_change)
2026-04-20T10:38:07.749721Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4435744464912499495, trigger=visual_change)
2026-04-20T10:38:13.318000Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=visual_change)
2026-04-20T10:38:13.969769Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=visual_change)
2026-04-20T10:38:14.800566Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:38:14.834512Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:38:17.252696Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:38:17.328544Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:38:24.892322Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:38:24.943640Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:38:35.256001Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:38:35.322251Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:38:40.980335Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 88 eligible frames
2026-04-20T10:38:43.345927Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 39 frames, 6.6MB → 2.6MB (2.5x), 39 JPEGs deleted
2026-04-20T10:38:46.544495Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 47 frames, 7.3MB → 2.8MB (2.6x), 47 JPEGs deleted
2026-04-20T10:39:26.663352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=visual_change)
2026-04-20T10:39:29.597544Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=click)
2026-04-20T10:39:29.637879Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7711588205739105973, trigger=click)
2026-04-20T10:40:07.495065Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7711588205739105973, trigger=visual_change)
2026-04-20T10:40:11.064923Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3919322128440588956, trigger=visual_change)
2026-04-20T10:40:11.431065Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3919322128440588956, trigger=click)
2026-04-20T10:40:12.068565Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3919322128440588956, trigger=click)
2026-04-20T10:40:12.110719Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3919322128440588956, trigger=click)
2026-04-20T10:40:14.179306Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3919322128440588956, trigger=click)
2026-04-20T10:40:14.239361Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3919322128440588956, trigger=click)
2026-04-20T10:41:20.489623Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3919322128440588956, trigger=click)
2026-04-20T10:43:48.184341Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=82 elapsed=1.63218175s
2026-04-20T10:43:48.184571Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 82 eligible frames
2026-04-20T10:43:50.234957Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 30 frames, 2.2MB → 0.1MB (16.1x), 30 JPEGs deleted
2026-04-20T10:43:55.342383Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 50 frames, 7.9MB → 3.2MB (2.5x), 50 JPEGs deleted
2026-04-20T10:44:06.225390Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4079037146782974603, trigger=click)
2026-04-20T10:44:14.808445Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Slack, signals=2)
2026-04-20T10:44:19.110273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-539912533838677065, trigger=click)
2026-04-20T10:44:19.155111Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-539912533838677065, trigger=click)
2026-04-20T10:44:19.832463Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Slack, signals=2, browser=false)
2026-04-20T10:44:19.834928Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=3, app=Slack, title=None)
2026-04-20T10:44:27.766267Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5412550087722993493, trigger=visual_change)
2026-04-20T10:44:39.799864Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5412550087722993493, trigger=visual_change)
2026-04-20T10:44:57.832108Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5412550087722993493, trigger=visual_change)
2026-04-20T10:44:57.940548Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5412550087722993493, trigger=click)
2026-04-20T10:44:58.605782Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5412550087722993493, trigger=click)
2026-04-20T10:44:58.637243Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5412550087722993493, trigger=click)
2026-04-20T10:45:00.807501Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5412550087722993493, trigger=visual_change)
2026-04-20T10:45:16.166619Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8594311245071571574, trigger=visual_change)
2026-04-20T10:45:56.391618Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3919322128440588956, trigger=click)
2026-04-20T10:45:56.468127Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3919322128440588956, trigger=click)
2026-04-20T10:46:03.056730Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8594311245071571574, trigger=visual_change)
2026-04-20T10:46:12.195973Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8594311245071571574, trigger=visual_change)
2026-04-20T10:46:17.958643Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3919322128440588956, trigger=click)
2026-04-20T10:46:18.011452Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3919322128440588956, trigger=click)
2026-04-20T10:47:02.211065Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5662459752758049610, trigger=click)
2026-04-20T10:47:02.257675Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5662459752758049610, trigger=click)
2026-04-20T10:47:05.697096Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5662459752758049610, trigger=click)
2026-04-20T10:47:06.566076Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5662459752758049610, trigger=click)
2026-04-20T10:47:07.827281Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping captur...
|
iTerm2
|
screenpipe"
|
NULL
|
54532
|
|
54533
|
shell
DOCKER
Close Tab
DEV (docker)
Close Tab
APP shell
DOCKER
Close Tab
DEV (docker)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
login
Close Tab
⌥⌘1
login
iTerm2ShellEditViewSessionScriptsProfilesWindowHelp100% (47 8 Mon 20 Apr 12:03:08screenpipe"DOCKER2026-04-20111:57:24.78897222026-04-20T11:57:36.481689Z2026-04-20T11:57:37.756625Z2026-04-20T11:57:37.83439022026-04-20T11:57:49.238635Z2026-04-20T11:57:52.246590Z2026-04-20T11:57:55.24183222026-04-20T11:57:58.301374Z2026-04-20T11:58:01.337222Z2026-04-20T11:58:26.816413Z2026-04-20111:58:29.85645222026-04-20T11:58:30.666522Z2026-04-20T11:58:30.701317Z2026-04-20T11:58:35.98922522026-04-20T11:58:38.498940Z2026-04-20111:58:40.79499322026-04-20T11:58:42.377239Z2026-04-20T11:58:59.532131Z2026-04-20T11:59:39.744543Z2026-04-20T11:59:58.627407Z2026-04-20112:01:34.8824792ROM\nframes \nWHERE\n418542s2026-04-20T12:01:34.882676Z2026-04-20T12:01:37.375070Z2026-04-20T12:01:45.894068Z2026-04-20T12:01:50.133673Z2026-04-20T12:01:50.211171Z2026-04-20T12:01:55.273763Z2026-04-20T12:02:00.095574Z2026-04-20112:02:15.11427722026-04-20T12:02:15.166674Z2026-04-20T12:02:16.372669Z2026-04-20T12:02:16.45249622026-04-20T12:02:17.931496Z2026-04-20T12:02:17.993032Z2026-04-20T12:02:20.527678Z2026-04-20T12:02:20.583726Z2026-04-20T12:02:24.944153Z2026-04-20T12:02:26.245682Z2026-04-20112:02:27.227059Z2026-04-20T12:02:27.321541Z2026-04-20T12:02:59.757184Z2026-04-20T12:02:59.854055ZDEV (docker)APP (-zsh)*3-zsh₴4screenpipe"*5INFOscreenpipe_engine::event_driven_capture:contentdedup:skipping capture for monitor 2Chash=-3030885276270352434,trigger=visual_change)INFOscreenpipe_engine::event_driven_capture:contentdedup:skippingcapture for monitor 2(hash=-3030885276270352434,INFOscreenpipe_engine::event_driven_capture: contentdedup:skippingcapture for monitor 1screenpipe_engine::event_dedup:skipping capture for monitor 2Chash=-3030885276270352434,trigger=click)trigger=click)INFOdriven_capture:content(hash=-3030885276270352434,trigger=click)INFOscreenpipe_engine::event_driven_capture:contentdedup:skipping capture for monitor 2Chash=-3030885276270352434,INFOscreenpipe_engine::event_driven_capture:contentdedup:skippingcapture for monitor 2 (hash=-3030885276270352434,trigger=visual_change)trigger=visual_change)INFOscreenpipe_engine::event_driven_capture:contentdedup:skippingcapture for monitor 2 (hash=-3030885276270352434,trigger=visual_change)INFOINFOscreenpipe_engine::event_driven_capture:contentdedup:skipping capture for monitor 2(hash=-3030885276270352434,trigger=visual_change)screenpipe_engine::event_driven_capture:contentdedup:skipping capture for monitor 2(hash=-3030885276270352434,INFOscreenpipe_engine::event_driven_capture: content dedup:skippingcapture for monitor 2skipping capture for monitor 2Chash=-3030885276270352434,trigger=visual_change)trigger=visual_change)INFOscreenpipe_engine::event_driven_capture: contentdedup:(hash=-3030885276270352434,trigger=visual_change)INFOscreenpipe_engine::event_driven_capture: contentdedup:skippingcapture for monitor 2(hash=-3030885276270352434,INFOscreenpipe_engine::event_driven_capture:contentdedup: skippingcapture for monitor 1screenpipe_engine::event_driven_capture:dedup:capture for monitor 2Chash=-3030885276270352434,trigger=click)trigger=click)INFOcontentskippingChash=-3030885276270352434,trigger=visual_change)INFOscreenpipe_engine::event_driven_capture:content dedup:skippingcapture for monitor 1(hash=-3030885276270352434,INFOscreenpipe_engine::event_driven_capture: contentdedup:skipping capture for monitor 2INFO(hash=-3030885276270352434,trigger=click)trigger=click)screenpipe_engine::event_driven_capture: content dedup:skipping capture for monitor 2(hash=-3030885276270352434,trigger=visual_change)INFOscreenpipe_engine:: event_driven_capture: contentdedup:skipping capture for monitor 2(hash=-6813386454352183033, trigger=visual_change)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6813386454352183033, trigger=visual_change)INFOscreenpipe_engine::event_driven_capture:content dedup: skippingcapture for monitor 2 (hash=3151396900374529455, trigger=visual_change)WARNsqlx::query:summary="SELECT id, snapshot_path,device_name,db.statement="\n\nSELECT\nid, Insnapshot_path, \ndevice_name, intimestamp \nFsnapshot_path IS NOT NULL\nAND timestamp < ?1\nORDER BYln device_name, \ntimestamp ASC\nLIMIT\n5000\n" rows_affected=0 rows_returned=87 elapsed=1.259INFOscreenpipe_engine::snapshot_compaction:snapshot compaction: found 87eligible framesINFOscreenpipe_engine::snapshot_compaction: snapshotcompaction: 35 frames, 10.6MB → 2.3MB (4.6x), 35 JPEGSdeletedINFOscreenpipe_engine::snapshot_compaction: snapshotcompaction: 50 frames,8.1MB→ 4.1MB (2.0x),50 JPEGSdeletedINFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3134476686614698911, trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3134476686614698911,trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup:skipping capture for monitor 2 (hash=467660169672458461, trigger=visual_change)INFOscreenpipe_engine::event_driven_capture: content dedup:skipping capture for monitor 2 (hash=467660169672458461, trigger=click)INFOscreenpipe_engine::event_driven_capture: contentdedup:skipping capture for monitor 2 (hash=467660169672458461, trigger=click)INFOscreenpipe_engine::event_driven_capture: contentdedup:skipping capture for monitor 1 (hash=467660169672458461,trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skippingcapture for monitor 2 (hash=467660169672458461,trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=467660169672458461,trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup:skipping capture for monitor 1 (hash=467660169672458461,trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup:skipping capture for monitor 2 (hash=467660169672458461,trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2(hash=467660169672458461,trigger=click)INFOscreenpipe_engine::event_driven_capture: contentdedup:skipping capture for monitor 1 (hash=467660169672458461,trigger=click)INFOscreenpipe_engine::event_driven_capture: contentdedup: skipping capture for monitor 1 (hash=-218291911025499455,trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skippingcapture for monitor 1 (hash=-218291911025499455,trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-218291911025499455, trigger=click)INFOscreenpipe_engine::event_driven_capture:content dedup:skipping capture for monitor 2 (hash=-218291911025499455,trigger=click)INFOscreenpipe_engine::event_driven_capture: content dedup:skipping capture for monitor 2 (hash=-8912532918897684009, trigger=click)INFOscreenpipe_engine::event_driven_capture: contentdedup: skipping capture for monitor 1 (hash=-8912532918897684009, trigger=click)...
|
iTerm2
|
login
|
NULL
|
54533
|
|
54534
|
shell
DOCKER
Close Tab
DEV (docker)
Close Tab
APP shell
DOCKER
Close Tab
DEV (docker)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
login
Close Tab
⌥⌘1
login
rirero,VIewhistonbookmarksPronlles10019WindowHelp• - app.dev.jiminny.com/ondemand?page=100% C/7 Mon 20 Apr 12:03:08( JY-20553 | Improve crm-sync dela1 (SRD-6793) Les Mills activity type:@ JY-20698 handle failed field syncJY-20692 change confirmation par(JY-20543] AJ Reports > Tracking10(JY-18909 /Part2) Automated rerAsk Jiminny Reports by nikolay-yar*) New Tab$u Product Growth Platform I Useroildu Userpilot | Logged-activity• fix(securitv): composer dependen.Pipelines - jiminny/appFeed - jiminny - Sentr)fix(security): composer dependen8 Jiminny7 Jiminnv8 Jiminny— New Tab...
|
iTerm2
|
|
NULL
|
54534
|
|
54535
|
Last login: Mon Apr 20 10:16:57 on ttys010
DOCKER
Last login: Mon Apr 20 10:16:57 on ttys010
DOCKER
Close Tab
DEV (docker)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
iTerm2
|
-zsh
|
NULL
|
54535
|
|
54536
|
Last login: Mon Apr 20 10:16:57 on ttys010
DOCKER
Last login: Mon Apr 20 10:16:57 on ttys010
DOCKER
Close Tab
DEV (docker)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
iTerm2
|
-zsh
|
NULL
|
54536
|
|
54537
|
Last login: Mon Apr 20 10:16:57 on ttys010
Poetry Last login: Mon Apr 20 10:16:57 on ttys010
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $
DOCKER
Close Tab
DEV (docker)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
iTerm2
|
-zsh
|
NULL
|
54537
|
|
54538
|
Last login: Mon Apr 20 10:16:57 on ttys010
Poetry Last login: Mon Apr 20 10:16:57 on ttys010
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $
DOCKER
Close Tab
DEV (docker)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
iTerm2
|
-zsh
|
NULL
|
54538
|
|
54539
|
Last login: Mon Apr 20 10:16:57 on ttys010
Poetry Last login: Mon Apr 20 10:16:57 on ttys010
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/
DOCKER
Close Tab
DEV (docker)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
iTerm2
|
-zsh
|
NULL
|
54539
|
|
54540
|
Last login: Mon Apr 20 10:16:57 on ttys010
Poetry Last login: Mon Apr 20 10:16:57 on ttys010
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe
8.8G /Users/lukas/.screenpipe
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/*
4.0K /Users/lukas/.screenpipe/config.json
4.9G /Users/lukas/.screenpipe/data
3.9G /Users/lukas/.screenpipe/db.sqlite
64K /Users/lukas/.screenpipe/db.sqlite-shm
15M /Users/lukas/.screenpipe/db.sqlite-wal
36K /Users/lukas/.screenpipe/pipes
132K /Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log
96K /Users/lukas/.screenpipe/screenpipe.2026-04-11.0.log
72K /Users/lukas/.screenpipe/screenpipe.2026-04-12.0.log
72K /Users/lukas/.screenpipe/screenpipe.2026-04-13.0.log
160K /Users/lukas/.screenpipe/screenpipe.2026-04-14.0.log
172K /Users/lukas/.screenpipe/screenpipe.2026-04-15.0.log
196K /Users/lukas/.screenpipe/screenpipe.2026-04-16.0.log
204K /Users/lukas/.screenpipe/screenpipe.2026-04-17.0.log
64K /Users/lukas/.screenpipe/screenpipe.2026-04-18.0.log
196K /Users/lukas/.screenpipe/screenpipe.2026-04-20.0.log
16K /Users/lukas/.screenpipe/screenpipe_sync.sh
24K /Users/lukas/.screenpipe/sync.log
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $
DOCKER
Close Tab
DEV (docker)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
iTerm2
|
-zsh
|
NULL
|
54540
|
|
54541
|
Last login: Mon Apr 20 10:16:57 on ttys010
Poetry Last login: Mon Apr 20 10:16:57 on ttys010
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe
8.8G /Users/lukas/.screenpipe
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/*
4.0K /Users/lukas/.screenpipe/config.json
4.9G /Users/lukas/.screenpipe/data
3.9G /Users/lukas/.screenpipe/db.sqlite
64K /Users/lukas/.screenpipe/db.sqlite-shm
15M /Users/lukas/.screenpipe/db.sqlite-wal
36K /Users/lukas/.screenpipe/pipes
132K /Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log
96K /Users/lukas/.screenpipe/screenpipe.2026-04-11.0.log
72K /Users/lukas/.screenpipe/screenpipe.2026-04-12.0.log
72K /Users/lukas/.screenpipe/screenpipe.2026-04-13.0.log
160K /Users/lukas/.screenpipe/screenpipe.2026-04-14.0.log
172K /Users/lukas/.screenpipe/screenpipe.2026-04-15.0.log
196K /Users/lukas/.screenpipe/screenpipe.2026-04-16.0.log
204K /Users/lukas/.screenpipe/screenpipe.2026-04-17.0.log
64K /Users/lukas/.screenpipe/screenpipe.2026-04-18.0.log
196K /Users/lukas/.screenpipe/screenpipe.2026-04-20.0.log
16K /Users/lukas/.screenpipe/screenpipe_sync.sh
24K /Users/lukas/.screenpipe/sync.log
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $
DOCKER
Close Tab
DEV (docker)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
iTerm2
|
-zsh
|
NULL
|
54541
|
|
54545
|
Last login: Mon Apr 20 10:16:57 on ttys010
Poetry Last login: Mon Apr 20 10:16:57 on ttys010
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe
8.8G /Users/lukas/.screenpipe
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/*
4.0K /Users/lukas/.screenpipe/config.json
4.9G /Users/lukas/.screenpipe/data
3.9G /Users/lukas/.screenpipe/db.sqlite
64K /Users/lukas/.screenpipe/db.sqlite-shm
15M /Users/lukas/.screenpipe/db.sqlite-wal
36K /Users/lukas/.screenpipe/pipes
132K /Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log
96K /Users/lukas/.screenpipe/screenpipe.2026-04-11.0.log
72K /Users/lukas/.screenpipe/screenpipe.2026-04-12.0.log
72K /Users/lukas/.screenpipe/screenpipe.2026-04-13.0.log
160K /Users/lukas/.screenpipe/screenpipe.2026-04-14.0.log
172K /Users/lukas/.screenpipe/screenpipe.2026-04-15.0.log
196K /Users/lukas/.screenpipe/screenpipe.2026-04-16.0.log
204K /Users/lukas/.screenpipe/screenpipe.2026-04-17.0.log
64K /Users/lukas/.screenpipe/screenpipe.2026-04-18.0.log
196K /Users/lukas/.screenpipe/screenpipe.2026-04-20.0.log
16K /Users/lukas/.screenpipe/screenpipe_sync.sh
24K /Users/lukas/.screenpipe/sync.log
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $
DOCKER
Close Tab
DEV (docker)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
iTerm2
|
-zsh
|
NULL
|
54545
|
|
54546
|
Last login: Mon Apr 20 10:16:57 on ttys010
Poetry Last login: Mon Apr 20 10:16:57 on ttys010
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe
8.8G /Users/lukas/.screenpipe
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/*
4.0K /Users/lukas/.screenpipe/config.json
4.9G /Users/lukas/.screenpipe/data
3.9G /Users/lukas/.screenpipe/db.sqlite
64K /Users/lukas/.screenpipe/db.sqlite-shm
15M /Users/lukas/.screenpipe/db.sqlite-wal
36K /Users/lukas/.screenpipe/pipes
132K /Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log
96K /Users/lukas/.screenpipe/screenpipe.2026-04-11.0.log
72K /Users/lukas/.screenpipe/screenpipe.2026-04-12.0.log
72K /Users/lukas/.screenpipe/screenpipe.2026-04-13.0.log
160K /Users/lukas/.screenpipe/screenpipe.2026-04-14.0.log
172K /Users/lukas/.screenpipe/screenpipe.2026-04-15.0.log
196K /Users/lukas/.screenpipe/screenpipe.2026-04-16.0.log
204K /Users/lukas/.screenpipe/screenpipe.2026-04-17.0.log
64K /Users/lukas/.screenpipe/screenpipe.2026-04-18.0.log
196K /Users/lukas/.screenpipe/screenpipe.2026-04-20.0.log
16K /Users/lukas/.screenpipe/screenpipe_sync.sh
24K /Users/lukas/.screenpipe/sync.log
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $
DOCKER
Close Tab
DEV (docker)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
iTerm2
|
-zsh
|
NULL
|
54546
|
|
54561
|
Last login: Mon Apr 20 10:16:57 on ttys010
Poetry Last login: Mon Apr 20 10:16:57 on ttys010
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe
8.8G /Users/lukas/.screenpipe
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/*
4.0K /Users/lukas/.screenpipe/config.json
4.9G /Users/lukas/.screenpipe/data
3.9G /Users/lukas/.screenpipe/db.sqlite
64K /Users/lukas/.screenpipe/db.sqlite-shm
15M /Users/lukas/.screenpipe/db.sqlite-wal
36K /Users/lukas/.screenpipe/pipes
132K /Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log
96K /Users/lukas/.screenpipe/screenpipe.2026-04-11.0.log
72K /Users/lukas/.screenpipe/screenpipe.2026-04-12.0.log
72K /Users/lukas/.screenpipe/screenpipe.2026-04-13.0.log
160K /Users/lukas/.screenpipe/screenpipe.2026-04-14.0.log
172K /Users/lukas/.screenpipe/screenpipe.2026-04-15.0.log
196K /Users/lukas/.screenpipe/screenpipe.2026-04-16.0.log
204K /Users/lukas/.screenpipe/screenpipe.2026-04-17.0.log
64K /Users/lukas/.screenpipe/screenpipe.2026-04-18.0.log
196K /Users/lukas/.screenpipe/screenpipe.2026-04-20.0.log
16K /Users/lukas/.screenpipe/screenpipe_sync.sh
24K /Users/lukas/.screenpipe/sync.log
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $
DOCKER
Close Tab
DEV (docker)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
iTerm2
|
-zsh
|
NULL
|
54561
|
|
54562
|
Last login: Mon Apr 20 10:16:57 on ttys010
Poetry Last login: Mon Apr 20 10:16:57 on ttys010
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe
8.8G /Users/lukas/.screenpipe
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/*
4.0K /Users/lukas/.screenpipe/config.json
4.9G /Users/lukas/.screenpipe/data
3.9G /Users/lukas/.screenpipe/db.sqlite
64K /Users/lukas/.screenpipe/db.sqlite-shm
15M /Users/lukas/.screenpipe/db.sqlite-wal
36K /Users/lukas/.screenpipe/pipes
132K /Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log
96K /Users/lukas/.screenpipe/screenpipe.2026-04-11.0.log
72K /Users/lukas/.screenpipe/screenpipe.2026-04-12.0.log
72K /Users/lukas/.screenpipe/screenpipe.2026-04-13.0.log
160K /Users/lukas/.screenpipe/screenpipe.2026-04-14.0.log
172K /Users/lukas/.screenpipe/screenpipe.2026-04-15.0.log
196K /Users/lukas/.screenpipe/screenpipe.2026-04-16.0.log
204K /Users/lukas/.screenpipe/screenpipe.2026-04-17.0.log
64K /Users/lukas/.screenpipe/screenpipe.2026-04-18.0.log
196K /Users/lukas/.screenpipe/screenpipe.2026-04-20.0.log
16K /Users/lukas/.screenpipe/screenpipe_sync.sh
24K /Users/lukas/.screenpipe/sync.log
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $
DOCKER
Close Tab
DEV (docker)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
iTerm2
|
-zsh
|
NULL
|
54562
|
|
54576
|
ActivityJiminny ...Eh External connections* Starre ActivityJiminny ...Eh External connections* Starred• uminnv-X-integrati..platform-inner-team?channels# ai-chapter# alerts# backendcontusion-clinid* curiositv labl# engineeringi frontend$ general# infra-changes#jiminny-bg# platform-ticketsa product launches# randoma releases# sofia-office# supportiithank-vous# the people of iimi.2 Direct meccagpc/e. Aneliva Angelova0 Galva Dimitrova2 Stefka StoyanovaStovan Tomov3 Aneliya Angelova, ... Nikolav Nikolov5 Stovan TanevVasil VasilevO Nikolav Ivanov-Vec#:: AonsJira Cloud• Toastplattorm-inner-teamMessagesChannel OverviewP Refinementsr Files& Pins• BookmarksRetro Action ItemsStatus: BacklogI Tune: StoryAssignee. Unassiened1 PrioFriday, April 17thSync threadAl SummariseAdded by Jira CloudJY-20613 Allow owner's role to be selected when setting up a trialStatuc. Rockiod# Type: StoryDriority MediumAssignee. UnassignedSync thread*Al SummariseAdded by Jira CloudJy-20500 Batch initial sync for SalestorceStatus: BacklogW Type: StoryAssignee: UnassignedT Priority: MediumSync thread*t Al SummariseAdded by lira GloudJY-20501 Batch initial svnc for HubsnotStatus: BacklogLType: Story)Assignee: Unassiened1 Prioritv: MediumSync thread*+Al SummariseAdded by lim GloudLukas Kovallik 10:08 AMнешо ми изключи аudiо изцяло, края не сьм чувал нишо, какво ла поглелна аз от тези18u1 2 replies Last renlv todav at 10:25 AMNikolay Yankov 10:56 AMЛукас, това тества ли го преди merge?[URL_WITH_CREDENTIALS] X4 HS_local [jiminny@localhost]& console [PKol)console leuyPlavarounddojiminny vт 09 412 ×2 ×4^ons Where 1d = 59ªnere team 1de1es where 1d = 1982: # 1981filters WHERE activity search 1d = 1982:ts where id = 68;t_results where id = 275;ts order by id desc;T_results order by zo desces where user id = 143.ompus,= 1439:up_id = 1439:100% 52Mon ZU AO 12-:00.10RequestGenerateAskJiminnyReportJobTest ~CascadeGroup Photo UrL RevRetactor UserPilot TraExtend Automated Rer+0 ..Extend tests to cover itLet me read the current test file and the service to understand what needs to be covered.Now l'll add tests for the frequency-based date range calculation. I need to use CarbonImmutable:: setTestNow to fix time forError while editina AskaliminnvReportAct..vitvServiceTest.onol• AskJimirNow I need to check whether Criteria exposes a getParams() method before writing assertions against it:Exolored Criteria.ohn and seCriteria has getStartDate() and getEndDate() returning CarbonImmutable, not raw params. l'll assert against those• AskJir7 now tocts added.•frequencvDateDateRandeForFrequencv — data-nrovider driven. covers alli4 frequencies (daily, weekly, monthly, quarterly) with a fixed now of 2025-06-16 12:00:00 . Asserts the exact startdare en dare stings towing into criterla via cerstarvatel gecchovately•testGetActivitvidsWithNullFrequencvDoesNotIniectDates— null frequency leaves both dates as null in Criterialexisting denaviour untoucned).•testGetActivitvidsWithUnknownFrequencvDoesNotIniectDates— one off no match in the match exoression) alsoproduces no date injection•testGetActivitvldsFrequencvDateRange0verridesSavedSearchDateFilter- saved-search date tilters are strippedand tnen tne trecuency-derivea range takes over, so stale saved-search dates can never oleed tnrougnCarbonImmutable::setTestNow is alwavs resetina finally block to avoid state leakina between tests.lavbooks p 1..n<->1: on a.plavbook id = p.id where a.team id = 1:=28:team id = 11d = 179:ries where 1d = 159151e145:ere usen 1d = 145:le erm confiauration id = 39 and tvne = 'conference!LL ORDER bv id desc:e id = 422003; # 00U0400000pB6fpMACia type, ar.status, a.typeid = ar.report.id= 3143:ons where id = 500:le = 'Integration Account': # 1695WHERE sociable id = 1695* Reject allAccent allAsk anvthina (*4L)÷ es codolC Adantivo101.62|...
|
iTerm2
|
NULL
|
NULL
|
54576
|
|
54582
|
MusicFileAbout MusicSettings...ServicesApp!Hide Mu MusicFileAbout MusicSettings...ServicesApp!Hide MusicG Hide Others((-)FSlaRyy AllLibreQuit MysicRecently AddedA Artists•Albumsj SongsStore* iTunes StorePlaylists888 All PlaylistsEf Internet SongsEditSongViewControlsAccountWindowx;Help100% <47Mon 20 Apr 12:06:25start machine *••0:04*-0:0688,Recently AddedQ* HT8 H2025*8 Qstart machine #ChatLLM Teams TTS #Call to Robinson Crusoe Nov 2220242024output 2ffc1839a-520f-4619-8c06-3fc4966223646e5cbce9-0b1e-4556-ae01-10b2e491ee17105f8bc8-d065-4fdd-abf6-27d8afad9513ed9e817e-f202-4d5f-b8b3-92a19fde8535...
|
iTerm2
|
NULL
|
NULL
|
54582
|
|
54587
|
Last login: Mon Apr 20 10:16:57 on ttys010
Poetry Last login: Mon Apr 20 10:16:57 on ttys010
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe
8.8G /Users/lukas/.screenpipe
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/*
4.0K /Users/lukas/.screenpipe/config.json
4.9G /Users/lukas/.screenpipe/data
3.9G /Users/lukas/.screenpipe/db.sqlite
64K /Users/lukas/.screenpipe/db.sqlite-shm
15M /Users/lukas/.screenpipe/db.sqlite-wal
36K /Users/lukas/.screenpipe/pipes
132K /Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log
96K /Users/lukas/.screenpipe/screenpipe.2026-04-11.0.log
72K /Users/lukas/.screenpipe/screenpipe.2026-04-12.0.log
72K /Users/lukas/.screenpipe/screenpipe.2026-04-13.0.log
160K /Users/lukas/.screenpipe/screenpipe.2026-04-14.0.log
172K /Users/lukas/.screenpipe/screenpipe.2026-04-15.0.log
196K /Users/lukas/.screenpipe/screenpipe.2026-04-16.0.log
204K /Users/lukas/.screenpipe/screenpipe.2026-04-17.0.log
64K /Users/lukas/.screenpipe/screenpipe.2026-04-18.0.log
196K /Users/lukas/.screenpipe/screenpipe.2026-04-20.0.log
16K /Users/lukas/.screenpipe/screenpipe_sync.sh
24K /Users/lukas/.screenpipe/sync.log
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $
DOCKER
Close Tab
DEV (docker)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
iTerm2
|
-zsh
|
NULL
|
54587
|
|
54588
|
Last login: Mon Apr 20 10:16:57 on ttys010
Poetry Last login: Mon Apr 20 10:16:57 on ttys010
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe
8.8G /Users/lukas/.screenpipe
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/*
4.0K /Users/lukas/.screenpipe/config.json
4.9G /Users/lukas/.screenpipe/data
3.9G /Users/lukas/.screenpipe/db.sqlite
64K /Users/lukas/.screenpipe/db.sqlite-shm
15M /Users/lukas/.screenpipe/db.sqlite-wal
36K /Users/lukas/.screenpipe/pipes
132K /Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log
96K /Users/lukas/.screenpipe/screenpipe.2026-04-11.0.log
72K /Users/lukas/.screenpipe/screenpipe.2026-04-12.0.log
72K /Users/lukas/.screenpipe/screenpipe.2026-04-13.0.log
160K /Users/lukas/.screenpipe/screenpipe.2026-04-14.0.log
172K /Users/lukas/.screenpipe/screenpipe.2026-04-15.0.log
196K /Users/lukas/.screenpipe/screenpipe.2026-04-16.0.log
204K /Users/lukas/.screenpipe/screenpipe.2026-04-17.0.log
64K /Users/lukas/.screenpipe/screenpipe.2026-04-18.0.log
196K /Users/lukas/.screenpipe/screenpipe.2026-04-20.0.log
16K /Users/lukas/.screenpipe/screenpipe_sync.sh
24K /Users/lukas/.screenpipe/sync.log
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $
DOCKER
Close Tab
DEV (docker)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
iTerm2
|
-zsh
|
NULL
|
54588
|
|
54589
|
Last login: Mon Apr 20 10:16:57 on ttys010
Poetry Last login: Mon Apr 20 10:16:57 on ttys010
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe
8.8G /Users/lukas/.screenpipe
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/*
4.0K /Users/lukas/.screenpipe/config.json
4.9G /Users/lukas/.screenpipe/data
3.9G /Users/lukas/.screenpipe/db.sqlite
64K /Users/lukas/.screenpipe/db.sqlite-shm
15M /Users/lukas/.screenpipe/db.sqlite-wal
36K /Users/lukas/.screenpipe/pipes
132K /Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log
96K /Users/lukas/.screenpipe/screenpipe.2026-04-11.0.log
72K /Users/lukas/.screenpipe/screenpipe.2026-04-12.0.log
72K /Users/lukas/.screenpipe/screenpipe.2026-04-13.0.log
160K /Users/lukas/.screenpipe/screenpipe.2026-04-14.0.log
172K /Users/lukas/.screenpipe/screenpipe.2026-04-15.0.log
196K /Users/lukas/.screenpipe/screenpipe.2026-04-16.0.log
204K /Users/lukas/.screenpipe/screenpipe.2026-04-17.0.log
64K /Users/lukas/.screenpipe/screenpipe.2026-04-18.0.log
196K /Users/lukas/.screenpipe/screenpipe.2026-04-20.0.log
16K /Users/lukas/.screenpipe/screenpipe_sync.sh
24K /Users/lukas/.screenpipe/sync.log
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $
DOCKER
Close Tab
DEV (docker)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
iTerm2
|
-zsh
|
NULL
|
54589
|
|
54590
|
Last login: Mon Apr 20 10:16:57 on ttys010
Poetry Last login: Mon Apr 20 10:16:57 on ttys010
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe
8.8G /Users/lukas/.screenpipe
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/*
4.0K /Users/lukas/.screenpipe/config.json
4.9G /Users/lukas/.screenpipe/data
3.9G /Users/lukas/.screenpipe/db.sqlite
64K /Users/lukas/.screenpipe/db.sqlite-shm
15M /Users/lukas/.screenpipe/db.sqlite-wal
36K /Users/lukas/.screenpipe/pipes
132K /Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log
96K /Users/lukas/.screenpipe/screenpipe.2026-04-11.0.log
72K /Users/lukas/.screenpipe/screenpipe.2026-04-12.0.log
72K /Users/lukas/.screenpipe/screenpipe.2026-04-13.0.log
160K /Users/lukas/.screenpipe/screenpipe.2026-04-14.0.log
172K /Users/lukas/.screenpipe/screenpipe.2026-04-15.0.log
196K /Users/lukas/.screenpipe/screenpipe.2026-04-16.0.log
204K /Users/lukas/.screenpipe/screenpipe.2026-04-17.0.log
64K /Users/lukas/.screenpipe/screenpipe.2026-04-18.0.log
196K /Users/lukas/.screenpipe/screenpipe.2026-04-20.0.log
16K /Users/lukas/.screenpipe/screenpipe_sync.sh
24K /Users/lukas/.screenpipe/sync.log
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $
DOCKER
Close Tab
DEV (docker)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
iTerm2
|
-zsh
|
NULL
|
54590
|
|
54596
|
Last login: Mon Apr 20 10:16:57 on ttys010
Poetry Last login: Mon Apr 20 10:16:57 on ttys010
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe
8.8G /Users/lukas/.screenpipe
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/*
4.0K /Users/lukas/.screenpipe/config.json
4.9G /Users/lukas/.screenpipe/data
3.9G /Users/lukas/.screenpipe/db.sqlite
64K /Users/lukas/.screenpipe/db.sqlite-shm
15M /Users/lukas/.screenpipe/db.sqlite-wal
36K /Users/lukas/.screenpipe/pipes
132K /Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log
96K /Users/lukas/.screenpipe/screenpipe.2026-04-11.0.log
72K /Users/lukas/.screenpipe/screenpipe.2026-04-12.0.log
72K /Users/lukas/.screenpipe/screenpipe.2026-04-13.0.log
160K /Users/lukas/.screenpipe/screenpipe.2026-04-14.0.log
172K /Users/lukas/.screenpipe/screenpipe.2026-04-15.0.log
196K /Users/lukas/.screenpipe/screenpipe.2026-04-16.0.log
204K /Users/lukas/.screenpipe/screenpipe.2026-04-17.0.log
64K /Users/lukas/.screenpipe/screenpipe.2026-04-18.0.log
196K /Users/lukas/.screenpipe/screenpipe.2026-04-20.0.log
16K /Users/lukas/.screenpipe/screenpipe_sync.sh
24K /Users/lukas/.screenpipe/sync.log
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $
DOCKER
Close Tab
DEV (docker)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
iTerm2
|
-zsh
|
NULL
|
54596
|
|
54599
|
Last login: Mon Apr 20 10:16:57 on ttys010
Poetry Last login: Mon Apr 20 10:16:57 on ttys010
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe
8.8G /Users/lukas/.screenpipe
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/*
4.0K /Users/lukas/.screenpipe/config.json
4.9G /Users/lukas/.screenpipe/data
3.9G /Users/lukas/.screenpipe/db.sqlite
64K /Users/lukas/.screenpipe/db.sqlite-shm
15M /Users/lukas/.screenpipe/db.sqlite-wal
36K /Users/lukas/.screenpipe/pipes
132K /Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log
96K /Users/lukas/.screenpipe/screenpipe.2026-04-11.0.log
72K /Users/lukas/.screenpipe/screenpipe.2026-04-12.0.log
72K /Users/lukas/.screenpipe/screenpipe.2026-04-13.0.log
160K /Users/lukas/.screenpipe/screenpipe.2026-04-14.0.log
172K /Users/lukas/.screenpipe/screenpipe.2026-04-15.0.log
196K /Users/lukas/.screenpipe/screenpipe.2026-04-16.0.log
204K /Users/lukas/.screenpipe/screenpipe.2026-04-17.0.log
64K /Users/lukas/.screenpipe/screenpipe.2026-04-18.0.log
196K /Users/lukas/.screenpipe/screenpipe.2026-04-20.0.log
16K /Users/lukas/.screenpipe/screenpipe_sync.sh
24K /Users/lukas/.screenpipe/sync.log
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $
DOCKER
Close Tab
DEV (docker)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
iTerm2
|
-zsh
|
NULL
|
54599
|
|
54606
|
Last login: Mon Apr 20 10:16:57 on ttys010
Poetry Last login: Mon Apr 20 10:16:57 on ttys010
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe
8.8G /Users/lukas/.screenpipe
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/*
4.0K /Users/lukas/.screenpipe/config.json
4.9G /Users/lukas/.screenpipe/data
3.9G /Users/lukas/.screenpipe/db.sqlite
64K /Users/lukas/.screenpipe/db.sqlite-shm
15M /Users/lukas/.screenpipe/db.sqlite-wal
36K /Users/lukas/.screenpipe/pipes
132K /Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log
96K /Users/lukas/.screenpipe/screenpipe.2026-04-11.0.log
72K /Users/lukas/.screenpipe/screenpipe.2026-04-12.0.log
72K /Users/lukas/.screenpipe/screenpipe.2026-04-13.0.log
160K /Users/lukas/.screenpipe/screenpipe.2026-04-14.0.log
172K /Users/lukas/.screenpipe/screenpipe.2026-04-15.0.log
196K /Users/lukas/.screenpipe/screenpipe.2026-04-16.0.log
204K /Users/lukas/.screenpipe/screenpipe.2026-04-17.0.log
64K /Users/lukas/.screenpipe/screenpipe.2026-04-18.0.log
196K /Users/lukas/.screenpipe/screenpipe.2026-04-20.0.log
16K /Users/lukas/.screenpipe/screenpipe_sync.sh
24K /Users/lukas/.screenpipe/sync.log
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $
DOCKER
Close Tab
DEV (docker)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
iTerm2
|
-zsh
|
NULL
|
54606
|
|
54607
|
Last login: Mon Apr 20 10:16:57 on ttys010
Poetry Last login: Mon Apr 20 10:16:57 on ttys010
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe
8.8G /Users/lukas/.screenpipe
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/*
4.0K /Users/lukas/.screenpipe/config.json
4.9G /Users/lukas/.screenpipe/data
3.9G /Users/lukas/.screenpipe/db.sqlite
64K /Users/lukas/.screenpipe/db.sqlite-shm
15M /Users/lukas/.screenpipe/db.sqlite-wal
36K /Users/lukas/.screenpipe/pipes
132K /Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log
96K /Users/lukas/.screenpipe/screenpipe.2026-04-11.0.log
72K /Users/lukas/.screenpipe/screenpipe.2026-04-12.0.log
72K /Users/lukas/.screenpipe/screenpipe.2026-04-13.0.log
160K /Users/lukas/.screenpipe/screenpipe.2026-04-14.0.log
172K /Users/lukas/.screenpipe/screenpipe.2026-04-15.0.log
196K /Users/lukas/.screenpipe/screenpipe.2026-04-16.0.log
204K /Users/lukas/.screenpipe/screenpipe.2026-04-17.0.log
64K /Users/lukas/.screenpipe/screenpipe.2026-04-18.0.log
196K /Users/lukas/.screenpipe/screenpipe.2026-04-20.0.log
16K /Users/lukas/.screenpipe/screenpipe_sync.sh
24K /Users/lukas/.screenpipe/sync.log
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $
DOCKER
Close Tab
DEV (docker)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
iTerm2
|
-zsh
|
NULL
|
54607
|
|
54632
|
Last login: Mon Apr 20 10:16:57 on ttys010
Poetry Last login: Mon Apr 20 10:16:57 on ttys010
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe
8.8G /Users/lukas/.screenpipe
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ du -sh ~/.screenpipe/*
4.0K /Users/lukas/.screenpipe/config.json
4.9G /Users/lukas/.screenpipe/data
3.9G /Users/lukas/.screenpipe/db.sqlite
64K /Users/lukas/.screenpipe/db.sqlite-shm
15M /Users/lukas/.screenpipe/db.sqlite-wal
36K /Users/lukas/.screenpipe/pipes
132K /Users/lukas/.screenpipe/screenpipe.2026-04-09.0.log
96K /Users/lukas/.screenpipe/screenpipe.2026-04-11.0.log
72K /Users/lukas/.screenpipe/screenpipe.2026-04-12.0.log
72K /Users/lukas/.screenpipe/screenpipe.2026-04-13.0.log
160K /Users/lukas/.screenpipe/screenpipe.2026-04-14.0.log
172K /Users/lukas/.screenpipe/screenpipe.2026-04-15.0.log
196K /Users/lukas/.screenpipe/screenpipe.2026-04-16.0.log
204K /Users/lukas/.screenpipe/screenpipe.2026-04-17.0.log
64K /Users/lukas/.screenpipe/screenpipe.2026-04-18.0.log
196K /Users/lukas/.screenpipe/screenpipe.2026-04-20.0.log
16K /Users/lukas/.screenpipe/screenpipe_sync.sh
24K /Users/lukas/.screenpipe/sync.log
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $
DOCKER
Close Tab
DEV (docker)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
-zsh
Close Tab
⌥⌘1
-zsh...
|
iTerm2
|
-zsh
|
NULL
|
54632
|