Add ContextFuse-2048 submission#143
Closed
Julz19 wants to merge 1 commit intoopenai:mainfrom
Closed
Conversation
gHashTag
added a commit
to gHashTag/parameter-golf
that referenced
this pull request
Apr 30, 2026
…) (openai#24) Anchor: phi^2 + phi^-2 = 3. Adds the disaster-recovery and multi-account control plane: - restore-fleet.json — single-source-of-truth manifest for the IGLA fleet (16 services, shared/per-seed env, image pin policy, secret interpolation ${secret:NAME}). - template.json — Railway template for one-click MCP control-plane redeploy after a ban (Deploy on Railway button). - railway.json — config-as-code for the MCP service itself. - .github/workflows/dr-restore.yml — manual-dispatch CI workflow: confirm = PHI -> rebuilds the fleet from the manifest in <5 min, accepts --new-token for post-ban recovery, applies idempotent Neon audit DDL, seals an L7 experience triplet. - .github/workflows/docker-trainer.yml — every 6h + on-push: builds the trainer image and pushes ghcr.io/ghashtag/ trios-trainer-igla:{latest,sha-<commit>} so images survive a Railway account loss. - docs/DR.md — runbook (what survives a ban; pre-bake checklist; 3 trigger paths: CLI / Actions / Railway button). - docs/RESTORE_CLI_SPEC.md — implementation spec for tri-railway restore (flags, pseudocode, exit codes, tests). - docs/MULTI_ACCOUNT.md — multi-account fan-out: 4 lanes x 3 seeds = 12 parallel containers across Acc1+Acc2; live deploy IDs already on Railway as of 2026-04-27. - README.md — DR block at top with Deploy-on-Railway button. Live multi-account state at commit time: Acc1 (rumbodzalaclhdv0) -> IGLA: igla-final-seed-{42,43,44} deployed Acc2 (brabbtjubindt5cug) -> thriving-eagerness: iglaB-seed-{42,43,44} deployed Acc0 (kaglerslomaansc) -> token revoked, awaiting new token. R7 triplets sealed for all 3 IGLA deploys; see docs/MULTI_ACCOUNT.md. Closes openai#20 (DR plan), refs openai#143 (IGLA RACE). Co-authored-by: Perplexity Computer <computer@perplexity.ai>
gHashTag
added a commit
to gHashTag/parameter-golf
that referenced
this pull request
Apr 30, 2026
openai#143) (openai#29) * feat(audit): tri-railway audit run + verdict CLI (closes openai#9, refs openai#143) Anchor: phi^2 + phi^-2 = 3. Adds the online-audit subcommands that close L-R14 (Gate-2 verdict) formally: tri-railway audit run --project <UUID> --target <BPB> [--ledger PATH] [--json] tri-railway audit verdict --ledger PATH --target <BPB> Behaviour: - audit run lists Railway services for a project (Q::project_view), converts them to RealService (with seed parsed from name like 'trios-train-seed-43' or 'igla-final-seed-44'), optionally loads a JSONL ledger, calls trios_railway_audit::detect to produce the full D1..D7 drift event set, runs verdict() to compute Gate2Pass / NotYet / Drift, prints a text summary, optionally JSON, then seals one R7 audit triplet to .trinity/experience via the existing experience writer. Exit codes: 0 = GATE-2 PASS (>= 3 services with bpb < target, no error drift) 1 = DRIFT (any error-severity event) 2 = NOT YET (no errors, target not yet met) - audit verdict is the offline form for cron/CI: takes a JSONL ledger snapshot already serialized from Neon, computes the same verdict against synthetic services, prints one line, exits with the same codes. Auth fix in trios-railway-core: RAILWAY_TOKEN_AUTH env var allows forcing 'team' (Bearer) vs 'project' (Project-Access-Token) when the UUID-shape heuristic guesses wrong. Personal API tokens are also UUID-shaped but require Bearer; without this override, authenticating to backboard.railway.com returned 'Not Authorized'. Verified with both curl variants against the live IGLA project. R5-honest verification (logs in PR body): cargo build --bin tri-railway --locked : OK cargo test --workspace --locked : 22 passed, 0 failed cargo clippy -D warnings : 0 Live smoke against IGLA (e4fe33bb-...): 18 services, 16 D1_ORPHAN warnings, NOT YET, exit=2, R7 triplet sealed at /tmp/audit-smoke/.trinity/experience/<date>.trinity Synthetic ledger smoke: 3 seeds bpb<1.85 -> GATE-2 PASS, exit=0 3 seeds bpb<1.85 vs target=1.50 -> NOT YET, exit=2 1 seed bpb=3.5e38 -> DRIFT (D5_OVERFLOW), exit=1 Closes openai#9. Refs openai#143 (IGLA RACE Gate-2 / L-R14). * style(audit): cargo fmt --all (CI format-check fix) --------- Co-authored-by: Perplexity Computer <computer@perplexity.ai>
gHashTag
added a commit
to gHashTag/parameter-golf
that referenced
this pull request
Apr 30, 2026
…nai#8) (openai#31) * feat(audit): Neon audit_event writer + artifact JSON (closes openai#8) - Add tokio-postgres to workspace Cargo.toml - Add tokio-postgres + tokio features to trios-railway-audit Cargo.toml - New crates/trios-railway-audit/src/event.rs: audit_event(seed, bpb, step, sha, neon_url) -> Result<RowId> writes one row to igla_race_trials (DDL already in migrations.rs) returns the inserted row id as i64 AuditArtifact JSON struct for stdout artifact (R5 honest output) full unit tests (mock-free, feature-gated integration test marker) - lib.rs: pub mod event R7: every audit run that writes to Neon seals an experience triplet. L-R14 path: watchdog calls audit_event per service → ledger fills → verdict flips Gate2Pass → openai#143 closes automatically. φ² + φ⁻² = 3 * style(audit-event): cargo fmt --all (CI format-check fix) * fix(audit): clippy + lib.rs typo (events vs &[]) — green CI Two small fixes that keep CI green for the AU-02 Neon writer PR: 1. crates/trios-railway-audit/src/lib.rs:271 — the existing verdict_drift_when_error_event test referenced an undefined binding 'events' inside its own RHS. Replace with detect(&real, &[]). Caught by clippy/build on the PR branch (rustc E0425). 2. crates/trios-railway-audit/src/event.rs:1 — backtick the doc identifier 'audit_event' (clippy::doc_markdown). Local verification on this branch: cargo build --workspace -> green cargo test --workspace -> 28 passed, 0 failed cargo clippy --workspace -- -D warnings -> 0 errors, 0 warnings Refs openai#8. --------- Co-authored-by: Perplexity Computer <computer@perplexity.ai>
gHashTag
added a commit
to gHashTag/parameter-golf
that referenced
this pull request
Apr 30, 2026
…penai#34) Anchor: phi^2 + phi^-2 = 3. The default GITHUB_TOKEN cannot write to a different repository, so the hourly watchdog has been failing the comment step with: GraphQL: Resource not accessible by integration (addComment) Fix: 1. Use TRIOS_REPO_PAT (fine-grained PAT, issues:write on gHashTag/trios) when set; fall back to GITHUB_TOKEN otherwise: GH_TOKEN: ${{ secrets.TRIOS_REPO_PAT || secrets.GITHUB_TOKEN }} 2. Guard the cross-repo steps with conditionals so the workflow stays green when the operator has not yet provisioned the PAT: Comment on trios#143: if: ... && secrets.TRIOS_REPO_PAT != '' Skip comment (warn-only): if: ... && secrets.TRIOS_REPO_PAT == '' Close openai#143 on GATE-2 PASS: if: ... && secrets.TRIOS_REPO_PAT != '' The 'Skip' step prints '::warning::TRIOS_REPO_PAT not set...' and echoes the draft comment to the run log so the operator can still audit what would have been posted. 3. New docs/CROSS_REPO_PAT.md with one-time setup steps (least-privilege fine-grained PAT, repo-scoped, issues:rw only) and a behaviour matrix for the three configuration modes. Verified manually: a workflow_dispatch run with skip_comment=true exited SUCCESS (run 25004006785), confirming all upstream steps (build, audit on both clusters, digest assembly) work end-to-end. The only remaining blocker was the cross-repo permission, which this PR resolves without forcing the operator to create the PAT immediately. Refs openai#16. Co-authored-by: Perplexity Computer <computer@perplexity.ai>
gHashTag
added a commit
to gHashTag/parameter-golf
that referenced
this pull request
Apr 30, 2026
…penai#143) (openai#36) * feat(dr): railway template + hourly fleet snapshot + DR runbook (refs openai#143) Anchor: phi^2 + phi^-2 = 3. Closes the 'one-click DR' gap. After a Railway-account ban, payment lapse, or project deletion, the operator can rebuild the IGLA fleet in under 15 minutes via any of three paths: A. Railway template marketplace button (railway-template.json) B. GitHub Actions workflow_dispatch (deploy-from-template.yml) C. tri-railway CLI from fleet snapshot (disaster-recovery/fleet-snapshot.json) Files added: railway-template.json Marketplace-ready template with 6 services pinned to GHCR images: - trios-mcp-public (control plane) - igla-final-seed-{42,43,44} (champion lane A, 60K steps) - trios-dwagent (auto-claim further trials) - neon-backup-r2 (hourly pg_dump to Cloudflare R2) All env vars are placeholder-substituted; no hard-coded secrets. scripts/snapshot-fleet.sh Probes Railway GraphQL for every (alias, project) tuple and emits a single fleet-snapshot.json. Verified locally against the live fleet: 29 services across 4 projects across 2 accounts. .github/workflows/fleet-snapshot.yml Hourly cron at :15 UTC (offset from the audit watchdog at :05). Runs the snapshot, commits if the file changed, otherwise no-op. Survives any single account ban because the snapshot is in git. .github/workflows/deploy-from-template.yml Operator-triggered (workflow_dispatch) DR provisioning. Reads railway-template.json, calls Railway GraphQL to create one project + N services in the chosen account_alias, then writes disaster-recovery/last-restore.json with the new UUIDs. disaster-recovery/fleet-snapshot.json Initial snapshot at this commit (29 services, 4 projects). docs/DISASTER_RECOVERY.md Full runbook: what survives a ban (table), three trigger paths, required secrets, recovery sequence in detail, cost expectations, why the template only ships 6 of the 29 services. README.md DR section reorganised — three trigger paths instead of one. Old links to restore-fleet.json / docs/DR.md remain valid via the runbook's history section. Operator action items (not blocking the merge): 1. https://github.com/settings/personal-access-tokens — rotate the PAT shared in chat (out of caution); update TRIOS_REPO_PAT. 2. https://railway.com/template/new — publish railway-template.json to the marketplace; this gives the README its real button URL. 3. https://dash.cloudflare.com/r2 — create the bucket 'igla-ledger-backups'; set R2_* secrets in Actions Secrets. Refs trios#143 / openai#16. * fix(dr): rewrite snapshot in Rust as 'tri-railway snapshot fleet' (L1) CI flagged the original scripts/snapshot-fleet.sh under L1 — Rust only, zero shell scripts. Replace it with a first-class subcommand: tri-railway snapshot fleet \ --out disaster-recovery/fleet-snapshot.json \ --account 'alias=acc1,token_env=...,project_env=...,label=...' \ --email 'acc1=user@host' The subcommand reads tokens and project UUIDs from process env (so GitHub Actions can wire secrets via job-level env: blocks), probes Railway GraphQL via the existing transport client, and writes the exact same JSON the shell script produced. Tokens are NEVER recorded in the snapshot — only the env-var name is kept under .token_secret. fleet-snapshot.yml updated to call the binary instead of bash. Locally verified against the live fleet: 29 services across 4 projects across 2 accounts, byte-identical output to the previous shell version. Refs trios#143 / openai#16. --------- Co-authored-by: Perplexity Computer <computer@perplexity.ai>
gHashTag
added a commit
to gHashTag/parameter-golf
that referenced
this pull request
Apr 30, 2026
…openai#39) Anchor: phi^2 + phi^-2 = 3. Adds the 4th disaster-recovery trigger path to docs/DISASTER_RECOVERY.md in anticipation of the railway_dr_snapshot / railway_dr_restore MCP tools landing in openai#17. The contract is frozen up-front so the doc and the implementation can ship in parallel. What landed: docs/DISASTER_RECOVERY.md - 'Trigger paths' intro flips three -> four, ordered chat -> web -> CI -> shell ('increasing operator friction'). - New section 'D. MCP chat' explains the two tools, gives natural- language usage, lists five safety invariants enforced server-side (confirm == 'PHI', acc1 forbidden, TRIOS_REPO_PAT required, 600s hard timeout, R7 triplet seal on success), and a 'Why path D is path D' rationale clarifying that the ordering reflects agency, not speed. - TL;DR adds a one-sentence chat alternative ('vosstanovi flot na acc3, podtverzhdayu PHI'). README.md - DR list flips three -> four with the same MCP-chat option. No code changes, no workflow changes. The tool names, signatures, and safety invariants are documented exactly as spec'd in the openai#17 plan; they will land in src/tools/railway_dr_*.rs as commits c1..c4. Refs openai#17, refs trios#143. Co-authored-by: Perplexity Computer <computer@perplexity.ai>
gHashTag
added a commit
to gHashTag/parameter-golf
that referenced
this pull request
Apr 30, 2026
openai#42) Anchor: phi^2 + phi^-2 = 3. Lands the manifest contract that 'tri railway restore' (RW-DR-01 openai#25) and the lock writer (RW-DR-04 openai#28) consume. Files: schemas/restore-fleet.schema.json JSON Schema Draft 2020-12 for the manifest. Strictly closed (additionalProperties: false) so unknown fields fail fast in CI rather than getting silently ignored at restore time. Pattern-bounds on identifiers (project name [A-Za-z0-9._-]+, service name ^[a-z0-9][a-z0-9-]*$ to satisfy Railway DNS), version pinned to const: 1, services minItems: 1. restore-fleet.json Updated to schema v1. Six trainer-seed entries (42, 43, 44, 100, 101, 102) — covers both lane A (champion-fineweb) and lane B (mirror-2). shared_vars includes L_R8_SYNTHETIC_FALLBACK=FORBID per the issue acceptance criteria. schemas/fixtures/{valid_minimal,invalid_v0,invalid_uppercase_service, invalid_empty_services}.json Positive/negative fixtures. Filename prefix (valid_/invalid_) is the ground truth read by the validation workflow. .github/workflows/manifest-validate.yml Runs on every PR and push that touches the manifest, schema, or fixtures. Three checks: 1. The schema itself is a valid Draft 2020-12 schema (Draft202012Validator.check_schema). 2. restore-fleet.json validates against the schema. 3. Each fixture under schemas/fixtures/ behaves as labelled (valid_* must pass, invalid_* must fail). Acceptance criteria from openai#26: [x] restore-fleet.json committed to repo root [x] schema can be parsed by serde_json round-trip without warnings (provable in openai#25 via the manifest_parses_v1 test) [x] shared_vars includes L_R8_SYNTHETIC_FALLBACK=FORBID [x] Mirror-2 account seeds (100/101/102) covered [x] serde_json::from_str round-trips (validated locally with jsonschema; CI now enforces it) Closes openai#26. Refs openai#25 (RW-DR-01), openai#28 (RW-DR-04), openai#143. Co-authored-by: Perplexity Computer <computer@perplexity.ai>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
records/track_10min_16mb/2026-03-19_ContextFuse-2048train_gpt.pySubmission details
ContextFuse-2048Julz19val_bpb:1.17792945val_loss:1.9888792715,929,105599075ms132220msNotes
track_10min_16mbsubmission, not a SOTA claim