feat: initial Beta 1 release
- soju raw connector with event playback and CHATHISTORY fallback
- SQLite store with msgid de-dup and retention job
- Mentions + Pushover + tuning; structured JSON logs
- Summaries: concise, link-following, multi-line grouping
- HTTP: /healthz, /ready, /tail, /trigger, /metrics
- Docker: distroless, healthcheck, version metadata
- Docs: README, CHANGELOG, compose
2025-08-15 18:06:28 -05:00
|
|
|
package summarizer
|
|
|
|
|
|
|
|
|
|
import (
|
2025-08-17 19:12:26 -05:00
|
|
|
"context"
|
|
|
|
|
"time"
|
feat: initial Beta 1 release
- soju raw connector with event playback and CHATHISTORY fallback
- SQLite store with msgid de-dup and retention job
- Mentions + Pushover + tuning; structured JSON logs
- Summaries: concise, link-following, multi-line grouping
- HTTP: /healthz, /ready, /tail, /trigger, /metrics
- Docker: distroless, healthcheck, version metadata
- Docs: README, CHANGELOG, compose
2025-08-15 18:06:28 -05:00
|
|
|
|
2025-08-17 19:12:26 -05:00
|
|
|
"sojuboy/internal/store"
|
feat: initial Beta 1 release
- soju raw connector with event playback and CHATHISTORY fallback
- SQLite store with msgid de-dup and retention job
- Mentions + Pushover + tuning; structured JSON logs
- Summaries: concise, link-following, multi-line grouping
- HTTP: /healthz, /ready, /tail, /trigger, /metrics
- Docker: distroless, healthcheck, version metadata
- Docs: README, CHANGELOG, compose
2025-08-15 18:06:28 -05:00
|
|
|
)
|
|
|
|
|
|
|
|
|
|
type Summarizer interface {
|
2025-09-05 06:58:38 -05:00
|
|
|
Summarize(ctx context.Context, channel string, msgs []store.Message, window time.Duration) (string, error)
|
|
|
|
|
// SummarizeForPush creates a digest tuned for push notifications (e.g., Pushover limits).
|
|
|
|
|
// Implementations should keep the output succinct and within ~1k characters.
|
|
|
|
|
SummarizeForPush(ctx context.Context, channel string, msgs []store.Message, window time.Duration) (string, error)
|
|
|
|
|
SummarizeLink(ctx context.Context, rawURL string) (string, error)
|
feat: initial Beta 1 release
- soju raw connector with event playback and CHATHISTORY fallback
- SQLite store with msgid de-dup and retention job
- Mentions + Pushover + tuning; structured JSON logs
- Summaries: concise, link-following, multi-line grouping
- HTTP: /healthz, /ready, /tail, /trigger, /metrics
- Docker: distroless, healthcheck, version metadata
- Docs: README, CHANGELOG, compose
2025-08-15 18:06:28 -05:00
|
|
|
}
|