Skip to content

build(deps): bump the actions group with 7 updates - #1

Closed
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/github_actions/actions-690794c5dc
Closed

build(deps): bump the actions group with 7 updates#1
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/github_actions/actions-690794c5dc

Conversation

@dependabot

@dependabotdependabotBot commented on behalf of githubJan 18, 2026

Copy link
Copy Markdown
Contributor

Bumps the actions group with 7 updates:

PackageFromTo
actions/checkout4.1.16.0.1
haskell-actions/setup2.7.52.10.3
actions/cache4.0.25.0.2
actions/upload-pages-artifact3.0.14.0.0
github/codeql-action3.27.04.31.10
webfactory/ssh-agent0.9.00.9.1
ossf/scorecard-action2.4.02.4.3

Updates actions/checkout from 4.1.1 to 6.0.1

Release notes

Sourced from actions/checkout's releases.

v6.0.1

What's Changed

Full Changelog: actions/checkout@v6...v6.0.1

v6.0.0

What's Changed

Full Changelog: actions/checkout@v5.0.0...v6.0.0

v6-beta

What's Changed

Updated persist-credentials to store the credentials under $RUNNER_TEMP instead of directly in the local git config.

This requires a minimum Actions Runner version of v2.329.0 to access the persisted credentials for Docker container action scenarios.

v5.0.1

What's Changed

Full Changelog: actions/checkout@v5...v5.0.1

v5.0.0

What's Changed

⚠️ Minimum Compatible Runner Version

v2.327.1
Release Notes

Make sure your runner is updated to this version or newer to use this release.

Full Changelog: actions/checkout@v4...v5.0.0

v4.3.1

What's Changed

... (truncated)

Commits

Updates haskell-actions/setup from 2.7.5 to 2.10.3

Release notes

Sourced from haskell-actions/setup's releases.

v2.10.3

Add Stack 3.9.1

What's Changed

Full Changelog: haskell-actions/setup@v2.10.2...v2.10.3

v2.10.2

Remove GHCup vanilla channel from defaults

What's Changed

Full Changelog: haskell-actions/setup@v2.10.1...v2.10.2

v2.10.1

Move all ghcup-add-channel commands into same group

What's Changed

Full Changelog: haskell-actions/setup@v2.10.0...v2.10.1

v2.10.0

Use GHCup vanilla and prereleases channels by default

What's Changed

Full Changelog: haskell-actions/setup@v2.9.0...v2.10.0

... (truncated)

Commits
  • f9150cb Add Stack 3.9.1
  • dc63c94 Remove GHCup vanilla channel from defaults
  • 7786314 await addGhcupReleaseChannel
  • 5757174 Move all ghcup-add-channel commands into same group
  • ca45ec3 Remove broken GHC 9.12.3
  • eb29c23 Use GHCup vanilla and prereleases channels by default
  • 243ff44 Add GHCs 9.14.1 and 9.12.3 and Cabal 3.16.1.0
  • 0512451 Fix #130: support GHCup on 32bit architecture (#131)
  • 45e5652 Bump actions/checkout from 5 to 6
  • 0a703b5 Test: drop macos-13 (deprecated, does not support node 24)
  • Additional commits viewable in compare view

Updates actions/cache from 4.0.2 to 5.0.2

Release notes

Sourced from actions/cache's releases.

v.5.0.2

v5.0.2

What's Changed

When creating cache entries, 429s returned from the cache service will not be retried.

v5.0.1

[!IMPORTANT] actions/cache@v5 runs on the Node.js 24 runtime and requires a minimum Actions Runner version of 2.327.1.

If you are using self-hosted runners, ensure they are updated before upgrading.


v5.0.1

What's Changed

v5.0.0

What's Changed

Full Changelog: actions/cache@v5...v5.0.1

v5.0.0

[!IMPORTANT] actions/cache@v5 runs on the Node.js 24 runtime and requires a minimum Actions Runner version of 2.327.1.

If you are using self-hosted runners, ensure they are updated before upgrading.


What's Changed

Full Changelog: actions/cache@v4.3.0...v5.0.0

v4.3.0

What's Changed

... (truncated)

Changelog

Sourced from actions/cache's changelog.

Releases

Changelog

5.0.2

  • Bump @actions/cache to v5.0.3 #1692

5.0.1

  • Update @azure/storage-blob to ^12.29.1 via @actions/cache@5.0.1#1685

5.0.0

[!IMPORTANT] actions/cache@v5 runs on the Node.js 24 runtime and requires a minimum Actions Runner version of 2.327.1. If you are using self-hosted runners, ensure they are updated before upgrading.

4.3.0

4.2.4

  • Bump @actions/cache to v4.0.5

4.2.3

  • Bump @actions/cache to v4.0.3 (obfuscates SAS token in debug logs for cache entries)

4.2.2

  • Bump @actions/cache to v4.0.2

4.2.1

  • Bump @actions/cache to v4.0.1

4.2.0

TLDR; The cache backend service has been rewritten from the ground up for improved performance and reliability. actions/cache now integrates with the new cache service (v2) APIs.

The new service will gradually roll out as of February 1st, 2025. The legacy service will also be sunset on the same date. Changes in these release are fully backward compatible.

We are deprecating some versions of this action. We recommend upgrading to version v4 or v3 as soon as possible before February 1st, 2025. (Upgrade instructions below).

If you are using pinned SHAs, please use the SHAs of versions v4.2.0 or v3.4.0

If you do not upgrade, all workflow runs using any of the deprecated actions/cache will fail.

... (truncated)

Commits

Updates actions/upload-pages-artifact from 3.0.1 to 4.0.0

Release notes

Sourced from actions/upload-pages-artifact's releases.

v4.0.0

What's Changed

Full Changelog: actions/upload-pages-artifact@v3.0.1...v4.0.0

Commits
  • 7b1f4a7 Merge pull request #127 from heavymachinery/pin-sha
  • 4cc19c7 Pin actions/upload-artifact to SHA
  • 2d163be Merge pull request #107 from KittyChiu/main
  • c704843 fix: linted README
  • 9605915 Merge pull request #106 from KittyChiu/kittychiu/update-readme-1
  • e59cdfe Update README.md
  • a2d6704 doc: updated usage section in readme
  • 984864e Merge pull request #105 from actions/Jcambass-patch-1
  • 45dc788 Add workflow file for publishing releases to immutable action package
  • efaad07 Merge pull request #102 from actions/hidden-files
  • Additional commits viewable in compare view

Updates github/codeql-action from 3.27.0 to 4.31.10

Release notes

Sourced from github/codeql-action's releases.

v4.31.10

CodeQL Action Changelog

See the releases page for the relevant changes to the CodeQL CLI and language packs.

4.31.10 - 12 Jan 2026

  • Update default CodeQL bundle version to 2.23.9. #3393

See the full CHANGELOG.md for more information.

v4.31.9

CodeQL Action Changelog

See the releases page for the relevant changes to the CodeQL CLI and language packs.

4.31.9 - 16 Dec 2025

No user facing changes.

See the full CHANGELOG.md for more information.

v4.31.8

CodeQL Action Changelog

See the releases page for the relevant changes to the CodeQL CLI and language packs.

4.31.8 - 11 Dec 2025

  • Update default CodeQL bundle version to 2.23.8. #3354

See the full CHANGELOG.md for more information.

v4.31.7

CodeQL Action Changelog

See the releases page for the relevant changes to the CodeQL CLI and language packs.

4.31.7 - 05 Dec 2025

  • Update default CodeQL bundle version to 2.23.7. #3343

See the full CHANGELOG.md for more information.

v4.31.6

CodeQL Action Changelog

See the releases page for the relevant changes to the CodeQL CLI and language packs.

4.31.6 - 01 Dec 2025

... (truncated)

Commits
  • cdefb33 Merge pull request #3394 from github/update-v4.31.10-0fa411efd
  • cfa77c6 Update changelog for v4.31.10
  • 0fa411e Merge pull request #3393 from github/update-bundle/codeql-bundle-v2.23.9
  • c284324 Add changelog note
  • 83e7d00 Update default bundle to codeql-bundle-v2.23.9
  • f6a16be Merge pull request #3391 from github/dependabot/npm_and_yarn/npm-minor-f1cdf5...
  • c1f5f1a Rebuild
  • 1805d8d Bump the npm-minor group with 2 updates
  • b2951d2 Merge pull request #3353 from github/kaspersv/bump-min-cli-v-for-overlay
  • 41448d9 Merge pull request #3287 from github/henrymercer/generate-mergeback-last
  • Additional commits viewable in compare view

Updates webfactory/ssh-agent from 0.9.0 to 0.9.1

Release notes

Sourced from webfactory/ssh-agent's releases.

v0.9.1

What's Changed

New Contributors

Full Changelog: webfactory/ssh-agent@v0.9.0...v0.9.1

Changelog

Sourced from webfactory/ssh-agent's changelog.

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[Unreleased]

v0.9.1 [2024-03-17]

Fixed

  • Fix path used to execute ssh-agent in cleanup.js to respect custom paths set by input (#235)

v0.9.0 [2024-02-06]

Changed

  • Update all versions of actions/checkout to v4 (#199)
  • Update to Node 20 (#201)

v0.8.0 [2023-03-24]

Changed

  • No longer writing GitHub's SSH host keys to known_hosts (#171)
  • Update to actions/checkout@v3 (#143)
  • Allow the user to override the commands for git, ssh-agent, and ssh-add (#154)

v0.7.0 [2022-10-19]

Added

  • Add the log-public-key input that can be used to turn off logging key identities (#122)

Fixed

  • Fix path to git binary on Windows, assuming GitHub-hosted runners (#136, #137)
  • Fix a nonsensical log message (#139)

v0.6.0 [2022-10-19]

Changed

v0.5.4 [2021-11-21]

Fixed

... (truncated)

Commits

Updates ossf/scorecard-action from 2.4.0 to 2.4.3

Release notes

Sourced from ossf/scorecard-action's releases.

v2.4.3

What's Changed

This update bumps the Scorecard version to the v5.3.0 release. For a complete list of changes, please refer to the Scorecard v5.3.0 release notes.

Documentation

Other

New Contributors

Full Changelog: ossf/scorecard-action@v2.4.2...v2.4.3

v2.4.2

What's Changed

This update bumps the Scorecard version to the v5.2.1 release. For a complete list of changes, please refer to the Scorecard v5.2.0 and v5.2.1 release notes.

Full Changelog: ossf/scorecard-action@v2.4.1...v2.4.2

v2.4.1

What's Changed

  • This update bumps the Scorecard version to the v5.1.1 release. For a complete list of changes, please refer to the v5.1.0 and v5.1.1 release notes.
  • Publishing results now uses half the API quota as before. The exact savings depends on the repository in question.
  • Some errors were made into annotations to make them more visible
  • There is now an optional file_mode input which controls how repository files are fetched from GitHub. The default is archive, but git produces the most accurate results for repositories with .gitattributes files at the cost of analysis speed.
  • The underlying container for the action is now hosted on GitHub Container Registry. There should be no functional changes.

Docs

New Contributors

Commits
  • 4eaacf0 bump docker to ghcr v2.4.3 (#1587)
  • 42e3a01 🌱 Bump the github-actions group with 3 updates (#1585)
  • 88c07ac 🌱 Bump github.com/sigstore/cosign/v2 from 2.5.2 to 2.6.0 (#1579)
  • 6c690f2 Bump github.com/ossf/scorecard/v5 from v5.2.1 to v5.3.0 (#1586)
  • 92083b5 📖 Fix recommended command to test the image in development (#1583)
  • 7975ea6 🌱 Bump the docker-images group across 1 directory with 2 updates (#1...
  • 0d1a743 🌱 Bump github.com/spf13/cobra from 1.9.1 to 1.10.1 (#1575)
  • 46e6e0c 🌱 Bump the github-actions group with 2 updates (#1580)
  • c3f1350 🌱 Improve printing options (#1584)
  • 43e475b 🌱 Bump golang.org/x/net from 0.42.0 to 0.44.0 (#1578)
  • Additional commits viewable in compare view

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore <dependency name> major version will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)
  • @dependabot ignore <dependency name> minor version will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)
  • @dependabot ignore <dependency name> will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)
  • @dependabot unignore <dependency name> will remove all of the ignore conditions of the specified dependency
  • @dependabot unignore <dependency name> <ignore condition> will remove the ignore condition of the specified dependency and ignore conditions

@dependabotdependabotBot added dependencies Pull requests that update a dependency file github_actions Pull requests that update GitHub Actions code labels Jan 18, 2026
Bumps the actions group with 7 updates:
| Package | From | To |
| --- | --- | --- |
| [actions/checkout](https://github.com/actions/checkout) | `4.1.1` | `6.0.1` |
| [haskell-actions/setup](https://github.com/haskell-actions/setup) | `2.7.5` | `2.10.3` |
| [actions/cache](https://github.com/actions/cache) | `4.0.2` | `5.0.2` |
| [actions/upload-pages-artifact](https://github.com/actions/upload-pages-artifact) | `3.0.1` | `4.0.0` |
| [github/codeql-action](https://github.com/github/codeql-action) | `3.27.0` | `4.31.10` |
| [webfactory/ssh-agent](https://github.com/webfactory/ssh-agent) | `0.9.0` | `0.9.1` |
| [ossf/scorecard-action](https://github.com/ossf/scorecard-action) | `2.4.0` | `2.4.3` |
Updates `actions/checkout` from 4.1.1 to 6.0.1
- [Release notes](https://github.com/actions/checkout/releases)
- [Commits](actions/checkout@v4.1.1...v6.0.1)
Updates `haskell-actions/setup` from 2.7.5 to 2.10.3
- [Release notes](https://github.com/haskell-actions/setup/releases)
- [Commits](haskell-actions/setup@ec49483...f9150cb)
Updates `actions/cache` from 4.0.2 to 5.0.2
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](actions/cache@0c45773...8b402f5)
Updates `actions/upload-pages-artifact` from 3.0.1 to 4.0.0
- [Release notes](https://github.com/actions/upload-pages-artifact/releases)
- [Commits](actions/upload-pages-artifact@56afc60...7b1f4a7)
Updates `github/codeql-action` from 3.27.0 to 4.31.10
- [Release notes](https://github.com/github/codeql-action/releases)
- [Commits](github/codeql-action@v3.27.0...v4.31.10)
Updates `webfactory/ssh-agent` from 0.9.0 to 0.9.1
- [Release notes](https://github.com/webfactory/ssh-agent/releases)
- [Changelog](https://github.com/webfactory/ssh-agent/blob/master/CHANGELOG.md)
- [Commits](webfactory/ssh-agent@dc588b6...a6f90b1)
Updates `ossf/scorecard-action` from 2.4.0 to 2.4.3
- [Release notes](https://github.com/ossf/scorecard-action/releases)
- [Commits](ossf/scorecard-action@v2.4.0...v2.4.3)
---
updated-dependencies:
- dependency-name: actions/checkout
dependency-version: 6.0.1
dependency-type: direct:production
update-type: version-update:semver-major
dependency-group: actions
- dependency-name: haskell-actions/setup
dependency-version: 2.10.3
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: actions
- dependency-name: actions/cache
dependency-version: 5.0.2
dependency-type: direct:production
update-type: version-update:semver-major
dependency-group: actions
- dependency-name: actions/upload-pages-artifact
dependency-version: 4.0.0
dependency-type: direct:production
update-type: version-update:semver-major
dependency-group: actions
- dependency-name: github/codeql-action
dependency-version: 4.31.10
dependency-type: direct:production
update-type: version-update:semver-major
dependency-group: actions
- dependency-name: webfactory/ssh-agent
dependency-version: 0.9.1
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: actions
- dependency-name: ossf/scorecard-action
dependency-version: 2.4.3
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: actions
...
Signed-off-by: dependabot[bot] <support@github.com>
@dependabot
dependabotBotforce-pushed the dependabot/github_actions/actions-690794c5dc branch from e98a559 to 70c600bCompareJanuary 22, 2026 21:08
@dependabot@github

dependabotBot commented on behalf of githubJan 29, 2026

Copy link
Copy Markdown
ContributorAuthor

Looks like these dependencies are updatable in another way, so this is no longer needed.

@dependabotdependabotBot closed this Jan 29, 2026
@dependabot
dependabotBot deleted the dependabot/github_actions/actions-690794c5dc branch January 29, 2026 15:51
hyperpolymath added a commit that referenced this pull request Apr 12, 2026
posix_errors.v had two structural bugs:
1. Decision procedures declared as Axiom AFTER safe_* definitions that used them
(forward-reference error in Coq's sequential processing).
2. safe_* definitions used `negb (sumbool_val)` which is a type error —
negb : bool -> bool, but the sumbool {P} + {~P} is not a bool.
Fix:
- Moved decision procedures to BEFORE safe_* definitions.
- Proved path_exists_dec, is_directory_dec, is_file_dec,
has_write_permission_dec, path_eq_dec constructively by case-splitting on
the Filesystem function (Path -> option FSNode) and the FSNode fields.
- Kept is_empty_dir_dec as Axiom with full justification: universal
quantification over an infinite-domain function cannot be decided
constructively; finite-map refactor removes this axiom.
- Restructured safe_* definitions to use nested `if` on sumbool (correct)
instead of `negb (sumbool_val)` (type error). All existing theorems and
proofs preserved with minimal changes.
filesystem_composition.v: added detailed proof-strategy comments to
well_formed_ancestor_exists and mkdir_preserves_well_formed axioms,
referencing PROOF_HOLES_AUDIT.md items #1 and #2.
functional_extensionality: already correctly imported in filesystem_model.v;
all other files get it transitively via Require Import filesystem_model.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
hyperpolymath added a commit that referenced this pull request Apr 12, 2026
…ignore
Convert well_formed_ancestor_exists and mkdir_preserves_well_formed from
Axiom to Lemma via strong induction on path length.
Add 6 helper lemmas: path_prefix_refl, path_prefix_length,
path_prefix_eq_of_same_length, path_prefix_app_invert, parent_path_lt,
path_prefix_parent — building the scaffolding described in PROOF_HOLES_AUDIT.md.
Fix path_prefix bool type: `path_prefix p child` (Prop mis-use) →
`path_prefix p child = true` throughout filesystem_model.v, posix_errors.v,
and filesystem_composition.v.
Fix rmdir_removes_path and mkdir_rmdir_reversible tactic sequences for Coq 8.20.
Switch _CoqProject from -Q to -R (recursive logical path mapping).
Add proofs/coq/.gitignore to exclude *.vo, *.vos, *.vok, *.glob, *.aux,
Makefile, Makefile.conf from version control.
Proof debt items #1 and #2 from docs/PROOF_HOLES_AUDIT.md are now CLOSED.
Coq layer: 0 Admitted, 1 justified Axiom (is_empty_dir_dec — infinite-domain
function, requires finite-map Filesystem refactor to eliminate).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
hyperpolymath added a commit that referenced this pull request Apr 12, 2026
Record 2026-04-12 session: 0 Admitted, 1 justified Axiom in Coq layer.
Both deferred axioms (well_formed_ancestor_exists, mkdir_preserves_well_formed)
proved and committed in 1ef841c.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
hyperpolymath added a commit that referenced this pull request Apr 12, 2026
Well-formedness axioms (well_formed_ancestor_exists, mkdir_preserves_well_formed)
proved in 1ef841c. posix_errors.v decidability axioms (5/6) proved in 794c568.
Total hole count: 8 → 3 (1 real gap + 1 justified axiom + 1 structural funext).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
hyperpolymath added a commit that referenced this pull request Apr 27, 2026
posix_errors.v had two structural bugs:
1. Decision procedures declared as Axiom AFTER safe_* definitions that used them
(forward-reference error in Coq's sequential processing).
2. safe_* definitions used `negb (sumbool_val)` which is a type error —
negb : bool -> bool, but the sumbool {P} + {~P} is not a bool.
Fix:
- Moved decision procedures to BEFORE safe_* definitions.
- Proved path_exists_dec, is_directory_dec, is_file_dec,
has_write_permission_dec, path_eq_dec constructively by case-splitting on
the Filesystem function (Path -> option FSNode) and the FSNode fields.
- Kept is_empty_dir_dec as Axiom with full justification: universal
quantification over an infinite-domain function cannot be decided
constructively; finite-map refactor removes this axiom.
- Restructured safe_* definitions to use nested `if` on sumbool (correct)
instead of `negb (sumbool_val)` (type error). All existing theorems and
proofs preserved with minimal changes.
filesystem_composition.v: added detailed proof-strategy comments to
well_formed_ancestor_exists and mkdir_preserves_well_formed axioms,
referencing PROOF_HOLES_AUDIT.md items #1 and #2.
functional_extensionality: already correctly imported in filesystem_model.v;
all other files get it transitively via Require Import filesystem_model.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
hyperpolymath added a commit that referenced this pull request Apr 27, 2026
…ignore
Convert well_formed_ancestor_exists and mkdir_preserves_well_formed from
Axiom to Lemma via strong induction on path length.
Add 6 helper lemmas: path_prefix_refl, path_prefix_length,
path_prefix_eq_of_same_length, path_prefix_app_invert, parent_path_lt,
path_prefix_parent — building the scaffolding described in PROOF_HOLES_AUDIT.md.
Fix path_prefix bool type: `path_prefix p child` (Prop mis-use) →
`path_prefix p child = true` throughout filesystem_model.v, posix_errors.v,
and filesystem_composition.v.
Fix rmdir_removes_path and mkdir_rmdir_reversible tactic sequences for Coq 8.20.
Switch _CoqProject from -Q to -R (recursive logical path mapping).
Add proofs/coq/.gitignore to exclude *.vo, *.vos, *.vok, *.glob, *.aux,
Makefile, Makefile.conf from version control.
Proof debt items #1 and #2 from docs/PROOF_HOLES_AUDIT.md are now CLOSED.
Coq layer: 0 Admitted, 1 justified Axiom (is_empty_dir_dec — infinite-domain
function, requires finite-map Filesystem refactor to eliminate).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
hyperpolymath added a commit that referenced this pull request Apr 27, 2026
Record 2026-04-12 session: 0 Admitted, 1 justified Axiom in Coq layer.
Both deferred axioms (well_formed_ancestor_exists, mkdir_preserves_well_formed)
proved and committed in c359aed.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
hyperpolymath added a commit that referenced this pull request Apr 27, 2026
Well-formedness axioms (well_formed_ancestor_exists, mkdir_preserves_well_formed)
proved in c359aed. posix_errors.v decidability axioms (5/6) proved in 10580fc.
Total hole count: 8 → 3 (1 real gap + 1 justified axiom + 1 structural funext).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
hyperpolymath added a commit that referenced this pull request Jun 1, 2026
…hPerms variant (#67)
Closes the long-standing [admit.] in [single_op_reversible] (OpRmdir
and OpDeleteFile branches) by taking closure path #2 from the
documented design note: the [Operation] inductive now carries
[OpMkdirWithPerms : Path -> Permissions -> Operation] and
[OpCreateFileWithPerms : Path -> Permissions -> Operation]
constructors, and [reverse_op] is threaded with the pre-state so the
inverse of [OpRmdir]/[OpDeleteFile] can capture the original node's
permissions exactly.
Changes:
* filesystem_composition.v
- Operation: +2 constructors (OpMkdirWithPerms, OpCreateFileWithPerms).
- mkdir_with / create_file_with: write a node at a path with the
supplied permissions (instead of default_perms).
- apply_op: handle the two new constructors.
- reverse_op: now [Operation -> Filesystem -> Operation]; for
OpRmdir/OpDeleteFile, look up the node and route to the
...WithPerms variant.
- reverse_sequence: now stateful; LIFO threading of pre-states.
- reverse_sequence_app / _singleton: re-proved under the new signature.
- op_precondition / reversible: extended to the new constructors.
- single_op_reversible: now closed with Qed (no admits). All 6
cases discharged from [reversible op fs] alone.
- operation_sequence_reversible / two_op_ / three_op_ /
reversible_creates_CNO: re-stated under the new reverse_sequence
threading; proofs adjusted.
- Print Assumptions at end-of-file: 3 lines, each showing only
[functional_extensionality_dep] — the same axiom already used by
[mkdir_rmdir_reversible] in the base model. No new axioms.
* filesystem_equivalence.v
- apply_op_preserves_equiv: +2 branches for the new constructors.
- mkdir_with_preserves_equiv / create_file_with_preserves_equiv:
added (same shape as their default-perms cousins).
- reversible_creates_equiv / sequence_reversible_equiv /
cno_identity_element / sequence_cno_identity: re-stated under
the threaded [reverse_op]/[reverse_sequence] signatures.
Out of scope (pre-existing admit unchanged):
- [mkdir_two_dirs_reversible] is still [Admitted.] — it documents a
non-LIFO sequence-reversal that is independent of the model-gap
closed here.
Refs #41 (Phase 1)
Refs #42 (proof inventory)
Closure path #2 ("OpMkdirWithPerms variant") chosen — the directive
called this the cleanest. Path #1 would have required strengthening
[reversible] with a [fs p = Some (mkFSNode _ default_perms)] side
condition; path #3 (UndoLog) is heavier-weight.
Echo-types audit: not relevant — this is L1 (region-mode) shape, not
L3 (echo). Recorded per [feedback_proofs_must_check_and_cross_doc_echo_types].
Local build oracle (mandatory per [feedback_proof_pr_build_oracle_is_only_truth]):
coq_makefile -f _CoqProject -o build.mk && make -f build.mk
GREEN on Coq 8.18.0.
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
hyperpolymath added a commit that referenced this pull request Jun 1, 2026
…factor + 15-25 prop-tests (#72)
- secure_delete (commands::secure_deletion::secure_delete) lifted to a public,
documented primitive: 3-pass overwrite (urandom / zeros / 0xFF) with fsync
between passes + unlink. Uses /dev/urandom on Unix, falls back to a
hash-mixed PRNG elsewhere. CoW / FTL / snapshot limitations documented at
the module-level rustdoc.
- audit_log: added AuditLog::default_path() and AuditLog::with_default_path()
honouring XDG_STATE_HOME / $HOME per the XDG Base Directory spec
(XDG_STATE_HOME/valence-shell/audit.log or
$HOME/.local/state/valence-shell/audit.log).
- Replaced all six `unreachable!()` calls in src/commands.rs with typed
`CommandError` (`#[non_exhaustive]`) variants — InternalUnreachableInverseArm,
InternalUnreachableIrreversible, InternalUnreachableExplainPathArm — plus a
contextual anyhow::bail! for the &str-returning hardware-erase dispatch.
Future regressions in upstream filtering now surface as recoverable errors
rather than aborting the shell.
- Added impl/rust-cli/tests/secure_audit_prop_tests.rs with 20 property tests
covering:
- mkdir/rmdir reversibility (Lean: FilesystemModel.mkdir_rmdir_reversible)
- touch/rm reversibility
- writeFileReversible
- copyFile_reversible
- obliterate_not_injective (no inverse exists)
- inverse round-trip well-formedness for all reversible OperationTypes
- secure_delete unlink behaviour + EISDIR + ENOENT + edge sizes (0, 1)
- audit-log append-only / order-preservation / filter-by-type
- audit-entry JSON round-trip
- XDG default-path resolution
- Implemented the two security_tests.rs stubs
(security_gdpr_secure_deletion, security_audit_trail_immutability) which
previously held TODO markers.
Echo-types audit: filesystem-reversibility properties exercised here are L3
(echo-layer) shape per the prior estate sweep. The implementation does not
yet *import* echo-types directly — recorded as relevant-but-not-yet-imported
per the cross-doc directive.
Local verification:
- cargo build --lib : clean
- cargo test --workspace : 757 passed / 0 failed (the 21 test-binaries all
return "0 failed", including the new 20 prop-tests and the 2 unstubbed
security_tests).
- cargo clippy --workspace --tests : pre-existing absurd_extreme_comparisons
errors in confirmation.rs and e2e_script_execution.rs persist (verified
against main via stash). Zero new clippy warnings on changed files.
Closes the practice-gap #1 + #2 from #45. Refs #41 Phase 1, #43 prop-test expansion.
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependenciesPull requests that update a dependency filegithub_actionsPull requests that update GitHub Actions code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants