| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283 |
- from __future__ import annotations
- from pathlib import Path
- FORMAL_SOURCE_ROOTS = [
- Path("app"),
- Path("pipeline"),
- Path("acquisition"),
- Path("decode_content"),
- Path("core"),
- ]
- LEGACY_RUNTIME_TOKENS = [
- "CK_SQLITE_PATH",
- "data/app.db",
- "/data/queries",
- "/api/creation-search",
- "creation_knowledge.api",
- "from acquisition import store",
- "import acquisition.store",
- "from creation_knowledge",
- "import creation_knowledge",
- ]
- LEGACY_QUERY_TOKENS = [
- "from acquisition.query",
- "import acquisition.query",
- "tactic2_form_llm",
- "tactic3_suggest",
- "tactic4_llm",
- "tactic_multiaxis",
- "tactic1",
- "tactic2",
- "tactic3",
- "tactic4",
- "build_query_demo",
- "build_family6",
- "query_gen.txt",
- "form_query_gen.txt",
- "data/queries/demo.json",
- ]
- def _active_source_files():
- for root in FORMAL_SOURCE_ROOTS:
- for path in root.rglob("*"):
- if path.is_file() and path.suffix in {".py", ".js", ".jsx", ".ts", ".tsx"}:
- yield path
- def test_formal_sources_do_not_depend_on_archived_legacy_runtime():
- offenders: list[str] = []
- for path in _active_source_files():
- text = path.read_text(encoding="utf-8")
- for token in LEGACY_RUNTIME_TOKENS:
- if token in text:
- offenders.append(f"{path}:{token}")
- assert offenders == []
- def test_formal_sources_do_not_depend_on_legacy_query_tactics():
- offenders: list[str] = []
- script_roots = [Path("scripts")]
- for root in FORMAL_SOURCE_ROOTS + script_roots:
- for path in root.rglob("*"):
- if path.is_file() and path.suffix in {".py", ".js", ".jsx", ".ts", ".tsx"}:
- text = path.read_text(encoding="utf-8")
- for token in LEGACY_QUERY_TOKENS:
- if token in text:
- offenders.append(f"{path}:{token}")
- assert offenders == []
- def test_legacy_debug_decompose_entry_is_explicitly_labeled():
- text = Path("scripts/decompose.py").read_text(encoding="utf-8")
- assert "LEGACY/debug" in text[:500]
- assert "正式云端 pipeline 入口" in text[:500]
- assert "web/frameworks" in text
- assert "web/payloads" in text
|