No reviewers
Labels
No labels
blocked:children
blocked:commit-ready-failed
blocked:depends-231
blocked:depends-236
blocked:depends-237
blocked:depends-238
blocked:depends-239
blocked:gate-fetch
blocked:gate-fetch
blocked:gate-lint
blocked:gate-research
blocked:needs-attention
blocked:needs-decision
blocked:no-changes
blocked:no-procedure
blocked:preflight
blocked:verify-failed
bug
enhancement
feature-request
high-priority
in-progress
lint-cleanup
needs-decompose
needs-triage
ops-retry
ops-task
phase-5
quickfix
security/medium
self-building
triage-approved
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
Mark/mesh-seed!283
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "wt/integration-verify"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
Drives a synthetic
MeshIntentResultpayload throughDiscordBotService._run_intentfor each of the four canonical result shapes, exercising the full end-to-end pipeline:The test confirms every sibling component landed in its deliverable shape:
split()is invoked inside the chat formatter; long prose produces multipleResponseParts, each at or below Discord's 2000-char message limit; nested code-fence integrity is preserved across the split stream.EmbedBuilderis exercised via the typedMeshIntentResultpath;IntentType.RESEARCHproduces a research embed with title/description/fields/footer/color within the 6000-char total budget.async with progress(channel, intent_id)opens the typing context manager before the poll loop and exits cleanly on completion or error.attachment_thresholdtriggers_format_chat_attachment; adiscord.Fileis uploaded and a summary message references the attachment.Test scenarios
test_short_chat_response_*test_long_prose_response_*test_response_with_code_blocks_*test_oversized_response_is_*test_research_intent_runs_full_*Plus four
TestComponentsPresent.*tests that import each component directly fromruntimeto prove they're package-exported and individually usable.Verification
pytest tests/unit/test_delivery_pipeline_integration.py-> 9 passed in 0.25spytest tests/unit/{test_delivery_pipeline_integration,test_discord_response,test_discord_commands,test_discord_progress,test_embed_builder_intents,test_discord_bot}.py-> 136/136 passedruff check tests/unit/test_delivery_pipeline_integration.py-> cleanblack tests/unit/test_delivery_pipeline_integration.py-> formattedReferences
Kanban
Closes
t_b702138a(verifier integration verification).Provides tests/unit/discord_boundary.py: a FakeChannel plus FakeResponseTarget and FakeGateway that mock Discord's HTTP boundary so DiscordBotService._run_intent can be driven with zero network. Captures every outgoing call into a recorder: ("send", text), ("send_file", filename, bytes), ("send_embed", title, desc), ("typing",). Fake send returns a Message with deterministic id/channel_id and never raises. boundary() assembles a fully-wired service; acceptance smoke drives a factories.short() result through _run_intent and asserts the recorder captured at least one entry. Refs: #280 Kanban: t_c43efdf5