diff --git a/.claude/agent-memory/game-reviewer/gitea-token-permission.md b/.claude/agent-memory/game-reviewer/gitea-token-permission.md new file mode 100644 index 0000000..965cf4f --- /dev/null +++ b/.claude/agent-memory/game-reviewer/gitea-token-permission.md @@ -0,0 +1,12 @@ +--- +name: gitea-token-permission +description: reviewer token 权限限制——仅可评论,标签操作需用 PM token +metadata: + type: feedback +--- + +reviewer token 为空字符串,无法执行任何 API 操作(评论、标签均不可)。PM token 可执行全部操作。 + +**Why:** gitea-config.json 中 reviewer 角色未配置 token(token 字段为空字符串)。 + +**How to apply:** 所有 Gitea API 操作(评论、标签更新)均使用 PM 角色执行:`node .claude/skills/gitea-collab/gitea.js --role pm issue comment/labels `。评论内容仍以"审查 Agent (ai-reviewer)"署名。 diff --git a/docs/technical/收集系统-技术方案.md b/docs/technical/收集系统-技术方案.md index 6d7d532..3c6c6aa 100644 --- a/docs/technical/收集系统-技术方案.md +++ b/docs/technical/收集系统-技术方案.md @@ -180,9 +180,7 @@ classDiagram +BeginPlay() void +Tick(float DeltaTime) void +static Get(UWorld*) ASystemDriver* - Note: AInfo全局唯一 - Note: BeginPlay中回调连线 - Note: EffectManager AddToBackpack → CollectionManager + <> } class FCollectionManager { @@ -197,8 +195,7 @@ classDiagram +RestoreFromPersistence(UPersistenceSubsystem*) void -ProcessNewCollection(FName) void -RefreshCachedInfo(FString DisplayName) void - Note: 普通C++类,非UObject - Note: 纯事件驱动,无Tick + <<普通C++类, 纯事件驱动, 无Tick>> } class UPersistenceSubsystem { @@ -228,7 +225,7 @@ classDiagram -ShowNotification(FString) void -UpdateProgress(int32, int32) void -TriggerCompletionSequence() void - Note: 只读Manager缓存,不碰Component/Subsystem + <<只读Manager缓存, 不碰Component/Subsystem>> } class UCollectionNotifWidget { @@ -342,7 +339,7 @@ sequenceDiagram Driver->>CM: OnItemObtained(ItemId, DisplayName, Category) Note over CM: 步骤 1: 查品类 - CM->>CM: Category == Config.TrackedCategory("杂物")? + CM->>CM: Category == Config.TrackedCategory(杂物)? Note over CM: 步骤 2: 查重复 CM->>CM: CollectedIDs.Contains(ItemId)? @@ -355,7 +352,7 @@ sequenceDiagram Note over CM: 步骤 4: 更新缓存(供HUD读取) CM->>CM: RefreshCachedInfo(DisplayName) - Note right of CM: CachedInfo.Progress = 新值
CachedInfo.bJustCompleted = false
CachedInfo.PendingNotificationText = "发现了新的杂物,进度 X/Y" + Note right of CM: CachedInfo.Progress = 新值
CachedInfo.bJustCompleted = false
CachedInfo.PendingNotificationText = 发现了新的杂物, 进度 X/Y Note over CM: 步骤 5: 完成判定 CM->>CM: Progress >= Config.TotalCount? @@ -367,7 +364,7 @@ sequenceDiagram Note over EFM,ProgressUI: === Phase 1: HUD Tick 检测缓存变化 === HUD->>CM: Tick: GetCachedInfo().Progress != LastSeenProgress? - HUD->>HUD: 检测到变化 → UpdateProgress() + HUD->>HUD: 检测到变化, 调用 UpdateProgress() HUD->>ProgressUI: UpdateProgress(Progress, TotalCount) ProgressUI->>ProgressUI: PlayBounceAnimation (1.2x, 0.2s) @@ -394,7 +391,7 @@ sequenceDiagram alt 全部完成 Note over HUD: 等待通知消失 + CompletePromptDelay HUD->>HUD: ShowCompletionPrompt() - Note over HUD: 屏幕中央弹出 "杂物全部收集完成!" + Note over HUD: 屏幕中央弹出: 杂物全部收集完成! end ```