Repository navigation
Description
Is there an existing issue for this?
- I have searched the existing issues.
Searches covered markdown/too short and SDD/schema/response failures. Related #833 concerns inconsistent requirement mappings; #763 concerns oversize companion recovery; #836 concerns the selected source view. This is a distinct undersized response-schema failure and its generic recovery diagnostic. Please consolidate if another issue owns this exact case without losing the observed evidence.
Which actions are affected?
Issue
Which platforms are affected?
Linux
Description
During ordinary pre-branch SDD preparation, the released SDK reports Agent response schema violation at $.markdown: string is too short, then exposes only workflow.failed/retryable Yes in the safe issue card and final error. The card contains no drafting phase, minimum/observed length or attempt facts and gives only inspect-and-retry guidance. Strict rejection is correct; this report requests actionable redacted stage/length identity, not acceptance of short output or a broader automatic retry policy.
Consumer: vypdev/domus#17 . Exact terminal failed run: https://github.com/vypdev/domus/actions/runs/41339905694 . Reference 10b98533-30f3-4b29-9b2e-38e3b05ac240. Safe card: vypdev/domus#17 (comment) . No SDD or branch was published.
Expected: retain the existing strict schema and fail-closed publication, while exposing a closed undersized-response cause, stage, applicable minimum and safe available attempt/count facts. Distinguish a model response-contract failure from provider unavailability or a generic retryable workflow operation. If human clarification is the supported recovery, state that concrete action. Preserve the SDK's deliberate maximum-only bounded-repair policy unless its owners explicitly change it; do not catch arbitrary provider/schema failures into an unbounded regeneration loop. Never publish the rejected response or sensitive source.
Actual: the log identifies the $.markdown minimum-length violation, but the public card says Specific table facts are unavailable for this failure and only workflow.failed. Final message says retry the failed step and Retryable Yes, without a drafting-stage/response-length classification. The actual response string/length is not retained, so neither its content nor why the provider returned it can be responsibly inferred.
Reproducing the issue
- Inspect the exact observed released-SDK run above. It followed a substantive normal issue-body clarification, not a rerun of unchanged input. The selected development base is 63d1159f83f51ae0cd3c41f32341d9e9e36bb6da.
- The issue contains a complete consumer-authored proposed companion and explicit ownership/source facts, supplied as user review input. Independently before submission, seven byte-identical original policy modules were verified and original renderSddDerivedTables, validateSddMarkdown and validateSddDraftConsistency passed against all 15 immutable owning documents. Raw length 36855, rendered 39580, 8 requirement IDs, 52 cases; rendered SHA256 5df71eae4e5d266d98eb88ed1fa1d98075c8398f26c395b87da1dcc9ea61312e. These facts prove only that proposed input is consistent; they do not establish that the model copied/read it or that its generated response matched it.
- The Action executes analysis, then one logged draft query, and fails its response schema before table assembly. No actual generated-response length is available. This is an observed external/model outcome, not a deterministic provider-failure reproduction.
- Suggested isolated SDK regression: provide a draft-query result whose markdown string violates the local minimum; assert strict rejection with safe response-stage/minimum facts and retained prior answers/owners, no branch/spec publication, no false provider-outage claim and no hidden unbounded retry.
- Controls should cover minimum boundary success, genuinely oversized output using the existing maximum-only bounded repair, null/missing/nonstring markdown, unrelated schema failure, actual provider unavailable, and equivalent failures through ordinary Issue and Issue Comment entrypoints. These regressions have not been executed in the consumer.
copilot Version
vypdev/copilot@v3, immutable 3e7ceea; Codex CLI 0.166.0. Read-only inspected source at the same revision: draft workflow applies the declared minimum to markdown; lines 43-45 deliberately recover only the exact maximum-length schema error and rethrow other identities. Domain constants declare the draft minimum 1800. This source control explains the policy boundary, not the hidden generated response or a proven root cause in the provider.
Relevant Log Output
2026-11-01T19:06:15.8813789Z Agent execution admitted (codex codex-cli 0.166.0).
2026-11-01T19:06:21.6693443Z Agent execution completed.
2026-11-01T19:06:22.7795970Z Agent execution admitted (codex codex-cli 0.166.0).
2026-11-01T19:06:26.6630177Z Agent execution completed.
2026-11-01T19:06:26.6635958Z Pre-branch SDD gate failed: Agent response schema violation at $.markdown: string is too short.
2026-11-01T19:06:32.9592787Z Impact: The workflow could not complete the requested operation.
Error code: workflow.failed
Action: Inspect the current state and retry the failed step.
Retained state: Existing persisted state and completed external effects were preserved.
Retryable: Yes
Reference: 10b98533-30f3-4b29-9b2e-38e3b05ac240
Additional context and comments
No Copilot code, installed resources, settings, credentials, validator, limits, gate or branch lifecycle was changed by this investigation. The consumer is continuing with an explicit read-only-output clarification: request the complete proposed Markdown response rather than an acknowledgement/summary, preserving the normal Action publication gate. That new input is not a claimed fix or a blind retry, and its success remains unproven. Please keep this stage-specific evidence separate from the previous size, mapping and default-checkout failures.
Metadata
Metadata
Assignees
Labels
Type
Projects
- StatusShow more project fieldsDone
Activity
[-]Undersized SDD response loses its drafting-stage context behind generic retryable workflow.failed[/-][+]π - Undersized SDD response loses its drafting stage context behind generic retryable workflow.failed[/+]vypbot commentedon Nov 1, 2026
Hi! Iβm @vypbot, the Copilot assistant for this repository.
I can answer questions, explain the codebase, propose implementation and test plans, review issues and pull requests for potential bugs or security problems, and help authorized maintainers apply changes.
Try
/copilot helpto see the available commands, or mention @vypbot with your question.[-]π - Undersized SDD response loses its drafting stage context behind generic retryable workflow.failed[/-][+]ππ§βπ» - Undersized SDD response loses its drafting stage context behind generic retryable workflow.failed[/+]vypbot commentedon Nov 4, 2026
Implementation plan
Acceptance: For both Issue and Issue Comment entrypoints, a draft result below the configured markdown minimum is rejected without publishing a branch or specification, and the safe card and final error identify the drafting-stage undersized-response cause, applicable minimum when available, and concrete recovery action without exposing rejected content or misclassifying provider availability.
Need something else? Mention the bot with a question or use
/copilot help.vypbot commentedon Nov 4, 2026
Issue closed β historical progress
Current status: closed as completed.
The last estimate is retained below as history. Closure does not certify a new percentage, tests, or branch alignment.
Action required: none for this closed issue. If work continues, reopen the issue; a fresh assessment can update this same card.
Last assessment before closure (historical)
vypbot commentedon Nov 4, 2026
Issue closed: synchronization recommendation retired
No branch synchronization is required for this closed issue.
The previous recommendation is historical. Issue closure does not certify that the branches are synchronized.