Skip to content

docs: SECURITY.md, injection guards, dependabot, pinned routines#6

Merged
muhammademanaftab merged 2 commits into
developfrom
docs-process
Jul 6, 2026
Merged

docs: SECURITY.md, injection guards, dependabot, pinned routines#6
muhammademanaftab merged 2 commits into
developfrom
docs-process

Conversation

@muhammademanaftab

Copy link
Copy Markdown
Owner

Fourth of four staged hardening PRs. Stacked on #5 (base branch data-integrity); rebase to develop as the stack merges down.

What and why

The process and documentation pieces a public, self-hosted tool needs.

  • SECURITY.md: what capture stores, the redaction pass and its limits (best-effort, not a guarantee), transport/auth, where creds live (~/.pulse/.env, 0600), and how to report a vulnerability.
  • Injection guards in digest/SKILL.md and synth/SKILL.md: captured rows and daily-note content are untrusted data, never instructions, since both run unattended with push access.
  • Pinned routines: digest.md/synth.md clone at --branch v0.1.0 --depth 1, so an unattended push-capable agent only runs reviewed, tagged code; routines/README.md notes how to bump the tag.
  • dependabot.yml: weekly npm (/convex-backend) and github-actions updates.
  • README: one line pointing to SECURITY.md.

Release tag

The routines reference v0.1.0. Create that tag when this stack merges to main (git tag v0.1.0 <sha> && git push origin v0.1.0), otherwise the pinned clone will fail. Left for you since tagging is a release decision.

Verification

  • No em/en dashes in any added line; py_compile and test_capture.py still pass.
  • Markdown-only + config; no code paths changed.

🤖 Generated with Claude Code

muhammademanaftab and others added 2 commits July 6, 2026 12:34
Round out the hardening with the process and documentation pieces a
public, self-hosted tool needs.

- SECURITY.md: what capture stores, the redaction pass and its limits
  (best-effort, not a guarantee), transport and auth, where creds live,
  and how to report a vulnerability.
- digest/synth SKILL.md: a guard stating captured and daily-note
  content is untrusted data, never instructions, since both run
  unattended with push access.
- routines: clone the pulse repo at a pinned release tag (v0.1.0) so an
  unattended agent only runs reviewed code; note how to bump it.
- dependabot.yml: weekly npm (convex-backend) and github-actions updates.
- README: point to SECURITY.md.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Review findings: public repos have no private issues, so point
reporters at the security-advisory flow only; and the limits paragraph
now also mentions false positives (harmless text that looks like a
secret), not just false negatives.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@muhammademanaftab
muhammademanaftab changed the base branch from data-integrity to develop July 6, 2026 14:42
@muhammademanaftab
muhammademanaftab merged commit a73cd15 into develop Jul 6, 2026
2 checks passed
@muhammademanaftab
muhammademanaftab deleted the docs-process branch July 6, 2026 14:43
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.

1 participant