app scaffold

This commit is contained in:
Guangfei.Zhao
2026-08-17 15:29:55 +08:00
commit 681688dfae
301 changed files with 18414 additions and 0 deletions
+63
View File
@@ -0,0 +1,63 @@
# 根级共享 lint 配置。
# 来源:conti-docs/14-conventions-and-ci-gates.md §二
# 每个子包的 analysis_options.yaml 只写一行 include 指向本文件,禁止在子包里
# 放宽规则——放宽必须改这里,让所有人一起讨论。
include: package:flutter_lints/flutter.yaml
# ---------------------------------------------------------------------------
# 偏离文档说明(riverpod_lint 3.1.0 起的破坏性变更)
#
# 文档 03/14 写的是 `analyzer: plugins: - custom_lint` + CI 里单独跑
# `dart run custom_lint`。但 riverpod_lint 3.1.0 已经从 custom_lint 迁移到
# analysis_server_plugin
# > `riverpod_lint` is no-longer implemented using `custom_lint`,
# > but instead `analysis_server_plugin`. —— riverpod_lint CHANGELOG 3.1.0
# 实测 riverpod_lint 3.1.8 的依赖里已无 custom_lint。
#
# 因此:插件改在下面的顶层 plugins: 段声明,规则由 `dart analyze` /
# `flutter analyze` 直接执行,CI 里不再需要独立的 custom_lint 步骤。
# 详见根目录 SCAFFOLD-NOTES.md §B。
# ---------------------------------------------------------------------------
plugins:
riverpod_lint: ^3.1.8
analyzer:
language:
strict-casts: true
strict-raw-types: true
strict-inference: true
errors:
# freezed / riverpod 生成器会在非法位置放注解,这是生成器的正常行为
invalid_annotation_target: ignore
# 下面三条从 warning 提到 error:它们几乎总是真实缺陷
unused_import: error
dead_code: error
unawaited_futures: error
exclude:
- "**/*.g.dart"
- "**/*.freezed.dart"
- "**/generated/**"
formatter:
page_width: 100
linter:
rules:
# --- 可读性 ---
- always_declare_return_types
- prefer_single_quotes
- require_trailing_commas
- directives_ordering
- sort_pub_dependencies
# --- 正确性(这几条是真正拦过线上事故的) ---
- avoid_dynamic_calls
- avoid_slow_async_io
- cancel_subscriptions
- close_sinks
- discarded_futures
- unawaited_futures
- no_adjacent_strings_in_list
- test_types_in_equals
- throw_in_finally
- unnecessary_statements