-
Notifications
You must be signed in to change notification settings - Fork 1
feat(warp-core): ADR-0008 Phases 0–3 runtime primitives #300
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from all commits
Commits
Show all changes
45 commits
Select commit
Hold shift + click to select a range
a4f7e14
docs(adr): ADR-0008 Worldline Runtime Model
flyingrobots 875b0a6
docs(adr): amend ADR-0008 — multi-writer, frontier clamp, two-tier sc…
flyingrobots ccc015a
docs(adr): ADR-0009 Inter-Worldline Communication
flyingrobots 5d1ffbc
docs(adr): revise ADR-0009 per review — 3 must-fix, 5 should-fix
flyingrobots a65d4bf
test(warp-core): Phase 0 invariant harness for ADR-0008/0009 refactor
flyingrobots ffac10d
feat(warp-core): Phase 1 runtime primitives for ADR-0008
flyingrobots 9a7c747
feat(warp-core): Phase 2 SchedulerCoordinator for ADR-0008
flyingrobots d475e1b
feat(warp-core): Phase 3 deterministic ingress and per-head inboxes
flyingrobots b7b5067
fix(warp-core): self-review fixes for Phases 0–3
flyingrobots c2b5403
fix: address CodeRabbit PR feedback
flyingrobots a817947
chore: skip doc-tests in pre-push hook
flyingrobots fa4f256
fix(warp-core): address CodeRabbit round-2 PR feedback
flyingrobots 7d13ea6
fix(warp-core): address CodeRabbit round-3 PR feedback
flyingrobots 580f685
Merge branch 'main' into feat/adr-0008-0009-phase-0
flyingrobots 54f4d71
Implement ADR-0008 phase 3 runtime ingress
flyingrobots 3a6ce05
Merge remote-tracking branch 'origin/feat/adr-0008-0009-phase-0' into…
flyingrobots 03901f8
fix(warp-core): harden runtime ingress invariants
flyingrobots 1915b7b
docs: sync ADR plan and changelog with runtime hardening
flyingrobots 1e7be49
fix(warp-core): resolve remaining runtime review gaps
flyingrobots ac66771
docs: sync review follow-up docs and hooks
flyingrobots bfff648
fix(warp-core): repair rustdoc gate for registry docs
flyingrobots 749ed3a
docs: expand tooling backlog from review follow-ups
flyingrobots ffba1c4
docs: sync phase 3 review follow-up docs
flyingrobots dfb4512
fix(warp-core): harden late phase 3 review fixes
flyingrobots 1a0668e
fix(warp-core): validate restored worldline runtime state
flyingrobots a5215fe
docs: clarify final phase 3 review invariants
flyingrobots effae2c
docs: correct remaining phase 3 changelog notes
flyingrobots abc937c
fix: close remaining runtime review threads
flyingrobots 1c603a1
docs: sync remaining review notes
flyingrobots 6e2f279
fix(tooling): make local verification path-aware
flyingrobots d59c753
fix(tooling): narrow the local full gate
flyingrobots b3266d1
fix(tooling): trim local full clippy scope
flyingrobots af451f3
fix(tooling): focus local full tests on core crates
flyingrobots 88d7449
fix(tooling): default local verification to cargo test
flyingrobots a505c07
fix(tooling): use a curated local full test lane
flyingrobots fa3fb58
fix(tooling): reuse local full verification stamps
flyingrobots 81e41de
fix(ci): shard the test gate
flyingrobots 5b5e99b
fix(ci): run warp-core tests with nextest
flyingrobots 3adf291
fix: address remaining PR review threads
flyingrobots 7b849a3
fix: address self-review findings
flyingrobots ef7d2f1
fix(tooling): add staged pre-commit verifier
flyingrobots 9a068dc
fix(warp-core): harden runtime commit guard
flyingrobots 0734f7a
docs: sync final PR review notes
flyingrobots b176d78
fix(warp-core): make super tick panic-safe
flyingrobots c73aa9d
fix(tooling): harden local verification gating
flyingrobots File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
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
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
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,63 +1,10 @@ | ||
| #!/usr/bin/env bash | ||
| # SPDX-License-Identifier: Apache-2.0 | ||
| # © James Ross Ω FLYING•ROBOTS <https://github.com/flyingrobots> | ||
| # Round-robin pre-push: alternates between sequential/parallel, logs timing | ||
| # | ||
| # Canonical pre-push hook: route to the shared local verifier so developers pay | ||
| # for the full workspace gates only when the changed paths justify it. | ||
| set -euo pipefail | ||
|
|
||
| LOGFILE="${PREPUSH_LOGFILE:-.githooks/timing.jsonl}" | ||
| SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" | ||
|
|
||
| # Portable high-resolution timestamp (macOS date doesn't support %N) | ||
| get_timestamp() { | ||
| if date +%s.%N 2>/dev/null | grep -q '\.'; then | ||
| date +%s.%N | ||
| elif command -v python3 >/dev/null 2>&1; then | ||
| python3 -c 'import time; print(f"{time.time():.6f}")' | ||
| elif command -v perl >/dev/null 2>&1; then | ||
| perl -MTime::HiRes=time -e 'printf "%.6f\n", time' | ||
| else | ||
| # Fallback to integer seconds | ||
| date +%s | ||
| fi | ||
| } | ||
|
|
||
| # Determine which variant to run (round-robin based on line count) | ||
| if [[ -f "$LOGFILE" ]]; then | ||
| COUNT=$(wc -l < "$LOGFILE" | tr -d ' ') | ||
| else | ||
| COUNT=0 | ||
| fi | ||
|
|
||
| if (( COUNT % 2 == 0 )); then | ||
| VARIANT="sequential" | ||
| SCRIPT="$SCRIPT_DIR/pre-push-sequential" | ||
| else | ||
| VARIANT="parallel" | ||
| SCRIPT="$SCRIPT_DIR/pre-push-parallel" | ||
| fi | ||
|
|
||
| echo "📊 pre-push benchmark: running $VARIANT (#$((COUNT + 1)))" | ||
|
|
||
| # Capture output to check if compilation happened | ||
| OUTFILE=$(mktemp) | ||
| trap 'rm -f "$OUTFILE"' EXIT | ||
|
|
||
| # Time the run, tee output to both terminal and file | ||
| START=$(get_timestamp) | ||
| set +e # Disable errexit so PIPESTATUS is captured before exit | ||
| "$SCRIPT" 2>&1 | tee "$OUTFILE" | ||
| RC=${PIPESTATUS[0]} | ||
| set -e | ||
| END=$(get_timestamp) | ||
|
|
||
| # Only log timing if cargo actually compiled something | ||
| if grep -q "Compiling" "$OUTFILE"; then | ||
| DURATION=$(echo "$END - $START" | bc) | ||
| TIMESTAMP=$(date -u +%Y-%m-%dT%H:%M:%SZ) | ||
| echo "{\"ts\":\"$TIMESTAMP\",\"variant\":\"$VARIANT\",\"duration\":$DURATION,\"exit\":$RC}" >> "$LOGFILE" | ||
| echo "📊 $VARIANT completed in ${DURATION}s (logged)" | ||
| else | ||
| echo "📊 $VARIANT completed (no compilation, timing not logged)" | ||
| fi | ||
|
|
||
| exit $RC | ||
| REPO_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)" | ||
| exec "$REPO_ROOT/scripts/verify-local.sh" pre-push |
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
Oops, something went wrong.
Oops, something went wrong.
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.
Uh oh!
There was an error while loading. Please reload this page.