Skip to content

Chore/frontend quality gates#2215

Merged
dolphin0618 merged 3 commits into
feat/2.6.0-uifrom
chore/frontend-quality-gates
Jul 22, 2026
Merged

Chore/frontend quality gates#2215
dolphin0618 merged 3 commits into
feat/2.6.0-uifrom
chore/frontend-quality-gates

Conversation

@dolphin0618

Copy link
Copy Markdown
Collaborator

What

简要描述做了什么改动。

Why

为什么需要这个改动?

How

实现方式、设计决策(如有)。

Test

  • 本地测试通过
  • 114 测试服务器验证通过

Related

  • Issue/ticket:

dolphin added 3 commits July 22, 2026 21:04
…y violations

Dify-style "freeze legacy, block new" quality gates for both frontend apps:

- ESLint 9 flat configs for platform, client and @bisheng/ui (shared
  toolchain installed at workspace root). House rules: no-explicit-any,
  no raw axios imports (C7), no-console (warn/error allowed),
  react-hooks rules as errors, ts-expect-error with description only.
- Legacy violations frozen per app in eslint-suppressions.json
  (may only shrink; run lint:prune after cleaning a file).
- TS strict via typescript-strict-plugin: legacy failing files annotated
  with @ts-strict-ignore (platform 388, client 163); all other and all
  new files fully strict-checked; tsc-strict wired as typecheck script.
- platform tsconfig target es5 -> ES2020.
- New CI workflow frontend-quality.yml: PR-triggered, path-filtered,
  lint + typecheck for both apps.
- Gate policy documented in root AGENTS.md; @bisheng/ui starts at zero
  suppressions (fixed 1 dead var, removed 6 stale disable directives).
- add unist-util-visit as an explicit dependency (imported by
  MessageMarkDown.tsx but only resolvable via legacy hoisting; broke
  tsc-strict in CI's frozen-lockfile install)
- FilterByUser.tsx: import debounce from lodash-es (declared) instead
  of lodash (undeclared, unresolvable in a clean install — would break
  vite build)
Same class of issue as the platform fix: modules imported directly but
never declared, resolvable locally only via legacy node_modules
leftovers, broken under CI's frozen-lockfile install.

- add explicit deps: unist-util-visit, unified, dedent,
  @tanstack/react-virtual, @rc-component/mini-decimal,
  @radix-ui/react-slot (via workspace catalog)
- useMessages.ts: import useParams from react-router-dom (declared)
  instead of react-router (undeclared transitive)
@dolphin0618
dolphin0618 merged commit b10629a into feat/2.6.0-ui Jul 22, 2026
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.

1 participant