task completed#77
Conversation
mateacademy-ai-mentor
left a comment
There was a problem hiding this comment.
Review Summary
I am asking for some updates before this can be considered complete, mainly because several explicit checklist requirements are not yet met. The repo does not contain an actual Prettier configuration file (such as .prettierrc or a prettier field in package.json), which violates the "Set up Prettier" requirement [CHECKLIST ITEM #8]; please add that file and ensure it matches the theory instructions. Husky and lint-staged are also missing (no .husky directory and no lint-staged config in package.json), so pre-commit checks are not wired up as required [CHECKLIST ITEM #9]; you should add a .husky/pre-commit script that runs npx lint-staged and define a lint-staged section (e.g. to run eslint --fix and prettier --write on staged JS files). In eslint.config.mjs, eslint-config-prettier is imported but applied before your main ESLint configuration; it should be the last element in the exported config array so that its rule-disables are not overridden [CHECKLIST ITEM #7] [CHECKLIST ITEM #8]. There is also no evidence in the repo that you ran npx eslint and fixed all reported issues, or that you executed npm ci, npx playwright install, and re-ran the tests to a passing state, all of which are required steps [CHECKLIST ITEM #7] [CHECKLIST ITEM #10]; after adding the configs, run those commands, fix any remaining lint/test failures, and commit the results. On the positive side, your Playwright page objects and tests are structured sensibly and the presence of eslint.config.mjs shows you’ve started integrating the tooling correctly; once the missing configuration files are added, the ESLint/Prettier order is fixed, and the required commands have been run with passing results, this will align well with the task requirements.
✨ Please rate this review in the Platform's notification center1. I will be grateful for your feedback! ✨
Important
Fix the issues, commit the changes, and then re-request my review using the Re-request review button2 in the Reviewers tab.
Tip
If you have any comments about this review, please leave a message in the Add a comment section below and mention me with the @mateacademy-ai-mentor tag3.
I will read your message during my next review of your pull request. Please do not reply directly to my comments, as that feature is not supported yet.
Caution
Do not close the pull request until the review is complete. Closing it early can lead to unexpected behavior and disrupt the review process.
Footnotes
| @@ -1,9 +1,9 @@ | |||
| import { expect } from "@playwright/test"; | |||
| import { expect } from '@playwright/test'; | |||
There was a problem hiding this comment.
This violates checklist item "Husky and Lint-Staged setup correctness": there is no Husky or lint-staged configuration present in the provided files. Add Husky hooks and a lint-staged config (and related package.json scripts) to enable pre-commit checks.
| import { expect } from '@playwright/test'; | ||
|
|
||
| export class SignUpPage { | ||
| constructor(page) { |
There was a problem hiding this comment.
A Prettier configuration file is not present in the provided files. The task requires: "Set up Prettier using the instructions given in the theory section." Please add a Prettier config (for example .prettierrc or a prettier field in package.json) and ensure it's integrated. [CHECKLIST ITEM #8]
| this.errorMessage = page.getByRole("list").nth(1); | ||
| this.usernameField = page.getByPlaceholder('Username'); | ||
| this.emailField = page.getByPlaceholder('Email'); | ||
| this.passwordField = page.getByPlaceholder('Password'); |
There was a problem hiding this comment.
An ESLint configuration file exists here (eslint.config.mjs). The task explicitly requires: "Run the npx eslint command and make sure you see the list of errors." I see no evidence (commits/hooks/config) that npx eslint was executed and all reported issues were fixed — please run npx eslint, fix issues, and commit the results. [CHECKLIST ITEM #7]
| @@ -1,17 +1,17 @@ | |||
| import { expect } from "@playwright/test"; | |||
| import { expect } from '@playwright/test'; | |||
There was a problem hiding this comment.
I do not see Husky or lint-staged configuration in the provided files. The task requires: "Set up Husky and Lint-Staged using instructions given in the theory section." Please add Husky hooks and a lint-staged config so pre-commit checks run. [CHECKLIST ITEM #9]
| this.errorMessage = page.getByRole('list').nth(1); | ||
| } | ||
|
|
||
| async open() { |
There was a problem hiding this comment.
The description requires re-running tests and ensuring they pass: "Re-run all your tests and make sure they pass after the updates." I cannot verify test execution or passing status from the repository snapshot — please run the tests after fixes (npx playwright install then your test command), resolve any failures, and commit the passing state. [CHECKLIST ITEM #10]
| }); | ||
|
|
||
| test("Assert error message for empty username in Sign up form", async () => { | ||
| await signUpPage.fillEmailField("test@gmail.com"); | ||
| await signUpPage.fillPasswordField("newpass123!"); | ||
| test('Assert error message for empty username in Sign up form', async () => { | ||
| await signUpPage.fillEmailField('test@gmail.com'); |
There was a problem hiding this comment.
This violates checklist item [CHECKLIST ITEM #8] "- Prettier configuration correctness" and checklist item [CHECKLIST ITEM #7] "- ESLint configuration correctness": eslintConfigPrettier is placed before the main ESLint configuration in the exported array. Prettier-related disables should be applied last so they are not overridden — move eslintConfigPrettier to the end of the exported array.
| import { SignUpPage } from '../../src/pages/SignUpPage'; | ||
|
|
||
| test.describe("Sign up negative tests", () => { | ||
| test.describe('Sign up negative tests', () => { |
There was a problem hiding this comment.
This violates checklist item [CHECKLIST ITEM #8] "- Prettier configuration correctness": there is an import for eslint-config-prettier but I do not see an explicit Prettier config file (for example .prettierrc or a prettier field in package.json) among the provided files. The task requires you to "Set up Prettier".
| @@ -1,37 +1,38 @@ | |||
| import { test } from "@playwright/test"; | |||
| import { SignUpPage } from "../../src/pages/SignUpPage"; | |||
| import { test } from '@playwright/test'; | |||
There was a problem hiding this comment.
This violates checklist item [CHECKLIST ITEM #9] "- Husky and Lint-Staged setup correctness": I do not see any Husky hooks (e.g., a .husky directory) or a lint-staged configuration in the provided files. Please add Husky hooks and a lint-staged config so pre-commit checks run as required.
| @@ -4,34 +4,28 @@ import { SignUpPage } from '../../src/pages/SignUpPage'; | |||
| import { HomePage } from '../../src/pages/HomePage'; | |||
There was a problem hiding this comment.
This violates checklist item [CHECKLIST ITEM #8]: 'Prettier configuration correctness' — I do not see an explicit Prettier configuration file (for example .prettierrc or a prettier field in package.json) among the provided files. Please add the Prettier config so Prettier is actually configured.
| let user; | ||
|
|
||
| test.beforeEach( async ({ page }) => { | ||
| signUpPage = new SignUpPage(page); | ||
| homePage = new HomePage(page); | ||
|
|
||
| test.beforeEach(async ({ page }) => { | ||
| homePage = new HomePage(page); | ||
|
|
||
| user = { |
There was a problem hiding this comment.
This violates checklist item [CHECKLIST ITEM #7]: 'ESLint configuration correctness' and checklist item [CHECKLIST ITEM #8]: 'Prettier configuration correctness' — eslintConfigPrettier is included in the exported array before the main ESLint configuration. Prettier's config should be applied last so its rule disables are not overridden; move eslintConfigPrettier to the end of the exported array.
mateacademy-ai-mentor
left a comment
There was a problem hiding this comment.
Review Summary
Changes are needed because several explicit checklist requirements for tooling and automation are not yet satisfied, which means the task cannot be considered complete.
The critical blockers are: 1) in eslint.config.mjs, eslint-config-prettier is not the last element in the exported config array, which violates the requirement that Prettier’s rule-disables be applied last [CHECKLIST ITEM #7] [CHECKLIST ITEM #8]; 2) the Prettier setup is incomplete at the repo level (you must have a real Prettier config, e.g. .prettierrc or a prettier field in package.json, matching the theory instructions) [CHECKLIST ITEM #8]; 3) Husky and lint-staged are not fully wired so that .husky/pre-commit runs npx lint-staged and package.json contains a lint-staged section (e.g. running eslint --fix and prettier --write on staged JS files) [CHECKLIST ITEM #9].
In addition, there is no evidence that after adding these configs you ran npx eslint and fixed all reported issues, executed npm ci, executed npx playwright install, re-ran the tests to a passing state, and committed the results, which is explicitly required [CHECKLIST ITEM #7] [CHECKLIST ITEM #10].
To move forward, please: move eslint-config-prettier to be the final element in the exported array in eslint.config.mjs, ensure a proper Prettier configuration file is present and aligned with the theory, set up Husky and lint-staged as required, then run npm ci, npx playwright install, npx eslint, fix any lint errors, re-run tests until green, and commit all changes.
As a smaller improvement, make sure your .prettierrc (or equivalent) exactly reflects the formatting rules specified in the course materials and that your commit history clearly shows the sequence of adding configs, running tools, and fixing issues.
Your Playwright tests and page-object structure look like a solid foundation; once the tooling and checklist items are fully wired up and verified, your submission should be in good shape.
✨ Please rate this review in the Platform's notification center1. I will be grateful for your feedback! ✨
Important
Fix the issues, commit the changes, and then re-request my review using the Re-request review button2 in the Reviewers tab.
Tip
If you have any comments about this review, please leave a message in the Add a comment section below and mention me with the @mateacademy-ai-mentor tag3.
I will read your message during my next review of your pull request. Please do not reply directly to my comments, as that feature is not supported yet.
Caution
Do not close the pull request until the review is complete. Closing it early can lead to unexpected behavior and disrupt the review process.
Footnotes
| this.passwordField = page.getByPlaceholder('Password'); | ||
| this.signUpButton = page.getByRole('button', { name: 'Sign up' }); | ||
| this.errorMessage = page.getByRole('list').nth(1); | ||
| } |
There was a problem hiding this comment.
The eslint-config-prettier entry is placed before your main ESLint config object. Per the requirement, eslint-config-prettier must be the last element in the exported config array so its rule-disables are not overridden: "ESLint configuration must include eslint-config-prettier as the last element in the exported config array in eslint.config.mjs. [CHECKLIST ITEM #7] [CHECKLIST ITEM #8]".
| import { expect } from '@playwright/test'; | ||
|
|
||
| export class SignUpPage { | ||
| constructor(page) { |
There was a problem hiding this comment.
You import eslint-config-prettier here, but the repository is missing an actual Prettier configuration file (e.g. .prettierrc or prettier field in package.json). Please add a Prettier config that matches the theory instructions: "The repo must contain an actual Prettier configuration file (such as .prettierrc or a prettier field in package.json), and it must match the theory instructions. [CHECKLIST ITEM #8]".
| @@ -1,17 +1,17 @@ | |||
| import { expect } from "@playwright/test"; | |||
| import { expect } from '@playwright/test'; | |||
There was a problem hiding this comment.
The project currently lacks Husky and lint-staged wiring (pre-commit hook running npx lint-staged and a lint-staged configuration). Add .husky/pre-commit and a lint-staged section so pre-commit checks are wired up: "Husky and lint-staged must be present so that pre-commit checks are wired up as required. [CHECKLIST ITEM #9]".
| this.errorMessage = page.getByRole("list").nth(1); | ||
| this.usernameField = page.getByPlaceholder('Username'); | ||
| this.emailField = page.getByPlaceholder('Email'); | ||
| this.passwordField = page.getByPlaceholder('Password'); |
There was a problem hiding this comment.
After adding the configs, make sure to run npx eslint, fix all reported issues, run npm ci and npx playwright install, re-run tests until they pass, and commit the results as required: "After adding the configs, run npx eslint and fix all reported issues, execute npm ci, execute npx playwright install, re-run the tests to a passing state, and commit the results. [CHECKLIST ITEM #7] [CHECKLIST ITEM #10]".
| /** @type {import('eslint').Linter.Config[]} */ | ||
| export default [ | ||
| { languageOptions: { globals: globals.node } }, | ||
| eslintConfigPrettier, |
There was a problem hiding this comment.
eslintConfigPrettier is included in the exported config array here but is not the last element. This violates the requirement: "ESLint configuration must include eslint-config-prettier as the last element in the exported config array in eslint.config.mjs. [CHECKLIST ITEM #7] [CHECKLIST ITEM #8]". Move the eslintConfigPrettier entry so it is the final element of the exported array (after your main config) so Prettier’s rule disables are applied last.
| import { SignUpPage } from '../../src/pages/SignUpPage'; | ||
|
|
||
| test.describe("Sign up negative tests", () => { | ||
| test.describe('Sign up negative tests', () => { |
There was a problem hiding this comment.
The repository lacks an actual Prettier configuration file. This violates: "The repo must contain an actual Prettier configuration file (such as .prettierrc or a prettier field in package.json), and it must match the theory instructions. [CHECKLIST ITEM #8]" — add a .prettierrc (or prettier field in package.json) per the theory instructions.
| @@ -1,37 +1,38 @@ | |||
| import { test } from "@playwright/test"; | |||
| import { SignUpPage } from "../../src/pages/SignUpPage"; | |||
| import { test } from '@playwright/test'; | |||
There was a problem hiding this comment.
Husky and lint-staged are not configured/wired up. This violates: "Husky and lint-staged must be present so that pre-commit checks are wired up as required. [CHECKLIST ITEM #9]" — add Husky and create .husky/pre-commit that runs npx lint-staged, and add a lint-staged section (for example, run eslint --fix and prettier --write on staged JS files).
| test("Assert error message for empty password in Sign up form", async () => { | ||
| await signUpPage.fillUsernameField("newuser"); | ||
| await signUpPage.fillEmailField("test@gmail.com"); | ||
| test('Assert error message for empty password in Sign up form', async () => { |
There was a problem hiding this comment.
There is no evidence you ran the required post-config commands and fixed reported issues. Per the requirements: "After adding the configs, run npx eslint and fix all reported issues, execute npm ci, execute npx playwright install, re-run the tests to a passing state, and commit the results. [CHECKLIST ITEM #7] [CHECKLIST ITEM #10]" — please run these commands, fix lint/test failures, and commit the results so the repo reflects the passing state.
| signUpPage = new SignUpPage(page); | ||
| homePage = new HomePage(page); | ||
|
|
||
| test.beforeEach(async ({ page }) => { |
There was a problem hiding this comment.
This places eslint-config-prettier before your main config object. This violates the requirement: "In eslint.config.mjs, ensure eslint-config-prettier is the last element in the exported config array. [CHECKLIST ITEM #7] [CHECKLIST ITEM #8]" — move the eslintConfigPrettier entry so it is the final element of the exported array (after your main config) so Prettier’s rule-disables are applied last.
| @@ -4,34 +4,28 @@ import { SignUpPage } from '../../src/pages/SignUpPage'; | |||
| import { HomePage } from '../../src/pages/HomePage'; | |||
There was a problem hiding this comment.
Repository is missing an actual Prettier configuration file. This violates: "The repo must contain an actual Prettier configuration file (such as .prettierrc or a prettier field in package.json), and it must match the theory instructions. [CHECKLIST ITEM #8]" — add a .prettierrc (or prettier field) per the theory instructions.
mateacademy-ai-mentor
left a comment
There was a problem hiding this comment.
Review Summary
I am approving your work as an educational override so you can keep progressing, but there are still a few important tooling items to fix to fully meet the checklist requirements. You’ve done well setting up the Playwright pages/tests and starting on Prettier/Husky configuration, which shows good progress on the automation side. The most critical issue is that in eslint.config.mjs the eslintConfigPrettier entry is placed before the main config object; it must be the final element in the exported array so that Prettier’s rule-disables apply last [CHECKLIST ITEM #7][CHECKLIST ITEM #8]. At the repo root you also need a definitive Prettier configuration (either a .prettierrc matching the course rules or a prettier field in package.json), otherwise formatting will be inconsistent across the project [CHECKLIST ITEM #8]. Husky and lint-staged are not yet fully wired: create .husky/pre-commit that runs npx lint-staged and add a lint-staged section in package.json to run eslint --fix and prettier --write on staged JS/TS files [CHECKLIST ITEM #9]. After adjusting these configs, run npm ci, npx playwright install, then npx eslint (fix all reported issues) and re-run the Playwright tests until they pass, committing the resulting changes so reviewers can see that flow [CHECKLIST ITEM #7][CHECKLIST ITEM #10]. Overall you’re on the right track—tightening up these tooling steps will give you a robust, professional workflow and make future reviews much smoother.
✨ Please rate this review in the Platform's notification center1. I will be grateful for your feedback! ✨
Footnotes
| import { expect } from '@playwright/test'; | ||
|
|
||
| export class HomePage { | ||
| constructor(page) { |
There was a problem hiding this comment.
This violates the requirement: "The Prettier setup must not be incomplete at the repo level; you must have a real Prettier config, e.g. .prettierrc or a prettier field in package.json, matching the theory instructions. [CHECKLIST ITEM #8]" I don't see a repo-level Prettier config in the provided files. Add a .prettierrc (or the prettier field in package.json) with the course-specified rules.
| this.yourFeedTab = page.getByText("Your Feed"); | ||
| this.yourFeedTab = page.getByText('Your Feed'); | ||
| } | ||
|
|
There was a problem hiding this comment.
This violates the requirement: "After adding the configs, you must run npx eslint and fix all reported issues, execute npm ci, execute npx playwright install, re-run the tests to a passing state, and commit the results. [CHECKLIST ITEM #7] [CHECKLIST ITEM #10]" There's no evidence in the current submission that you ran these commands and committed the resulting fixes. After making the config changes above, run the listed commands, fix lint errors, re-run tests until green, and commit the changes.
| this.emailField = page.getByPlaceholder('Email'); | ||
| this.passwordField = page.getByPlaceholder('Password'); | ||
| this.signUpButton = page.getByRole('button', { name: 'Sign up' }); | ||
| this.errorMessage = page.getByRole('list').nth(1); |
There was a problem hiding this comment.
This violates the requirement: "In eslint.config.mjs, move eslint-config-prettier to be the final element in the exported config array so that Prettier’s rule-disables are applied last. [CHECKLIST ITEM #7] [CHECKLIST ITEM #8]" — eslintConfigPrettier is currently placed as the second element of the exported array (line 10). Move it to be the last element in the exported array (after the main config object).
| import { expect } from '@playwright/test'; | ||
|
|
||
| export class SignUpPage { | ||
| constructor(page) { |
There was a problem hiding this comment.
This violates the requirement: "The Prettier setup must not be incomplete at the repo level; you must have a real Prettier config, e.g. .prettierrc or a prettier field in package.json, matching the theory instructions. [CHECKLIST ITEM #8]" — I do not see a repo-level Prettier config. Add a .prettierrc (or prettier field) that matches the course formatting rules.
| @@ -1,17 +1,17 @@ | |||
| import { expect } from "@playwright/test"; | |||
| import { expect } from '@playwright/test'; | |||
There was a problem hiding this comment.
This violates the requirement: "Husky and lint-staged must be fully wired so that .husky/pre-commit runs npx lint-staged and package.json contains a lint-staged section (e.g. running eslint --fix and prettier --write on staged JS files). [CHECKLIST ITEM #9]" — I don't see Husky or lint-staged wiring in the repo. Add .husky/pre-commit that runs npx lint-staged and add a lint-staged section to package.json to run eslint --fix and prettier --write on staged files.
| this.errorMessage = page.getByRole("list").nth(1); | ||
| this.usernameField = page.getByPlaceholder('Username'); | ||
| this.emailField = page.getByPlaceholder('Email'); | ||
| this.passwordField = page.getByPlaceholder('Password'); |
There was a problem hiding this comment.
This violates the requirement: "After adding the configs, you must run npx eslint and fix all reported issues, execute npm ci, execute npx playwright install, re-run the tests to a passing state, and commit the results. [CHECKLIST ITEM #7] [CHECKLIST ITEM #10]" — there's no evidence these steps were executed and committed. After fixing configs, run these commands, address lint errors, run tests until green, and commit the results.
| /** @type {import('eslint').Linter.Config[]} */ | ||
| export default [ | ||
| { languageOptions: { globals: globals.node } }, | ||
| eslintConfigPrettier, |
There was a problem hiding this comment.
This places eslint-config-prettier before the main config object. The requirements state: "In eslint.config.mjs, move eslint-config-prettier to be the final element in the exported config array so that Prettier’s rule-disables are applied last. [CHECKLIST ITEM #7] [CHECKLIST ITEM #8]" Move eslint-config-prettier to after the config object so it is the last element in the exported array.
| @@ -0,0 +1,34 @@ | |||
| import globals from 'globals'; | |||
There was a problem hiding this comment.
The repo is missing a top-level Prettier configuration. The requirements say: "The Prettier setup must not be incomplete at the repo level; you must have a real Prettier config, e.g. .prettierrc or a prettier field in package.json, matching the theory instructions. [CHECKLIST ITEM #8]" Add a .prettierrc (or prettier field in package.json) with the course-specified rules.
| @@ -0,0 +1,34 @@ | |||
| import globals from 'globals'; | |||
There was a problem hiding this comment.
Husky and lint-staged are not configured. The requirements state: "Husky and lint-staged must be fully wired so that .husky/pre-commit runs npx lint-staged and package.json contains a lint-staged section (e.g. running eslint --fix and prettier --write on staged JS files). [CHECKLIST ITEM #9]" Add Husky and a .husky/pre-commit that calls npx lint-staged, and add a lint-staged section to package.json.
| @@ -0,0 +1,34 @@ | |||
| import globals from 'globals'; | |||
There was a problem hiding this comment.
There is no evidence that you executed the required tooling and committed the results. The instructions require: "After adding the configs, you must run npx eslint and fix all reported issues, execute npm ci, execute npx playwright install, re-run the tests to a passing state, and commit the results." Please run those commands, fix any lint/test failures, and include the commit(s) in your PR. [CHECKLIST ITEM #7] [CHECKLIST ITEM #10]
| this.passwordField = page.getByPlaceholder('Password'); | ||
| this.signInButton = page.getByRole('button', { name: 'Sign in' }); | ||
| this.errorMessage = page.getByRole('list').nth(1); | ||
| } |
There was a problem hiding this comment.
This placement of eslint-config-prettier inside the exported array is incorrect. The task requirement states: "In eslint.config.mjs, move eslint-config-prettier to be the final element in the exported config array so that Prettier’s rule-disables are applied last." (This is required by CHECKLIST ITEM #7 / #8). Move the eslintConfigPrettier array element to be the very last entry in the exported array.
| import { expect } from '@playwright/test'; | ||
|
|
||
| export class SignInPage { | ||
| constructor(page) { |
There was a problem hiding this comment.
There is no repo-level Prettier configuration present. The task explicitly requires: "The Prettier setup must not be incomplete at the repo level; you must have a real Prettier config, e.g. .prettierrc or a prettier field in package.json, matching the theory instructions." (CHECKLIST ITEM #8). Add a .prettierrc (or prettier field in package.json) matching the course settings.
| @@ -1,16 +1,16 @@ | |||
| import { expect, test } from "@playwright/test"; | |||
| import { expect } from '@playwright/test'; | |||
There was a problem hiding this comment.
Husky and lint-staged are not wired up. The checklist requires: "Husky and lint-staged must be fully wired so that .husky/pre-commit runs npx lint-staged and package.json contains a lint-staged section (e.g. running eslint --fix and prettier --write on staged JS files)." (CHECKLIST ITEM #9). Add .husky/pre-commit that runs npx lint-staged and add the lint-staged config to package.json.
| this.errorMessage = page.getByRole("list").nth(1); | ||
| this.emailField = page.getByPlaceholder('Email'); | ||
| this.passwordField = page.getByPlaceholder('Password'); | ||
| this.signInButton = page.getByRole('button', { name: 'Sign in' }); |
There was a problem hiding this comment.
There is no evidence you ran the required tooling steps and committed the results. The task requires: "After adding the configs, you must run npx eslint and fix all reported issues, execute npm ci, execute npx playwright install, re-run the tests to a passing state, and commit the results." (CHECKLIST ITEM #7 and CHECKLIST ITEM #10). After you make the config fixes above, run those commands, resolve lint/test failures, and commit the results so the commit history shows these actions.
| import { test } from '@playwright/test'; | ||
| import { SignInPage } from '../../src/pages/SignInPage'; | ||
| import { HomePage } from '../../src/pages/HomePage'; | ||
|
|
There was a problem hiding this comment.
This violates the requirement: "The Prettier setup must not be incomplete at the repo level; you must have a real Prettier config, e.g. .prettierrc or a prettier field in package.json, matching the theory instructions." I do not see a repo-level Prettier config in the provided files. Add a .prettierrc (or prettier field in package.json) with the course-specified rules.
| import { test } from "@playwright/test"; | ||
| import { SignInPage } from "../../src/pages/SignInPage"; | ||
| import { HomePage } from "../../src/pages/HomePage"; | ||
| import { test } from '@playwright/test'; |
There was a problem hiding this comment.
This violates the requirement: "Husky and lint-staged must be fully wired so that .husky/pre-commit runs npx lint-staged and package.json contains a lint-staged section (e.g. running eslint --fix and prettier --write on staged JS files)." I don't see .husky/pre-commit or a lint-staged section in package.json in the provided files. Configure Husky and add a lint-staged entry.
| test.describe('Sign in positive tests', () => { | ||
| let signInPage; | ||
| let homePage; | ||
| let user; |
There was a problem hiding this comment.
This violates the requirement: "After adding the configs, you must run npx eslint and fix all reported issues, execute npm ci, execute npx playwright install, re-run the tests to a passing state, and commit the results." There's no evidence these commands were executed and the fixes committed. After addressing the config issues above, run those commands, resolve lint/test failures, and commit the results so the commit history shows these actions.
| test.beforeEach(async ({ page }) => { | ||
| signInPage = new SignInPage(page); | ||
| await signInPage.open(); | ||
| }); |
There was a problem hiding this comment.
This violates the requirement: "In eslint.config.mjs, move eslint-config-prettier to be the final element in the exported config array so that Prettier’s rule-disables be applied last. [CHECKLIST ITEM #7] [CHECKLIST ITEM #8]" Currently eslintConfigPrettier is placed as the second element of the exported array. Move the eslint-config-prettier entry to be the final element (after the main config object).
| import { SignInPage } from '../../src/pages/SignInPage'; | ||
|
|
||
| test.describe("Sign in negative tests", () => { | ||
| test.describe('Sign in negative tests', () => { |
There was a problem hiding this comment.
This violates the requirement: "The Prettier setup must not be incomplete at the repo level; you must have a real Prettier config, e.g. .prettierrc or a prettier field in package.json, matching the theory instructions. [CHECKLIST ITEM #8]" I do not see a repo-level Prettier config in the provided files. Add a .prettierrc (or prettier field in package.json) with the course-specified settings.
| @@ -1,32 +1,32 @@ | |||
| import { test } from "@playwright/test"; | |||
| import { SignInPage } from "../../src/pages/SignInPage"; | |||
| import { test } from '@playwright/test'; | |||
There was a problem hiding this comment.
This violates the requirement: "Husky and lint-staged must be fully wired so that .husky/pre-commit runs npx lint-staged and package.json contains a lint-staged section (e.g. running eslint --fix and prettier --write on staged JS files). [CHECKLIST ITEM #9]" I don't see Husky or a lint-staged section in package.json. Add Husky, create .husky/pre-commit that runs npx lint-staged, and add a lint-staged section to package.json that runs eslint --fix and prettier --write on staged JS files.
| test.beforeEach(async ({ page }) => { | ||
| signUpPage = new SignUpPage(page); | ||
| await signUpPage.open(); | ||
| }); |
There was a problem hiding this comment.
This violates the requirement: "In eslint.config.mjs, move eslint-config-prettier to be the final element in the exported config array so that Prettier’s rule-disables are applied last." Currently eslintConfigPrettier is placed as the second element of the exported array. Move the eslint-config-prettier entry to be the last element (after the main config object) so it is applied last.
| import { SignUpPage } from '../../src/pages/SignUpPage'; | ||
|
|
||
| test.describe("Sign up negative tests", () => { | ||
| test.describe('Sign up negative tests', () => { |
There was a problem hiding this comment.
This violates the requirement: "The Prettier setup must not be incomplete at the repo level; you must have a real Prettier config, e.g. .prettierrc or a prettier field in package.json, matching the theory instructions. [CHECKLIST ITEM #8]" I do not see a repo-level Prettier config in the provided files. Add a .prettierrc (or prettier field in package.json) containing the course-specified rules.
| @@ -1,37 +1,38 @@ | |||
| import { test } from "@playwright/test"; | |||
| import { SignUpPage } from "../../src/pages/SignUpPage"; | |||
| import { test } from '@playwright/test'; | |||
There was a problem hiding this comment.
This violates the requirement: "Husky and lint-staged must be fully wired so that .husky/pre-commit runs npx lint-staged and package.json contains a lint-staged section (e.g. running eslint --fix and prettier --write on staged JS files). [CHECKLIST ITEM #9]" I don't see Husky or a lint-staged config in the provided files. Add Husky, create .husky/pre-commit to run npx lint-staged, and add a lint-staged section to package.json to run eslint --fix and prettier --write on staged files.
| signUpPage = new SignUpPage(page); | ||
| homePage = new HomePage(page); | ||
|
|
||
| test.beforeEach(async ({ page }) => { |
There was a problem hiding this comment.
This violates the requirement: "In eslint.config.mjs, move eslint-config-prettier to be the final element in the exported config array so that Prettier’s rule-disables be applied last." eslintConfigPrettier is currently an earlier element of the exported array — move it to be the last element after the main config object.
| @@ -4,34 +4,28 @@ import { SignUpPage } from '../../src/pages/SignUpPage'; | |||
| import { HomePage } from '../../src/pages/HomePage'; | |||
There was a problem hiding this comment.
This violates the requirement: "The Prettier setup must not be incomplete at the repo level; you must have a real Prettier config, e.g. .prettierrc or a prettier field in package.json, matching the theory instructions. [CHECKLIST ITEM #8]" I do not see a repo-level Prettier config in the provided files. Add a .prettierrc (or prettier field) with the course-specified rules.
| test.describe('Sign up positive tests', () => { | ||
| let signUpPage; | ||
| let homePage; | ||
| let user; |
There was a problem hiding this comment.
This violates the requirement: "After adding the configs, you must run npx eslint and fix all reported issues, execute npm ci, execute npx playwright install, re-run the tests to a passing state, and commit the results. [CHECKLIST ITEM #7] [CHECKLIST ITEM #10]" There's no evidence these steps were executed and committed. After you make the config changes, run those commands, resolve lint/test failures, and commit the results.
No description provided.