Skip to content

feat(convex): add FilterApi TS2589 guardrails#23

Open
bntvllnt wants to merge 1 commit intomainfrom
feat/convex-filterapi-guardrail
Open

feat(convex): add FilterApi TS2589 guardrails#23
bntvllnt wants to merge 1 commit intomainfrom
feat/convex-filterapi-guardrail

Conversation

@bntvllnt
Copy link
Copy Markdown
Owner

Summary

  • document the Convex FilterApi / TS2589 failure mode in the convex skill
  • add guidance to keep utility-only files out of convex/ and prefer *Generic builders when type depth is the problem
  • add module-count guardrails and validation checks for repos approaching the fullApi recursion limit

What changed

  • convex/SKILL.md: added a blocking FilterApi/TS2589 guardrail section, new triggers, router entry, and two new critical rules
  • convex/references/troubleshooting.md: added root-cause chain, thresholds, recovery options, and anti-patterns
  • convex/checklists/validation.md: added checks for utility-only files in convex/ and module-count verification
  • convex/README.md: surfaced troubleshooting/TS2589 entry point
  • CHANGELOG.md: added release note entry

Verification

  • git diff --check
  • parsed convex/SKILL.md frontmatter with yaml.safe_load

Closes #14

@bntvllnt bntvllnt self-assigned this Apr 17, 2026
bntvllnt

This comment was marked as outdated.

@bntvllnt
Copy link
Copy Markdown
Owner Author

Final review handoff — current head a9838fba

Status

  • Blocking issue remains.
  • Because the authenticated reviewer is also the PR author, GitHub formal REQUEST_CHANGES is not available here. I used an inline comment plus this top-level handoff instead.

PR metadata check

  • Title/body match the current diff.
  • No metadata normalization was needed in this run.

PR change summary

  • adds FilterApi / TS2589 guardrails to the Convex skill
  • routes users to new troubleshooting guidance for the failure mode
  • updates validation checklist language and README surfacing
  • records the contract change in the changelog

What the PR does in product terms

  • gives Convex users a clearer escape hatch when type recursion blows up
  • teaches reviewers when to stop splitting files and when to treat the problem as structural
  • improves troubleshooting discoverability for a recurring Convex failure mode

Timeline summary

  • First automated review pass on this head.

What changed across review passes

  • No prior Jarvis review existed on this head.
  • Current pass found one contract/checklist inconsistency and one wording ambiguity.

What remains active now

  • C1 — blocking TS2589 threshold is labeled advisory in the validation checklist (convex/checklists/validation.md:37).
  • W1 — validator placement guidance is still ambiguous against existing guidance (convex/SKILL.md:99).

Cleanup performed

  • No prior Jarvis artifacts needed cleanup.
  • This comment is the single authoritative current handoff summary for this head.

Manual review fast path

  1. Make the checklist and skill contract agree on the blocking threshold.
  2. Clarify when colocated validators.ts files are still allowed.
  3. Re-check the README / troubleshooting routing after those fixes land.

Validation

  • Ran: git diff --check
  • Ran: YAML parse check for convex/SKILL.md
  • Verified: changed-file coverage complete; title/body match diff.
  • Remaining gap: threshold values were reviewed for internal consistency here, not re-benchmarked against upstream Convex internals in this pass.

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.

convex skill: add FilterApi TS2589 awareness + module count guardrail

1 participant