Commit 9989997c authored by Joshua Gutow's avatar Joshua Gutow

op-challenger: Add logging

parent 61cb88ac
......@@ -3,6 +3,8 @@ package fault
import (
"context"
"sync"
"github.com/ethereum/go-ethereum/log"
)
type Agent struct {
......@@ -12,15 +14,17 @@ type Agent struct {
trace TraceProvider
responder Responder
maxDepth int
log log.Logger
}
func NewAgent(game Game, maxDepth int, trace TraceProvider, responder Responder) Agent {
func NewAgent(game Game, maxDepth int, trace TraceProvider, responder Responder, log log.Logger) Agent {
return Agent{
game: game,
solver: NewSolver(maxDepth, trace),
trace: trace,
responder: responder,
maxDepth: maxDepth,
log: log,
}
}
......@@ -45,12 +49,23 @@ func (a *Agent) PerformActions() {
// move determines & executes the next move given a claim pair
func (a *Agent) move(claim, parent Claim) error {
move, err := a.solver.NextMove(claim)
if err != nil || move == nil {
nextMove, err := a.solver.NextMove(claim)
if err != nil {
a.log.Warn("Failed to execute the next move", "err", err)
return err
}
if a.game.IsDuplicate(*move) {
if nextMove == nil {
a.log.Info("No next move")
return nil
}
move := *nextMove
log := a.log.New("is_defend", move.DefendsParent(), "depth", move.Depth(), "index_at_depth", move.IndexAtDepth(), "value", move.Value,
"letter", string(move.Value[31:]), "trace_index", move.Value[30],
"parent_letter", string(claim.Value[31:]), "parent_trace_index", claim.Value[30])
if a.game.IsDuplicate(move) {
log.Debug("Duplicate move")
return nil
}
return a.responder.Respond(context.TODO(), *move)
log.Info("Performing move")
return a.responder.Respond(context.TODO(), move)
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment