Skip to content
Go to console
Go to console

Changelog

A stack is deploying: the gate is open, one crate goes through it and water runs downstreamA stack is deploying: the gate is open, one crate goes through it and water runs downstream

Versions: 0.50.2, 0.50.1, 0.50.0, 0.49.0, 0.48.0, 0.47.0, 0.46.0, 0.45.0, 0.44.0, 0.43.0, 0.42.2, 0.42.1, 0.42.0, 0.41.0, 0.40.0, 0.39.0, 0.38.0, 0.37.0, 0.36.0, 0.35.0, 0.34.0, 0.33.0, 0.32.0, 0.31.0, 0.30.0, 0.29.0, 0.28.0, 0.27.0, 0.26.2, 0.26.1, 0.26.0, 0.25.0, 0.24.1, 0.24.0, 0.23.0, 0.22.0, 0.21.0, 0.20.1, 0.20.0, 0.19.0, 0.18.0, 0.17.0, 0.16.0, 0.15.0, 0.14.0, 0.13.0, 0.12.0, 0.11.0, 0.10.0, 0.9.0, 0.8.0, 0.7.0, 0.6.0, 0.5.0, 0.4.0, 0.3.0, 0.2.0, 0.1.1, 0.1.0.

0.50.2 (2026-10-29)

Bug Fixes

  • bump zod to 4.6.6 for GHSA-mrhx-c7xc-m3w5 (#316) (cb46dc6)
  • deps: zod 4.6.6 for GHSA-mrhx-c7xc-m3w5 (cb46dc6)

0.50.1 (2026-10-28)

Bug Fixes

  • a dispatched resolve waits in line, and settle ends a cancelled resolve’s records (#313) (ee3dab6)
  • deps: Bun 1.4.4 for the Brotli RCE (CVE-2026-111497, CISA KEV) (#314) (65c877c)
  • github: match an app’s record writer login with [bot] and warn when a record is left alone (#303) (ec0e523)

0.50.0 (2026-10-07)

Features

  • cli: tick stacks with dependencies from the command line, and –yes sends the stack’s confirm (#302) (0d2701b)
  • the dashboard says when runs failed, and a row when its drift check failed (#301) (f731354)

Bug Fixes

  • a tick made while a writer writes the body is written back (#298) (9f2d913)
  • the open pull requests read with pull-requests: read alone, and a list that fails says so (#300) (91e55c8)

0.49.0 (2026-10-06)

Features

  • a Telegram notification can go to one topic of a forum group with telegram-thread-id (#295) (1d7bedb)

0.48.0 (2026-09-30)

Features

  • a preview that fails once is tried again, a busy stack says so, and the log keeps the tool’s words (#289) (88ff952)

0.47.0 (2026-09-27)

Features

  • sluiceway preview prints a stack’s full preview (#287) (14108a0)

0.46.0 (2026-09-26)

Features

  • the command line talks to console.sluiceway.dev (#285) (f06df2a)

0.45.0 (2026-09-25)

Features

  • the command line talks to the app: login, status, tick, settings (#283) (98de02a)

0.44.0 (2026-09-25)

Features

  • deploy freezes, a period when every deploy waits (#281) (0d488ee)

0.43.0 (2026-09-25)

Features

  • dashboard layout keys for section order, detail and boxes (#278) (da2279f)

0.42.2 (2026-09-25)

Bug Fixes

  • a #, an @ or a web address in a name stays plain text (#273) (9921f65)
  • a cancelled deploy’s failure line reaches its row in seconds (#275) (72f8307)
  • a push after the tick is refused as moved, never shown in sync (#274) (f324984)

0.42.1 (2026-09-25)

Bug Fixes

  • every GitHub call names the API version 2026-03-10 (#268) (5b177cf)

0.42.0 (2026-09-25)

Features

  • the row marker carries its counts and what a queued row waits behind, and the example is data (#264) (1cbfc30)

0.41.0 (2026-09-25)

Features

  • a dispatched run deploys the records another writer opened for it (#260) (73e4d00)

0.40.0 (2026-09-25)

Features

  • the dashboard says a scan is running from its first write (#261) (b1791a6)

0.39.0 (2026-09-25)

Features

  • a row shows what a change costs, and a threshold demands a tick (#255) (1667591)

0.38.0 (2026-09-24)

Features

  • a pulumi stack the backend lacks is created by the scan, opt in (#254) (97d8724)

0.37.0 (2026-09-24)

Features

  • policies on the preview, a failed one takes the box off the row (#250) (fb35ffa)

0.36.0 (2026-09-24)

Features

  • a tick outside the deploy window waits for it instead of going out (#249) (1f3d4db)

0.35.0 (2026-09-24)

Features

  • a stack names the env file its tool gets (#246) (b2a2f2d)

0.34.0 (2026-09-24)

Features

  • a tick covers the values a row does not show (#242) (04d13ff)

0.33.0 (2026-09-24)

Features

  • preview a pull request for its reviewer, never deploying from it (#238) (0384221)

0.32.0 (2026-09-24)

Features

  • env-file loads the file a step names for the tool, masked first (#237) (377a853)

0.31.0 (2026-09-24)

Features

  • the check says which credentials each stack needs (#239) (49c23b3)

0.30.0 (2026-09-24)

Features

  • the payload of a deployment record has a published schema, and the result file says where its one kind of value may be (24cf141)

0.29.0 (2026-09-23)

Features

  • a record opened on merge says so, and a queued one keeps it (323da17)
  • decide which stacks set to on-merge deploy after a scan, and which wait for a tick (f5edfad)
  • rows, the trail and apply say merged by for a deploy on merge (5c11366)
  • stacks[].deploy, on-tick by default or on-merge (ccc08a2)
  • the check lists stacks that deploy on merge and the apply job they need (212ba7e)
  • the scan of a merge hands stacks set to on-merge to apply (5a69960)

0.28.0 (2026-09-23)

Features

  • a run that waits long for a runner gets a line under the scan line (bf12184)
  • apply: a drift repair that found nothing to repair says drift gone (3d6ac0a)
  • dashboard.timeZone in sluiceway.yaml, checked against the runtime’s zones (362f28a)
  • every scan looks for a run of its workflow that waits for a runner (c4a9021)
  • find OpenTofu and Terraform root modules from the repo’s own files (de4b22c)
  • init –force writes the workflow again, and init names npx sluiceway check (583bf22)
  • render a time in a named zone, with its offset when it stands alone (46c3b5e)
  • resolve: one line in the job log says where resolve’s time went (f34b01a)
  • the body and its rows take the dashboard’s zone (110b171)
  • the check lists what root module discovery found and left out, and why (8a1b75a)
  • the check reads the environment a Sluiceway job names (2a6406d)
  • the check says who decides who may deploy, for each job that deploys (0f5fd30)
  • the command line, sluiceway init and sluiceway check (d6aed35)
  • the port lists the queued runs of a workflow (548dfd0)

Bug Fixes

  • README example breaks its lines, header signs get room, queued rows stand still (#217) (1093c22)
  • resolve: a queued drift repair is started as a drift repair (23666c3)
  • the check job lists the root modules discovery found and left out (e7929e2)

0.27.0 (2026-09-23)

Features

  • core: the pool size follows the cores, from 1 to 8, unless the input sets it (fdbafb4)
  • render: a log line that names the pool size and where it came from (683c3e8)
  • scan: without concurrency the pool is the machine’s cores, said once in the job log (f12bc21)

0.26.2 (2026-09-23)

Bug Fixes

  • an empty optional input means the action’s default (d1b38fd)
  • the shortened note counts drifted rows too (b06d399)

0.26.1 (2026-09-22)

Bug Fixes

  • init names pages on the docs site, not files in docs/ (45801dd)
  • the dashboard footer’s docs link goes to the docs site (15c2055)

0.26.0 (2026-09-22)

Features

  • every writer draws the bulk lines, and the scan sweeps them like orphan ticks (29e94ff)
  • resolve turns a bulk tick into a confirm box, and hands a confirmed box on as one tick per stack (85db133)
  • the bulk box and its confirm box, their marker and the rule of which one a section gets (2b7faa4)

0.25.0 (2026-09-22)

Features

  • a failed check under a pending combined state reads as failed (0a4194e)
  • a pull request that qualifies but for checks still running waits on them (4b88089)
  • the line of an update waiting on its checks, with no box and a marker of its own (aa13736)
  • the scan draws the waiting lines, and resolve and apply carry them (ce99def)

0.24.1 (2026-09-22)

Bug Fixes

  • a stack that was never deployed does not count its root stack resource (0bf23ac), closes #165
  • the unclaimed files leave the config file out and the hint names the shared files to keep off scan.unrelated (929613a)
  • two stacks with one id name the tool of each side (fd09948)

0.24.0 (2026-09-22)

Features

  • auto mode, a step with no mode picks what to run from the event (947769d)
  • init writes the one-step workflow (c165dc9)
  • the check reads a step with no mode as auto, from its file’s triggers (14299d5)

Bug Fixes

  • the summary is written to the file the runner names at every write (c846537)

0.23.0 (2026-09-22)

Features

  • a later deploy, outside deploys included, ends a failure line in the core (fe1f04a)
  • notify.events in sluiceway.yaml, and which stacks a scan and an apply tell (slice 5.13) (e7e8809)
  • scan, resolve and apply send the built-in notifications (slice 5.13) (41c4b21)
  • the scan and apply drop a failure line that a later outside deploy ended (18a3765)
  • the words and the sender of the built-in notifications (slice 5.13) (f214e57)

0.22.0 (2026-09-22)

Features

  • header art for a delete sign, 20 crates and a queued state (66700e3)
  • the header tells a delete from a replace, counts to 20 and shows a queue (f23e497)
  • the queued header snapshot follows the trail’s wording from main (a1c1e4d)

0.21.0 (2026-09-22)

Features

  • kubernetes manifests part 2, pruning, a drift check, -R and two apply options (bc48e1e)
  • the kubectl fixtures from CI run 35738442226 (64036b3)

Bug Fixes

  • a deploy-timeout input gives the deploy a time limit of Sluiceway’s (slice 5.9) (de833e9)
  • a failed permission lookup is tried once more in the same resolve run (slice 5.9) (1d00538)
  • a fault inside Sluiceway during a preview is that stack’s preview failure row, and the job still goes red (slice 5.9) (d695f2b)
  • a preview failure reason of its own for Pulumi’s exit codes 2, 3, 4 and 9 (slice 5.9) (bc8af91)
  • a push past the 300 files of a comparison is narrowed by the trees of the two commits (slice 5.9) (4d52b1e)
  • a refusal comment names at most ten people of a tick rule (slice 5.9) (1d00538)
  • a renaming pull request over the walk’s 100 files is read too (slice 5.9) (05d3054)
  • a row’s link to the run of a deploy lands on the attempt that created its record (slice 5.9) (a39d81e)
  • a scan pins a dashboard that exists when it is not pinned (slice 5.9) (7bc04b3)
  • a scan renames the dashboard when dashboard.title changes (slice 5.9) (7bc04b3)
  • a stacks entry may give its stack an id with id: (slice 5.9) (4bc32ee)
  • a strict input turns the scan job red on any preview failure (slice 5.9) (76e48e7)
  • a tick by an account GitHub no longer has is refused, not unverified (slice 5.9) (1d00538)
  • attribution reads every file of a pull request past 100 and of a direct push past 300 (slice 5.9) (e72fd15)
  • docs and tooling files that no stack claims force no full scan by default (slice 5.9) (ae32b7b)
  • looking for a closed dashboard reads one page of the closed issues that changed last (slice 5.9) (7bc04b3)
  • merge and deploy reads the open pull requests past the oldest 1,000 (slice 5.9) (88a5887)
  • resolve links to the scan it started, by the run GitHub names for the dispatch (slice 5.9) (ddc868a)
  • resolve writes a job summary of what happened to every tick (slice 5.9) (ddc868a)
  • sluiceway.yml is read as a second spelling of sluiceway.yaml (slice 5.9) (19dd5d6)
  • the process runner holds at most 128 MB of each stream of the tool’s output (slice 5.9) (aad4630)
  • the tool’s stderr reaches the job log while a preview runs, each line behind its stack id (slice 5.9) (aad4630)

0.20.1 (2026-09-22)

Bug Fixes

  • a Recently deployed line fits on one line (fca5fa2)

0.20.0 (2026-09-22)

Features

  • a paged walk for the lookback and the files of a renaming pull request over REST (slice 5.5) (e8989ba)
  • attribution settings, the outside fold on a row and what a deploy shipped on the trail (slice 5.5) (c72296b)
  • Helm part 2, drift, createNamespace, the deploy flag per helm version and nested charts (807be66)
  • record the Helm drift, deploy flag, namespace and nested chart scenarios (3a89ae9)
  • scan, resolve and apply write what each deploy on the trail shipped (slice 5.5) (49e246e)
  • the Helm fixtures as CI recorded them (run 35738572765) (65d52dd)
  • the Helm fixtures of the new scenarios, on helm v3.18.0 and v4.3.0 (d3534ff)

0.19.0 (2026-09-22)

Features

  • fixtures recorded on CI, a Terraform plan must be complete, the mixed e2e with seven tools (5b8022a)
  • the terraform binary, terragrunt and cdktf behind the OpenTofu adapter (01c56f8)

0.18.0 (2026-09-22)

Features

  • a deploy made outside the dashboard is a line of the trail (bac73f9)
  • a full scan reads each stack’s history and puts outside deploys on the trail (29c085e)
  • the e2e checks that a stack deployed by hand is on the trail (610bb99)
  • the history fixtures as the CI fixtures job recorded them (8e3c821)
  • the Pulumi adapter reads the tool’s own history of a stack (1b7cc61)

0.17.0 (2026-09-22)

Features

  • record the stacks the backend holds, for the check with backend: true (ad1cfd6)
  • the check asks the backend with backend: true and gives one ignore block (4206025)
  • the check reads concurrency groups, status checks and the second apply job (74aee7f)
  • the check suggests inputs from the files a stack’s own files name (6ad2a56)
  • wire the check part 3 into the check mode, its words and the backend input (f9822fc)

0.16.0 (2026-09-22)

Features

  • a pull request that two stacks claim qualifies, more than 30 updates, presets outside the repo (slice 5.4) (ce0126e)
  • mergeAndDeploy.preview shows what the merge of an update would change on its row (slice 5.4) (5abfd29)
  • the whole loop on the fake for an update that two stacks claim (slice 5.4) (f77db49)

0.15.0 (2026-09-22)

Features

  • phases in sluiceway.yaml, a phase per stack or read from its project file (slice 4.16) (0109546)
  • resolve names the phase in a refusal, and the check lists phases and their edges (slice 4.16) (ab6ba96)

0.14.0 (2026-09-22)

Features

  • init installs kubectl for the Kubernetes manifests stacks a kept sluiceway.yaml declares (ded0e60)
  • init mode writes a starter workflow and sluiceway.yaml from the repo’s files (slice 4.14) (f2d2b53)
  • init writes the merge and deploy workflow for a kept sluiceway.yaml with mergeAndDeploy.authors (b0d902e)
  • rebuild dist with init after slice 4.13 (e9e9c0c)
  • rebuild dist with init after the Kubernetes adapter (774564d)
  • rebuild dist with the init mode (b971136)
  • record 0065 and docs/init.md name the Kubernetes manifests adapter (a72edaa)
  • record 0065, docs/init.md, the glossary, later.md and the onboarding log for init (6e74edc)
  • the failing and deploying pictures show one crate per pending stack (b47b9db)

0.13.0 (2026-09-22)

Features

  • a merge row whose tick was cleared without a comment gets a note, and more than ten updates are folded (ae6770a)
  • record 0064 and the docs for merge and deploy, part 2, and dist rebuilt (slice 4.13) (eb9b095)
  • the merge method follows Renovate’s config as Renovate reads it on GitHub (85a5267)
  • the scan resolve dispatches after a merge is narrowed, through a dispatch input the workflow declares (44fa60e)
  • up to thirty updates waiting to merge, and open pull requests paged past the oldest 100 (40b0ad0)

0.12.0 (2026-09-22)

Features

  • deploying sits at the top, and its rows start with a spinner (slice 4.12) (d977c4a)

0.11.0 (2026-09-22)

Features

  • record 0060, the docs, CI recording of the kubectl fixtures, and the e2e with four tools (15937c3)
  • the Kubernetes manifests adapter: declared stacks, kubectl diff and apply of one rendered set (slice 4.9) (ea1a1e1)

0.10.0 (2026-09-22)

Features

  • the check reads the workflow, and the result file gets a schema (slice 4.10) (63e8d92)
  • the trail lists failed deploys at the time each really ended, its length is a setting, and a destroy alert names pending destroys (7a3f06c)

0.9.0 (2026-09-22)

Features

  • a credential-free Helm example and the fixture recorder for it (ec5e9a6)
  • a deploy the adapter refuses as moved ends like any moved change (9304790)
  • CI records the Helm fixtures and the e2e runs three adapters (f0444b1)
  • dependsOn: auto and drift per stack in sluiceway.yaml, and the check lists dependsOn (a01f805)
  • rebuild dist with the Helm adapter (777cc7e)
  • record 0058 and the docs of the Helm adapter (80046e6)
  • rows carry what a preview read, resolve waits on it, and drift gets a preview page and a trail line (e7c2a6b)
  • the headlines of the job log start with the dot of the result (slice 4.5) (7e2d61e)
  • the Helm adapter: a release in a namespace is a stack (288f454)
  • the Helm fixtures as the fixtures-helm job of CI recorded them (79dd36d)
  • the Pulumi adapter reads the stacks a stack depends on from its stack references (374f965)
  • the recently deployed list starts each line with the dot of its result (slice 4.5) (4111fca)
  • the roadmap and the build plan count the Helm adapter as built (24cb963)

0.8.0 (2026-09-22)

Features

  • a tick on a drifted row that nothing picked up is swept like any other (6d0d3b3)
  • drift in the diff, the hash, config and the Pulumi adapter (record 0055) (8904add)
  • fixture scenarios with real drift, recorded through a streamed preview-only refresh (8d99135)
  • rebuild dist for drift (61f8d2c)
  • record 0055 and the docs for drift (03ac9e6)
  • scans check drift, resolve carries it, apply checks it again and repairs it (af58921)
  • the check summary lists drift among the known keys (d27e459)
  • the deploy a merge hands to apply carries drift when its hash covers it (037d93a)
  • the drift row, the Drifted section and the drift header picture (5d103f5)

0.7.0 (2026-09-22)

Features

  • a tick on an update waiting to merge merges it and opens a record that deploys after the merge (slice 4.2) (f554990)
  • merge and deploy in the e2e, the docs, record 0054, and dist (slice 4.2) (d2cc931)
  • merge and deploy next to stack dependencies: no merge while a dependency waits, and an apply job for the scan’s matrix (slice 4.2) (aeacf17)
  • mergeAndDeploy.authors, the qualification rule and the merge row (slice 4.2) (3e704e8)
  • the merge record, merge ticks in the edit history, and the pull request calls of the port (slice 4.2) (ed01f0d)
  • the scan lists updates waiting to merge and hands a merged change to apply (slice 4.2) (cacf7aa)

0.6.0 (2026-09-22)

Features

  • a three stack chain goes round the whole loop on the fake, in order (3ba64ad)
  • dependsOn in sluiceway.yaml, checked against discovery, circles refused (263aa8c)
  • queued rows survive a scan, and apply never deploys a queued record (31960da)
  • rebuild dist for stack dependencies (6389019)
  • record 0056, the config reference for dependsOn, glossary terms, and resolve on workflow_dispatch in the workflows (6af36c3)
  • resolve refuses a tick whose dependency has a change waiting, queues the rest of a chain, and a dispatched resolve starts what is ready (ddc303a)
  • settle starts the next layer and ends a queued record whose dependency did not deploy (b68bd7d)
  • the dependency rules: refused, started and queued ticks, and when a queued record is ready (633235f)
  • the e2e runs a chain of three stacks, one layer per run, with the real tool (c1018ad)
  • the queued row state, counted as deploying, and the note on a tick refused for a dependency (2bd65af)

0.5.0 (2026-09-22)

Features

  • header: small fish upstream of Penny, more as the water rises (9155a60)
  • OpenTofu stacks are declared in sluiceway.yaml and found from their files (record 0053) (757a9ae)
  • the adapter interface grows preparations and a saved plan (record 0053) (cb3e13f)
  • the OpenTofu preview, tofu plan -out and show -json folded into a diff (record 0053) (2b25bdc)
  • tofu init before the pool, the deploy of exactly the saved plan, and the tool diff (record 0053) (644b07e)

0.4.0 (2026-09-22)

Features

  • small polish from real use (slice 2.22) (1d14d23)

0.3.0 (2026-09-22)

Features

  • apply: a change that moved since the tick is told to the ticker in one comment (slice 2.20, part 4) (a8ff4a8)
  • apply: an empty fresh preview ends as success, nothing to deploy (slice 2.20, part 3) (84fa132)
  • apply: dry-run rehearses a tick and deploys nothing (slice 2.20, part 5) (34311b2)
  • config: an ignore entry may give a reason, listed under In sync (slice 2.20, part 1) (7ae4999)
  • config: deploys: false stops every deploy (slice 2.20, part 2) (373b130)
  • dashboard.showValues, an allowlist of paths whose values may appear (slice 2.19) (2ea116c)
  • slice 2.21, two checks: the UI tick event and stdout diagnostics on a failed preview (2d3fc3a)
  • the diff hash covers the values a row shows (record 0052) (947f115)

0.2.0 (2026-09-22)

Features

  • a preview page per pending stack, the page a row’s preview link lands on (slice 2.18) (d9f4e11)
  • scan: a failed list of check runs stops the preview pages with one log line (e53d243)

0.1.1 (2026-09-21)

Bug Fixes

  • find the action’s own version next to its bundle, not through GITHUB_ACTION_PATH (5018c8a)

0.1.0 (2026-09-21)

Features

  • action: a branding block for the Marketplace, the droplet on blue (fcaaedf)
  • adapters: a stack that does not exist in the backend is a failure reason of its own, picked from exit code 6 (5dfccea)
  • adapters: changed keys are property paths as the tool writes them (65ab41c)
  • adapters: slice 1.4, Pulumi discovery (1b9cc20)
  • adapters: slice 1.5, Pulumi preview (78e4195)
  • adapters: the adapter interface and Pulumi discovery from files alone (2d9da4a)
  • adapters: the process runner with the time limit, and the tool environment (b49bab4)
  • adapters: the Pulumi adapter’s apply: up with the preview’s quiet flags, the outputs kept to the tool, and no time limit of Sluiceway’s (b866188)
  • adapters: the Pulumi version check and preview (ce27034)
  • add action metadata with the inputs the decision records fix (3811f9d)
  • check is the fifth mode, in the dispatch and in action.yml (3139526)
  • config: dashboard.readOnly, for a workflow that only scans (80af3e7)
  • core: add the diff hash over a canonical document (3a8e9b0)
  • core: add the Stack, Change and Diff types and the derived stack id (3e5b0f8)
  • core: attribution: the range of a stack, the pull requests and direct pushes it claims, the line and its counted form (9cd5c8f)
  • core: deployment records: the task, the versioned payload, deploy facts and the row a stack gets at the late read (a96bb5b)
  • core: ignore on the stack id, one id per stack, and applyConfig drops ignored stacks (cd4b088)
  • core: parse sluiceway.yaml with defaults and its own error messages (30d7918)
  • core: read sluiceway.yaml from the repo root and refuse sluiceway.yml (396cf66)
  • core: slice 1.1, core types and the diff hash, render/ inside the boundary (edfef8e)
  • core: slice 1.2, config loading and the JSON schema (4e4b3bf)
  • core: the bounded pool a scan previews through (8d1805f)
  • core: the check: what ignore leaves out and the glob that would work, the files no stack claims, the globs offered for scan.unrelated (2683889)
  • core: the claim rule and the scan plan of a narrowed scan (b0c7a6c)
  • core: the open deployment records of one run, which settle ends (1f09fd1)
  • core: the orphan tick rule of a scan: carry, sweep, preview first, and when a resolve run is on its way (d207d4b)
  • core: the preview failure reasons of record 0022 and their text (f6bac46)
  • core: the reasons a deploy fails, from the fixed list of record 0022 (f5e52c6)
  • core: the tick rule: levels from the three booleans, a list that only narrows, only a person can tick (6fcbdfe)
  • core: the walk through the edit history that names the ticker of a tick (c8cefa8)
  • dispatch on mode to stubs that fail as not implemented yet (c01e756)
  • examples: add the pulumi-basic example project (83ad250)
  • generate the JSON schema of sluiceway.yaml and check it in CI (d2fa09c)
  • github: a workflow dispatch on the port, on Octokit, on the fake and on its server, and the fake starts an event for a person’s edit (ea0cfcb)
  • github: deployment records on the port and on Octokit: create, statuses with auto_inactive false, one GraphQL page, the REST fall back, a workflow run (d1e11e6)
  • github: finding, repairing and creating the dashboard (e9bb101)
  • github: judge the ticks of a run against the live lookup, and write the one comment (0f2cb11)
  • github: one deployment record by its id, on the port, on Octokit, on the fake and on its server (9e23360)
  • github: slice 1.10, the GitHub port, the fake, the dashboard and the write loop (fcc52a6)
  • github: step outputs, the result file under RUNNER_TEMP, and the dashboard url from the event (49a6347)
  • github: the action ref rule, exact tag or commit SHA and never a moving tag (997d441)
  • github: the bounded reads of deployment records, and an open deployment whose run is over becomes error (2036050)
  • github: the compare call on the port, on Octokit and on the fake (a96ba6b)
  • github: the edit history on the port, on Octokit, on the fake and on its server (2d7c9f9)
  • github: the fall back of the bounded reads can name its stacks only when a page is full (c44efb3)
  • github: the GitHub port and the fake GitHub with the lab’s size limits (34ea351)
  • github: the job knows the file name of its workflow (0ed3134)
  • github: the job-id input from job.check_run_id, and the run attempt with the job’s facts (bc92340)
  • github: the Octokit implementation of the port (14e2d99)
  • github: the permission lookup on the port, on Octokit and on the fake (d28ebc2)
  • github: the runs an issue edit started, on the port, on Octokit, on the fake and on its server (23df7a2)
  • github: the walk of the lookback and the files of one commit, on the port and on Octokit (d5ef061)
  • github: the write loop, which reads back every write and tries three times (e42d8e8)
  • header: one crate per pending stack up to 12, and the destroy sign on a pole (2e4fd33)
  • header: the destroy sign on the pending and deploying pictures, and the plain files are gone (201e58b)
  • header: the wide quay header, sixteen files of 880 by 160 (add6877)
  • modes: a scan that follows a push previews only the stacks that claim a changed file (28a1dac)
  • modes: after a change to sluiceway.yaml the log says the config file changed, not that no stack claims it (0033a1b)
  • modes: apply is wired: the deployment-id input in action.yml, required in apply and an error in every other mode, and the job glue (929fb47)
  • modes: apply sets outcome, stack, dashboard-url and the result file, and settle sets dashboard-url (761717f)
  • modes: apply warns too when scan.logDiff is on in a public repo (bd53496)
  • modes: apply: the record first, a fresh preview, the hash check, the deploy, the status and the row swap (3502b2e)
  • modes: resolve is wired: the job glue, the matrix output in action.yml, and the refusal, rescan and cap tests (8802010)
  • modes: resolve works the attribution line out again for the deploying row it writes, from a scan-sha that is a commit id (9e0c038)
  • modes: resolve: the cheap payload check, body and history in one read, records created as queued, the matrix output before the row swap (00bdf8a)
  • modes: scan sets its outputs on every way out and writes the result file (2ccb021)
  • modes: scan, resolve and apply draw a read-only dashboard, and a read-only scan drops old ticks without a note (e2b37a8)
  • modes: scan.logDiff prints the tool’s own diff of every pending stack in its log group (1839d7c)
  • modes: settle ends the open records of its own run and starts a full scan (be223a8)
  • modes: settle is wired as a mode (4de84d1)
  • modes: the check mode: config, discovery and the files no stack claims, in the job log and the summary, with no port and no process runner (180ed53)
  • modes: the full scan, with the pool, the job result and the job log (c992b07)
  • modes: the scan puts the attribution line on its rows and the pull requests in its summary, and never fails over it (978b7c0)
  • modes: the scan reads the deployment records at its late read: deploying rows, failure lines, recently deployed, and it defers to a deploy that ended under it (cbd3684)
  • modes: the scan sweeps orphan ticks at its late read, and keeps its hands off while a resolve run is on its way (a807a95)
  • render: a pending row can carry a tick through (3995511)
  • render: a read-only dashboard draws no boxes and says so under the Pending heading (724183f)
  • render: a row shortens long property paths and lists ten per change in its fold (3d70074)
  • render: a row’s link lands on the attempt’s summary or the job’s log, and the summary has an index and an anchor per stack (caf3ea6)
  • render: escape text from outside, and write times in UTC to the minute (0929d64)
  • render: slice 1.6, markers and rows (1c03412)
  • render: slice 1.7, the body (ba2e349)
  • render: slice 1.7b, the wide header in the body renderer (0ac39cd)
  • render: slice 1.9, the summary and the log text (9fa347f)
  • render: the body around the row blocks, personality on and off (7b9e021)
  • render: the budget of the summary, its levels and the note at the top (b4b64e4)
  • render: the destroy sign as a pure function of the row markers (ca538c3)
  • render: the header always shows the real state, and a destroy adds a sign (ca69615)
  • render: the header state, six states and bad news wins (d0ea53e)
  • render: the last full scan on the root marker (1cf23e7)
  • render: the level of a shortened row on its marker (c3a6538)
  • render: the log text of a diff, and the title of a stack’s group (4ac839d)
  • render: the note about shortened rows, counted from the row markers (da6123f)
  • render: the one comment for the refused ticks of a run (14c1cc7)
  • render: the pending level of record 0039 (943b963)
  • render: the result file of a scan and of an apply, its strict schema, and the dashboard counts from the row markers (41fa2f2)
  • render: the row renderer for every kind of row, redact and the four levels (574ef68)
  • render: the size budget, biggest rows first, give-back, destroys last (97afbd4)
  • render: the summary names the ignore glob that takes a stack off the dashboard when it does not exist in the backend (141f7b1)
  • render: the summary of a scan, every previewed stack in full (b4965e9)
  • render: the summary of an apply, and whether a deployment record is still open (1ebe1e0)
  • render: the three marker kinds, value encoding and reading a body (aefbe4f)
  • render: the voice in two lines, and the plain lines around them (d6aa5e6)
  • scan: log the number of GitHub API requests the scan made (25425be)
  • scripts: add the fixture recorder and its scenarios (4eb95c2)
  • slice 1.3, the example project and the fixture recorder (695e454)
  • the outputs of record 0041 in action.yml, and the job glue that hands the modes RUNNER_TEMP and the event (fc44971)
  • the scan wired into the entry point, with its inputs, job facts and job log (134c3e3)

Bug Fixes

  • adapters: an empty detailed diff falls back to the tool’s list of names (acb9142)
  • core: one form of the failure reason, the lower case one of record 0027 (59a3a26)
  • make the first release 0.1.0 instead of 1.0.0 (b8a9b81)
  • make the first release 0.1.0 instead of 1.0.0 (bff83a8)
  • modes: one full stop after GitHub’s words in the attribution log line (9766956)