Add GoalOS product proof infrastructure, pages, validation, and CI#1
Add GoalOS product proof infrastructure, pages, validation, and CI#1MontrealAI wants to merge 2 commits into
Conversation
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 784a308529
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| from pathlib import Path | ||
|
|
||
| ROOT = Path(__file__).resolve().parents[1] | ||
| PUBLIC_PREFIXES = ("site", "docs", "data", ".github") |
There was a problem hiding this comment.
Include releases in the paid ZIP guard
When a paid ZIP is added under releases/ outside releases/AEP-001, this guard silently skips it because releases is not treated as a public prefix, even though the added commerce docs describe releases/AEP-001 as the only ZIP exception. For example, releases/GoalOS_AI_Efficiency_Sprint.zip would not be reported by find_offenders(), so the CI guard can miss exactly the kind of public paid package it is intended to block.
Useful? React with 👍 / 👎.
Motivation
Description
data/goalos_products.jsonwith exactly 9 bilingual products and placeholders for Squarespace/Stripe CTAs.scripts/build_goalos_product_pages.pythat emitssite/goalos/,site/products/(hub + 9 product pages),site/ai-efficiency-score/, and shared assetssite/assets/goalos-products.cssandsite/assets/goalos-products.jswith the marker<!-- GENERATED_BY_GOALOS_PRODUCT_BUILDER -->.scripts/validate_goalos_products.py,scripts/guard_no_paid_product_files.py,scripts/check_site_links.py, andscripts/repo_claim_boundary_check.pyto enforce catalog shape, no paid ZIPs in public paths, local link resolution, and forbidden-claim detection with allowed claim-boundary contexts.docs/commerce/describing Squarespace + Stripe delivery and paid-product security, plus adocs/commerce/product_ladder.mdsummary.tests/test_goalos_product_catalog.py,tests/test_goalos_product_pages.py,tests/test_no_paid_product_files.py, andtests/test_goalos_claim_boundaries.pythat call the validation code rather than fragile snapshots..github/workflows/goalos-product-site-ci.ymlto install dev deps, run the builder, run validations/guards/link/claim checks andpytest, and fail if generated pages are stale; and surgically add a guarded GoalOS block intosite/index.htmlinside<!-- GOALOS_PRODUCT_LADDER_START -->/<!-- GOALOS_PRODUCT_LADDER_END -->only.Testing
python scripts/build_goalos_product_pages.py,python scripts/validate_goalos_products.py,python scripts/guard_no_paid_product_files.py,python scripts/check_site_links.py, andpython scripts/repo_claim_boundary_check.py, and all returned success.pytest -qafter installing dev extras (pip install -e '.[dev]') and all new/collected tests passed (existing suite also exercised; warnings from FastAPI/Starlette noted but non-blocking).git status --shortandgit diff --statshow the new files and the guarded homepage insertion only; no existing proof/AEP-001 pages were removed and no paid ZIPs were added.Codex Task