Skip to content

Commit 52b2d01

Browse files
author
Rajesh Ramamoorthy
committed
feat: Addressed couple more linting and spelling issues to fix the build failures.
1 parent 3627c06 commit 52b2d01

2 files changed

Lines changed: 12 additions & 8 deletions

File tree

src/a2a/server/events/queue_lifecycle_manager.py

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -83,8 +83,12 @@ def __post_init__(self) -> None:
8383
'pip install "a2a-sdk[aws]"'
8484
) from exc
8585

86-
if self.session is None:
87-
self.session = aioboto3.Session()
86+
# Resolve the session once into a non-optional attribute so that
87+
# internal methods can call .client() without optional-access errors.
88+
# The public `session` field remains Optional for API convenience.
89+
self._resolved_session: aioboto3.Session = (
90+
self.session or aioboto3.Session()
91+
)
8892

8993
logger.debug(
9094
'QueueLifecycleManager created (instance_id=%s, topic=%s).',
@@ -152,7 +156,7 @@ async def provision(self) -> QueueProvisionResult:
152156
self.region_name,
153157
)
154158

155-
async with self.session.client(
159+
async with self._resolved_session.client(
156160
'sqs', region_name=self.region_name
157161
) as sqs:
158162
# Step 1: Create the SQS queue.
@@ -198,7 +202,7 @@ async def provision(self) -> QueueProvisionResult:
198202
# Step 4: Subscribe the SQS queue to the SNS topic.
199203
subscription_arn = ''
200204
try:
201-
async with self.session.client(
205+
async with self._resolved_session.client(
202206
'sns', region_name=self.region_name
203207
) as sns:
204208
sub_resp = await sns.subscribe(
@@ -216,7 +220,7 @@ async def provision(self) -> QueueProvisionResult:
216220
queue_url,
217221
)
218222
try:
219-
async with self.session.client(
223+
async with self._resolved_session.client(
220224
'sqs', region_name=self.region_name
221225
) as sqs:
222226
await sqs.delete_queue(QueueUrl=queue_url)
@@ -257,7 +261,7 @@ async def teardown(self) -> None:
257261

258262
# Step 1: Unsubscribe from SNS (best-effort).
259263
try:
260-
async with self.session.client(
264+
async with self._resolved_session.client(
261265
'sns', region_name=self.region_name
262266
) as sns:
263267
await sns.unsubscribe(SubscriptionArn=result.subscription_arn)
@@ -272,7 +276,7 @@ async def teardown(self) -> None:
272276

273277
# Step 2: Delete the SQS queue.
274278
try:
275-
async with self.session.client(
279+
async with self._resolved_session.client(
276280
'sqs', region_name=self.region_name
277281
) as sqs:
278282
await sqs.delete_queue(QueueUrl=result.queue_url)

src/a2a/server/events/sns_queue_manager.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -340,7 +340,7 @@ async def _handle_sqs_message(self, sqs_msg: dict[str, Any]) -> None: # noqa: P
340340
sqs_msg: A single SQS message dictionary from ReceiveMessage.
341341
"""
342342
# Use message ID in warnings to avoid logging potentially sensitive
343-
# message body content (PII in Task/Message payloads).
343+
# message body content, which may include personal user data.
344344
msg_id = sqs_msg.get('MessageId', '<no-id>')
345345
body_str = sqs_msg.get('Body', '{}')
346346

0 commit comments

Comments
 (0)