fix(extension): 크로스 프로젝트 response watcher 우회 수정 + file_permission write 도구 3-button 매핑

- response watcher: pending 삭제 후 response data의 project_name으로 fallback 필터
- processResponseFile: sessionId를 pending에서 우선 사용 (activeSessionId 대신)
- logToFile: [projectName] 접두사 추가 (공유 로그 구분)
- file_permission 리스트에 replace_file_content, write_to_file, multi_replace_file_content 추가
- UserResponse에 project_name 필드 추가 + bot.py 4곳 전파
- known-issues: 2건 추가, devlog 012
This commit is contained in:
2026-03-10 20:59:03 +09:00
parent 08c5cb461b
commit 5a3217d31a
5 changed files with 41 additions and 8 deletions

4
bot.py
View File

@@ -87,6 +87,7 @@ class ApprovalView(discord.ui.View):
approved=not is_reject,
button_index=btn_index,
step_type=getattr(self.request, 'step_type', ''),
project_name=getattr(self.request, 'project_name', ''),
))
embed = interaction.message.embeds[0] if interaction.message.embeds else None
if embed:
@@ -111,6 +112,7 @@ class ApprovalView(discord.ui.View):
self.bridge.write_response(UserResponse(
request_id=self.request.request_id, approved=True,
step_type=getattr(self.request, 'step_type', ''),
project_name=getattr(self.request, 'project_name', ''),
))
embed = interaction.message.embeds[0] if interaction.message.embeds else None
if embed:
@@ -130,6 +132,7 @@ class ApprovalView(discord.ui.View):
self.bridge.write_response(UserResponse(
request_id=self.request.request_id, approved=False,
step_type=getattr(self.request, 'step_type', ''),
project_name=getattr(self.request, 'project_name', ''),
))
embed = interaction.message.embeds[0] if interaction.message.embeds else None
if embed:
@@ -142,6 +145,7 @@ class ApprovalView(discord.ui.View):
self.bridge.write_response(UserResponse(
request_id=self.request.request_id, approved=False,
step_type=getattr(self.request, 'step_type', ''),
project_name=getattr(self.request, 'project_name', ''),
))