/
ncit
/
coderagsystem
Обзор
Документация
Войти
/
ncit
/
coderagsystem
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
codex/rag-codegraph-patterns
tests/eval/codex_rag_developer_tasks.jsonl
10 строк
13 KB
ncit
Add IDE-style AST context for RAG evaluation
06 июн 2026, 10:14
06 июн 2026, 10:14
7c30af2
Код
Авторство
О чём код?
{"task_id":"dodo-dev-01-refactor-paid-order-reset","category":"refactor_async_suspend_checkout","prompt":"Find suspend/async order checkout functions related to waiting for paid orders and propose a safe refactor that extracts duplicated state-update logic.","repo":"dodo","collection":"repo_dodo","expected_files":["context/order/src/main/java/ru/dodopizza/app/presentation/checkout/state/orderprocessing/CheckoutOrderProcessingService.kt","context/order/src/test/java/com/dodopizza/order/feature/checkout/state/presentation/orderprocessing/WhenWaitForPaidOrder.kt","context/order/src/main/java/com/dodopizza/order/feature/mainscreen/presentation/waitforpaidorder/WaitForPaidOrderService.kt","context/order/src/test/java/com/dodopizza/order/feature/mainscreen/presentation/waitforpaidorder/WaitForPaidOrderServiceImplTest.kt","context/order/src/main/java/com/dodopizza/order/domain/workflow/checkout/CheckoutService.kt"],"expected_symbols":["waitForPayedOrder","handleOrderResponse","setupAppStateForNewOrder","getPaidOrderForState"],"success_criteria":["Finds waitForPayedOrder or related paid-order flow","Finds setupAppStateForNewOrder callers","Produces a narrow refactor plan with impacted tests"],"minimal_context_goal":{"max_files_read":5,"max_source_tokens":6000,"required_slice_granularity":"function_body"}} {"task_id":"dodo-dev-02-trace-failing-paid-order-test","category":"trace_ui_state_from_test_failure","prompt":"A test named ifSuccess_andOrderStateIsAlmostOk_shouldSetupAppStateForNewOrder is failing. Find the production path it verifies and explain the state transition.","repo":"dodo","collection":"repo_dodo","expected_files":["context/order/src/test/java/com/dodopizza/order/feature/checkout/state/presentation/orderprocessing/WhenWaitForPaidOrder.kt","context/order/src/main/java/ru/dodopizza/app/presentation/checkout/state/orderprocessing/CheckoutOrderProcessingService.kt","context/order/src/main/java/com/dodopizza/order/feature/checkout/details/presentation/CheckoutDetailsInteractor.kt","context/order/src/main/java/com/dodopizza/order/feature/checkout/details/presentation/CheckoutDetailsPresenter.kt"],"expected_symbols":["ifSuccess_andOrderStateIsAlmostOk_shouldSetupAppStateForNewOrder","waitForPayedOrder","OrderIsBeingCreated","PaidOrderState.ALMOST_OK"],"success_criteria":["Links test to production service/use case","Identifies checkout state dependency and paid-order response path","Avoids reading unrelated order modules"],"minimal_context_goal":{"max_files_read":3,"max_source_tokens":3500,"required_slice_granularity":"test_function_plus_production_function"}} {"task_id":"dodo-dev-03-deprecated-state-reset-api","category":"locate_deprecated_api_replacement","prompt":"Find deprecated code that points users to CheckoutService::setupAppStateForNewOrder and determine what should call the new API instead.","repo":"dodo","collection":"repo_dodo","expected_files":["context/core/src/main/java/com/dodopizza/core/domain/state/StateAnalyzer.kt","context/order/src/main/java/com/dodopizza/order/domain/workflow/checkout/CheckoutService.kt","context/order/src/main/java/ru/dodopizza/app/presentation/checkout/state/orderprocessing/CheckoutOrderProcessingService.kt","context/order/src/main/java/com/dodopizza/order/feature/mainscreen/presentation/waitforpaidorder/WaitForPaidOrderService.kt"],"expected_symbols":["StateAnalyzer.setupAppStateForNewOrder","CheckoutService.setupAppStateForNewOrder","CheckoutServiceImpl.setupAppStateForNewOrder"],"success_criteria":["Finds deprecated method and replacement target","Explains caller migration","Identifies minimal files for edit"],"minimal_context_goal":{"max_files_read":3,"max_source_tokens":3000,"required_slice_granularity":"symbol_definition_and_callers"}} {"task_id":"dodo-dev-04-payment-completion-analytics","category":"analytics_payment_completion","prompt":"Add or verify analytics tracking for successful payment completion in the order checkout flow.","repo":"dodo","collection":"repo_dodo","expected_files":["context/order/src/main/java/ru/dodopizza/app/presentation/checkout/state/AnalyticsHelper.kt","context/order/src/main/java/ru/dodopizza/app/presentation/checkout/state/orderprocessing/CheckoutOrderProcessingService.kt","context/order/src/test/java/com/dodopizza/order/feature/checkout/state/presentation/orderprocessing/WhenWaitForPaidOrder.kt"],"expected_symbols":["trackPaymentFinished","PaymentAnalytics.paymentFinished","waitForPayedOrder","OrderCreated","OrderIsBeingCreated"],"success_criteria":["Finds payment completion tests and production flow","Identifies analytics helper call site","Suggests test updates or confirms existing coverage"],"minimal_context_goal":{"max_files_read":3,"max_source_tokens":4000,"required_slice_granularity":"function_body_and_tests"}} {"task_id":"dodo-dev-05-profile-locale-di-boundary","category":"dependency_injection_boundaries","prompt":"For the profile locale list feature, find its dependency interface and explain what module owns the implementation.","repo":"dodo","collection":"repo_dodo","expected_files":["context/profile/src/main/java/com/dodopizza/profile/feature/profilelocalelist/ProfileLocaleListFeatureDependencies.kt","context/profile/src/main/java/com/dodopizza/profile/feature/profilelocalelist/di/ProfileLocaleListComponent.kt","context/profile/src/main/java/com/dodopizza/profile/feature/profilelocalelist/presentation/ProfileLocaleListInteractor.kt","app/src/main/java/ru/dodopizza/app/di/AppComponent.kt","app/src/main/java/ru/dodopizza/app/di/modules/domain/localelist/LocaleListServiceModule.kt"],"expected_symbols":["ProfileLocaleListFeatureDependencies","ProfileLocaleListComponent","ProfileLocaleListInteractor","LocaleListServiceModule","AppComponent"],"success_criteria":["Finds feature dependency classes/interfaces","Identifies module boundaries","Avoids broad package browsing"],"minimal_context_goal":{"max_files_read":4,"max_source_tokens":3000,"required_slice_granularity":"interface_component_module"}} {"task_id":"dodo-dev-06-deferred-time-code-rename","category":"safe_domain_concept_rename","prompt":"The team wants to rename deferred time to scheduled time in checkout UI internals without touching user-facing strings. Find code-only symbols that need review.","repo":"dodo","collection":"repo_dodo","expected_files":["context/order/src/main/java/com/dodopizza/order/feature/checkout/deferredtime/presentation/DeferredTimeFragment.kt","context/order/src/main/java/com/dodopizza/order/feature/checkout/deferredtime/presentation/DeferredTimePresenter.kt","context/order/src/main/java/com/dodopizza/order/feature/checkout/deferredtime/DeferredTimeFeatureDependencies.kt","context/order/src/main/java/ru/dodopizza/app/presentation/checkout/state/CheckoutStateService.kt","context/order/src/main/java/ru/dodopizza/app/presentation/checkout/state/CheckoutStateLogic.kt","context/order/src/main/java/ru/dodopizza/app/presentation/checkout/state/CheckoutState.kt","context/order/src/main/java/com/dodopizza/order/feature/checkout/details/presentation/CheckoutDetailsPresenter.kt","context/order/src/main/java/com/dodopizza/order/feature/checkout/details/presentation/CheckoutDetailsFragment.kt","app/src/androidTest/java/ru/dodopizza/app/screens/checkout/defferedTime/DeferredTimeScreen.kt"],"expected_symbols":["DeferredTimeFragment","DeferredTimePresenter","DeferredTimeFeatureDependencies","DeferredTimeState","NewDeferredTimeState","setDeferredTime","setNewDeferredTime","DeferredTimeSelectionListener"],"success_criteria":["Retrieves classes/fragments/viewmodels with semantic relation","Separates code identifiers from localization/user-facing text","Lists candidate files for mechanical rename"],"minimal_context_goal":{"max_files_read":8,"max_source_tokens":9000,"required_slice_granularity":"symbol_index_with_no_resource_values"}} {"task_id":"dodo-dev-07-checkout-core-architecture","category":"cross_module_architecture","prompt":"Explain how order checkout state is coordinated across context/order and context/core.","repo":"dodo","collection":"repo_dodo","expected_files":["context/core/src/main/java/com/dodopizza/core/domain/state/StateAnalyzer.kt","context/order/src/main/java/com/dodopizza/order/domain/workflow/checkout/CheckoutService.kt","context/order/src/main/java/ru/dodopizza/app/presentation/checkout/state/CheckoutStateProvider.kt","context/order/src/main/java/ru/dodopizza/app/presentation/checkout/state/CheckoutStateService.kt","context/order/src/main/java/ru/dodopizza/app/presentation/checkout/state/CheckoutStateEditService.kt","context/order/src/main/java/com/dodopizza/order/domain/workflow/checkout/details/CheckoutDetailsServiceImpl.kt"],"expected_symbols":["StateAnalyzer","StateAnalyzerImpl.actualizeState","StateAnalyzerImpl.setupAppStateForNewOrder","CheckoutServiceImpl.setupAppStateForNewOrder","CheckoutStateProviderImpl.get","CheckoutStateServiceImpl","CheckoutDetailsServiceImpl"],"success_criteria":["Finds both order and core state files","Produces architecture-level explanation with citations","Does not rely on reading entire modules"],"minimal_context_goal":{"max_files_read":6,"max_source_tokens":7000,"required_slice_granularity":"architecture_slices_with_call_edges"}} {"task_id":"dodo-dev-08-checkout-payment-test-gaps","category":"risky_test_gaps","prompt":"Find production functions in checkout payment processing that have state-changing behavior but weak or missing test coverage.","repo":"dodo","collection":"repo_dodo","expected_files":["context/order/src/main/java/ru/dodopizza/app/presentation/checkout/state/orderprocessing/CheckoutOrderProcessingService.kt","context/order/src/test/java/com/dodopizza/order/feature/checkout/state/presentation/orderprocessing/WhenWaitForPaidOrder.kt","context/order/src/test/java/com/dodopizza/order/feature/checkout/state/presentation/orderprocessing/WhenChargePayment.kt","context/order/src/test/java/com/dodopizza/order/feature/checkout/state/presentation/orderprocessing/WhenChargeBySavedCardPayment.kt","context/order/src/test/java/com/dodopizza/order/feature/checkout/state/presentation/orderprocessing/WhenCreateGooglePlayRequest.kt","context/order/src/test/java/com/dodopizza/order/feature/checkout/state/presentation/orderprocessing/WhenConfirm3DS.kt","context/order/src/test/java/com/dodopizza/order/feature/checkout/state/presentation/orderprocessing/WhenHandlePaymentCanceled.kt","context/order/src/test/java/com/dodopizza/order/feature/checkout/state/presentation/orderprocessing/WhenSetPaymentError.kt"],"expected_symbols":["waitForPayedOrder","chargePayment","chargeSbpPayment","chargeSavedCardPayment","createGooglePayRequest","confirm3DS","handlePaymentCanceled","setPaymentError"],"success_criteria":["Uses function chunks and test chunks","Points to candidate functions and nearest tests","Produces a prioritized risk list"],"minimal_context_goal":{"max_files_read":8,"max_source_tokens":9000,"required_slice_granularity":"production_function_to_test_mapping"}} {"task_id":"dodo-dev-09-paid-order-response-vo-naming","category":"debug_naming_mismatch","prompt":"The user says paid order response VO, but the code may use different names. Find the closest actual model/classes and call sites.","repo":"dodo","collection":"repo_dodo","expected_files":["context/order/src/main/java/com/dodopizza/order/feature/mainscreen/presentation/waitforpaidorder/PaidOrderResponseVO.kt","domain/base/src/main/java/ru/dodopizza/app/domain/order/PaidOrderResponse.kt","context/order/src/main/java/com/dodopizza/order/feature/mainscreen/presentation/waitforpaidorder/WaitForPaidOrderService.kt","context/order/src/main/java/com/dodopizza/order/feature/mainscreen/presentation/MainScreenPresenter.kt","context/order/src/main/java/ru/dodopizza/app/presentation/checkout/state/orderprocessing/CheckoutOrderProcessingService.kt"],"expected_symbols":["PaidOrderResponseVO","PaidOrderResponse","PaidOrderResponse.toVO","MainScreenPresenter.handlePaidOrder","CheckoutOrderProcessingServiceImpl.handleOrderResponse"],"success_criteria":["Retrieves semantically similar PaidOrderResponse symbols even if VO does not exist in prompt variants","Explains naming mismatch","Provides concrete call sites"],"minimal_context_goal":{"max_files_read":5,"max_source_tokens":5000,"required_slice_granularity":"model_mapper_call_sites"}} {"task_id":"dodo-dev-10-paid-order-reset-before-analytics","category":"minimal_patch_planning","prompt":"Make the smallest safe change so successful paid order handling always resets app state before tracking analytics.","repo":"dodo","collection":"repo_dodo","expected_files":["context/order/src/main/java/ru/dodopizza/app/presentation/checkout/state/orderprocessing/CheckoutOrderProcessingService.kt","context/order/src/test/java/com/dodopizza/order/feature/checkout/state/presentation/orderprocessing/WhenWaitForPaidOrder.kt"],"expected_symbols":["waitForPayedOrder","setupAppStateForNewOrder","trackPaymentFinished","OrderCreated","OrderIsBeingCreated"],"success_criteria":["Finds exact function/test chunks","Proposes ordering-sensitive patch","Identifies existing tests to run","Reads only the needed files before editing"],"minimal_context_goal":{"max_files_read":2,"max_source_tokens":3000,"required_slice_granularity":"single_function_and_single_test"}}