Skip to content

Where people and agents ship software together. The open-source git platform for the whole job: issues, agents, checks and deploys to the edge.

g1t.sh
Deploy

Agents in any harness coordinate through one inbox, the merge queue lands only what an attempt itself tested, and workspaces have Insights. Each session keeps the coordination updates that concern it (session_updates, migration 0038): claims, releases, hand-offs and expiries, overlaps, dependency changes, decisions, integration results and sessions starting and ending, about the issues and pull requests it is on or tied to, or every one while it is on nothing yet; never its own start, end or claims. An update is written in the same batch as the change it announces, guarded so it exists only once the change is made, with an id derived from the change, so a retry or two requests at once deliver it once; a blocker clearing and queue results follow their change under a key that names it. get_session's `updates` lists up to 100, oldest first, and reading never clears them; record_session_entries' `acknowledge` clears exact IDs for that session only and says how many were its (`acknowledged`). The CLI has `g1t session updates` and `g1t session acknowledge ID --note` (the decision note and the acknowledgement in one idempotent call, `--session` over G1T_SESSION), and those and `heartbeat` say which files the working copy changed (git status; G1T_TOUCH=0 turns it off), so overlapping edits are noticed whichever harness makes them; a pair of sessions is told again when another file in common joins. The Claude Code hooks fetch the inbox in the background, show it at every prompt and before tools when it changes or every two minutes, refresh after an acknowledgement, and never acknowledge. The AGENTS.md snippet, the skills, MCP's instructions and llms.txt say the same steps for every harness: scope claims (Scope, Interfaces, Depends on, Checks), proceed on complementary work, agree ownership before overlapping edits, record public summaries and evidence, never private reasoning. Claims resolve ownership in one statement, so simultaneous claims by one session converge. The merge queue: every attempt has its own id and branch (0037); a claimed build, an accepted build, a report and a callback each check their attempt; a dispatch registers its runs first and Actions fails the dispatch when it cannot; an attempt is decided only by its own runs (and other tools' statuses set after it was claimed), never an earlier attempt's or the pull request's own on the same commit (0040 keeps what it built and how many runs it registered); landing re-reads the rules, honours a bypass asked for when queued (0039), checks no predecessor remains, carries the exact tested commit to Git's compare-and-swap, records publication intent that fences removal, closing, drafting and changing base, resumes after a crash, and a publisher that lost a race no longer undoes the winner's landing; a retried attempt's branch is deleted; an entry whose branch or pull request is gone leaves the queue with a note instead of blocking those behind it; diagnosis rebuilds exactly what was tested and names a failing combination, not a proven cause. A session's page shows what awaits its agent as the coordination feed does. Workspace Insights (/:owner/-/insights): delivery metrics across a workspace's readable repositories (work service delivery_insights). Deploy Work migrations 0037 to 0040 first (the pipeline does), then Repos and Actions before Work, and the site with Work. Checked: cargo test for g1t-work (143), g1t-repos (311), g1t-actions-service (108), g1t-api (201), g1t (149), g1t-rules (72), g1t-contracts (306) and wasm32 builds; cargo check --workspace; the conformance suite against freshly built API and Work Workers (5, none skipped); the Claude Code hooks (49); the site's typecheck, tests (919) and a production build; the deploy tool's 92 tests; the docs build; and two unscripted local rehearsals in which two concurrent agents, given only a task and AGENTS.md, found each other, agreed a split and made complementary edits.#312

How this runs on g1t · 32 notes
  • check: `actions/checkout` checks out from g1t.
  • check: `actions/cache/restore`: g1t keeps the cache per repository: up to 2 GiB an entry and 10 GiB a repository, until it goes 7 days unused, and at most 28 days.
  • plan: `actions/checkout` checks out from g1t.
  • plan: `environment`: the job gets the values its secrets and variables give this environment once the environment's protection rules (required reviewers, a wait timer, which branches may deploy) let it through. Unless it says `deployment: false`, the run records a deployment to it.
  • migrate: `actions/checkout` checks out from g1t.
  • migrate: `actions/cache/restore`: g1t keeps the cache per repository: up to 2 GiB an entry and 10 GiB a repository, until it goes 7 days unused, and at most 28 days.
  • migrate: `environment`: the job gets the values its secrets and variables give this environment once the environment's protection rules (required reviewers, a wait timer, which branches may deploy) let it through. Unless it says `deployment: false`, the run records a deployment to it.
  • core: `actions/checkout` checks out from g1t.
  • core: `actions/cache`: g1t keeps the cache per repository: up to 2 GiB an entry and 10 GiB a repository, until it goes 7 days unused, and at most 28 days.
  • core: `actions/cache`: g1t keeps the cache per repository: up to 2 GiB an entry and 10 GiB a repository, until it goes 7 days unused, and at most 28 days.
  • core: `actions/cache/restore`: g1t keeps the cache per repository: up to 2 GiB an entry and 10 GiB a repository, until it goes 7 days unused, and at most 28 days.
  • core: `actions/cache`: g1t keeps the cache per repository: up to 2 GiB an entry and 10 GiB a repository, until it goes 7 days unused, and at most 28 days.
  • core: `actions/cache`: g1t keeps the cache per repository: up to 2 GiB an entry and 10 GiB a repository, until it goes 7 days unused, and at most 28 days.
  • core: `actions/cache/restore`: g1t keeps the cache per repository: up to 2 GiB an entry and 10 GiB a repository, until it goes 7 days unused, and at most 28 days.
  • core: `environment`: the job gets the values its secrets and variables give this environment once the environment's protection rules (required reviewers, a wait timer, which branches may deploy) let it through. Unless it says `deployment: false`, the run records a deployment to it.
  • edge: `actions/checkout` checks out from g1t.
  • edge: `actions/cache`: g1t keeps the cache per repository: up to 2 GiB an entry and 10 GiB a repository, until it goes 7 days unused, and at most 28 days.
  • edge: `actions/cache`: g1t keeps the cache per repository: up to 2 GiB an entry and 10 GiB a repository, until it goes 7 days unused, and at most 28 days.
  • edge: `actions/cache/restore`: g1t keeps the cache per repository: up to 2 GiB an entry and 10 GiB a repository, until it goes 7 days unused, and at most 28 days.
  • edge: `actions/cache`: g1t keeps the cache per repository: up to 2 GiB an entry and 10 GiB a repository, until it goes 7 days unused, and at most 28 days.
  • edge: `actions/cache`: g1t keeps the cache per repository: up to 2 GiB an entry and 10 GiB a repository, until it goes 7 days unused, and at most 28 days.
  • edge: `actions/cache/restore`: g1t keeps the cache per repository: up to 2 GiB an entry and 10 GiB a repository, until it goes 7 days unused, and at most 28 days.
  • edge: `environment`: the job gets the values its secrets and variables give this environment once the environment's protection rules (required reviewers, a wait timer, which branches may deploy) let it through. Unless it says `deployment: false`, the run records a deployment to it.
  • front: `actions/checkout` checks out from g1t.
  • front: `actions/cache`: g1t keeps the cache per repository: up to 2 GiB an entry and 10 GiB a repository, until it goes 7 days unused, and at most 28 days.
  • front: `actions/cache`: g1t keeps the cache per repository: up to 2 GiB an entry and 10 GiB a repository, until it goes 7 days unused, and at most 28 days.
  • front: `actions/cache/restore`: g1t keeps the cache per repository: up to 2 GiB an entry and 10 GiB a repository, until it goes 7 days unused, and at most 28 days.
  • front: `actions/cache`: g1t keeps the cache per repository: up to 2 GiB an entry and 10 GiB a repository, until it goes 7 days unused, and at most 28 days.
  • front: `actions/cache`: g1t keeps the cache per repository: up to 2 GiB an entry and 10 GiB a repository, until it goes 7 days unused, and at most 28 days.
  • front: `actions/cache/restore`: g1t keeps the cache per repository: up to 2 GiB an entry and 10 GiB a repository, until it goes 7 days unused, and at most 28 days.
  • front: `environment`: the job gets the values its secrets and variables give this environment once the environment's protection rules (required reviewers, a wait timer, which branches may deploy) let it through. Unless it says `deployment: false`, the run records a deployment to it.
  • smoke: `actions/checkout` checks out from g1t.

Triggered via push

syntaqx45ad016main

Status

Failed

Total duration

13m 30s

Artifacts

—

deploy.yml· on: push
Plansummary

Deploy plan for 45ad016

unitstageactionlivewhy
eventscoredeploybe0e43b4 changed files (crates/contracts/src/repos.rs via crates/contracts)
identitycoredeploybe0e43b5 changed files (services/identity/src/suspension.rs)
reposcoredeploybe0e43b7 changed files (services/repos/src/land.rs)
workcoredeploybe0e43b24 changed files (services/work/migrations/0037_queue_attempts.sql)
searchcoredeploybe0e43b4 changed files (crates/contracts/src/repos.rs via crates/contracts)
projectscoredeployc42cae94 changed files (packages/contracts/src/chat.ts via packages/contracts)
chatcoredeployc42cae910 changed files (services/chat/src/clear.test.ts)
artifactscoredeployc42cae94 changed files (packages/contracts/src/chat.ts via packages/contracts)
telemetrycoredeployc42cae94 changed files (packages/contracts/src/chat.ts via packages/contracts)
notifycoredeployc42cae98 changed files (services/notify/src/feed.ts)
billingcoredeploybe0e43b11 changed files (services/billing/migrations/0061_measured_months.sql)
integrationscoredeployfb1fa315 changed files (services/integrations/src/agent_sessions.rs)
webhookscoredeploybe0e43b4 changed files (crates/contracts/src/repos.rs via crates/contracts)
actionscoredeploybe0e43b6 changed files (services/actions/src/plan.rs)
packagescoredeploybe0e43b4 changed files (crates/contracts/src/repos.rs via crates/contracts)
securitycoredeploybe0e43b4 changed files (crates/contracts/src/repos.rs via crates/contracts)
deploymentscoredeployc42cae94 changed files (packages/contracts/src/chat.ts via packages/contracts)
runnercoredeployc42cae94 changed files (packages/contracts/src/chat.ts via packages/contracts)
ogcoredeployc42cae95 changed files (apps/web/app/lib/roadmap.ts via apps/web/app/lib/roadmap.ts)
apiedgedeployc42cae99 changed files (apps/api/src/coordination.rs)
pagesedge5879548nothing it is built from changed
statusedgedeployc42cae94 changed files (packages/contracts/src/chat.ts via packages/contracts)
webfrontdeploy?no known commit (its live version was not deployed by scripts/deploy.mjs)
sudofrontdeployc42cae94 changed files (packages/contracts/src/chat.ts via packages/contracts)
docsfrontdeployc42cae916 changed files (apps/docs/src/content/docs/about/limitations.md)

Pending migrations

  • g1t-work: 0037_queue_attempts.sql, 0038_session_updates.sql, 0039_queue_bypass.sql, 0040_queue_evidence.sql
  • g1t-billing: 0061_measured_months.sql
core (rust-1)summary

sccache

Compile requests                     16
Compile requests executed             5
Cache hits                            1
Cache hits (Rust)                     1
Cache misses                          4
Cache misses (Rust)                   4
Cache hits rate                   20.00 %
Cache hits rate (Rust)            20.00 %
Cache timeouts                        0
Cache read errors                     0
Forced recaches                       0
Cache write errors                    0
Cache errors                          0
Compilations                          4
Compilation failures                  0
Non-cacheable compilations            0
Non-cacheable calls                  11
Non-compilation calls                 0
Unsupported compiler calls            0
Average cache write               2.574 s
Average compiler                  7.743 s
Average cache read hit            0.477 s
Failed distributed compilations       0

Non-cacheable reasons:
-                                     4
crate-type                            4
missing input                         3

Cache location                  ghac, name: sccache-v0.18.0, prefix: /sccache/
Base directories                (none)
Version (client)                0.18.0
edge (rust)summary

sccache

Compile requests                      10
Compile requests executed              5
Cache hits                             5
Cache hits (Rust)                      5
Cache misses                           0
Cache hits rate                   100.00 %
Cache hits rate (Rust)            100.00 %
Cache timeouts                         0
Cache read errors                      0
Forced recaches                        0
Cache write errors                     0
Cache errors                           0
Compilations                           0
Compilation failures                   0
Non-cacheable compilations             0
Non-cacheable calls                    5
Non-compilation calls                  0
Unsupported compiler calls             0
Average cache write                0.000 s
Average compiler                   0.000 s
Average cache read hit             0.650 s
Failed distributed compilations        0

Non-cacheable reasons:
-                                      2
missing input                          2
crate-type                             1

Cache location                  ghac, name: sccache-v0.18.0, prefix: /sccache/
Base directories                (none)
Version (client)                0.18.0
core (rust-2)summary

sccache

Compile requests                      18
Compile requests executed              7
Cache hits                             4
Cache hits (Rust)                      4
Cache misses                           3
Cache misses (Rust)                    3
Cache hits rate                    57.14 %
Cache hits rate (Rust)             57.14 %
Cache timeouts                         0
Cache read errors                      0
Forced recaches                        0
Cache write errors                     1
Cache errors                           0
Compilations                           3
Compilation failures                   0
Non-cacheable compilations             0
Non-cacheable calls                   11
Non-compilation calls                  0
Unsupported compiler calls             0
Average cache write                2.889 s
Average compiler                  27.238 s
Average cache read hit             0.327 s
Failed distributed compilations        0

Non-cacheable reasons:
-                                      4
crate-type                             4
missing input                          3

Cache location                  ghac, name: sccache-v0.18.0, prefix: /sccache/
Base directories                (none)
Version (client)                0.18.0
core (rust-3)summary

sccache

Compile requests                      20
Compile requests executed             10
Cache hits                             6
Cache hits (Rust)                      6
Cache misses                           4
Cache misses (Rust)                    4
Cache hits rate                    60.00 %
Cache hits rate (Rust)             60.00 %
Cache timeouts                         0
Cache read errors                      0
Forced recaches                        0
Cache write errors                     1
Cache errors                           0
Compilations                           4
Compilation failures                   0
Non-cacheable compilations             0
Non-cacheable calls                   10
Non-compilation calls                  0
Unsupported compiler calls             0
Average cache write                3.123 s
Average compiler                  16.930 s
Average cache read hit             0.562 s
Failed distributed compilations        0

Non-cacheable reasons:
-                                      4
crate-type                             3
missing input                          3

Cache location                  ghac, name: sccache-v0.18.0, prefix: /sccache/
Base directories                (none)
Version (client)                0.18.0