Skip to content

Chore/frontend quality gates#2214

Closed
dolphin0618 wants to merge 2 commits into
feat/2.6.0-uifrom
chore/frontend-quality-gates
Closed

Chore/frontend quality gates#2214
dolphin0618 wants to merge 2 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 2 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)
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