Skip to content

fix: smoke pre-merge — field condition actionId, search_pipes truncation, comment length UX#115

Merged
adriannoes merged 3 commits into
devfrom
fix/smoke-pre-merge-mcp-1-2
May 15, 2026
Merged

fix: smoke pre-merge — field condition actionId, search_pipes truncation, comment length UX#115
adriannoes merged 3 commits into
devfrom
fix/smoke-pre-merge-mcp-1-2

Conversation

@adriannoes

Copy link
Copy Markdown
Collaborator

Summary

  • SDK: include actionId in GET_FIELD_CONDITION / GET_FIELD_CONDITIONS queries so CLI/MCP surface saved condition actions.
  • SDK: search_pipes without name filter now sets pipes_truncated when the API returns fewer pipes than org pipesCount (and still when sliced by max_pipes_per_org); SEARCH_PIPES_QUERY selects pipesCount.
  • MCP: add_card_comment maps Pydantic too_long / string_too_long on text to an explicit 1000-character limit message instead of the generic card_id / non-empty hint.

Context and severity ordering: .cursor/dev-planning/investigations/smoke-2026-05-15-pre-main-merge.md (MCP findings #1 and #2, plus Finding C1).

Follow-ups (not in this PR)

Per smoke doc §6 / TL;DR: MCP #3#12 and CLI C3–C5 remain deferred to separate tickets.

Test plan

  • uv run pytest -q — 2042 passed, 24 skipped
  • uv run pytest -m "not integration" -q — 2024 passed
  • uv run ruff check . && uv run ruff format --check .
  • CI-equivalent: version lockstep, ruff on packages/*/src, uv build packages/mcp, sync_starter_pack --check, lint_skill_refs.py

Both GET_FIELD_CONDITION_QUERY and GET_FIELD_CONDITIONS_QUERY only selected
actions { phaseFieldId }, so callers could never see which action was saved.
Discovered while smoke-testing the 2026-05-15 architectural pass — verifying
the hidden->hide normalization required falling back to raw GraphQL.

Tests gain an `actionId in <query>.loc.source.body` assertion to guard
regression and the response fixtures now include `actionId: "hide"`.
…an pipesCount

SEARCH_PIPES_QUERY now selects Organization.pipesCount; the unfiltered branch
sets pipes_truncated when the visible list is shorter than that total or when
sliced by max_pipes_per_org. Adds unit tests and query AST guard.
…ion errors

Map Pydantic too_long/string_too_long on CommentInput.text to an explicit
1000-character limit message instead of the generic card_id/text hint.
@adriannoes adriannoes self-assigned this May 15, 2026
@adriannoes
adriannoes merged commit 3c194cd into dev May 15, 2026
@adriannoes
adriannoes deleted the fix/smoke-pre-merge-mcp-1-2 branch May 15, 2026 18:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant