Compare commits

...
Author SHA1 Message Date
m a862a07ae1 DEV-000068 add learning write diagnostics
CI / test (push) Successful in 33s
CI / test (pull_request) Successful in 26s
2026-08-17 19:08:14 +03:00
m 4d63c1bea4 DEV-000068 support strong Postgres credentials
CI / test (push) Successful in 16s
Merge DEV-000068 strong Postgres credential support
2026-08-17 15:59:02 +00:00
+17 -2
View File
@@ -2,6 +2,7 @@ package main
import (
"context"
"log"
"strings"
"time"
@@ -85,7 +86,12 @@ func (r learningRecorder) recordReminderResponse(ctx context.Context, input remi
RecordedAtUnixMillis: input.At.UnixMilli(),
}
expectation, err := epistemicsdomain.NewSystemExpectation(expectation)
if err != nil || r.epistemics.SaveSystemExpectation(ctx, expectation) != nil {
if err != nil {
log.Printf("learning reminder expectation invalid: %v", err)
return
}
if err := r.epistemics.SaveSystemExpectation(ctx, expectation); err != nil {
log.Printf("learning reminder expectation unavailable: %v", err)
return
}
actual, confidence := outcomeForHumanResponse(input.Result.Response)
@@ -197,13 +203,19 @@ func (r learningRecorder) recordCapabilityUse(ctx context.Context, input capabil
func (r learningRecorder) saveExperienceAndReflection(ctx context.Context, value epistemics.ExperienceRecord) (epistemics.ExperienceRecord, bool) {
value, err := epistemicsdomain.NewExperienceRecord(value)
if err != nil {
log.Printf("learning experience invalid: %v", err)
return epistemics.ExperienceRecord{}, false
}
if err := r.epistemics.SaveExperienceRecord(ctx, value); err != nil {
log.Printf("learning experience unavailable: %v", err)
return epistemics.ExperienceRecord{}, false
}
if candidate, ok, err := epistemicsdomain.ReflectionForExperience(value); err == nil && ok {
_ = r.epistemics.SaveReflectionCandidate(ctx, candidate)
if err := r.epistemics.SaveReflectionCandidate(ctx, candidate); err != nil {
log.Printf("learning reflection unavailable: %v", err)
}
} else if err != nil {
log.Printf("learning reflection invalid: %v", err)
}
return value, true
}
@@ -214,6 +226,7 @@ func (r learningRecorder) updateReminderSkill(ctx context.Context, experience ep
}
profile, err := r.capability.LoadSkillProfile(ctx, reminderResponseSkillID)
if err != nil {
log.Printf("learning skill profile unavailable: %v", err)
return
}
next, err := capabilitydomain.ObserveSkillOutcome(profile, capability.SkillOutcomeObservation{
@@ -223,9 +236,11 @@ func (r learningRecorder) updateReminderSkill(ctx context.Context, experience ep
ObservedAtUnixMillis: experience.RecordedAtUnixMillis,
})
if err != nil {
log.Printf("learning skill observation invalid: %v", err)
return
}
if err := r.capability.SaveSkillProfile(ctx, next); err != nil {
log.Printf("learning skill profile save unavailable: %v", err)
return
}
}