Skip to content

Commit f0320c5

Browse files
docs(security): Gate 2 — Dependabot security updates + 15 required checks (#198)
Repo settings (already applied via GitHub API): - vulnerability alerts + automated security fixes enabled - branch protection required checks 13→15 (+sdk-ts, +lock-check) Living docs and dependabot header comment now match the API-verified state. Co-authored-by: JuliaEdom <uedomskikh@gmail.com>
1 parent 09fed87 commit f0320c5

4 files changed

Lines changed: 27 additions & 12 deletions

File tree

‎.github/dependabot.yml‎

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -8,15 +8,17 @@ version: 2
88
#
99
# Dependabot version updates (the schedule below) are a different feature
1010
# from Dependabot SECURITY updates. Security updates are a separate
11-
# repo-level toggle, and audit P1-3 (2026-07-11) confirmed via the GitHub
12-
# API that it is currently DISABLED on this repo — an advisory on any
13-
# ecosystem below waits for the next scheduled run like any other bump; it
14-
# does not open a PR "immediately" as an earlier version of this comment
15-
# claimed. Enabling it is a repo-settings change gated on the repo owner:
11+
# repo-level toggle. Gate 2 (2026-07-16) enabled both vulnerability alerts
12+
# and automated security fixes on this repo:
1613
#
14+
# gh api --method PUT repos/brownjuly2003-code/agentflow/vulnerability-alerts
1715
# gh api --method PUT repos/brownjuly2003-code/agentflow/automated-security-fixes
1816
#
19-
# This file cannot flip that toggle by itself.
17+
# Advisories now open a security-update PR immediately; the weekly schedule
18+
# below still covers ordinary version bumps. This file cannot flip the
19+
# toggle by itself — verify with:
20+
#
21+
# gh api repos/brownjuly2003-code/agentflow --jq .security_and_analysis
2022

2123
updates:
2224
# ── Python: root runtime (agentflow-runtime) ───────────────────────

‎CHANGELOG.md‎

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,17 @@ All notable changes to AgentFlow are documented in this file.
44

55
## [Unreleased]
66

7+
### Supply chain — Gate 2: Dependabot security updates + required-check gap closed
8+
9+
- **Dependabot security updates enabled** on the repo (vulnerability alerts +
10+
automated security fixes). Advisories open a PR immediately; weekly
11+
version updates in `.github/dependabot.yml` stay for ordinary bumps.
12+
- **Branch protection required checks: 13 → 15** — added `sdk-ts` and
13+
`lock-check` so the TypeScript SDK CI job and the `uv.lock` /
14+
`requirements-docker.lock` gate cannot be skipped on `main`.
15+
- Living docs (`README`, `docs/release-readiness.md`) and the dependabot
16+
header comment updated to match the API-verified state.
17+
718
### Observability — /v1/slo reports SLIs, not rescaled aggregates (audit P2-2)
819

920
- **`current` is now a real SLI**: the share of good units among valid units

‎README.md‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ Consumers are whoever needs the number now: humans, dashboards, downstream servi
3030
- **At scale on its own data** — 4 years of the synthetic legend's history (**51.2 M rows, 2.87 M orders, 10.66 M Chestny Znak marking codes**) generated deterministically into the real raw-vault DDL; analyst queries answer in 20–730 ms and all 17 generator-spec invariants hold, including a full-scan GS1 check-digit validation — [S13 report](docs/perf/scale-own-data-2026-07-11.md), `python scripts/benchmark_scale_own_data.py`
3131
- **Lineage as a contract** — all six metrics declare their source events, serving table, and a 2.5 s p95 staleness budget in versioned contracts, exposed through `/v1/catalog` and `/v1/contracts` and pinned by tests against the actual write path
3232
- **Published release line through `v2.0.0`** on PyPI (`agentflow-runtime`, `agentflow-client`) and npm (`@yuliaedomskikh/agentflow-client`) via OIDC Trusted Publishers with SLSA provenance on every artifact
33-
- **Tested and gated** — 1,500+ unit tests plus a broad Windows no-Docker suite; CI enforces 13 required status checks (lint, schema, unit, integration, helm, perf, terraform, bandit, safety, npm-audit, trivy, contract, build-smoke) through branch protection
33+
- **Tested and gated** — 1,500+ unit tests plus a broad Windows no-Docker suite; CI enforces 15 required status checks (lint, schema, unit, integration, helm, perf, terraform, bandit, safety, npm-audit, trivy, contract, build-smoke, sdk-ts, lock-check) through branch protection
3434
- **Dual SDK parity** across Python and TypeScript — retries, circuit breakers, batching, pagination, contract pinning, idempotency keys, `as_of` historical reads — over sub-second entity lookups (p50 `38–55 ms`, p99 `167 ms` on local hardware)
3535
- **Security in the hot path** — a tenant boundary that lives in each serving table's write key and is applied at a single read chokepoint ([ADR-004](docs/decisions/004-tenant-id-column-over-schema-per-tenant.md); proven against DuckDB and live ClickHouse 25.3 — see [STATUS](docs/STATUS.md#proven)), parameterized queries, `sqlglot` AST validation for NL-to-SQL, fail-closed auth, secret scrubbing, and a Bandit gate for new findings
3636
- **Production-shaped extras** — two CDC paths (hardened Debezium/Kafka Connect + a ClickHouse per-branch fan-out), on-call [runbooks](docs/runbooks/README.md), and a [narrated demo](docs/dv2-multi-branch/) of the DV2 multi-branch warehouse
@@ -156,7 +156,7 @@ python scripts/bandit_diff.py .bandit-baseline.json .tmp/bandit-current.json
156156
**`v2.0.0` is the current release line** — PyPI `agentflow-runtime` /
157157
`agentflow-client` and npm `@yuliaedomskikh/agentflow-client`, all
158158
published via OIDC Trusted Publishers with SLSA provenance attestations.
159-
CI on `main` is green across all 13 required checks. The living
159+
CI on `main` is green across all 15 required checks. The living
160160
engineering status — what is proven, what is in progress, what is next —
161161
is tracked in [docs/STATUS.md](docs/STATUS.md).
162162

‎docs/release-readiness.md‎

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
(`@yuliaedomskikh/agentflow-client`) via OIDC Trusted Publishers with SLSA
77
provenance attestations — see
88
[dv2-multi-branch/RELEASE_STATUS.md](dv2-multi-branch/RELEASE_STATUS.md) for
9-
registry links and upload evidence. `main` is protected by 13 required status
9+
registry links and upload evidence. `main` is protected by 15 required status
1010
checks and is green.
1111

1212
## Summary
@@ -53,11 +53,13 @@ and documented in
5353

5454
## CI gates
5555

56-
`main` is protected with 13 required status checks — `lint`, `test-unit`,
56+
`main` is protected with 15 required status checks — `lint`, `test-unit`,
5757
`test-integration`, `perf-check`, `helm-schema-live`, `schema-check`,
5858
`terraform-validate`, `bandit`, `safety`, `npm-audit`, `trivy`, `contract`,
59-
`build-smoke`. Branch protection requires every one of them; force-pushes and
60-
deletions are disabled.
59+
`build-smoke`, `sdk-ts`, `lock-check`. Branch protection requires every one of
60+
them; force-pushes and deletions are disabled. Dependabot security updates
61+
(vulnerability alerts + automated security fixes) are enabled alongside the
62+
weekly version-update schedule in `.github/dependabot.yml`.
6163

6264
## Scope
6365

0 commit comments

Comments
 (0)