项目文件夹

文件
wehub-resource-sync 0ef5fcb1c5
Security / Dependency audit (pip-audit) (push) Has been cancelled
Security / CodeQL (javascript-typescript) (push) Has been cancelled
Security / CodeQL (python) (push) Has been cancelled
Security / Secret scan (gitleaks) (push) Has been cancelled
rust / test (ubuntu) (push) Has been cancelled
rust / simulator e2e (macos-latest) (push) Has been cancelled
rust / simulator e2e (ubuntu-latest) (push) Has been cancelled
rust / simulator e2e (windows-latest) (push) Has been cancelled
rust / wheels (aarch64-apple-darwin) (push) Has been cancelled
rust / wheels (x86_64-unknown-linux-gnu) (push) Has been cancelled
rust / wheels (x86_64-apple-darwin) (push) Has been cancelled
rust / audit (push) Has been cancelled
rust / parity (nightly, allowed to fail during Phase 0) (push) Has been cancelled
CI / commitlint (push) Has been skipped
Dev Containers / validate (.devcontainer/devcontainer.json, default) (push) Failing after 0s
Dev Containers / validate (.devcontainer/memory-stack/devcontainer.json, memory-stack) (push) Failing after 0s
Dev Containers / validate-worktree (push) Failing after 0s
CI / changes (push) Failing after 4s
Deploy Documentation / validate (push) Has been skipped
Deploy Documentation / deploy (push) Failing after 1s
Init Native E2E / init-native (ubuntu-latest, claude) (push) Failing after 1s
Init Native E2E / init-native (ubuntu-latest, codex) (push) Failing after 1s
Install Native E2E / install-native (ubuntu-latest) (push) Failing after 1s
OpenCode Plugin / typecheck + build + test (push) Failing after 1s
Init Native E2E / init-native (ubuntu-latest, copilot) (push) Failing after 1s
Release Please / release-please (push) Failing after 1s
Wrap E2E / docker-wrap-e2e (push) Failing after 1s
Wrap Native E2E / wrap-native (ubuntu-latest) (push) Failing after 1s
Init E2E / docker-init-e2e (push) Failing after 4s
Merge Conflicts / merge-conflicts (push) Failing after 4s
CI / lint (push) Has been cancelled
CI / build-wheel (push) Has been cancelled
CI / build-wheel-windows (push) Has been cancelled
CI / prefetch-model (push) Has been cancelled
CI / test-dashboard-ui (push) Has been cancelled
CI / test (1) (push) Has been cancelled
CI / test (2) (push) Has been cancelled
CI / test (3) (push) Has been cancelled
CI / test (4) (push) Has been cancelled
CI / test-extras (push) Has been cancelled
CI / test-agno (push) Has been cancelled
CI / build (push) Has been cancelled
CI / workflow-validation (push) Has been cancelled
CI / docker-native-e2e (push) Has been cancelled
CI / windows-native-wrapper (push) Has been cancelled
CI / macos-native-wrapper (push) Has been cancelled
Docker / docker-build (map[name:arm64 platform:linux/arm64 runs_on:ubuntu-24.04-arm], map[bake_target:runtime-code-nonroot name:code-nonroot]) (push) Has been cancelled
Docker / docker-build (map[name:arm64 platform:linux/arm64 runs_on:ubuntu-24.04-arm], map[bake_target:runtime-code-slim name:code-slim]) (push) Has been cancelled
Docker / docker-build (map[name:arm64 platform:linux/arm64 runs_on:ubuntu-24.04-arm], map[bake_target:runtime-code-slim-nonroot name:code-slim-nonroot]) (push) Has been cancelled
Docker / docker-build (map[name:arm64 platform:linux/arm64 runs_on:ubuntu-24.04-arm], map[bake_target:runtime-nonroot name:nonroot]) (push) Has been cancelled
Docker / docker-build (map[name:arm64 platform:linux/arm64 runs_on:ubuntu-24.04-arm], map[bake_target:runtime-slim name:slim]) (push) Has been cancelled
Docker / docker-build (map[name:arm64 platform:linux/arm64 runs_on:ubuntu-24.04-arm], map[bake_target:runtime-slim-nonroot name:slim-nonroot]) (push) Has been cancelled
Docker / docker-manifest (map[bake_target:runtime name:]) (push) Has been cancelled
Docker / docker-manifest (map[bake_target:runtime-code name:code]) (push) Has been cancelled
Docker / docker-manifest (map[bake_target:runtime-code-nonroot name:code-nonroot]) (push) Has been cancelled
Docker / docker-manifest (map[bake_target:runtime-code-slim name:code-slim]) (push) Has been cancelled
Docker / docker-manifest (map[bake_target:runtime-code-slim-nonroot name:code-slim-nonroot]) (push) Has been cancelled
Docker / docker-manifest (map[bake_target:runtime-nonroot name:nonroot]) (push) Has been cancelled
Docker / docker-manifest (map[bake_target:runtime-slim name:slim]) (push) Has been cancelled
Docker / docker-manifest (map[bake_target:runtime-slim-nonroot name:slim-nonroot]) (push) Has been cancelled
Docker / docker-build (map[name:amd64 platform:linux/amd64 runs_on:ubuntu-24.04], map[bake_target:runtime name:]) (push) Has been cancelled
Docker / docker-build (map[name:amd64 platform:linux/amd64 runs_on:ubuntu-24.04], map[bake_target:runtime-code name:code]) (push) Has been cancelled
Docker / docker-build (map[name:amd64 platform:linux/amd64 runs_on:ubuntu-24.04], map[bake_target:runtime-code-nonroot name:code-nonroot]) (push) Has been cancelled
Docker / docker-build (map[name:amd64 platform:linux/amd64 runs_on:ubuntu-24.04], map[bake_target:runtime-code-slim name:code-slim]) (push) Has been cancelled
Docker / docker-build (map[name:amd64 platform:linux/amd64 runs_on:ubuntu-24.04], map[bake_target:runtime-code-slim-nonroot name:code-slim-nonroot]) (push) Has been cancelled
Docker / docker-build (map[name:amd64 platform:linux/amd64 runs_on:ubuntu-24.04], map[bake_target:runtime-nonroot name:nonroot]) (push) Has been cancelled
Docker / docker-build (map[name:amd64 platform:linux/amd64 runs_on:ubuntu-24.04], map[bake_target:runtime-slim name:slim]) (push) Has been cancelled
Docker / docker-build (map[name:amd64 platform:linux/amd64 runs_on:ubuntu-24.04], map[bake_target:runtime-slim-nonroot name:slim-nonroot]) (push) Has been cancelled
Docker / docker-build (map[name:arm64 platform:linux/arm64 runs_on:ubuntu-24.04-arm], map[bake_target:runtime name:]) (push) Has been cancelled
Docker / docker-build (map[name:arm64 platform:linux/arm64 runs_on:ubuntu-24.04-arm], map[bake_target:runtime-code name:code]) (push) Has been cancelled
Docker / promote-latest (push) Has been cancelled
Init Native E2E / init-native (macos-latest, claude) (push) Has been cancelled
Init Native E2E / init-native (macos-latest, codex) (push) Has been cancelled
Init Native E2E / init-native (macos-latest, copilot) (push) Has been cancelled
Install Native E2E / install-native (macos-latest) (push) Has been cancelled
Wrap Native E2E / wrap-native (macos-latest) (push) Has been cancelled
chore: import upstream snapshot with attribution
2026-07-13 12:03:20 +08:00

95 行
3.5 KiB
Python

"""Record TextCrusher parity fixtures (Phase 2, #1171).
Locks the Rust core's ``compress`` output for a fixed set of deterministic
scenarios so a future change to the Rust algorithm is caught as a regression.
The Python wrapper delegates to ``headroom._core.TextCrusher``, so these
fixtures are recorded from (and verified against) the native implementation.
Re-record after an intentional algorithm change:
python tests/parity/record_text_crusher.py
"""
from __future__ import annotations
import hashlib
import json
import os
from headroom.transforms.text_crusher import TextCrusher
FIXTURE_DIR = os.path.join(os.path.dirname(__file__), "fixtures", "text_crusher")
def _prose(n: int) -> str:
return " ".join(
f"Sentence number {i} explains how distributed systems reconcile state across topic {i}."
for i in range(n)
)
def _redundant() -> str:
dup = "The quick brown fox jumps over the very lazy dog every single morning."
uniques = [f"A distinct fact about subsystem {i} is recorded plainly here." for i in range(8)]
return "\n".join([dup] * 10 + uniques)
def _salient() -> str:
return "\n".join(
[
"ERROR connection refused at host 10.0.0.42 after 3 retries.",
"The authentication module validated tokens against auth.registry before forwarding.",
"A traceback was logged with code 500 and request_id req-9182.",
"Just some generic filler text without any specific identifiers here.",
"More plain filler describing the overall behavior in vague terms.",
"Warning: cache hit ratio dropped to 71 percent during the spike.",
"Another unremarkable sentence with no salient tokens at all today.",
"The pipeline.apply call returned 42 kept rows out of 1000 total.",
]
)
# (label, content, context, target_ratio)
SCENARIOS: list[tuple[str, str, str, float | None]] = [
("plain_prose", _prose(30), "how do distributed systems reconcile state", 0.3),
("plain_prose_no_query", _prose(30), "", 0.5),
("redundant", _redundant(), "", 0.9),
("salient_heavy", _salient(), "authentication tokens errors", 0.4),
("short_passthrough", "one thing. two thing. three thing.", "", None),
(
"unicode",
" ".join(f"句子 {i} 描述了系统在主题 {i} 上的行为细节。" for i in range(12)),
"系统",
0.4,
),
]
def record() -> None:
os.makedirs(FIXTURE_DIR, exist_ok=True)
tc = TextCrusher()
for label, content, context, ratio in SCENARIOS:
r = tc.compress(content, context, ratio)
digest = hashlib.sha256(content.encode("utf-8")).hexdigest()
fixture = {
"transform": "text_crusher",
"label": label,
"input": {"content": content, "context": context, "target_ratio": ratio},
"output": {
"compressed": r.compressed,
"original_tokens": r.original_tokens,
"compressed_tokens": r.compressed_tokens,
"compression_ratio": r.compression_ratio,
"kept_segments": r.kept_segments,
"total_segments": r.total_segments,
},
"input_sha256": digest,
}
path = os.path.join(FIXTURE_DIR, f"{label}_{digest[:12]}.json")
with open(path, "w", encoding="utf-8") as fh:
json.dump(fixture, fh, indent=2, ensure_ascii=False)
print(f"wrote {path}")
if __name__ == "__main__":
record()