This repository has been archived on 2026-04-03. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
core/server/store/sqlite/health.go
Jeffrey Smith 680ec3b897
All checks were successful
CI/CD / detect-changes (push) Successful in 3s
CI/CD / test-frontend (push) Successful in 5s
CI/CD / test-go-pg (push) Successful in 2m34s
CI/CD / test-sqlite (push) Successful in 2m46s
CI/CD / build-and-deploy (push) Successful in 1m55s
Feat rebrand armature (#43)
Co-authored-by: Jeffrey Smith <jasafpro@gmail.com>
Co-committed-by: Jeffrey Smith <jasafpro@gmail.com>
2026-03-31 23:25:37 +00:00

44 lines
1006 B
Go

package sqlite
import (
"context"
"time"
"armature/database"
)
// ── HealthStore ─────────────────────────────
type HealthStore struct{}
func NewHealthStore() *HealthStore { return &HealthStore{} }
// Prune deletes stale kernel data older than the given time.
func (s *HealthStore) Prune(ctx context.Context, before time.Time) (int64, error) {
var total int64
ts := before.UTC().Format("2006-01-02 15:04:05")
res, _ := database.DB.ExecContext(ctx,
`DELETE FROM ws_tickets WHERE expires_at < ?`, ts)
if res != nil {
n, _ := res.RowsAffected()
total += n
}
res, _ = database.DB.ExecContext(ctx,
`DELETE FROM rate_limit_counters WHERE window_start < ?`, ts)
if res != nil {
n, _ := res.RowsAffected()
total += n
}
res, _ = database.DB.ExecContext(ctx,
`DELETE FROM user_presence WHERE last_seen < ? AND status = 'offline'`, ts)
if res != nil {
n, _ := res.RowsAffected()
total += n
}
return total, nil
}