Tuesday, October 6, 2026

  1. Upgrade basic-ftp to 6.2.1 (GHSA-c475-qrg2-pj4r)

    Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>

    g1t agent committed

    0b150b7
  2. Invite-only launch: sign in with GitHub, repository access and lifecycle, many emails, a new look

    - Registration is invite-only: single-use codes, five invites each, a waitlist, staff grants in sudo. - Sign in with GitHub and bring repositories over: import, mirror, or move to g1t, through one GitHub App. - Repository access: Read, Triage, Write, Maintain and Admin; a workspace base permission; outside collaborators. - Repositories can be renamed, archived, made public or private, transferred, and deleted with 30 days to restore. - Accounts hold up to ten emails with a primary and a backup, private noreply commits, and pushes that would expose an address refused on request. - Sign-in is throttled against guessing, and sensitive changes ask you to confirm it is you. - Workspaces can be deleted; syntaqx becomes an ordinary workspace and flagon-io holds g1t. - Deployments say plainly that they are off until turned on, and show what was detected. - The pixel G1T logo, Bricolage Grotesque, Hanken Grotesk and IBM Plex Mono served from g1t itself. - A faster, phone-friendly marketing site, and a sidebar that drills into settings and projects.

    syntaqx committed

    0e5b00b

Monday, October 5, 2026

  1. Team plan, an open-source pool, monthly trials and honest metering; the sidebar for everyone; a workspace that stays put

    Pricing (what g1t pays plus 20%, never per seat): - g1t Team: $20 a month per workspace with $5 of usage included, 50 GB of private storage and a year of audit log. Comped accounts get it free. - Work on public repositories draws on a capped open-source pool ($10 a month, $1 per repository) before the workspace is billed. - Trials are $1 of usage per new workspace from a $40 monthly pool. - A month's close charges no less than $5; less carries over. A charge because a limit was reached always goes through. - Deployments includes 200 build minutes. - Private storage past 1 GB, context embeddings and security scans are metered at cost plus 20%; enterprise terms are on the pricing page. Browsing: - Signed-out visitors browse projects, Explore, search and profiles in the sidebar, with Sign in and Sign up in it. - A project, issue, pull request or workspace you cannot see answers the same whether it is private or missing, and says how to get in. - Sign-in redirects accept only same-origin paths. - The workspace you are in changes only when you choose one; opening a project elsewhere no longer switches it, so nothing flickers back.

    syntaqx committed

    679e64d
  2. 135337e
  3. cf4b553
  4. Prices are what g1t pays plus 20%, from the first second

    Sandbox time is charged at cost plus 20% from its first second, like everything else in the price book; the 500 free minutes per workspace and the 138% markup that paid for them are gone. Runs on a workspace's own model provider no longer carry a $0.10 fee: they pay only their sandbox time. The price change is recorded with its reason, and the pricing page works out a markup-only change from the price. Docs, pricing page, billing page and sudo say it plainly.

    syntaqx committed

    87a84cf
  5. Catching up with main takes seconds when the two sides touched different files

    The repos service merges the base branch into a pull request's branch itself when their changed paths are disjoint: it rebuilds only the trees on the changed paths, writes one merge commit, pushes a whole-object pack with a compare-and-swap on the branch, and emits the usual git.push so checks, mergeability and the lifecycle move on. Anything else (both sides touched a file, known conflicts, no merge base, huge changes) still goes to a sandbox, and the merge box now shows that run's live step, why it went there, and ends in done, failed with Try again, or a timeout. A mode-only change (chmod +x) now counts as a change in diffs.

    syntaqx committed

    9d45b83
  6. 198e37c
  7. 30c6956
  8. d729600
  9. 9d05bed
  10. Search across all of g1t, Explore, and a command palette

    - services/search: one D1 FTS5 index of repositories (with topics and README), code on default branches (trigram), issues and pull requests, and people and workspaces. Fed by events: a push re-indexes only the files it changed, in capped jobs; a backfill starts on its own. - Visibility is checked when the query runs, against current membership and again against the repos service, so a project made private leaves others' results at once. Signed-out visitors search everything public. - Qualifiers: repo:, workspace:, language:, path:, is:, author:, label:, and quoted phrases. GET /search and the MCP search tool, for people and agents. - /search, a search box in the top bar, a Ctrl-K palette with instant results, per-project search from Code, and Explore for public projects by activity, language and topic. Repositories gain topics. - A workflow can be run by its id as well as by its file.

    syntaqx committed

    bee6db5
  11. 2fe4615
  12. Agents get guardrails, run credentials, an audit log, a context hub, repository instructions and mentions; security upkeep; snake_case API

    - Guardrails: per-workspace and per-project network allowlist enforced outside the sandbox, command rules via a managed hook, cost and time caps that halt a run and leave its pull request for a person. Fork checkouts start without the fork's settings, hooks, MCP config, commands or CLAUDE.md. - Run credentials: each sandbox gets least-privilege tokens bound to its run, acting for the person who started it, intersected with their current membership; revoked when the run ends. Enforced in identity, the API/MCP and git. - Audit log: every agent action and every write, with on-behalf-of and refusal rules; workspace page, CSV/JSON export, "What it did" on runs. - Security: push protection for secrets, a history scan, dependency vulnerabilities from OSV opening upgrade issues for g1t-agent, and a Security page per project and workspace. - Context hub: catalog of projects, apps, packages, owners and environments with relations; memory capture with review; backfill; search_context and get_entity for people and agents; run context. - Repository instructions (AGENTS.md, CLAUDE.md, .g1t/review.md) from trusted branches only; @g1t-agent mentions and a label rule. - Mission control and the project overview rebuilt around what moved and what needs you. - Public API bodies, MCP results and webhook payloads are snake_case. - Docs link to the source on g1t, never GitHub; the current sidebar link's mark is a straight line.

    syntaqx committed

    7a21a23
  13. 53719c3
  14. The statement is a month at a time, a line per kind of charge

    Billing gains statement (a month of the ledger grouped by day or by project, one line per kind: agent runs, own-provider runs, sandbox time, deployments, payments, credits, refunds, with counts and totals) and statement_entries (one line's entries, 50 at a time). The Billing page shows the month's totals, a month picker, By day / By project, lines that open to their entries with Show more, and a CSV of the month.

    syntaqx committed

    66440cc
  15. Say why git over SSH is not on yet

    It needs inbound TCP on port 22, which on Cloudflare means Workers inbound TCP, a beta g1t has applied for and is waiting on. HTTPS clones, fetches and pushes the same until then; SSH keys added in settings will be used once it is on.

    syntaqx committed

    916db46
  16. Builds say Replaced or Down once they are no longer live

    Every successful build stayed 'Live' in a project's history, though each deploy replaces its app's Worker in place and taken-down previews are deleted. Now one build per app is Live: the one a newer build replaced is Replaced, and one whose app was taken down is Down. A migration corrects the builds already recorded.

    syntaqx committed

    5197201
  17. Plan: the inbox, then channels and apps, instead of discussions

    People and agents talk in real-time channels (Durable Objects with hibernation), with agents as members, threads tied to issues, pull requests, runs and deploys, and an installable app first, then native desktop and mobile. The inbox comes first as the delivery layer both need.

    syntaqx committed

    96bd789
  18. README says what is working today; the free allowance says what it covers

    The status list still said the merge queue and required reviews were not built. It now lists outcomes, the queue, checks and conflicts, agents and memory, projects and deployments, workflows, profiles and billing; SSH and code search are what remain. The free allowance pays the model part of runs; other usage is charged as usual.

    syntaqx committed

    40f000a
  19. Secret-refusal tests build their key-shaped values at run time

    So no whole key-shaped string sits in the source for secret scanners to flag. The values were never real keys.

    syntaqx committed

    7a33683
  20. Agents and memory, checks and conflicts, profiles, slug renames, custom domains

    Agents: every agent run is a record (kind, pull request, model, status, current step and a timeline of steps reported from the sandbox, cost), with Stop and Message. Projects get an Agents page (At work, Sessions, Memory), workspaces an Agent fleet and Workspace memory, and pull requests an Agent panel and a working badge in the list. Memory has two levels, project and workspace; agents write it with remember and read it with recall (MCP and REST), every g1t run starts with it, members curate it, and anything that looks like a secret is refused. Pull requests: the merge box lists every check and workflow job, failed ones open with their output (colours, line numbers, exit code), with re-run and history. Mergeability is worked out on every push: changed paths first, then a metered sandbox probe with git merge-tree when both sides touched a file. Conflicts are listed up front, block the merge, and are handed to the agent with the files named. Profiles at /u/<username>: name, picture, bio, location, website, joined; pull requests and issues with filters, only on repositories the viewer may read; workspaces shown only where membership is already shared or public. Authors link to their profiles; profiles get social cards. Workspace slugs can be renamed by owners. Every service moves its rows on workspace.renamed, idempotently and in any order; deployed apps are rebuilt under their new names with the old addresses redirecting; old links and git remotes redirect for 90 days. Repositories keep a store key that never changes, so a freed name can never adopt old git data. Custom domains for production: add a hostname (and its www or apex twin), get the DNS records to set, certificates by Cloudflare for SaaS, status kept current by the sweep; three included with Deployments, then $0.12 a month. The wildcard route waits for SaaS to be enabled on g1t.page. The sidebar no longer mistakes /u/<name> for a project.

    syntaqx committed

    ce402c0
  21. Say what g1t does, not whom it is like

    Removes comparisons to other products from the site, docs and sudo (GitHub Projects, GitHub Enterprise, Dependabot, Cloudflare's, Vercel's and Fly's plans). Integrations with other products and compatibility with GitHub Actions and GitHub's API stay: they say what works.

    syntaqx committed

    582c31c
  22. Icons are cached at the edge

    An icon's address is its content's hash, so each data centre keeps it after the first view: storage is read about once per place, not once per visitor.

    syntaqx committed

    7a7ee4b
  23. Observability gets its own page; tabs never overflow

    Deployments had grown eight views, logs and errors among them, which are not deploying. It keeps what ships (Deployments, Environments, Releases, Feature flags); Observability is its own page in the menu (Logs, Errors, Uptime, Analytics), as Vercel has it. Soon tabs are marked with a dot instead of a pill, tab bars never show a scrollbar, and Soon pages under a project's tabs drop the breadcrumb the tabs already give.

    syntaqx committed

    6f2cd12
  24. Workspace names and icons, and a component kit for every control

    Workspaces show their display name, not their slug, wherever people see them: the sidebar switcher (which no longer loses it to a role badge), mission control, the command list and the workspace page; addresses keep the slug. Owners upload an icon on workspace settings, and anyone a picture on their own settings: PNG, JPEG, WebP or GIF up to 1 MB, checked by its bytes (never SVG), owner-only on the server, stored by content hash and served with a strict policy. Icons show in the switcher, menus, mission control and social cards. Kept in KV until R2 is turned on. A shadcn-style kit themed to g1t (Select, Combobox, radio cards, Checkbox, Switch, Popover, Tooltip, Dialog, AlertDialog, Field, Input groups) replaces every native select, radio and checkbox, with the same form fields posted. New project gets a workspace picker with icons and names joined to the name, and the source and visibility as cards. fflate is held at 0.7.5 or later, for the moderate advisory reached through the social-card renderer.

    syntaqx committed

    3d8defb
  25. A flat project menu with Code first, views as tabs, and Stripe for every owner

    The project menu is flat, in the order people use it: Code, Issues, Pull requests, Agents, Workflows, Deployments, Security, Insights, Settings, with the project's own row as its overview. A page with more than one view shows them as tabs across its top (Files, Commits and what is coming under Code; Issues and Outcomes; Pull requests and the merge queue; Deployments, environments, logs and the rest), Soon views included, the way GitHub and Vercel do. What spans projects belongs to the workspace, not to one project: Boards (like GitHub Projects), Roadmap, Packages and the Agent fleet, under Across projects in the workspace's menu, each with its page. Billing opens with Stripe for every owner, comped workspaces included: card, invoices, receipts and billing details.

    syntaqx committed

    cfe1663
  26. Social cards for every page: og.g1t.sh

    A new Worker draws a 1200x630 card for every page on g1t.sh and the docs: the home and pricing pages, workspaces, projects with their open issues and pull requests, issues and pull requests with their state, Soon pages, and each docs page. Lookups are anonymous, so anything private gets the generic card. Cards are cached by what they show. Every page on g1t.sh and the docs carries og and Twitter tags pointing at its card.

    syntaqx committed

    b1efcf2
  27. sudo: Invoices, Audit log, and follow-ups due

    Invoices lists every invoice g1t has sent, workspaces' and enterprises', with totals, filters by status and month, and links to each customer and to Stripe. Audit log shows every change made in sudo and by Stripe, by person and kind, paged. Reach out shows each workspace's next step and filters to follow-ups due; the Overview card links there.

    syntaqx committed

    ef10f3b
  28. Billing lists every invoice and every staff change; signals carry follow-ups

    admin_invoices: workspace and enterprise invoices together, by status and month. admin_audit: every change made in sudo and by Stripe, by who and what, paged. Signals now include the next step and its date, so sudo's Reach out can show follow-ups due.

    syntaqx committed

    d3febab
  29. A menu shaped by how g1t works, Soon pages for every promise, and sudo for sales

    The project menu follows g1t's loop: Work (issues, pull requests, merge queue, outcomes), Code, Agents, Ship (workflows and deployments together), Security, Observe and Insights. Every Soon is now a page from one roadmap catalogue: what it is for, what it will do, and what to use until then, with Board planned the way GitHub Projects works. Actions are called Workflows. sudo has a sidebar of folding sections, an Overview of revenue against cost, a Reach out queue from billing's signals, a Sales section on each workspace (stage, owner, next step, notes), six-month charts and invoices, and Soon pages mapping the in-house CRM and ERP.

    syntaqx committed

    2c8fbdc
  30. The project menu opens by section, and the workspace has its own panel

    Like GitLab's: Plan, Code, Agents, Build, Deploy, Secure, Operate, Analyze and Settings, each one row that opens to its pages, built and Soon alike, instead of headings over one link each. The section holding the current page opens itself; others remember being left open. Sections with nothing built yet carry one Soon. Project settings are listed in the menu. The workspace's usage, settings and the account sit in a panel of their own at the bottom, ruled off full width.

    syntaqx committed

    873080c
  31. Two limits, real invoices, trust that grows by itself, sales signals

    Every workspace now has two limits. Its owners' monthly spend limit protects them from a surprise: automatic by default ($200, or twice last month's spend, so a steady $900-a-month customer gets $1,800 without asking), fixed, or none. g1t's ceiling on what is unpaid protects g1t: $3 new, twice what has cleared once paid (to $1,000), and Established after three steady months, following spend to $10,000 by itself. Only payments cleared for seven days count; prepaid cards, disputes, credits and test mode never raise it. Every charge is a real Stripe invoice, charged to the card: monthly, and mid-month as a workspace nears its ceiling. Itemised by kind of usage, with credit paid in advance and earlier arrears as lines, so the total is exactly what is owed; PDFs and receipts on Stripe, listed on Billing. For sudo: signals of who to reach out to (at limit, declined, near the ceiling, high spend, growing, Established, first payment), sales records with stages, owners, next steps and notes, an overview with six months of figures and usage by kind, and six-month figures per account. The app's top bars are 64px.

    syntaqx committed

    54755e1
  32. Stripe webhooks, enterprise invoices, and sudo for both

    Stripe now tells billing what happens while no one is looking, at api.g1t.sh/stripe/webhook: payment pages finished after the tab closed, plan renewals and failures, refunds (partial ones add up), disputes (which stop work until resolved), and enterprise invoices paid, overdue or voided. Events are signature-checked against the endpoint billing registered itself from sudo, whose secret stays in billing, refused when older than five minutes, and handled once each. Enterprises are invoiced: when a month closes, one Stripe invoice to the enterprise's billing email with a line per workspace, net 30, paid on Stripe's hosted page. Paid clears each workspace; overdue stops their work. Staff can send one now from sudo. sudo gains a Stripe page (mode, webhook, recent events), invoices on each enterprise, and pages its workspace list, with billing figures fetched for exactly that page.

    syntaqx committed

    77f9c6e
  33. Billing on Stripe's pages, month-end charges, warnings; sudo by workspace

    Cards, invoices, receipts and billing details live on Stripe's hosted billing page (the customer portal), opened from Billing; g1t never sees a card number. Staff send a customer the same page from sudo: a one-time link and the page's permanent sign-in, logged. Billing now charges the card on file when a month closes, for what was owed, and autopay near the limit charges what is owed rather than the cost of free usage. Unpaid charges carry into the next month's limit, so a new month is no fresh allowance. Owners are emailed at 50, 80 and 100% of their limit and when a card is declined, through identity's new notify_owners. sudo is organised around workspaces: name, owners, members and created first, then what each is billed and to whom; enterprises have their own pages, and internal billing ids no longer show. Identity has staff-only admin_workspaces and admin_workspace for it. The app's two top bars are 56px instead of 48.

    syntaqx committed

    a63e438
  34. sudo: WARP sign-in, and comped accounts say Comped

    Devices signed in to the Zero Trust org through the Cloudflare One agent reach sudo without the login page; g1t staff may enroll WARP. Done in the dashboard's API: org allow_authenticate_via_warp (8h), on the sudo app, and the g1t staff policy on the WARP enrollment app.

    syntaqx committed

    aaac4c0
  35. sudo: Access is on, and everyone at g1t.sh is staff

    The Access app for sudo.g1t.sh has its g1t staff policy (the owner, and emails at g1t.sh), and the worker checks tokens against its AUD tag and team domain. STAFF_EMAILS takes @domain entries, matched on the whole domain, so a lookalike such as xg1t.sh is not staff.

    syntaqx committed

    81e29c8
  36. 1df9148
  37. Billing accounts, terms and enterprises; g1t is no longer free

    Every workspace is paid for by a billing account: its own by default, or an enterprise's, which pays for several workspaces with one limit and one set of terms, as GitHub Enterprise does. Terms are standard, comped (nothing charged, usage recorded; paid features on) or custom (a discount, a ceiling, an end date). syntaqx is comped by migration rather than an exempt list. Staff methods (admin_*) back sudo.g1t.sh, and every change is kept in admin_actions with who made it. FREE_WHILE_BUILDING is off: usage is charged on the account's terms. The free allowance on hosted models now covers its share of a run's cost rather than everything. Prepaid credit no longer gates work; usage limits do, and credit is a prepayment. So that limits stop non-payers without stopping payers: near the limit a workspace with a card on file is charged for what it owes (live payments only), which lowers what is owed and raises the limit. A declined card stops work until it is paid; an owner's own spend limit still means stop.

    syntaqx committed

    967a777
  38. The keeper reads Cloudflare as it really answers

    Probed with the keeper's token: the usage API is /billable-usage, with daily rows whose PricingQuantity still includes the free tier, so a rate is only read off days that were charged. AI Gateway ignores bracketed filters and returned every log; the filter now goes as encoded JSON. A sandbox second is now its memory and disk for the whole second plus the CPU sandboxes really use, from Containers' usage analytics (byte-seconds and CPU seconds), at billed rates or Cloudflare's published ones while the included amount covers them. The costs are first checked at once, then daily.

    syntaqx committed

    810a78c
  39. Prices keep themselves current with what g1t pays

    g1t passes its costs through, so billing now keeps a price book: each metered unit's cost to g1t and its markup, with the price always cost times markup. Sandbox time and Deployments charge from it. A keeper on billing's cron keeps the costs true. Every 15 minutes it settles finished model runs to what AI Gateway priced their requests at (each request now carries its session in the gateway's metadata), with a correction on the statement, and charges runs whose sandbox died without reporting. Daily it reads what Cloudflare billed the account and moves container and Workers for Platforms costs when they drift, recording each change; a measurement over 4x off is logged, not adopted. App traffic past the plan now counts toward a workspace's limit as it happens, not when the month closes. g1t.sh/pricing shows the live book and every change; the billing guide says how prices are set.

    syntaqx committed

    4187a00
  40. The logo stands on the baseline beside its name

    The mark sat in a square with room around it and was centred on the line box, so beside "g1t" it floated high with an uneven gap. Beside type it is now cropped to the figure, as tall as the capitals and standing on the baseline, as in the brand files, on g1t.sh and in the docs.

    syntaqx committed

    1e16bd5
  41. Usage limits: unpaid usage can only go so far

    Every workspace has a ceiling on this month's usage not yet paid for, counted at cost or charge, whichever is more, so it holds while g1t is free too: $3 before any live payment, then twice what it has paid, $25 to $1,000. At the ceiling, no new sandboxes or builds start and deployed apps pause, to be rebuilt by themselves once it is under again. Owners can set a lower spend limit on the Billing page.

    syntaqx committed

    0c312eb
  42. The fleet: g1t's new mark

    A 1 in front of the agents behind it. Replaces the cube in the site, the docs, the favicons and the email header, with public brand files at /brand/ and a kit for Stripe and the like in .g1t/brand/.

    syntaqx committed

    67798b4
  43. Every sandbox is metered by the second

    Agents, reviews, checks, the merge queue and workflow jobs each report how long their sandbox ran when it stops. Billing records what it cost g1t and charges the seconds past 500 free minutes a month, at $0.003 a minute (nothing while g1t is free). Deploy builds stay on their plan.

    syntaqx committed

    f0c889c
  44. Plan: prices pass every Cloudflare cost through

    Decided: postpaid with spend limits, as Vercel and Cloudflare do, and no per-seat price. Every cost a workspace causes on Cloudflare is metered to it, with Cloudflare's October 2026 prices and g1t's price side by side: sandbox minutes for every sandbox (agents, checks, the queue, workflow jobs, deploy builds), app requests, CPU and scripts, storage, git operations and model tokens, each past a small free allowance at 1.5x cost or more.

    syntaqx committed

    5bee8b1
  45. Plan: the billing model

    Four kinds of charge (free, card on file, activation with an allowance, usage only); one Stripe subscription per workspace on Flagon, Inc.'s account, postpaid with metered prices and spend limits in place of prepaid credit; features scoped to the workspace, then all or selected projects, with every project able to opt out and libraries never built; proposed prices against Cloudflare's costs; and the order to build it in.

    syntaqx committed

    d08bfe2
  46. Pull requests say where they are live; the project menu shows what is coming

    - A pull request's conversation gets a deployment card above the merge box, as GitHub shows one: "This branch is live" with its address and Visit preview, or that it is deploying (the last preview still up) or failed and why; its commit and age; the build log; and the previews of projects built against it with "Preview them against this change". - The project menu shows, marked Soon, what projects will have: Boards, Wiki, Agents at work, Sessions, Security and quality, Dependency updates, Environments, Releases, Packages, Feature flags, Logs and metrics, Errors and incidents, Insights. Each says in its tooltip what it will do.

    syntaqx committed

    89f1f12
  47. Project dependencies: addresses, preview stacks, Affects, and agents who know

    A project can depend on others in its workspace, declared on the site (Settings → Dependencies) or in its .g1t/project.yml, which is read on every push to the default branch: dependsOn: - project: api as: API_URL Verified live with syntaqx/lab-api and automation-lab: production of automation-lab got API_URL=https://lab-api-syntaqx.g1t.page; lab-api#1's pull request listed automation-lab under Affects, and "Preview them against this change" built automation-lab-git-v2-syntaqx.g1t.page with API_URL pointing at lab-api's v2 preview. - services/projects: a dependencies table (migration 0002), cycles and unknown projects refused; dependencies, add_dependency, remove_dependency, graph and context_for_repo; .g1t/project.yml synced on pushes to the default branch, replacing what the file declared. - Deployments: builds and running apps get each dependency's address for the same environment under its variable (the same branch's preview when one is up); a project's own rows win. `stack` builds the dependents' previews against a branch's preview, in the background, so leaving the page does not cancel them. - Agents: the runner tells every agent what its repository's projects use and what uses them, and to keep dependents working or open an issue on each with create_issue. - Site: Settings → Dependencies; Dependencies on the overview; Affects and "Preview them against this change" on pull requests. - Billing copes with moving to another Stripe account: a saved customer the new account does not know is forgotten and the payment starts afresh; a plan whose subscription it does not know ends at renewal. The billing secret now holds the new Flagon, Inc. sandbox key. - Docs: Dependencies in the Projects guide; addresses of other projects and preview stacks in the Deployments guide.

    syntaqx committed

    389eaef
  48. Projects live: fixes from walking them end to end

    Verified on g1t.sh and g1t.page: the workspace page of project cards; a project's overview; production of automation-lab at its new address (automation-lab-syntaqx.g1t.page) with its config and its secret's Production row; a branch's preview (automation-lab-git-fix-login-syntaqx.g1t.page) with the Preview row; a preview live 42 s after its pull request opened and down 5 s after it closed. - Taking an app down now replaces it with a "not up" notice before deleting it. A deleted app kept answering for over 15 minutes where Cloudflare still had it warm; a new version reaches the edge at once. - Secrets and variables kept under a repository move to its primary project on every read, however the project is named. Deployments name the project, so the move never ran and the first build on the new address got none of its rows. - The dispatcher marks a preview noindex by its new name (-git-), and its pages speak of projects. - "New project" everywhere the site still said "New repository".

    syntaqx committed

    26e42c9