NAME

App::karr::ActivityLog - Activity log writer for karr board operations

VERSION

version 0.201

SYNOPSIS

use App::karr::ActivityLog;
use App::karr::Git;

my $git = App::karr::Git->new(dir => '.');
my $log = App::karr::ActivityLog->new(git => $git);

$log->log_entry(
    agent   => 'agent-fox',
    action  => 'pick',
    task_id => 5,
    detail  => 'in-progress',
);

DESCRIPTION

Writes append-style JSON log entries to refs/karr/log/<identity> refs. Each entry receives an automatic timestamp if not provided.

The identity is derived from the Git user email, sanitized for use in ref names.

METHODS

log_entry

$log->log_entry(
    agent   => 'agent-fox',
    action  => 'pick',
    task_id => 5,
    detail  => 'in-progress',
    ts      => '2026-05-15T10:00:00Z',  # optional, auto-generated
);

Writes a JSON log line to the per-identity ref. The ref path is refs/karr/log/<sanitized_email>.

Returns the result of "write_ref" in Git.

SUPPORT

Issues

Please report bugs and feature requests on GitHub at https://github.com/Getty/karr/issues.

IRC

Join #langertha on irc.perl.org or message Getty directly.

CONTRIBUTING

Contributions are welcome! Please fork the repository and submit a pull request.

AUTHOR

Torsten Raudssus <getty@cpan.org>

COPYRIGHT AND LICENSE

This software is copyright (c) 2026 by Torsten Raudssus <torsten@raudssus.de> https://raudssus.de/.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.