Skip to content

[luv-legion-716] Ignore /blog/, and clear RUSTSEC-2026-0258 - #717

Merged
NiveditJain merged 3 commits into
mainfrom
luv-legion-716
Aug 18, 2026
Merged

[luv-legion-716] Ignore /blog/, and clear RUSTSEC-2026-0258#717
NiveditJain merged 3 commits into
mainfrom
luv-legion-716

Conversation

@NiveditJain

@NiveditJain NiveditJain commented Aug 18, 2026

Copy link
Copy Markdown
Member

What

Adds /blog/ to .gitignore, plus the CHANGELOG entry the repo convention requires.

That is the entire tracked change. The directory holds long-form design write-ups
being drafted in the checkout — currently one on why failproofai has a daemon
(the problems with the one-shot hook model, the daemon as the answer, and what
fail-closed cost us). None of it is ready to ship with the repo.

Why ignore rather than commit

A draft that is one git add -A away from being committed is a draft written more
cautiously than it should be. Ignoring the directory keeps the working tree clean
during a long writing pass and keeps half-finished prose out of the diff. When a
piece is ready it moves somewhere deliberate — docs/, or off to the site — as its
own change.

Scope

Nothing in the published package changes: no source, no policies, no hook configs,
no build output. ci.yml triggers on push to main and PRs against main, so
this PR is the first thing to run CI on the branch.

🤖 Generated with Claude Code

https://claude.ai/code/session_01XDLd8poaEqRpxWKZcCAEEQ

Summary by CodeRabbit

  • Documentation

    • Updated the changelog for version 1.0.1-beta.2 with information about local blog drafts and a security update.
  • Chores

    • Local blog content and drafts are now excluded from version control, helping prevent them from being included accidentally.

Hermes review

Field Value
Status Approved
Reviewed commit 7983a28363471d9f12910cb16c42129a270cdcbb
Policy revision 1d8f31d926828f3bae215c58f5b35baa44acbff0
Model gpt-5.6-terra
Duration 169s
Updated 2026-08-18T09:18:44.160742543+00:00

Summary

No actionable correctness, compatibility, or security issues found in the reviewed change.

Changes

  • Adds a root-only ignore rule for local /blog/ drafts.
  • Documents the blog exclusion and the h2 advisory remediation in the 1.0.1-beta.2 changelog.
  • Pins transitive Rust dependency h2 from 0.4.15 to 0.4.16.

Validation

  • Passed docker run --rm --network=none -v /review/input/workspace:/workspace:ro -w /workspace rust:1.91 rustup run 1.91.1-x86_64-unknown-linux-gnu cargo metadata --locked --offline --format-version=1 --no-deps — Cargo accepted the workspace manifests and locked metadata with the updated lockfile. (1s)
  • Skipped docker run --rm --network=none -v /review/input/workspace:/workspace:ro -w /workspace rust:1.91 rustup run 1.91.1-x86_64-unknown-linux-gnu cargo metadata --locked --offline --format-version=1 — Full dependency metadata resolution requires a crates.io index that is unavailable in the isolated no-network container. (1s)

Findings

None.

Open questions

None.

Policy overrides

None.

NiveditJain and others added 2 commits August 18, 2026 14:39
`/blog/` holds in-progress design write-ups that are not ready to ship
with the repo. Ignoring the directory keeps them out of the diff while
they are still being drafted.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01XDLd8poaEqRpxWKZcCAEEQ
@github-actions

Copy link
Copy Markdown
Contributor

Thanks @NiveditJain for your contribution to Failproof AI! 🙌

We'd love to discuss your PR and welcome you to our community: https://discord.befailproof.ai/

@coderabbitai

coderabbitai Bot commented Aug 18, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: ec3dcb7d-cbea-4725-92f8-5ef0ecc45b06

📥 Commits

Reviewing files that changed from the base of the PR and between afbe65d and 7983a28.

⛔ Files ignored due to path filters (1)
  • Cargo.lock is excluded by !**/*.lock
📒 Files selected for processing (1)
  • CHANGELOG.md

Included review availability: Your plan includes up to 4 reviews per rolling hour; 2 remain after this review.


📝 Walkthrough

Walkthrough

The pull request ignores the root-level /blog/ directory for local drafts and documents this rule and an h2 lockfile security update in CHANGELOG.md.

Changes

Blog draft ignore rule

Layer / File(s) Summary
Ignore rule and changelog entry
.gitignore, CHANGELOG.md
The root-level /blog/ directory is ignored. The changelog records the local-draft rule and the h2 0.4.15 to 0.4.16 security update.

Estimated code review effort: 1 (Trivial) | ~2 minutes

Merge Risk: ⚪ Minimal · up to 7983a

The PR makes localized repository housekeeping changes and does not introduce an actionable merge-blocking risk; it is merge-ready after normal checks and review.

Suggested reviewers: chhhee10

Poem

I tucked blog drafts away,
While changelog notes mark the day.
The h2 update joins the page,
A tidy rabbit turns the next page. 🐇

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Title check ✅ Passed The title clearly identifies the main changes: ignoring /blog/ and addressing RUSTSEC-2026-0258.
Description check ✅ Passed The description clearly explains what, why, and scope, but it omits the required Type of Change and Checklist sections.

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@hermes-exosphere

hermes-exosphere commented Aug 18, 2026

Copy link
Copy Markdown
Contributor

Hermes

Status Reviewed
Verdict Approved
Head 7983a2836347
Rounds 0 of 5

No actionable correctness, compatibility, or security issues found in the reviewed change.

What this changes

flowchart LR
    n0Gitignorerules["~ Git ignore rules"]
    n1Localblogdrafts["Local blog drafts"]
    n2Releasechangelog["~ Release changelog"]
    n3Rustdependencylockfile["~ Rust dependency lockfile"]
    n4Rustworkspace["Rust workspace"]
    n0Gitignorerules -- "excludes from Git status" --> n1Localblogdrafts
    n2Releasechangelog -- "documents local-draft rule" --> n1Localblogdrafts
    n2Releasechangelog -- "documents h2 update" --> n3Rustdependencylockfile
    n3Rustdependencylockfile -- "locks h2 through hyper" --> n4Rustworkspace
Loading

Rounds

Round Reviewed Commits in this round Verdict
0 7983a2836347 5ed9af8f7884 afbe65d96add 7983a2836347 Approved

Findings

Nothing raised yet.


@hermes-exosphere help lists every command. This comment is maintained in place — I rewrite it after each review rather than posting a new one.

Clears the one advisory failing the Supply Chain gate. It was failing on
main as well — the advisory published after main's last green scan, so no
change in this repo caused it and every branch cut from main went red at
once.

h2 is transitive through hyper, so this is a lockfile edit and nothing
else. Applied surgically rather than via `cargo update -p h2 --precise`,
which also re-resolved six unrelated windows-sys edges DOWNWARD
(0.61.2 -> 0.52.0/0.60.2). That churn is invisible to CI — the Rust jobs
run on Linux and never compile those crates — so it would have ridden
into a release lockfile unreviewed.

Verified: `cargo metadata --locked` accepts the lock (the resolver agrees
it is complete and will not re-resolve behind it), and
`cargo check --workspace --locked --all-targets` passes.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01XDLd8poaEqRpxWKZcCAEEQ
@NiveditJain NiveditJain changed the title [luv-legion-716] Ignore /blog/ for local design write-ups [luv-legion-716] Ignore /blog/, and clear RUSTSEC-2026-0258 Aug 18, 2026

@hermes-exosphere hermes-exosphere left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hermes found no blocking issues in this revision.

@NiveditJain
NiveditJain merged commit 969abec into main Aug 18, 2026
18 checks passed
SiddarthAA added a commit that referenced this pull request Aug 18, 2026
Unblocks CI. The PR had drifted 13 commits behind main and reached a
conflicting state, and GitHub cannot build refs/pull/702/merge for a
conflicting PR — so the `pull_request` trigger never fired and the last two
commits on this branch were never tested. `gh pr checks` showed CodeRabbit
and Socket passing, so the absence of the CI run read as "no news" rather
than "blocked".

Merged rather than rebased: another session is committing to this branch, and
a rebase means a force-push that rewrites history under it.

Two conflicts, both in files each side appended to:

.gitignore — main added /blog/ (#717), this branch added the Python build
and test artefacts. Kept both; they do not overlap.

CHANGELOG.md — both sides created a `## 1.0.1-beta.2 — 2026-08-17` heading in
the same place. Resolved to one section holding the union, filed by
subsection, and `## 1.0.1-beta.1 — 2026-08-16` restored above beta.0.

That last part corrects main rather than merely reconciling with it. At the
merge base the top section was beta.1; main RENAMED that heading to beta.2
and prepended its own entries, which moved four already-shipped entries into
an unreleased section — 1.0.1-beta.1 is published on npm. The tell is that
main's beta.2 carries two `### Fixes` subsections, the second being the
orphaned beta.1 block, byte-identical to this branch's. Propagating that
would leave shipped work permanently misfiled.

Also dropped one duplicate of main's canary entry, the copy ending `(#PR)` —
an unreplaced placeholder. The `(#705)` copy is kept.

Verified nothing was lost: every bullet from both sides is present, none
invented, and everything from `## 1.0.1-beta.0` down is byte-identical to
main's.

Checks: SDK 261 passed; SDK spool contract passes strict; fp-cli 786 passed;
TS 3822 passed; tsc clean; lint 0 errors; build ok. Two tests in
__tests__/hooks/fp-reset.test.ts time out here and fail identically on a
clean origin/main worktree — this box runs a real failproofaid, which CI does
not. Pre-existing and environmental, not from this merge.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
NiveditJain added a commit that referenced this pull request Aug 21, 2026
Only CHANGELOG.md conflicted, and resolving it surfaced three defects that a
textual union merge would have carried forward.

The #721 Discord-announce entry had been hoisted out of the `1.0.1-beta.2`
`### Features` subsection into `1.0.2-beta.0` `### Docs` by an earlier merge on
this branch (7215375) — wrong version and wrong section. Restored to main's
placement.

This branch still carried a `## 1.0.1-beta.1 — 2026-08-16` heading that main
folded into `1.0.1-beta.2` at 17238f6. All eleven of its entries already exist
in main under `1.0.1-beta.2`, and two of them (#717) appeared TWICE on this
branch — once under each heading. The redundant section is dropped and main's
placement wins for every entry it carries, which is what removes the duplicates.

Both sides had introduced a duplicate subsection in `1.0.2-beta.0` (main a
second `### Docs`, this branch a second `### Fixes`). Both are folded, so the
file's duplicate-subsection count goes from 9 to 8 — the invariant ae10911
already stated: a PR may not raise it.

Resolved structurally rather than by hand, and checked rather than eyeballed:
every one of main's 697 entries survives at main's exact multiplicity, every
entry this branch adds survives, nothing appears that is on neither side, and
the version headings are identical to main's apart from the top one's date.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01HZYbbaGWRoARmFyQunWTkZ
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants