Skip to content

Releases: ladamczyk-it/qoq

v6.1.6

Choose a tag to compare

@ladamczyk-it ladamczyk-it released this 04 Sep 10:14

6.1.6 (2026-09-04)

Bug Fixes

v6.1.5

Choose a tag to compare

@ladamczyk-it ladamczyk-it released this 28 Aug 21:26

6.1.5 (2026-08-28)

Bug Fixes

v6.1.4

Choose a tag to compare

@ladamczyk-it ladamczyk-it released this 28 Aug 21:12

6.1.4 (2026-08-28)

Bug Fixes

v6.1.3

Choose a tag to compare

@ladamczyk-it ladamczyk-it released this 20 Aug 15:52

6.1.3 (2026-08-20)

Bug Fixes

  • bump packages + add limit flag to qoq execute skill (6c00540)

v6.1.2

Choose a tag to compare

@ladamczyk-it ladamczyk-it released this 19 Aug 08:17

6.1.2 (2026-08-19)

Bug Fixes

v6.1.1

Choose a tag to compare

@ladamczyk-it ladamczyk-it released this 19 Aug 07:36

6.1.1 (2026-08-19)

Bug Fixes

  • eslint rules changes for RTL + skill hash and agents install change (011f2ce)

v6.1.0

Choose a tag to compare

@ladamczyk-it ladamczyk-it released this 18 Aug 20:53

6.1.0 (2026-08-18)

Bug Fixes

  • add self-learning estimate to qoq plan skill (2d56439)
  • bump packages (cae5406)

Features

  • add custom agent for design patterns suggestions + skill optimalizations and version sync (ce44fff)

v6.0.1

Choose a tag to compare

@ladamczyk-it ladamczyk-it released this 16 Aug 16:25

6.0.1 (2026-08-16)

Bug Fixes

  • utilize new options for skillslint and structurelint (2f96f88)

v6.0.0

Choose a tag to compare

@ladamczyk-it ladamczyk-it released this 15 Aug 19:22

6.0.0 (2026-08-15)

  • feat!: compose configs.base in eslint-v9-ts-jest-rtl (plan 2.4) (589e13c)
  • feat!: compose configs.base in eslint-v9-ts-react (plan 2.2) (cb5b358)
  • feat!: compose configs.base in eslint-v9-ts-vitest-rtl (plan 2.3) (ffd65aa)
  • feat!: compose generated eslint config with defineConfig (plan 3.2) (ed1a587)
  • feat!: delete the pre-merged baseConfig export from eslint-v9-js-jest (plan 4.2) (3735fe4)
  • feat!: delete the pre-merged baseConfig export from eslint-v9-js-jest-rtl (plan 4.3) (7bcc1de)
  • feat!: delete the pre-merged baseConfig export from eslint-v9-js-react (plan 4.4) (dd23120)
  • feat!: delete the pre-merged baseConfig export from eslint-v9-js-vitest (plan 4.5) (dd550e8)
  • feat!: delete the pre-merged baseConfig export from eslint-v9-js-vitest-rtl (plan 4.6) (0199e96)
  • feat!: delete the pre-merged baseConfig export from eslint-v9-ts-jest (plan 4.8) (577915c)
  • feat!: delete the pre-merged baseConfig export from eslint-v9-ts-jest-rtl (plan 4.9) (165a36c)
  • feat!: delete the pre-merged baseConfig export from eslint-v9-ts-react (plan 4.10) (c1eb700)
  • feat!: delete the pre-merged baseConfig export from eslint-v9-ts-vitest (plan 4.11) (f2ec46a)
  • feat!: delete the pre-merged baseConfig export from eslint-v9-ts-vitest-rtl (plan 4.12) (88f9031)
  • feat!: delete the pre-merged baseConfig, testConfig and strictConfig exports from eslint-v9-ts (plan 4.7) (0f69a9e)
  • feat!: restore upstream testing-library rules in eslint-v9-js-jest-rtl (plan 1.5) (55fe1c3)
  • feat!: restore upstream testing-library rules in eslint-v9-js-vitest-rtl (plan 1.4) (f3bb62e)
  • refactor!: rename baseConfig to jsLayer and unify the layer type (d8ff6ef)

Bug Fixes

  • bump packages (5c999de)
  • cleanup (a9b414f)
  • deprecate objectMergeRight (1afac02)
  • drop switch-exhaustiveness-check to restore master parity (plan 5.8) (ca8a2e6)
  • qoq skill adjust (9290b99)
  • surface prepare-time errors and simplify the eslint glob filtering (plan 6.2) (585b561)

Features

  • accept flat-config arrays in stats helpers (plan 3.1) (1358b46)
  • add usage statistics (d19c36a)
  • compose configs.base from delta layers in eslint-v9-ts-jest (plan 2.1) (8f6b859)
  • draft defineConfig layer composition for the js/ts/vitest eslint chain (0b27242)
  • extract jestLayer and configs.base in eslint-v9-js-jest (plan 1.2) (33891d1)
  • extract reactLayer and configs.base in eslint-v9-js-react (plan 1.3) (87537c6)

BREAKING CHANGES

  • some interfaces changed, one deprecation added
  • baseConfig is renamed to jsLayer in
    @ladamczyk/qoq-eslint-v9-js, and disabledRules is no longer exported from
    qoq-eslint-v9-js-{jest,jest-rtl,vitest,vitest-rtl,react}.

Co-Authored-By: Claude Opus 5 noreply@anthropic.com
Claude-Session: https://claude.ai/code/session_01A3QPd3n6kE3TuSXCDrLm4W

  • baseConfig is no longer exported from
    @ladamczyk/qoq-eslint-v9-ts-vitest-rtl. Use configs.base, an ESLint flat-config
    array, via defineConfig({ files: [...], extends: [configs.base] }).
  • baseConfig is no longer exported from
    @ladamczyk/qoq-eslint-v9-ts-vitest. Use configs.base, an ESLint flat-config
    array, via defineConfig({ files: [...], extends: [configs.base] }).
  • baseConfig is no longer exported from
    @ladamczyk/qoq-eslint-v9-ts-react. Use configs.base, an ESLint flat-config
    array, via defineConfig({ files: [...], extends: [configs.base] }).
  • baseConfig is no longer exported from
    @ladamczyk/qoq-eslint-v9-ts-jest-rtl. Use configs.base, an ESLint flat-config
    array, via defineConfig({ files: [...], extends: [configs.base] }).
  • baseConfig is no longer exported from
    @ladamczyk/qoq-eslint-v9-ts-jest. Use configs.base, an ESLint flat-config
    array, via defineConfig({ files: [...], extends: [configs.base] }).
  • baseConfig, testConfig and strictConfig are no longer
    exported from @ladamczyk/qoq-eslint-v9-ts. Use configs.base, configs.test
    and configs.strict — ESLint flat-config arrays — via
    defineConfig({ files: [...], extends: [configs.base] }).
  • baseConfig is no longer exported from
    @ladamczyk/qoq-eslint-v9-js-vitest-rtl. Use configs.base, an ESLint flat-config
    array, via defineConfig({ files: [...], extends: [configs.base] }).

Co-Authored-By: Claude Opus 5 noreply@anthropic.com
Claude-Session: https://claude.ai/code/session_01C5PqJM7GcARsLB7KY8L6hq

  • baseConfig is no longer exported from
    @ladamczyk/qoq-eslint-v9-js-vitest. Use configs.base, an ESLint flat-config
    array, via defineConfig({ files: [...], extends: [configs.base] }).

Co-Authored-By: Claude Opus 5 noreply@anthropic.com
Claude-Session: https://claude.ai/code/session_01C5PqJM7GcARsLB7KY8L6hq

  • baseConfig is no longer exported from
    @ladamczyk/qoq-eslint-v9-js-react. Use configs.base, an ESLint flat-config
    array, via defineConfig({ files: [...], extends: [configs.base] }).

Co-Authored-By: Claude Opus 5 noreply@anthropic.com
Claude-Session: https://claude.ai/code/session_01C5PqJM7GcARsLB7KY8L6hq

  • baseConfig is no longer exported from
    @ladamczyk/qoq-eslint-v9-js-jest-rtl. Use configs.base, an ESLint flat-config
    array, via defineConfig({ files: [...], extends: [configs.base] }).

Co-Authored-By: Claude Opus 5 noreply@anthropic.com
Claude-Session: https://claude.ai/code/session_01C5PqJM7GcARsLB7KY8L6hq

  • baseConfig is no longer exported from
    @ladamczyk/qoq-eslint-v9-js-jest. Use configs.base, an ESLint flat-config
    array, via defineConfig({ files: [...], extends: [configs.base] }).

Co-Authored-By: Claude Opus 5 noreply@anthropic.com
Claude-Session: https://claude.ai/code/session_01C5PqJM7GcARsLB7KY8L6hq

  • the generated ESLint config now requires the
    @ladamczyk/qoq-eslint-v9-* templates to export configs.base; templates that
    only export baseConfig no longer work with this CLI.

Co-Authored-By: Claude Opus 5 noreply@anthropic.com
Claude-Session: https://claude.ai/code/session_01Jdsj5hAzX6GLH53kkDrPJw

  • configs.base keeps two reactLayer rule options that the
    legacy merged baseConfig silently dropped, so code that passed before can
    now fail. import-x/order gains pathGroups: [{ pattern: 'react*', group: 'builtin', position: 'before' }] and pathGroupsExcludedImportTypes: ['react*'], so React imports must now be ordered first. no-restricted-imports
    gains lodash/debounce and lodash/fp/debounce, so importing either is now
    reported. Both are severity 1, but the qoq CLI fails on warnings as well as
    errors — a consumer's build can break on upgrade.

Co-Authored-By: Claude Opus 5 noreply@anthropic.com
Claude-Session: https://claude.ai/code/session_01Jdsj5hAzX6GLH53kkDrPJw

  • consumers of this package's flat-config array now
    inherit 21 previously-inert testing-library/* rules via rtlLayer: at
    error - await-async-events, await-async-queries, await-async-utils,
    no-await-sync-events, no-await-sync-queries, no-container,
    no-dom-import, no-global-regexp-flag-in-query, no-manual-cleanup,
    no-node-access, no-promise-in-fire-event, no-render-in-lifecycle,
    no-unnecessary-act, no-wait-for-multiple-assertions,
    no-wait-for-side-effects, no-wait-for-snapshot, prefer-find-by,
    prefer-presence-queries, prefer-query-by-disappearance,
    render-result-naming-convention; at warn - no-debugging-utils.
    prefer-screen-queries stays disabled (0).

Co-Authored-By: Claude Opus 5 noreply@anthropic.com
Claude-Session: https:...

Read more

v5.3.2

Choose a tag to compare

@ladamczyk-it ladamczyk-it released this 13 Aug 16:41

5.3.2 (2026-08-13)

Bug Fixes