Skip to content

Migrate ActionbaseQuery to v3 engine layer#218

Merged
em3s merged 15 commits intomainfrom
feat/migrate-actionbase-query-to-v3
Mar 27, 2026
Merged

Migrate ActionbaseQuery to v3 engine layer#218
em3s merged 15 commits intomainfrom
feat/migrate-actionbase-query-to-v3

Conversation

@zipdoki
Copy link
Copy Markdown
Contributor

@zipdoki zipdoki commented Mar 18, 2026

Summary

As discussed in #217 (review), move the /graph/v3/query endpoint from the v2 QueryController to the v3 layer.
Integrate the ActionbaseQuery execution path into V3QueryService, following the existing v3 pattern (V3QueryService → Graph).

Changes

  • Move ActionbaseQuery, ActionbaseQueryExecutor, LabelProvider, Compat from v2.engine.query to engine.query
  • Rename fields to v3 conventions: service→database, label→table, src→source, tgt→target, dir→direction, cache→memoize, cacheName→cache
  • Consolidate QueryController to use V3QueryService instead of Graph directly

Checklist

  • No behavioral changes — same endpoint URL, request/response format
  • Build and all tests pass (./gradlew build)

@zipdoki zipdoki requested a review from em3s March 18, 2026 08:26
@dosubot dosubot bot added size:M This PR changes 30-99 lines, ignoring generated files. maintenance Maintenance work. labels Mar 18, 2026
@em3s em3s added enhancement New feature or request and removed maintenance Maintenance work. labels Mar 22, 2026
em3s
em3s previously requested changes Mar 22, 2026
Copy link
Copy Markdown
Contributor

@em3s em3s left a comment

Choose a reason for hiding this comment

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

It should also rename v2 terms to v3 conventions – e.g. src -> source, tgt -> target in ActionbaeQuery Model.

…onbaseQuery

Rename src -> source, tgt -> target, dir -> direction to align with
v3 naming conventions per PR #218 review feedback.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@zipdoki
Copy link
Copy Markdown
Contributor Author

zipdoki commented Mar 23, 2026

@em3s
Updated — renamed to v3 terms (src → source, tgt → target, dir → direction).

Also renamed service → database, label → table to align with v3 conventions.

…eQuery

Align ActionbaseQuery field names with v3 naming conventions.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@dosubot dosubot bot added size:L This PR changes 100-499 lines, ignoring generated files. and removed size:M This PR changes 30-99 lines, ignoring generated files. labels Mar 26, 2026
zipdoki and others added 5 commits March 26, 2026 15:53
…d update test JSON to v3 terms

Fix typo in test class name and update JSON fixtures to use v3 field
names (database, table, source, target, direction).

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Move ActionbaseQuerySpec, ActionbaseQueryParserSpec,
ActionbaseQueryExecutorPostProcess*Spec, and StepByStepLog
from engine.query to engine.v3.query package.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Rename service/label/src/dir to database/table/source/direction
in ActionbaseQuery.Item.Cache and update related test fixtures.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…ctionbaseQuery

- Rename Item.cache flag to memoize to avoid collision with Cache type
- Rename Cache.cacheName to cache for conciseness

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@em3s em3s dismissed their stale review March 26, 2026 14:06

I'll take it from here and finish the PR.

em3s and others added 7 commits March 26, 2026 23:45
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Remove redundant ActionbaseQueryController and NamedQueryResultV3.
Update QueryController to delegate to V3QueryService instead of Graph directly.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
….query

Move query implementation classes out of v2 package to prepare for v3 native usage:
- ActionbaseQuery, ActionbaseQueryExecutor, LabelProvider, Compat
- Extract NamedQueryResult to separate file
- Rename ActionbaseQueryCacheE2ETest to ActionbaseQueryE2ETest

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…mments

- Fix processCount to use queryItem.direction instead of hardcoded Direction.OUT
- Update TODO comment: cacheName → cache
- Revert E2E test schema comments to v3 terms (source/target)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Vertex.Ref.field references DataFrame column names which are still v2 terms
(src/tgt). Using "target" would cause runtime lookup failures.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@em3s
Copy link
Copy Markdown
Contributor

em3s commented Mar 26, 2026

engine.query has V2 direct calls (see #221), will be addressed in follow-up PRs.

@em3s em3s changed the title Migrate ActionbaseQuery to v3 service layer Migrate ActionbaseQuery to v3 engine layer Mar 27, 2026
@em3s em3s merged commit 6f75b4e into main Mar 27, 2026
7 checks passed
eazyhozy pushed a commit that referenced this pull request Apr 1, 2026
Co-authored-by: Minseok Kim <mskim@apache.org>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request size:L This PR changes 100-499 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants