perf: full_command_text field in execute context

This commit is contained in:
Junyan Qin
2025-09-14 19:12:44 +08:00
parent eae9980f5e
commit 0dce884519
2 changed files with 9 additions and 3 deletions

View File

@@ -75,6 +75,7 @@ class CommandManager:
async def execute(
self,
command_text: str,
full_command_text: str,
query: pipeline_query.Query,
session: provider_session.Session,
) -> typing.AsyncGenerator[command_context.CommandReturn, None]:
@@ -89,6 +90,7 @@ class CommandManager:
query_id=query.query_id,
session=session,
command_text=command_text,
full_command_text=full_command_text,
command='',
crt_command='',
params=command_text.split(' '),

View File

@@ -18,7 +18,9 @@ class CommandHandler(handler.MessageHandler):
) -> typing.AsyncGenerator[entities.StageProcessResult, None]:
"""Process"""
command_text = str(query.message_chain).strip()[1:]
full_command_text = str(query.message_chain).strip()
command_text = full_command_text[1:]
privilege = 1
@@ -39,7 +41,7 @@ class CommandHandler(handler.MessageHandler):
sender_id=query.sender_id,
command=spt[0],
params=spt[1:] if len(spt) > 1 else [],
text_message=str(query.message_chain),
text_message=full_command_text,
is_admin=(privilege == 2),
query=query,
)
@@ -62,7 +64,9 @@ class CommandHandler(handler.MessageHandler):
session = await self.ap.sess_mgr.get_session(query)
async for ret in self.ap.cmd_mgr.execute(command_text=command_text, query=query, session=session):
async for ret in self.ap.cmd_mgr.execute(
command_text=command_text, full_command_text=full_command_text, query=query, session=session
):
if ret.error is not None:
query.resp_messages.append(
provider_message.Message(