Skip to content

Conversation

@grphil
Copy link
Collaborator

@grphil grphil commented May 4, 2025

Фронтенд это худшее что придумало человечество

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

This PR adds a new admin client to the project, introducing several pages, components, and configuration updates for the administration interface.

  • Adds React pages and components for managing problems and submissions.
  • Configures routing and builds for the new admin interface.
  • Updates server-side configurations and client base initialization to support admin functionality.

Reviewed Changes

Copilot reviewed 73 out of 73 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
clients/frontend/admin/pages/Problem.jsx Implements the problem editing form and alert notifications.
clients/frontend/admin/pages/NewSubmission.jsx Introduces a form for creating a new submission with file upload support.
clients/frontend/admin/pages/NewProblem.jsx Provides a form for creating new problems with navigation updates.
clients/frontend/admin/pages/Home.jsx Implements the main admin dashboard with navigation links.
clients/frontend/admin/components/submission/TestData.jsx Implements test data management and rendering for submissions.
clients/frontend/admin/components/submission/SubmissionsFilters.jsx Provides filtering functionality for submissions.
clients/frontend/admin/components/submission/DisplaySourceCode.jsx Enables source code display with syntax highlighting.
clients/frontend/admin/components/problem/ProblemForm.jsx Creates a reusable component for problem input forms.
clients/frontend/admin/components/Verdict.jsx Displays verdicts with color-coded labels based on outcome.
clients/frontend/admin/components/Pagination.jsx Implements pagination for navigating admin pages.
clients/frontend/admin/components/Links.jsx Renders navigational links for the admin interface.
clients/frontend/admin/components/ChangeAlert.jsx Displays alert messages and handles alert requests on change events.
clients/frontend/admin/components/Body.jsx Wraps content with navigation breadcrumbs and layout structure.
clients/frontend/admin/Admin.jsx Main entry point for the admin client, defining the routes.
clients/esbuild.js Configures the ESBuild process for bundling the admin client.
clients/configs/config.yaml Contains configuration for client connections and admin flag.
clients/common/session.go Includes placeholders for auth and CSRF middlewares.
clients/common/clientconfig/config.go Defines the client configuration structure.
clients/common/client_base.go Initializes the client, sets up routing and connections.
clients/admin/handler.go Sets up admin routes and serves the admin frontend.

Copy link
Collaborator

@misha567889 misha567889 left a comment

Choose a reason for hiding this comment

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

Пока посмотрел только до icpc generator включительно. Не очень понимаю, зачем надо было его радикально менять. Если не работал какой-то сценарий, то почему бы его не добавить в тесты) Если только статистики не хватало, то ее можно сильно проще просто добавить в текущее кажется (в 100й строке перекинуть, в 34й занулить)

@grphil
Copy link
Collaborator Author

grphil commented May 4, 2025

Не очень понимаю, зачем надо было его радикально менять. Если не работал какой-то сценарий, то почему бы его не добавить в тесты) Если только статистики не хватало, то ее можно сильно проще просто добавить в текущее кажется (в 100й строке перекинуть, в 34й занулить)

Тут скорее я готовлюсь к следующему коммиту, где добавлю отправку промежуточного результата тестирования от мастера к клиенту. И там как раз надо только протестированный префикс отдавать

@grphil grphil requested review from Copilot and misha567889 May 9, 2025 20:31
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

This PR introduces an admin client for the testing system frontend with new pages, components, and build configuration to support administrative operations.

  • Added pages for Problems, Submissions, New Problem/Submissions, and Home.
  • Introduced new reusable components such as ProblemForm, ChangeAlert, Pagination, and various submission-related components.
  • Added configuration and handler code on the server-side to support the admin client.

Reviewed Changes

Copilot reviewed 105 out of 105 changed files in this pull request and generated 3 comments.

File Description
clients/frontend/admin/pages/* Added new pages for admin functionality with routing and API calls.
clients/frontend/admin/components/* Added components for rendering forms, alerts, verdicts, pagination, and resource outputs.
clients/esbuild.js Introduced esbuild configuration for bundling the admin client.
clients/common/* & clients/admin/handler.go Added/update server configurations and routing for the admin client.
Comments suppressed due to low confidence (1)

clients/frontend/admin/components/CompilationData.jsx:48

  • Remove the debugging console.log statement before production deployment.
  console.log(compilationData)

@grphil grphil requested a review from Copilot May 9, 2025 20:39
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

This PR introduces a new admin client for the testing system along with several supporting pages and components for managing problems, submissions, and status. Key changes include:

  • Addition of several React components, pages, and utility modules for the admin frontend.
  • Integration of axios API calls and state management for problems, submissions, test data, and compilation results.
  • Updates to backend components and configuration to support the admin interface.

Reviewed Changes

Copilot reviewed 105 out of 105 changed files in this pull request and generated 1 comment.

File Description
clients/frontend/admin/pages/* New pages for problem management, new submissions, and homepage tailored for the admin interface
clients/frontend/admin/components/* New/reworked components for rendering test data, problem forms, verdicts, pagination, links, alerts, and body layout
clients/esbuild.js Build configuration for bundling the admin frontend assets
clients/common/* & clients/admin/handler.go Backend setup and routing support for the admin interface
Comments suppressed due to low confidence (1)

clients/frontend/admin/components/SubmissionsFilters.jsx:33

  • [nitpick] Consider changing 'ProblemID' to 'Problem ID' for improved readability and consistency.
<label htmlFor="problem_id">ProblemID</label>

Copy link
Collaborator

@misha567889 misha567889 left a comment

Choose a reason for hiding this comment

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

не смотрел папку clients + кажется оч плохо посмотреть остальное)

Type JobType `json:"type" binding:"required"`
Test uint64 `json:"test"`

// TODO: Add job dependency
Copy link
Collaborator

Choose a reason for hiding this comment

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

а какие зависимости еще будут?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Если джоб зафейлился, то другие тоже надо SK пометить. А то при TL это очень жестко нас убивает и мы много лишних секунд тестируем

@grphil grphil merged commit c42bc21 into main May 13, 2025
1 check passed
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.

4 participants