Skip to content

feat(issues): batch-resolve refs for issue create/update/search filters#178

Merged
iamfj merged 2 commits intonextfrom
issue-63-batch-resolve-impl
Apr 25, 2026
Merged

feat(issues): batch-resolve refs for issue create/update/search filters#178
iamfj merged 2 commits intonextfrom
issue-63-batch-resolve-impl

Conversation

@iamfj
Copy link
Copy Markdown
Member

@iamfj iamfj commented Apr 23, 2026

Summary

  • add BatchResolveForSearch query and expand create/update batch queries with fields needed for typed resolution
  • add issue-batch-resolve-service with one-request resolution paths for create, update, and search filters (UUID passthrough + flag-specific errors)
  • wire issues create/update and resolveFilterOptions to batch service; update unit tests to assert one batch call per path

Closes #63

Test Plan

  • npx vitest run tests/unit/services/issue-batch-resolve-service.test.ts -v
  • npx vitest run tests/unit/common/resolve-filters.test.ts tests/unit/commands/issues.test.ts -v
  • npm run check:ci
  • npx tsc --noEmit
  • npm test
  • npm run build

Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 58adcd7874

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread graphql/queries/issues.graphql Outdated
Comment thread src/services/issue-batch-resolve-service.ts Outdated
@iamfj iamfj force-pushed the issue-63-batch-resolve-impl branch from 58adcd7 to 54380b9 Compare April 23, 2026 20:41
@iamfj iamfj changed the base branch from main to next April 23, 2026 20:44
@iamfj
Copy link
Copy Markdown
Member Author

iamfj commented Apr 23, 2026

Addressed codex feedback in commit 224f8f0.

Fixes:

  • Team-scoped status/cycle batch filters now support team key, team name, and team UUID inputs for create/search paths.
  • Project lookup in batch queries now matches by name OR ID, so project UUID plus named milestone resolves correctly in create/update/search.
  • Added regression tests in tests/unit/services/issue-batch-resolve-service.test.ts for both cases.

Verification:

  • npx vitest run tests/unit/services/issue-batch-resolve-service.test.ts tests/unit/common/resolve-filters.test.ts tests/unit/commands/issues.test.ts -v
  • npm test

@iamfj
Copy link
Copy Markdown
Member Author

iamfj commented Apr 24, 2026

@codex review

Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 224f8f05b4

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread src/services/issue-batch-resolve-service.ts Outdated
Comment thread graphql/queries/issues.graphql Outdated
@iamfj
Copy link
Copy Markdown
Member Author

iamfj commented Apr 25, 2026

Addressed latest codex items in 8b4c0c3 (team key-first precedence + case-insensitive batch status filters). @codex review

Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 8b4c0c3d92

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread src/services/issue-batch-resolve-service.ts Outdated
Comment thread graphql/queries/issues.graphql Outdated
Comment thread graphql/queries/issues.graphql
@iamfj
Copy link
Copy Markdown
Member Author

iamfj commented Apr 25, 2026

Addressed latest codex feedback in 46b320f (cycle disambiguation precedence, case-insensitive status search matching, case-insensitive label matching). @codex review

Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 46b320fedb

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread src/services/issue-batch-resolve-service.ts Outdated
Comment thread graphql/queries/issues.graphql Outdated
@iamfj
Copy link
Copy Markdown
Member Author

iamfj commented Apr 25, 2026

Addressed latest codex items in 8aac969 (team-scoped status/cycle resolution by resolved UUID + paginated label fallback query with while restoring filtered label batch query). @codex review

Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 8aac9698bd

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread src/common/resolve-filters.ts Outdated
Comment thread graphql/queries/issues.graphql
@iamfj
Copy link
Copy Markdown
Member Author

iamfj commented Apr 25, 2026

Addressed latest codex feedback in ecf4983 (skip unnecessary batch filter resolution; add paginated workflow-state fallback for status resolution). @codex review

Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: ecf4983f64

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread src/common/resolve-filters.ts Outdated
@iamfj
Copy link
Copy Markdown
Member Author

iamfj commented Apr 25, 2026

Addressed latest codex review in 3ef3ed6 (resolve filter IDs via resolver layer instead of service-layer raw-ID path). @codex review

Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 3ef3ed6259

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread src/services/issue-batch-resolve-service.ts Outdated
Comment thread src/commands/issues.ts Outdated
@iamfj
Copy link
Copy Markdown
Member Author

iamfj commented Apr 25, 2026

Addressed latest codex feedback in ff490d4 (moved batch ID resolution to resolver layer; gated update batch lookup for scalar-only updates). @codex review

Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: ff490d4428

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread src/resolvers/issue-batch-resolver.ts Outdated
Comment thread src/services/issue-batch-resolve-service.ts Outdated
@iamfj
Copy link
Copy Markdown
Member Author

iamfj commented Apr 25, 2026

Deep review loop complete. Addressed latest codex architecture items in e9415be: removed resolver-side GraphQL batch module, removed service↔resolver re-export shim, restored strict layer boundaries, and kept update lookup gating for scalar-only updates. @codex review

Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: e9415becbf

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread src/resolvers/issue-filter-resolver.ts Outdated
Comment thread src/resolvers/issue-filter-resolver.ts Outdated
@iamfj
Copy link
Copy Markdown
Member Author

iamfj commented Apr 25, 2026

Addressed latest codex items in a4bb0ad (search filter resolver SDK-only; cycle lookup now uses pre-resolved teamId). Also updated AGENTS.md client-layer contract wording to reflect existing documented GraphQL resolver exceptions when SDK lacks capability. @codex review

@chatgpt-codex-connector
Copy link
Copy Markdown

Codex Review: Didn't find any major issues. Hooray!

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

iamfj added 2 commits April 25, 2026 15:51
Use batch GraphQL payload for issue search filter lookups.

Keep resolver-layer ID semantics and team-scoped cycle/status resolution.

Refs #63
Document SDK-first resolver contract.

Allow explicit GraphQL exceptions when SDK capability is missing.

Refs #63
@iamfj iamfj force-pushed the issue-63-batch-resolve-impl branch from a4bb0ad to 1cc4bab Compare April 25, 2026 13:51
@iamfj iamfj merged commit fb2c476 into next Apr 25, 2026
8 checks passed
@iamfj iamfj deleted the issue-63-batch-resolve-impl branch April 25, 2026 13:53
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.

perf: use BatchResolve queries to eliminate N+1 API calls in issue create/update

1 participant