mirror of
https://github.com/nolen777/eagle0.git
synced 2026-07-29 09:15:42 +00:00
Compare commits
1
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
209ee63d84 |
@@ -581,6 +581,7 @@ scala_library(
|
||||
deps = [
|
||||
":llm_resolver",
|
||||
"//src/main/scala/net/eagle0/common:functional_random",
|
||||
"//src/main/scala/net/eagle0/common:simple_timed_logger",
|
||||
"//src/main/scala/net/eagle0/eagle:eagle_pkg",
|
||||
"//src/main/scala/net/eagle0/eagle/client_text",
|
||||
"//src/main/scala/net/eagle0/eagle/client_text:client_text_store",
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
package net.eagle0.eagle.service
|
||||
|
||||
import net.eagle0.common.SeededRandom
|
||||
import net.eagle0.common.{SeededRandom, SimpleTimedLogger}
|
||||
import net.eagle0.eagle.client_text.{ClientTextStore, IncompleteClientText}
|
||||
import net.eagle0.eagle.library.{EagleInternalException, GameHistory}
|
||||
import net.eagle0.eagle.library.util.hero_name_fetcher.HeroNameFetcher
|
||||
@@ -89,6 +89,13 @@ class UnrequestedTextHandler(llmResolver: LlmResolver) {
|
||||
|
||||
val llmRequestsWithGameStates =
|
||||
llmRequests.map { ut =>
|
||||
val requestType = ut.llmRequest.getClass.getSimpleName
|
||||
val gameIdHex = f"0x${ut.llmRequest.eagleGameId}%016x"
|
||||
SimpleTimedLogger.printLogger.logLine(
|
||||
s"Processing unrequested text: id=${ut.id}, type=$requestType, " +
|
||||
s"eagleGameId=${ut.llmRequest.eagleGameId} ($gameIdHex), " +
|
||||
s"requestedAfterHistoryCount=${ut.requestedAfterHistoryCount}"
|
||||
)
|
||||
LlmResolver.LlmRequestWithGameState(
|
||||
llmRequest = ut.llmRequest,
|
||||
gameState = gameHistory.stateAfter(ut.requestedAfterHistoryCount)
|
||||
@@ -111,25 +118,44 @@ class UnrequestedTextHandler(llmResolver: LlmResolver) {
|
||||
)
|
||||
) {
|
||||
case (acc, (llmRequest, llmResolverResult)) =>
|
||||
val requestType = llmRequest.getClass.getSimpleName
|
||||
llmResolverResult match {
|
||||
case LlmResolverRequested(_) =>
|
||||
SimpleTimedLogger.printLogger.logLine(
|
||||
s"LLM request submitted: id=${llmRequest.requestId}, type=$requestType"
|
||||
)
|
||||
Accumulator(
|
||||
clientTextStore = acc.clientTextStore
|
||||
.withMarkedRequested(llmRequest.requestId),
|
||||
acc.stuckEntries
|
||||
)
|
||||
case LlmResolverBypassed =>
|
||||
SimpleTimedLogger.printLogger.logLine(
|
||||
s"LLM request bypassed: id=${llmRequest.requestId}, type=$requestType"
|
||||
)
|
||||
Accumulator(
|
||||
clientTextStore = acc.clientTextStore.withBypassed(llmRequest.requestId),
|
||||
acc.stuckEntries
|
||||
)
|
||||
case LlmResolverTooManyRequestsInFlight =>
|
||||
SimpleTimedLogger.printLogger.logLine(
|
||||
s"LLM request deferred (too many in flight): id=${llmRequest.requestId}, type=$requestType"
|
||||
)
|
||||
acc
|
||||
case LlmResolverGameDeleted =>
|
||||
// Game was deleted (e.g., warmup game during blue-green deployment)
|
||||
// Just skip the request - it will be cleaned up when the game's data is deleted
|
||||
val gameIdHex = f"0x${llmRequest.eagleGameId}%016x"
|
||||
SimpleTimedLogger.printLogger.logLine(
|
||||
s"LLM request skipped (game deleted): id=${llmRequest.requestId}, type=$requestType, " +
|
||||
s"eagleGameId=${llmRequest.eagleGameId} ($gameIdHex)"
|
||||
)
|
||||
acc
|
||||
case LlmResolverDependencyNotSatisfied(unsatisfiedTextId) =>
|
||||
SimpleTimedLogger.printLogger.logLine(
|
||||
s"LLM request waiting on dependency: id=${llmRequest.requestId}, type=$requestType, " +
|
||||
s"waitingOn=$unsatisfiedTextId"
|
||||
)
|
||||
acc.copy(stuckEntries =
|
||||
acc.stuckEntries :+ StuckUnrequested(
|
||||
llmRequest,
|
||||
@@ -209,8 +235,13 @@ class UnrequestedTextHandler(llmResolver: LlmResolver) {
|
||||
s"Moving stalled incomplete text ${llmRequest.requestId} back to unrequested due to unsatisfied dependency"
|
||||
)
|
||||
cts.withMovedBackToUnrequested(llmRequest.requestId)
|
||||
case (cts, (_, LlmResolverGameDeleted)) =>
|
||||
case (cts, (llmRequest, LlmResolverGameDeleted)) =>
|
||||
// Game was deleted - just skip, texts will be cleaned up with the game
|
||||
val gameIdHex = f"0x${llmRequest.eagleGameId}%016x"
|
||||
SimpleTimedLogger.printLogger.logLine(
|
||||
s"Incomplete text skipped (game deleted): id=${llmRequest.requestId}, " +
|
||||
s"eagleGameId=${llmRequest.eagleGameId} ($gameIdHex)"
|
||||
)
|
||||
cts
|
||||
case (cts, _) =>
|
||||
cts
|
||||
|
||||
Reference in New Issue
Block a user