| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
feat(app): bake git SHA and build number into analytics and crash reports (#14336) * feat(app): bake git SHA and build number into analytics and crashes Codemagic and the local harness pass --dart-define OMI_GIT_SHA / OMI_BUILD_NUMBER (plus a dirty-tree marker). A single accessor defaults to unknown, then PostHog super-properties and Crashlytics keys carry them so a production signal resolves to a commit. Shorebird patches also report the runtime patch number when the updater is present. Co-authored-by: Cursor <cursoragent@cursor.com> * fix(app): treat only tracked diffs as dirty and drop shorebird_code_push Porcelain counted Codemagic's untracked env and Firebase files as dirty, so a release SHA would not resolve. Validate dart-define values so unquoted command substitution cannot word-split. Failure-Class: none Co-authored-by: Cursor <cursoragent@cursor.com> --------- Co-authored-by: Cursor <cursoragent@cursor.com> | 1 天前 | |
refactor(release): restore single macOS artifact Return Beta to a channel pointer over the immutable Omi.zip and omi.dmg pair; remove the separately packaged beta identity while retaining qualification, CAS, and same-byte stable promotion.\n\nVerification: backend focused desktop release/update tests; release manifest/candidate scripts; 94 focused Swift tests; swift build; make preflight. | 1 个月前 | |
fix(ci): unwrap bash -c payloads in structured-string sink checker (#13595) * ci: add structured-string sink registry Register the three explicit workflow boundaries behind FC-deploy-input-serialization, FC-workflow-script-input-contract, and FC-workflow-executable-assumption. Each sink carries its grammar, safe encoding, evidence PRs, and paired historical pass/fail fixtures. The manifest runs both the production scan and seven mutation/schema tests in local and CI lanes. A zero-match contract prevents renamed or retired sinks from making the checker silently green. * ci: run the sink registry through the locked-PyYAML interpreter Both manifest entries invoked bare `python3`, and the checker imports PyYAML at line 20. Hosted runners have no PyYAML, so Hygiene and PR Metadata Preflight died before the check ran: File ".github/scripts/check_structured_string_sinks.py", line 20 import yaml ModuleNotFoundError: No module named 'yaml' The repo already solved this. `workflow-apt-network-bounds` and `desktop-release-process-guards` both wrap their yaml-importing checkers in a shell script that resolves the canonical backend interpreter, and the apt-bounds wrapper says why in its own header: "Bare python3 on a hosted runner has no PyYAML, so resolve the canonical backend interpreter the same way the release-process guards do." Added the same pair of wrappers -- checker and self-test, mirroring run-release-process-guards.sh / run-release-process-guard-tests.sh -- and pointed both manifest entries at them, with each wrapper added to its own trigger list. Verified against the actual failure rather than just the happy path. Using a bare venv with no PyYAML: direct invocation: ModuleNotFoundError: No module named 'yaml' via the wrapper: OK: 3 registered structured-string sinks are grammar-safe. Also: self-tests 7/7, checks-manifest contract 47/47, PR preflight 107/107. Failure-Class: none * fix(ci): unwrap bash -c payloads in structured-string sink checker When a registered sink is invoked through `bash -c '...'`, the payload was a single shlex token so basename matching never saw the sink. Expand known shell `-c` payloads (with a small recursion cap) before applying the existing split-argv and interpreter rules. Adds paired pass/fail fixtures for the wrapped shape so the suite proves the rule can fail, not merely match source text. Fixes #12860 Co-authored-by: Apoorv Darshan <apoorvdarshan@gmail.com> * fix(ci): address cubic review on bash -c sink checker hardening - Force VENV_PATH=.venv when syncing deps in checker wrappers - Skip outer bash -c token lists after expanding payload (no dupes) - Match registered sinks only at shell command positions - Split adjacent control operators before basename matching - Add bash -c interpreter fixtures/tests and edge-case coverage Co-authored-by: Apoorv Darshan <apoorvdarshan@gmail.com> --------- Co-authored-by: Aryan <aryangupts05@gmail.com> Co-authored-by: Cursor Agent <cursoragent@cursor.com> | 6 天前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 1 天前 | ||
| 1 个月前 | ||
| 6 天前 |