From b8cd2cc67c971e36e5e56adac141963e2191df41 Mon Sep 17 00:00:00 2001 From: Aslak Felin Date: Tue, 25 Aug 2026 23:26:41 +0200 Subject: [PATCH] chore: sync main tree with afelin parity Align RI-SE main blob tree with afelin/main after #102 merge resolution (docs ops, ship preflight test, ENISA URL). Co-authored-by: Cursor --- docs/README.md | 4 ++-- docs/getting-started/pre-stranger-handoff.md | 6 ++---- docs/internal/launch-readiness.md | 4 ++-- internal/contract/ship_test.go | 12 ++++++++++++ site/art14/index.html | 2 +- 5 files changed, 19 insertions(+), 9 deletions(-) diff --git a/docs/README.md b/docs/README.md index ae51c69..1ad7006 100644 --- a/docs/README.md +++ b/docs/README.md @@ -4,7 +4,7 @@ | Reader | Start here | |--------|------------| -| Builder / adopter | [Install](getting-started/install.md) · [Share handoff](getting-started/share-handoff.md) · [60-second paths](getting-started/60-second-paths.md) · [Troubleshooting](getting-started/troubleshooting.md) · [RISE tryout](getting-started/rise-tryout.md) · [Pathway](getting-started/pathway.md) · [Sync both remotes](getting-started/sync-both-remotes.md) · [site builders](../site/for-builders/) | +| Builder / adopter | [Install](getting-started/install.md) · [Share handoff](getting-started/share-handoff.md) · [60-second paths](getting-started/60-second-paths.md) · [Troubleshooting](getting-started/troubleshooting.md) · [RISE tryout](getting-started/rise-tryout.md) · [Pathway](getting-started/pathway.md) · [Repo ops hardening](getting-started/repo-ops-hardening.md) · [site builders](../site/for-builders/) | | Buyer / reviewer | [Buyer evidence](getting-started/buyer-evidence.md) · [for-reviewers](../site/for-reviewers/) | | CISO / authority / auditor | [For authorities](for-authorities.md) · [Intent](intent-vs-scope.md) · [security model](security-model.md) · [promotion firewall](promotion-firewall.md) | | Pack author / partner / agent | [assistant-loop](assistant-loop.md) · [Software design document](software-design-document.md) · [SDD gap analysis](internal/sdd-gap-analysis.md) · [write-your-own-pack](write-your-own-pack.md) · [design partners](design-partners.md) · skill (`internal/skilldata/SKILL.md`) · [strategy boundary](strategy-boundary.md) | @@ -41,7 +41,7 @@ RISE / agency liaison: [promotion firewall](promotion-firewall.md) + [NOTICE](.. | [Troubleshooting](getting-started/troubleshooting.md) | PATH, SmartScreen, repair, doctor tips | | [Pathway (warm-start)](getting-started/pathway.md) | Three ways in, one next ask, dual-draft HITL, research sidecar | | [Daily loop](getting-started/daily-loop.md) | Habit: Action / check / attest | -| [Repo ops hardening](getting-started/repo-ops-hardening.md) | PR-only `main`, Pages on RI-SE/curbpack | +| [Sync both remotes (deprecated)](getting-started/sync-both-remotes.md) | Historical — RI-SE/curbpack is now single source | | [Buyer evidence](getting-started/buyer-evidence.md) | Buyer journey: one-pager → trust table → what not to assume | | [Share handoff](getting-started/share-handoff.md) | Supplier share/export/attest recipe | | [ENISA CRA mapping (preliminary)](mappings/enisa-cra-mapping.md) | Informational SME maturity ↔ pack map — **not domain-verified**; not ENISA endorsement | diff --git a/docs/getting-started/pre-stranger-handoff.md b/docs/getting-started/pre-stranger-handoff.md index 2584c74..e2c7974 100644 --- a/docs/getting-started/pre-stranger-handoff.md +++ b/docs/getting-started/pre-stranger-handoff.md @@ -47,11 +47,9 @@ Record results: first-run feedback issue, Teams note, ADOPTERS draft PR, or inte ### 4. Ops housekeeping -- [ ] **Disable afelin GitHub Pages** — single canonical site: https://ri-se.github.io/curbpack/ - - **GitHub UI (CLI cannot disable source):** Repo **RI-SE/curbpack** → **Settings** → **Pages** → under **Build and deployment**, set **Source** to **None** (or delete the Pages workflow deployment if your org requires workflow-only). Confirm https://afelin.github.io/curbpack/ stops updating or returns 404. - - API check (2026-08-20): `gh api repos/RI-SE/curbpack/pages` → `html_url`: https://afelin.github.io/curbpack/ (still active). +- [x] **Disable afelin GitHub Pages** — single canonical site: https://ri-se.github.io/curbpack/ (API DELETE 2026-08-25; GET → 404; confirm in browser) - [ ] **Card test:** logged-out phone → Slack + LinkedIn; paste https://ri-se.github.io/curbpack/ ; LinkedIn Post Inspector if stale cache -- [ ] Confirm [`.github/workflows/pages.yml`](../../.github/workflows/pages.yml) daily countdown cron (`0 6 * * *` UTC) +- [x] Confirm [`.github/workflows/pages.yml`](../../.github/workflows/pages.yml) daily countdown cron (`0 6 * * *` UTC) - [ ] RI-SE About/mirror wording still correct ### 5. Stranger program kit (after smoke green) diff --git a/docs/internal/launch-readiness.md b/docs/internal/launch-readiness.md index cd36385..a61339f 100644 --- a/docs/internal/launch-readiness.md +++ b/docs/internal/launch-readiness.md @@ -1,6 +1,6 @@ # Launch readiness -Public Apache-2.0 launch checklist for [RI-SE/curbpack](https://github.com/RI-SE/curbpack). +Private-fork launch checklist for [afelin/curbpack](https://github.com/afelin/curbpack) (public SoR remains [RI-SE/curbpack](https://github.com/RI-SE/curbpack)). Coreward is **not** required to build, test, launch, or use Curbpack (optional `sock` only). ## Status (2026-08-25) @@ -41,7 +41,7 @@ From the public home alone, under two minutes, a builder / buyer / CISO each ans **Cold-reader pass — recorded 2026-08-24** (Sprint S1+S2 train @ `ebfd0b1`). Product sign-off. -**Post-sprint parity — recorded 2026-08-24** (afelin/main @ `e62f813`): ENISA preliminary mapping and scan re-point shipped on RI-SE; `go.mod` / Action pin remain at RI-SE curbpack pin version v0.5.2 until wave 2 tabletop. +**Post-sprint train — recorded 2026-08-24** @ `4bf5a9f`: RI-SE canonical stranger URLs; ENISA preliminary mapping refreshed in scan + site; `go.mod` remains `github.com/afelin/curbpack` until wave 2; public Action owner is RI SE curbpack at pin version v0.5.2. ### Sprint A — test launch readiness (2026-08-25) diff --git a/internal/contract/ship_test.go b/internal/contract/ship_test.go index 7fd11d7..3570ea6 100644 --- a/internal/contract/ship_test.go +++ b/internal/contract/ship_test.go @@ -121,6 +121,18 @@ func TestCurbpackShipAcceptance(t *testing.T) { } }) + t.Run("preflight without corp-origin dry-run ok", func(t *testing.T) { + dir := initFixtureRepo(t) + seedFixtureTree(t, dir, root) + commitSeed(t, dir) + runGit(t, dir, "git", "branch", "-M", "main") + runGit(t, dir, "git", "update-ref", "refs/remotes/origin/main", "HEAD") + code, out := runShip(t, dir, filepath.Join(dir, "scripts/curbpack-ship.sh"), []string{"GIT_CONFIG_NOSYSTEM=1", "CURBPACK_SHIP_CHECKS_JSON=" + checksJSON}, "--dry-run", "preflight", "1") + if code != 0 { + t.Fatalf("code=%d out=%q", code, out) + } + }) + t.Run("required-check drift exit 1", func(t *testing.T) { dir := initFixtureRepo(t) seedFixtureTree(t, dir, root) diff --git a/site/art14/index.html b/site/art14/index.html index 48856d1..4690f84 100644 --- a/site/art14/index.html +++ b/site/art14/index.html @@ -66,7 +66,7 @@

What scan checks (informational)

Legal reference: EUR-Lex CRA (32024R2847) · Install: docs/getting-started/install.md