# Per-directory ownership and automatic assignment for pull requests. # The paths to the directory/files must be relative to the location of this # file. Wildcards such as '**', '!' are not allowed. Only glob style patterns # are allowed. For information about supported glob patterns please refer # https://docs.python.org/2/library/glob.html. # Note: The e2e test files are owned by both the dev workflow and QA teams. # - The QA team will do an initial review to verify the PR's test coverage. They # will then ask the dev workflow team for a final review. # - The dev workflow team will review the code quality to see if the e2e tests # can be optimized further. # Angular Migration team /typings/ @ankita240796 /tsconfig.json @ankita240796 # Answer classification team. /core/controllers/classifier*.py @prasanna08 /core/domain/classifier*.py @prasanna08 /core/storage/classifier/ @prasanna08 /core/templates/dev/head/domain/classifier/ @prasanna08 /extensions/classifiers/ @prasanna08 # Audio and Translation team. /core/controllers/voice_artist*.py @DubeySandeep /core/templates/dev/head/pages/exploration-editor-page/translation-tab/ @DubeySandeep /core/templates/dev/head/services/AudioPlayerService.ts @DubeySandeep /core/templates/dev/head/services/AutogeneratedAudioPlayerService.ts @DubeySandeep /core/templates/dev/head/services/GenerateContentIdService*.ts @DubeySandeep /core/templates/dev/head/services/SpeechSynthesisChunkerService*.ts @DubeySandeep /core/templates/dev/head/services/AssetsBackendApiService*.ts @DubeySandeep # Collection project. /core/controllers/collection*.py @kevinlee12 /core/domain/collection*.py @kevinlee12 /core/storage/collection/ @kevinlee12 /core/templates/dev/head/components/entity-creation-services/collection-creation.service*.ts @kevinlee12 /core/templates/dev/head/domain/collection/ @kevinlee12 /core/templates/dev/head/pages/collection-editor-page/ @kevinlee12 /core/templates/dev/head/pages/collection-player-page/ @kevinlee12 # Core documentation /AUTHORS @seanlip /CHANGELOG @seanlip /CONTRIBUTORS @seanlip /LICENSE @seanlip /NOTICE @seanlip /core/templates/dev/head/pages/about-page/ @DubeySandeep /core/templates/dev/head/pages/privacy-page/ @seanlip /core/templates/dev/head/pages/terms-page/ @seanlip # Dashboard pages. /core/controllers/creator_dashboard*.py @nithusha21 /core/controllers/email_dashboard*.py @nithusha21 /core/controllers/learner_dashboard*.py @nithusha21 /core/controllers/learner_playlist*.py @nithusha21 /core/controllers/subscriptions*.py @nithusha21 /core/domain/activity*.py @nithusha21 /core/domain/learner_playlist_services*.py @nithusha21 /core/domain/learner_progress*.py @nithusha21 /core/domain/subscription_services*.py @nithusha21 /core/templates/dev/head/domain/creator_dashboard/ @nithusha21 /core/templates/dev/head/domain/learner_dashboard/ @nithusha21 /core/templates/dev/head/pages/creator-dashboard-page/ @nithusha21 /core/templates/dev/head/pages/email-dashboard-pages/ @nithusha21 /core/templates/dev/head/pages/learner-dashboard-page/ @nithusha21 /core/templates/dev/head/pages/notifications-dashboard-page/ @nithusha21 # Dev workflow team. /.circleci/ @kevinlee12 /.eslintignore @kevinlee12 /.eslintrc @kevinlee12 /.htmllintrc @kevinlee12 /.coveragerc @kevinlee12 /.gitattributes @kevinlee12 /.gitignore @kevinlee12 /.isort.cfg @kevinlee12 /.pylintrc @kevinlee12 /.stylelintrc @kevinlee12 /.travis.yml @kevinlee12 /codecov.yml @lilithxxx /core/templates/dev/head/css/.stylelintrc @kevinlee12 /tox.ini @kevinlee12 /scripts/ @kevinlee12 /Vagrantfile @kevinlee12 # Exploration project. /core/controllers/editor*.py @DubeySandeep /core/controllers/reader*.py @aks681 /core/controllers/resources*.py @vojtechjelinek @seanlip /core/domain/exp*.py @DubeySandeep /core/domain/fs*.py @aks681 /core/domain/param_domain*.py @aks681 /core/domain/rating_services*.py @DubeySandeep /core/domain/state_domain*.py @aks681 /core/domain/summary_services*.py @aks681 /core/domain/value_generators_domain*.py @vojtechjelinek @seanlip /core/storage/exploration/ @aks681 /core/templates/dev/head/components/entity-creation-services/exploration-creation.service*.ts @DubeySandeep /core/templates/dev/head/components/button-directives/hint-and-solution-buttons.directive*.ts @aks681 /core/templates/dev/head/components/button-directives/hint-and-solution-buttons.directive.html @aks681 /core/templates/dev/head/components/state-directives/ @aks681 /core/templates/dev/head/components/graph-services/ @DubeySandeep /core/templates/dev/head/components/version-diff-visualization/version-diff-visualization.directive.html @DubeySandeep /core/templates/dev/head/components/version-diff-visualization/version-diff-visualization.directive.ts @DubeySandeep /core/templates/dev/head/domain/editor/ @DubeySandeep /core/templates/dev/head/domain/exploration/ @DubeySandeep /core/templates/dev/head/domain/state/ @aks681 /core/templates/dev/head/domain/summary/ @aks681 /core/templates/dev/head/domain/state_card/ @aks681 /core/templates/dev/head/pages/exploration-editor-page/ @DubeySandeep /core/templates/dev/head/pages/exploration-player-page/ @aks681 /core/templates/dev/head/components/state-editor/ @aks681 /core/templates/dev/head/services/ComputeGraphService.ts @DubeySandeep /core/templates/dev/head/services/ContextService*.ts @aks681 /core/templates/dev/head/services/EditabilityService*.ts @DubeySandeep /core/templates/dev/head/services/ExplorationFeatures*.ts @aks681 /core/templates/dev/head/services/ExplorationHtmlFormatterService*.ts @aks681 /core/templates/dev/head/services/ValidatorsService*.ts @DubeySandeep # Forms pages. /core/templates/dev/head/components/forms/ @DubeySandeep /core/templates/dev/head/components/common-layout-directives/common-elements/confirmation-modal.template.html @DubeySandeep /core/templates/dev/head/components/ck-editor-helpers/customize-rte-component-modal.template.html @DubeySandeep /core/templates/dev/head/services/SchemaDefaultValueService.ts @DubeySandeep /core/templates/dev/head/services/SchemaUndefinedLastElementService.ts @DubeySandeep # Google-app-engine configurations /appengine_config.py @seanlip @nithusha21 /cron.yaml @seanlip @nithusha21 /dispatch.yaml @seanlip /index.yaml @seanlip @DubeySandeep /queue.yaml @seanlip /main_taskqueue.py @seanlip # Global components and filters. /core/templates/dev/head/components/common-layout-directives/common-elements/alert-message.directive.ts @ankita240796 /core/templates/dev/head/components/common-layout-directives/common-elements/attribution-guide.directive.html @ankita240796 /core/templates/dev/head/components/common-layout-directives/common-elements/attribution-guide.directive.ts @ankita240796 /core/templates/dev/head/components/common-layout-directives/common-elements/background-banner.directive.ts @ankita240796 /core/templates/dev/head/components/common-layout-directives/common-elements/background-banner.directive.html @ankita240796 /core/templates/dev/head/components/button-directives/exploration-embed-button.service.ts @ankita240796 /core/templates/dev/head/components/button-directives/exploration-embed-button.directive.html @ankita240796 /core/templates/dev/head/components/common-layout-directives/common-elements/loading-dots.directive.ts @ankita240796 /core/templates/dev/head/components/common-layout-directives/common-elements/loading-dots.directive.html @ankita240796 /core/templates/dev/head/components/common-layout-directives/common-elements/promo-bar.directive.ts @ankita240796 /core/templates/dev/head/components/common-layout-directives/common-elements/promo-bar.directive.html @ankita240796 /core/templates/dev/head/components/common-layout-directives/common-elements/sharing-links.directive.html @ankita240796 /core/templates/dev/head/components/common-layout-directives/common-elements/sharing-links.directive.ts @ankita240796 /core/templates/dev/head/components/button-directives/social-buttons.directive.ts @ankita240796 /core/templates/dev/head/components/button-directives/social-buttons.directive.html @ankita240796 /core/templates/dev/head/components/profile-link-directives/ @ankita240796 /core/templates/dev/head/components/summary-tile/ @ankita240796 /core/templates/dev/head/directives/focus-on.directive*.ts @ankita240796 /core/templates/dev/head/directives/angular-html-bind.directive*.ts @ankita240796 /core/templates/dev/head/filters/ @ankita240796 # Global frontend services /core/templates/dev/head/services/PromoBarService*.ts @ankita240796 /core/templates/dev/head/services/HtmlEscaperService*.ts @ankita240796 /core/templates/dev/head/services/DebouncerService*.ts @ankita240796 /core/templates/dev/head/services/SiteAnalyticsService*.ts @ankita240796 /core/templates/dev/head/services/DateTimeFormatService*.ts @ankita240796 /core/templates/dev/head/services/UtilsService*.ts @ankita240796 /core/templates/dev/head/services/LocalStorageService*.ts @ankita240796 /core/templates/dev/head/services/IdGenerationService*.ts @ankita240796 /core/templates/dev/head/services/AlertsService*.ts @ankita240796 /core/templates/dev/head/services/PageTitleService*.ts @ankita240796 /core/templates/dev/head/services/ExtensionTagAssemblerService.ts @ankita240796 /core/templates/dev/head/services/NestedDirectives*.ts @ankita240796 /core/templates/dev/head/services/stateful/BackgroundMaskService*.ts @ankita240796 /core/templates/dev/head/services/stateful/FocusManagerService*.ts @ankita240796 /core/templates/dev/head/services/contextual/UrlService*.ts @ankita240796 /core/templates/dev/head/services/contextual/DeviceInfoService*.ts @ankita240796 /core/templates/dev/head/services/contextual/WindowDimensionsService*.ts @ankita240796 # Global stylesheet. /core/templates/dev/head/css/oppia.css @ankita240796 # Interaction project. /core/domain/customization_args_util*.py @DubeySandeep /core/domain/interaction_registry*.py @aks681 /core/domain/obj_services*.py @aks681 /core/templates/dev/head/components/version-diff-visualization/codemirror-mergeview.directive.ts @kevinlee12 /core/templates/dev/head/domain/objects/ @kevinlee12 /core/templates/dev/head/expressions/ @seanlip /core/templates/dev/head/services/CodeNormalizerService*.ts @kevinlee12 /extensions/dependencies/ @seanlip @vojtechjelinek /extensions/domain*.py @seanlip @DubeySandeep /extensions/interactions/ @kevinlee12 @vojtechjelinek /extensions/objects/ @aks681 /extensions/value_generators/ @seanlip @vojtechjelinek /extensions/__init__.py @kevinlee12 # Lesson Analytics team. /core/controllers/features*.py @brianrodri /core/domain/action_registry*.py @brianrodri /core/domain/calculation_registry*.py @brianrodri /core/domain/event_services*.py @brianrodri /core/domain/playthrough_issue_registry*.py @brianrodri /core/domain/stats*.py @brianrodri /core/domain/visualization_registry*.py @brianrodri /core/storage/statistics/ @brianrodri /core/templates/dev/head/components/common-layout-directives/common-elements/confirmation-modal.template.html @brianrodri /core/templates/dev/head/domain/statistics/ @brianrodri /core/templates/dev/head/pages/exploration-editor-page/improvements-tab/ @brianrodri /core/templates/dev/head/pages/exploration-editor-page/statistics-tab/ @brianrodri /core/templates/dev/head/services/ImprovementCardService*.ts @brianrodri /core/templates/dev/head/services/ImprovementsService*.ts @brianrodri /core/templates/dev/head/services/MessengerService.ts @brianrodri /core/templates/dev/head/services/Playthrough*.ts @brianrodri /core/templates/dev/head/services/StateRulesStatsService*.ts @brianrodri /core/templates/dev/head/services/StateTopAnswersStats*.ts @brianrodri /extensions/actions/ @brianrodri /extensions/answer_summarizers/ @brianrodri /extensions/issues/ @brianrodri /extensions/visualizations/ @brianrodri # Library page. /core/controllers/library*.py @kevinlee12 /core/domain/recommendations*.py @seanlip /core/domain/search_services*.py @kevinlee12 /core/templates/dev/head/pages/library-page/ @kevinlee12 /core/templates/dev/head/services/ConstructTranslationIdsService.ts @kevinlee12 /core/templates/dev/head/services/SearchService*.ts @kevinlee12 # Navigation bar project. /core/templates/dev/head/domain/sidebar/ @nithusha21 /core/templates/dev/head/components/button-directives/create-activity-button.directive.ts @nithusha21 /core/templates/dev/head/components/button-directives/create-activity-button.directive.html @nithusha21 /core/templates/dev/head/components/common-layout-directives/navigation-bars/ @nithusha21 /core/templates/dev/head/services/NavigationService*.ts @nithusha21 # New structures team. # Question project. /core/controllers/practice_sessions*.py @vinitamurthi /core/controllers/question*.py @aks681 @vinitamurthi /core/controllers/review_tests*.py @sophiewu6 @vinitamurthi /core/domain/question*.py @aks681 @vinitamurthi /core/storage/question/ @aks681 @vinitamurthi /core/templates/dev/head/components/concept-card/ @sophiewu6 @vinitamurthi /core/templates/dev/head/components/entity-creation-services/question-creation.service.ts @aks681 @vinitamurthi /core/templates/dev/head/components/score-ring/ @vinitamurthi /core/templates/dev/head/domain/question/ @aks681 @vinitamurthi /core/templates/dev/head/pages/practice-session-page/ @vinitamurthi /core/templates/dev/head/pages/review-test-page/ @sophiewu6 @vinitamurthi /core/templates/dev/head/services/QuestionsListService.ts @sophiewu6 @vinitamurthi /core/templates/dev/head/components/question-directives/question-editor/ @aks681 @vinitamurthi /core/templates/dev/head/components/question-directives/questions-list/ @aks681 @vinitamurthi /core/templates/dev/head/components/question-directives/modal-templates/ @aks681 @vinitamurthi /core/templates/dev/head/components/question-directives/question-player/ @vinitamurthi # Skill project. /core/controllers/concept_card_viewer*.py @aks681 /core/controllers/skill*.py @aks681 /core/domain/skill*.py @aks681 /core/storage/skill/ @aks681 /core/templates/dev/head/components/entity-creation-services/skill-creation.service.ts @aks681 /core/templates/dev/head/domain/skill/ @aks681 /core/templates/dev/head/pages/skill-editor-page/ @aks681 # Story project. /core/controllers/story*.py @aks681 /core/domain/story*.py @aks681 /core/storage/story/ @aks681 /core/templates/dev/head/components/entity-creation-services/story-creation.service.ts @aks681 /core/templates/dev/head/domain/story/ @aks681 /core/templates/dev/head/domain/story_viewer/ @aks681 /core/templates/dev/head/pages/story-editor-page/ @aks681 /core/templates/dev/head/pages/story-viewer-page/ @aks681 # Topic project. # Instead of * we have used _* to avoid topics_and_skills_dashboard related files. /core/controllers/topic_*.py @aks681 /core/domain/subtopic_page_domain*.py @aks681 /core/domain/subtopic_page_services*.py @aks681 /core/domain/topic*.py @aks681 /core/storage/topic/ @aks681 /core/templates/dev/head/components/entity-creation-services/topic-creation.service.ts.ts @aks681 /core/templates/dev/head/domain/topic/ @aks681 /core/templates/dev/head/domain/topic_viewer @aks681 /core/templates/dev/head/pages/topic-editor-page/ @aks681 /core/templates/dev/head/pages/topic-viewer-page/ @aks681 # Topics and skills dashboard project. /core/controllers/subtopic_viewer*.py @aks681 /core/controllers/topics_and_skills_dashboard*.py @aks681 /core/templates/dev/head/domain/topics_and_skills_dashboard/ @aks681 /core/templates/dev/head/pages/topics-and-skills-dashboard-page/ @aks681 # Infrastructure. /core/controllers/cron*.py @nithusha21 /core/domain/cron_services*.py @nithusha21 /main_cron.py @nithusha21 /main_mail.py @aks681 /main.py @nithusha21 @DubeySandeep /feconf.py @seanlip @nithusha21 /constants*.py @seanlip @nithusha21 /assets/constants.js @seanlip @nithusha21 /core/controllers/incoming_emails*.py @aks681 /core/controllers/tasks*.py @aks681 /core/domain/email*.py @aks681 /core/domain/prod_validation_jobs_one_off*.py @ankita240796 /core/domain/storage_model_audit_jobs_test.py @ankita240796 /core/jobs*.py @seanlip /core/platform/ @seanlip @DubeySandeep /core/templates/dev/head/App*.ts @ankita240796 /core/templates/dev/head/app.constants.ts @ankita240796 /core/templates/dev/head/combined-tests.spec.ts @ankita240796 /core/templates/dev/head/pages/interaction-specs.constants.ts @vojtechjelinek @Jamesjay4199 /core/templates/dev/head/I18nFooter.ts @DubeySandeep /core/templates/dev/head/services/TranslationFileHashLoaderService.ts @DubeySandeep # Miscellaneous. /__init__.py @DubeySandeep /core/__init__.py @DubeySandeep /core/controllers/__init__.py @DubeySandeep /core/domain/__init__.py @DubeySandeep /core/domain/config*.py @DubeySandeep /core/domain/change_domain.py @DubeySandeep /core/templates/dev/head/tests/ @DubeySandeep /core/templates/dev/head/domain/utilities/ @DubeySandeep /schema_utils*.py @seanlip @DubeySandeep /utils*.py @aks681 # Restricted pages. /core/controllers/admin*.py @DubeySandeep @nithusha21 /core/controllers/moderator*.py @seanlip /core/controllers/recent_commits*.py @seanlip /core/domain/moderator_services*.py @seanlip /core/templates/dev/head/pages/admin-page/ @DubeySandeep @nithusha21 /core/templates/dev/head/pages/moderator-page/ @seanlip # QA team. /core/tests/ @kevinlee12 @nithusha21 /assets/ @nithusha21 /data/ @nithusha21 # Rich text editor team. /core/templates/dev/head/components/ck-editor-helpers/ck-editor-4-rte.directive.ts @aks681 /core/templates/dev/head/directives/mathjax-bind.directive.ts @aks681 /core/templates/dev/head/mathjaxConfig.ts @aks681 /core/templates/dev/head/components/ck-editor-helpers/ck-editor-4-widgets.initializer.ts @aks681 /core/templates/dev/head/services/AutoplayedVideosService*.ts @aks681 /core/templates/dev/head/services/RteHelperService*.ts @aks681 /core/domain/rte_component_registry*.py @vojtechjelinek /extensions/ckeditor_plugins/ @vojtechjelinek /extensions/rich_text_components/ @vojtechjelinek /assets/rich_text_components_definitions.js @vojtechjelinek # Suggestion and feedback team. # Suggestion project. /core/controllers/suggestion*.py @nithusha21 /core/domain/suggestion*.py @nithusha21 /core/storage/suggestion/ @nithusha21 /core/templates/dev/head/domain/suggestion/ @nithusha21 /core/templates/dev/head/services/SuggestionModalService.ts @nithusha21 # Feedback project. /core/controllers/feedback*.py @nithusha21 /core/domain/feedback*.py @nithusha21 /core/storage/feedback/ @nithusha21 /core/templates/dev/head/components/ratings/rating-display/rating-display.directive.html @nithusha21 /core/templates/dev/head/components/ratings/ @nithusha21 /core/templates/dev/head/domain/feedback_message/ @nithusha21 /core/templates/dev/head/domain/feedback_thread/ @nithusha21 /core/templates/dev/head/pages/exploration-editor-page/feedback-tab/ @nithusha21 # Simple pages. /core/controllers/pages*.py @vojtechjelinek /core/controllers/custom_landing_pages*.py @vojtechjelinek /core/templates/dev/head/pages/contact-page/ @vojtechjelinek /core/templates/dev/head/pages/donate-page/ @vojtechjelinek /core/templates/dev/head/pages/error-pages/ @vojtechjelinek /core/templates/dev/head/pages/get-started-page/ @vojtechjelinek /core/templates/dev/head/pages/landing-pages/ @vojtechjelinek /core/templates/dev/head/pages/maintenance-page/ @vojtechjelinek /core/templates/dev/head/pages/preferences-page/ @vojtechjelinek /core/templates/dev/head/pages/signup-page/ @vojtechjelinek /core/templates/dev/head/pages/splash-page/ @vojtechjelinek /core/templates/dev/head/pages/teach-page/ @vojtechjelinek /core/templates/dev/head/pages/thanks-page/ @vojtechjelinek # Speed Improvement team. /app_dev.yaml @vojtechjelinek /core/templates/dev/head/base_components/ @jamesjay4199 @vojtechjelinek /core/templates/dev/head/pages/Base.ts @vojtechjelinek /core/templates/dev/head/pages/base.html @vojtechjelinek /core/templates/dev/head/pages/oppia_footer_directive.html @vojtechjelinek /core/templates/dev/head/pages/OppiaFooterDirective.ts @vojtechjelinek /core/templates/dev/head/pages/footer_js_libs.html @vojtechjelinek /core/templates/dev/head/pages/header_css_libs.html @vojtechjelinek /core/templates/dev/head/pages/header_js_libs.html @vojtechjelinek /core/templates/dev/head/services/CsrfTokenService*.ts @jamesjay4199 @vojtechjelinek /gulpfile.js @vojtechjelinek /jinja_utils*.py @vojtechjelinek /webpack.config.ts @vojtechjelinek /webpack.dev.config.ts @vojtechjelinek /webpack.prod.config.ts @vojtechjelinek # Typings. /typings @ankita240796 # User’s profile page. /core/controllers/profile*.py @kevinlee12 /core/templates/dev/head/domain/user/ @kevinlee12 /core/templates/dev/head/pages/profile-page/ @kevinlee12 /core/templates/dev/head/services/UserService*.ts @kevinlee12 /core/templates/dev/head/services/services.constants.ts @kevinlee12 # Draft version upgrade. /core/domain/draft_upgrade_services*.py @sshou14 # Critical files. # # IMPORTANT NOTE: Please ensure that these files are always located at the end # of the CODEOWNERS file, since later rows override earlier ones. For details, # see the example at the bottom of this page: # # https://help.github.com/en/articles/about-code-owners # # On modifying this list make sure to keep the CODEOWNER_IMPORTANT_PATHS list # in scripts/pre_commit_linter.py in sync with the modifications. /core/controllers/acl_decorators*.py @seanlip /core/controllers/base*.py @seanlip /core/domain/dependency_registry*.py @seanlip /core/domain/html*.py @seanlip /core/domain/rights_manager*.py @seanlip /core/domain/role_services*.py @seanlip /core/storage/ @seanlip /core/domain/user*.py @seanlip /export/ @seanlip /manifest.json @seanlip @vojtechjelinek /package*.json @seanlip @vojtechjelinek /scripts/install_third_party.sh @seanlip @vojtechjelinek /.github/ @DubeySandeep