Move game log processing into SCUM companion

This commit is contained in:
npc0-hue
2026-09-02 10:18:27 +08:00
parent 7d9c1b7e9e
commit 40ac46ba17
14 changed files with 328 additions and 232 deletions
-11
View File
@@ -222,7 +222,6 @@ type Core interface {
SubscribeLogEvents(string) (LogEventSubscription, error)
SubscribeLogEventsForSession(string, string) (LogEventSubscription, error)
IngestLogBatch(domain.LogBatchIngest) (domain.LogBatchIngestResult, error)
RelayLiveLogBatch(domain.LogBatchIngest) (domain.LogBatchIngestResult, error)
GetRunLogStreamProgress(domain.RunLogStreamProgress) (domain.RunLogStreamProgressResult, error)
QueryLogStream(domain.LogStreamCursorQuery) (domain.LogStreamCursorResult, error)
SeedPlatformAdmin(string, string) error
@@ -247,8 +246,6 @@ type CoreService struct {
bridgeSeq uint64
logStore LogBodyStore
logIngestMu [64]sync.Mutex
logProjectionMu sync.Mutex
logProjectionStates map[string]map[string]pluginLogSequenceState
logEventMu sync.Mutex
logEventSubscribers map[uint64]logEventSubscriber
logEventSubscriberSeq uint64
@@ -296,7 +293,6 @@ func newCoreServiceWithLogStore(store repo.Store, logStore LogBodyStore, now fun
controlStreamWaiters: map[string][]chan domain.RunControlEvent{},
jobWaiters: map[string][]chan struct{}{},
logStore: logStore,
logProjectionStates: map[string]map[string]pluginLogSequenceState{},
logEventSubscribers: map[uint64]logEventSubscriber{},
artifactStore: artifactStore,
artifactTransfers: map[string]domain.ArtifactTransferSession{},
@@ -2162,13 +2158,6 @@ func (svc *CoreService) DispatchFileOperationForSession(sessionID string, reques
if request.ExpectedConfigVersion > 0 && request.ExpectedConfigVersion != instance.ConfigVersion {
return domain.FileOperationDispatchResult{}, validationError("expectedConfigVersion must match server instance")
}
user, err := svc.GetCurrentUser(sessionID)
if err != nil {
return domain.FileOperationDispatchResult{}, err
}
if err := svc.requireCompleteRuntimeBindings(user.ID, instance.ID, "file.operation.denied"); err != nil {
return domain.FileOperationDispatchResult{}, err
}
content := request.Content
if request.Operation == domain.FileOperationWrite && content == "" && strings.HasPrefix(request.InputRef, "artifact://") {
artifactID := strings.TrimPrefix(request.InputRef, "artifact://")