Bump softprops/action-gh-release from 2 to 3 - #2
Merged
getappz merged 1 commit intoJul 5, 2026
Conversation
Bumps [softprops/action-gh-release](https://github.com/softprops/action-gh-release) from 2 to 3. - [Release notes](https://github.com/softprops/action-gh-release/releases) - [Changelog](https://github.com/softprops/action-gh-release/blob/master/CHANGELOG.md) - [Commits](softprops/action-gh-release@v2...v3) --- updated-dependencies: - dependency-name: softprops/action-gh-release dependency-version: '3' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com>
getappz
enabled auto-merge (squash)
July 5, 2026 20:41
getappz
deleted the
dependabot/github_actions/softprops/action-gh-release-3
branch
July 5, 2026 20:41
getappz
added a commit
that referenced
this pull request
Aug 13, 2026
…estration (#472) * feat(flare-workflow): scaffold crate with typed DAG types + journal + SQLite store Phase 1-2 of epic #447: core types (StepMode/ErrorMode/JournalEntry with CompletableEntry invariant), DAG validation, StateStore trait + in-memory, and SqliteStore on agentflare-db-kit with append-only journal. Agentflare-Agent: 1 Agentflare-Branch: task/447 Agentflare-Item: 447 * feat(flare-workflow): journaled DAG engine core with retries + event bus Phase 3 of epic #447: port SMG wfaas engine (DAG parallel scheduler, backoff retries, RetryIndefinitely, cancellation, graceful shutdown, event bus) fused with the durable journal — every terminal step result appended as JournalEntry::StepRun. Agentflare-Agent: 1 Agentflare-Branch: task/447 Agentflare-Item: 447 * feat(flare-workflow): OpenFang step semantics — conditional/loop/fanout+collect, variables, tokens, eviction Phase 4 of epic #447: engine executes StepMode variants (Conditional skip, Loop until/max-iterations, FanOut+Collect join via shared buffer), string-pipeline input chaining ({{input}} + output_var capture), token accounting on StepState, run-eviction cap (200), and ErrorMode::Skip turns terminal failures into skips. OpenFang test suite ported. Agentflare-Agent: 1 Agentflare-Branch: task/447 Agentflare-Item: 447 * feat(flare-workflow): durable waits — Sleep timers + WaitEvent promises + complete_event Phase 5 of epic #447: Sleep/WaitEvent journaled (pending + completed entries, Restate design), in-process oneshot waiters, exactly-once complete_event with journaled pre-delivery closing the notify-before-wait race, and TTL timeout path. Agentflare-Agent: 1 Agentflare-Branch: task/447 Agentflare-Item: 447 * feat(flare-workflow): recovery pass — crash-resume with exactly-once via journal memoization Phase 6 of epic #447: engine.recover() replays active runs over the SQLite journal, skips steps with completed entries (StepRun/Sleep/WaitEvent), and re-drives pending steps; pending Sleep re-arms idempotently; WorkflowDefinition is now Clone for re-registration. Durable-wait methods split into waits.rs to stay under the LOC gate. Crash-resume test proves a completed step never re-executes (exactly-once); racing completions resolve to one winner. Agentflare-Agent: 1 Agentflare-Branch: task/447 Agentflare-Item: 447 * feat(flare-workflow): OpenFang JSON schema + compile + example workflows Phase 7 (core) of epic #447: JsonWorkflow schema compiles to engine-ready definitions with agent-prompt executors dispatching through a caller-supplied SendMessage hook (input/var templating, token accounting, retryable by default). OpenFang's four example workflows (code-review, research-and-write with conditional, brainstorm fan-out+collect, iterative-refinement loop) run as fixtures. Workspace builds with the new member. Agentflare-Agent: 1 Agentflare-Branch: task/447 Agentflare-Item: 447 * docs(flare-workflow): crate README — usage, durability, JSON workflows Agentflare-Agent: 1 Agentflare-Branch: task/447 Agentflare-Item: 447 * chore: update Cargo.lock for flare-workflow crate Agentflare-Agent: 1 Agentflare-Branch: task/447 Agentflare-Item: 447 * feat(workflow): mcp__flare__workflow + agentflare workflow CLI + real pipeline test Phase 7b: src/workflow.rs service (durable SqliteStore, shared runtime, headless-agent SendMessage hook) + mcp__flare__workflow (run/status/ complete_event/list) + agentflare workflow CLI. compile_workflow now wires OpenFang positional ordering into DAG edges (sequential chain, fan-out group -> collect). complete_event is journal-first so a different engine instance (MCP/CLI/recovery) resolves a wait. Tests: service round-trips, cross-engine event resolution, and a REAL coder->reviewer->PR pipeline that performs git/ file work in a temp repo (branch, commit, real-diff review loop, PR ref). Agentflare-Agent: 1 Agentflare-Branch: task/447 Agentflare-Item: 447 * feat(workflow): MCP handler tests + async cores for daemon-safe invocation Phase 7b completion: workflow service exposes async cores (no nested block_on from the daemon's async runtime) with sync wrappers for the CLI; mcp__flare__workflow handler tests cover run/status/list + error paths; real coder->reviewer->PR git flow test proves the engine drives agentflare's item-pipeline mechanics. Agentflare-Agent: 1 Agentflare-Branch: task/447 Agentflare-Item: 447 * fix(flare-workflow): resolve code-review findings on task/447 Fixes for the 8 review findings on item #447 (all except #8, documented below): - agent_send_hook now runs run_headless inside spawn_blocking within the async block, instead of synchronously before it (finding #1). - SqliteStore's StateStore impl wraps every method's rusqlite I/O in spawn_blocking so it can't stall an async executor thread (#2). - WorkflowEngine gains an optional runtime handle (with_runtime_handle); start_workflow/recover/start_cleanup_task spawn through it. src/workflow.rs now attaches WORKFLOW_RT so the MCP path (which awaits the async core directly on the daemon's own runtime) also keeps execution off that runtime, not just the CLI's block_on path (#3). - Steps whose dependency failed now get an explicit Skipped status (with a cascade to their own dependents) instead of staying stuck at Pending forever; completion signals now forward on any terminal result, not just Success/Skip, so blocked dependents actually reach the scheduler (#4). - WaitEvent waiters are now keyed per step instance (run_id:step_id:name) instead of run_id:name, so two concurrent wait_event steps sharing an event name no longer drop each other's waiter; complete_event wakes every matching waiter (#5). - cleanup_old_workflows no longer panics via .expect() on a lock/query failure; it logs and returns 0 like its siblings (#6). - write_state now does targeted UPSERTs of step_state/run_vars rows instead of DELETE-all + INSERT-all on every write (#7). Finding #8 (WorkflowRunId::new() vs db_kit::ids::new_id()) intentionally left as-is: new_id() returns a nanoid String, but WorkflowRunId wraps a Uuid and is parsed/displayed as a v7 UUID throughout the MCP/CLI surface (explicitly time-ordered). Switching would require re-typing WorkflowRunId from Uuid to String across the crate and would lose the v7 time-ordering property, which is a materially different and larger change than the 'low - consistency' severity implies. Added regression tests: concurrent_wait_events_same_name_both_resolve and dependent_of_failed_step_gets_terminal_status. cargo test -p flare-workflow (55 tests) + agentflare workflow::/ mcp_server::workflow:: tests (7 tests) pass; fmt + clippy (-D warnings -A unsafe_code -A clippy::pedantic) clean workspace-wide. Agentflare-Agent: claude-code Agentflare-Branch: task/447 Agentflare-Item: 447 * fix(flare-workflow): drop unmaintained backoff crate, regen hakari workspace-hack Replace the RUSTSEC-flagged backoff crate with a hand-rolled exponential strategy in retry.rs (base * 1.5^n, capped at max) — the crate's own randomization was redundant with apply_jitter anyway. Regenerate agentflare-workspace-hack via cargo hakari generate to pick up flare-workflow's dependency set. Agentflare-Agent: claude-code Agentflare-Branch: task/447 Agentflare-Item: 447 * fix(flare-workflow): resolve CodeRabbit findings — durable sleep, update race, db_path Three real bugs surfaced by the fresh full-diff CodeRabbit review on PR #472: - waits.rs execute_sleep recomputed wake_at from Utc::now() on every call, including on crash-recovery re-arm, so a durable Sleep never resumed its original deadline — every restart pushed the wake time out further. Now reuses the wake_at from an existing pending Sleep journal entry. - sqlite_store.rs SqliteStore::update released the connection lock between its load and write, so concurrent updates on the same run (e.g. two fan-out branches completing close together) could race and silently drop one's mutation. Added update_lock held across the whole cycle. - mcp_server/workflow.rs honored a client-supplied db_path in production, letting any MCP caller point the workflow store at an arbitrary file. The override is now test-only (cfg!(test)); production always uses the default ~/.agentflare/workflows.db path. Added regression tests for the first two (recover_reams_pending_sleep now asserts wake_at is preserved across the crash boundary; concurrent_updates_on_same_run_do_not_lose_writes spawns 20 concurrent updates and asserts none are lost). The db_path fix isn't independently testable — cfg!(test) is true for any test binary — so it's covered by the existing MCP tests continuing to pass with their tempdir overrides. Remaining CodeRabbit nitpicks (eprintln vs tracing, brittle journal_tail count assertion, README doctest formatting, missing composite index, discarded delete_state errors in cleanup, executor.rs default is_retryable, non-blocking cancellation test, duplicate StepId validation, WaitEvent journal entries not scoped by step_id, EntryResult::success swallowing serialization errors, InMemoryStore::journal NotFound vs empty-vec inconsistency, fan_group dependency derivation edge case) are lower-severity style/robustness items left for a follow-up pass rather than folded into this bugfix. The journal.rs 'use RETURNING instead of a second SELECT' suggestion was checked and is a non-issue here: all journal writes go through the same Arc<Mutex<Connection>>, so there's no race for it to fix. Agentflare-Agent: claude-code Agentflare-Branch: task/447 Agentflare-Item: 447
This was referenced Aug 14, 2026
getappz
added a commit
that referenced
this pull request
Aug 16, 2026
…483 bug #2) (#513) * fix(git-shim): scope-check child crash no longer blocks git as a policy denial (item #472) Agentflare-Agent: opencode Agentflare-Branch: task/472-git-shim-scope-check-subprocess-crash-de Agentflare-Item: 472 * fix(git-shim): E2E test for scope-check crash pass-through + test-only bin override Agentflare-Agent: opencode Agentflare-Branch: task/472-git-shim-scope-check-subprocess-crash-de Agentflare-Item: 472 * fix(git-shim): compile-gate scope-check bin override, fix out-of-tree bypass - AGENTFLARE_GIT_SCOPE_CHECK_BIN override is now compiled out of release builds entirely instead of only being runtime-guarded, so a stray combination of env vars can never redirect a shipped binary's scope-check. - classify_scopes() short-circuits to Clear on an empty changed-paths list before it ever checks own_target/in_own_worktree, so skipping the diff computation for an out-of-tree invoker silently turned a real OutOfTree denial into a pass. Only skip the diff when there are no enforced other-claim scopes AND the invoker isn't out-of-tree. Agentflare-Agent: claude-code_2-1-233_agent Agentflare-Branch: task/472-git-shim-scope-check-subprocess-crash-de Agentflare-Item: 472 * fix(git-shim): drain stderr concurrently, enforce path cap on merged commit set - run_in_lines_bounded now drains the child's stderr on a separate thread instead of reading stdout to EOF first, since a caller whose git invocation writes more than one pipe buffer to stderr could otherwise deadlock. Every stdout read-error path now kills+waits the child too, instead of only the TooManyLines path. - changed_paths' commit branch caps the staged diff and the unstaged diff separately, so two disjoint sets could each land at MAX_CHANGED_PATHS and union past it; enforce the cap on the merged, deduplicated set as well. - Assert the crashed-scope-check test's audit record actually carries ScopeCheckError, not Deny, closing the coverage gap that would let an incorrect Deny classification pass silently. Agentflare-Agent: claude-code_2-1-233_agent Agentflare-Branch: task/472-git-shim-scope-check-subprocess-crash-de Agentflare-Item: 472
getappz
added a commit
that referenced
this pull request
Aug 27, 2026
…t finalize (#622) * No clippy warnings in the files I touched. The implementation is complete and verified. ## Status Implemented per-turn checkpoint commits + finalize-time squash in `build_sdd_loop_step`/`build_finalize_step` (`src/work_item_pipeline.rs`), building on #191's `worktree_path` threading: - **`crates/flare-git-core/src/worktree.rs`**: added `commit_uncommitted_at` (path-based variant of `commit_uncommitted`, with a `no_verify` flag), `head_sha`, and `squash_since` (`git reset --soft`). `commit_uncommitted` now delegates to `commit_uncommitted_at`. Thin wrappers added in `src/worktree.rs`. - **`WorkItemData`**: added `checkpoint_base_sha: Option<String>`. - **`build_sdd_loop_step`**: role dispatch now also returns `is_implementer_turn` (true only for non-review-only implementer/fix dispatches, never for judge/reviewer/analyst turns). After a successful implementer-turn `send()`, `checkpoint_implementer_turn` commits with `--no-verify` (skipping the LOC-freeze gate per open question #1) and lazily captures the pre-checkpoint HEAD sha. - **`build_finalize_step`**: right before the existing `item_done` call, squashes every checkpoint commit back to `checkpoint_base_sha` via `squash_since`, so `item_done`'s own `commit_uncommitted` (which does run the LOC-freeze pre-commit hook) evaluates the whole run's diff as one commit. `.take()` on the sha prevents a step retry from double-squashing. - Commit message convention: `wip(sdd-loop): task {id} checkpoint` (open question #2) — disposable, just grep/reflog-identifiable. **One real bug caught and fixed during implementation**: my first draft fell back to the ambient process cwd when `worktree_path` was empty (mirroring `real_agent_send_hook`'s dispatch fallback). Running the test suite actually committed my own uncommitted working-tree changes into this session's real git history, since the test harness has no `worktree_path` set and ambient cwd was this repo. I reset that commit (`git reset --soft`, verified only my own 3 in-progress files were affected) and changed the checkpoint function to no-op entirely when `worktree_path` is empty — a `git commit` has no safe ambient fallback, unlike read-only agent dispatch. Added a regression test (`checkpoint_implementer_turn_is_a_noop_without_a_worktree_path`) guarding this specifically. **Tests added**: 4 in `flare-git-core/src/worktree_tests.rs` (`commit_uncommitted_at`, `head_sha` ×2, `squash_since`), 2 in `work_item_pipeline/tests.rs` (no-op guard, and an end-to-end commit+squash test against a real claimed worktree). All pass — 207/207 (flare-git-core), 83/83 (work_item_pipeline module, 2 pre-existing unrelated ignores). **Verification**: full builds clean, `scripts/loc-gate.sh` passes on every file I touched (had to trim doc comments twice to stay under work_item_pipeline.rs's 1500-line limit — now 1498), clippy shows no new warnings in touched files. One pre-existing repo-wide LOC-gate failure in `src/mcp_server/tests/item_tests.rs` (untouched by me, and per the gate script's own comments, not wired into CI) — not in scope. No concerns beyond the above; nothing committed, per instructions this is left for your review. Agentflare-Agent: claude-code_2-1-245_agent Agentflare-Branch: task/193-sdd-loop-commit-progress-after-each-impl Agentflare-Item: 193-sdd-loop-commit-progress-after-each-impl * fmt Agentflare-Agent: claude-code Agentflare-Branch: pr-622-fmt-fix Agentflare-Session: e77fc32e-33d0-4884-ab55-fdda48fe45fd --------- Co-authored-by: shiva <shiva@gosysinfo.tech>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Bumps softprops/action-gh-release from 2 to 3.
Release notes
Sourced from softprops/action-gh-release's releases.
... (truncated)
Changelog
Sourced from softprops/action-gh-release's changelog.
Commits
718ea10release 3.0.1f1a938bchore(deps): bump esbuild from 0.28.0 to 0.28.1 (#802)0066eadchore(deps): bump vite from 8.0.14 to 8.0.16 (#806)dc643cachore(deps): bump the npm group with 3 updates (#805)85ee99bchore(deps): bump actions/checkout in the github-actions group (#804)9ed3cf9chore(deps): bump the npm group with 2 updates (#800)3efcac8chore(deps): bump the npm group with 3 updates (#798)05d6b91chore(deps): bump brace-expansion from 5.0.5 to 5.0.6 (#797)403a524chore(deps): bump@types/nodefrom 24.12.2 to 24.12.3 in the npm group (#796)437e073chore(deps): bump the npm group with 4 updates (#792)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 rebasewill rebase this PR@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it@dependabot show <dependency name> ignore conditionswill show all of the ignore conditions of the specified dependency@dependabot ignore this major versionwill close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this minor versionwill close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this dependencywill close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)