Commit graph

5 commits

Author SHA1 Message Date
Ouroboros
c2e45111fb fix: restore portable release checks and symlink diagnostics
Preserve declared-entry hash failures and typed evidence omissions under Python 3.13. Keep the approved Windows artifact refusal explicit, isolate custody and nested pytest state, and synchronize the permission, lock, CSP, TLS and dispatcher fixtures without changing runtime policy.
2026-09-26 23:45:06 +03:00
Anton Razzhigaev
031183e723 test: synchronize rescue CAS interleaving without timing fixture I/O
Some checks failed
Claudexor platform gate (API keys — subscription auth NOT covered) / live · ubuntu-latest · claude · API key only, subscription NOT covered (push) Has been cancelled
Claudexor platform gate (API keys — subscription auth NOT covered) / live · windows-latest · claude · API key only, subscription NOT covered (push) Has been cancelled
Claudexor platform gate (API keys — subscription auth NOT covered) / live · macos-latest · codex · API key only, subscription NOT covered (push) Has been cancelled
Submit Claudexor dependency / Submit managed runtime snapshot (push) Has been cancelled
CI / quick-test (push) Has been cancelled
CI / benchmark-methodology (push) Has been cancelled
CI / full-test (macos-latest) (push) Has been cancelled
CI / full-test (ubuntu-latest) (push) Has been cancelled
CI / full-test (windows-latest) (push) Has been cancelled
CI / betterleaks-platform-smoke (macos-latest) (push) Has been cancelled
CI / betterleaks-platform-smoke (ubuntu-latest) (push) Has been cancelled
CI / betterleaks-platform-smoke (windows-latest) (push) Has been cancelled
CI / integration-test (push) Has been cancelled
CI / skill-smoke (macos-latest) (push) Has been cancelled
CI / skill-smoke (ubuntu-latest) (push) Has been cancelled
CI / skill-smoke (windows-latest) (push) Has been cancelled
CI / marker-guards (push) Has been cancelled
CI / ui-smoke (push) Has been cancelled
CI / docker-ui-smoke (push) Has been cancelled
CI / docker-portable-test (push) Has been cancelled
CI / system-e2e-mock (push) Has been cancelled
CI / e2e-live (SM1 x1 — largest subset feasible under the $30 cap) (push) Has been cancelled
Scorecard analysis workflow / Scorecard analysis (push) Has been cancelled
Sync Joi Lab Fork Mirror / sync (push) Has been cancelled
CI / release-preflight (push) Has been cancelled
CI / build (dmg, macos-latest, macos-arm64, syft_1.50.0_darwin_arm64.tar.gz, syft, e32fdb9d47823fa633748a1efca2528fd77c37469ea93c9e40ab835da44e4cce) (push) Has been cancelled
CI / build (tar.gz, ubuntu-latest, linux-x86_64, syft_1.50.0_linux_amd64.tar.gz, syft, bf7b29ff57f06da30918266a0e1c2885a8f99784798d1bdb1628886aa015d788) (push) Has been cancelled
CI / build (zip, windows-latest, windows-x64, syft_1.50.0_windows_amd64.zip, syft.exe, 815ee6973ec5dff6a671d7f41b0e78835a8c45b91d5a39f4743ea1cee833d3be) (push) Has been cancelled
CI / vendor-package-smoke (push) Has been cancelled
CI / release (push) Has been cancelled
Preserve real lock contention, the exact receipt and lost-update assertions while removing a scheduler-dependent timeout from test setup.

Co-authored-by: Ouroboros <311266734+ouroboros-agent@users.noreply.github.com>
2026-09-09 02:03:57 +03:00
Ouroboros
7726fca3ff Fix the rc.11 tag CI: Windows and macOS full-test
Four classes, none Linux-visible (the exact-SHA battery on this host was
green):

- Windows has no os.fchmod: the live stand's write_settings raised on
  five tests. The 0600-before-content write keeps fchmod where it exists
  and falls back to chmod after the write elsewhere (the shape the
  system_e2e harness already uses).
- The orphan scan reads /proc environ (Linux only): run_lane's finally
  raised FileNotFoundError on macOS and Windows. Without procfs the lane
  records a typed fact (orphan_scan=unavailable:no_procfs) and no check —
  never a passed check that did not run.
- supervisor/evolution_lifecycle._write_evolution_campaign treated a
  campaign file that exists but cannot be read as "no campaign" and let
  a stale write win (windows-latest: test_stale_campaign_cannot_overwrite_
  a_new_campaign — a transient read failure is enough). Present-but-
  unreadable now refuses the write with a warning; an absent file stays
  writable.
- macos-latest: the password resolution pin answered '' with settings
  patched to a password — the module wrapper had been replaced on that
  xdist worker by a started-and-never-stopped patch from an earlier
  module. The resolution order is now a pure function
  (resolve_network_password(env_value, settings_loader)) that the
  wrapper calls with os.environ and load_settings; the pin exercises the
  pure function and cannot be reached by either polluter class (a leaked
  environment writer or a leaked patch), and a second test pins the
  wrapper through the resolver seam.

Co-authored-by: Ouroboros <311266734+ouroboros-agent@users.noreply.github.com>
2026-09-05 02:54:15 +00:00
Ouroboros
5b1767fadd D04: retire the flat wall-clock timeout pair (owner 1B)
OUROBOROS_SOFT_TIMEOUT_SEC and OUROBOROS_HARD_TIMEOUT_SEC stopped terminating
anything when the activity model (idle window + subtree liveness + absolute
ceiling) replaced them. What survived was five surfaces discussing a value none
of them obeyed: SETTINGS_DEFAULTS offered it, the Settings UI accepted a number,
the save response apologised for it, queue.init compared the caller's value
against the constant it then wrote anyway and logged a deprecation row, and
/status printed "legacy_timeouts_ignored: soft=600s, hard=1800s" on every
request. A knob discussed everywhere and obeyed nowhere reads as a live tunable.

Retired through the existing idiom - RETIRED_SETTING_KEYS, stripped on load. No
successor knob (the activity model already governs), so nothing to seed. Gone
with them: both globals and init parameters in queue/workers, the
_emit_timeout_deprecation_once emitter and its latch, the gateway's
_RETIRED_NO_EFFECT_KEYS bucket (a retired key cannot reach an effect bucket at
all, so _effect_buckets no longer needs the warnings parameter), the status_text
parameters and legacy line, the server reads and ctx fields, the bench settings
carriers and the TB forwarded-env allowlist, and the two ARCHITECTURE rows.

rc_audit's `since` stopped being a one-key special case: RETIRED_IN_THIS_ABI
names the distinction, so an upgrading install still learns the difference
between "stopped working in THIS upgrade" and "was already inert".

Pins: tests/test_legacy_timeout_retirement.py (10 cases, incl. a grep-class
sweep and the auditor's since/behavior). The N-1 fixture carries the pair at its
DEFAULT values - a default-valued ghost is the one nobody looks for - so the
rc_audit fixture suite now pins that both produce a retired-setting finding.
Two tests that asserted the old no-op semantics are reshaped, not deleted.

Disclosed: saving the key through POST /api/settings no longer returns an
explicit "Retired setting(s) saved" warning; it is merged away silently like
every other retired key. Restoring it would mean reading the raw body for keys
the merge deliberately never looks at.
2026-09-01 23:01:30 +00:00
Ouroboros
5d3398c11d v7next F1 pilot: domain D15 verified against upstream; its test split transplanted
All 15 D15 runtime modules are unsplit by design - upstream bytes stand as-is:
7 byte-identical to the reference, 6 pure upstream drift (nothing to do), and
2 (consciousness, reflection) carry v7 deltas of the D02 family that must NOT
be replayed verbatim - reflection's status-set delta would invert over
upstream's own handling (the re-prove trap is documented in
docs/v7next/LEDGER_CORRECTIONS.md together with a MIGRATION row already
superseded by upstream).
The test side transplants the oracle's D15 split: the 2386-line evolution
integrity giant becomes six themed suites (lossless: 65==65 test functions,
zero upstream drift of the giant since merge-base) plus three siblings carried
verbatim; adaptations are exclusively reverse-mappings of OTHER domains' v7
spellings back to upstream signatures, each keyed to the original monolith.
98 passed in isolation (re-verified independently); every file <=617 lines;
HEAD held through six pytest runs.
2026-08-30 15:26:19 +00:00