Skip to content

feat(package): add Pi gallery preview - #3

Merged
Steel-tech merged 1 commit into
mainfrom
docs/pi-gallery-card
Jul 28, 2026
Merged

feat(package): add Pi gallery preview#3
Steel-tech merged 1 commit into
mainfrom
docs/pi-gallery-card

Conversation

@Steel-tech

@Steel-tech Steel-tech commented Jul 28, 2026

Copy link
Copy Markdown
Contributor

Summary

pi-steel can now replace Pi’s blank package placeholder with a purpose-built,
small-thumbnail-readable gallery cover after the next npm publication. The
package card also leads with the workflow’s actual value instead of a standards
name.

The gallery asset contains only generic product illustrations and is pinned by
path and SHA-256 in the public-data scanner. Any replacement fails closed until
it is reviewed and assigned a new digest.

Preview

PI STEEL — Takeoff to Nest to RFQ

Verification

  • npm run lint
  • npm test — 132 passed, 2 deselected
  • npm run privacy:check
  • python3 scripts/check-public-data.py --range origin/main..HEAD
  • npm run pack:check
  • npm pack --dry-run includes both gallery assets

Post-Deploy Monitoring & Validation

No additional runtime monitoring is required because this changes package
gallery metadata and static media only. After the next approved npm release,
the release owner should verify the image and concise description on Pi’s
package catalog; a missing image or stale placeholder is the rollback trigger
for the metadata URL.


Compound Engineering
Codex

Summary by CodeRabbit

  • New Features

    • Added a project gallery image for package listings and documentation.
    • Included the gallery image in published package contents.
    • Updated project metadata with clearer structural steel estimating capabilities.
  • Documentation

    • Clarified that public gallery media must be reviewed and identified by its exact path and digital fingerprint before publication.
    • Replacements require renewed review and verification.

@coderabbitai

coderabbitai Bot commented Jul 28, 2026

Copy link
Copy Markdown

Review Change Stack

📝 Walkthrough

Walkthrough

Adds a reviewed WebP gallery asset, publishes it through npm and Pi metadata, and pins its exact path and SHA-256 digest in public-data auditing and related tests.

Changes

Gallery asset publication

Layer / File(s) Summary
Public-data audit contract
PUBLIC_DATA_POLICY.md, scripts/check-public-data.py, tests/test_public_data_policy.py
The policy now covers public gallery media; the scanner allowlists the image by exact path and digest; tests validate exact path-and-content matching.
Package gallery publication
docs/assets/pi-steel-gallery.webp, package.json, tests/test_package_contents.py
Adds the WebP asset, updates package description and keywords, exposes the image through Pi metadata, packages it, and requires it in package-content tests.

Estimated code review effort: 2 (Simple) | ~10 minutes

Possibly related PRs

  • StructuPath/pi-steel#2: Updates the same public-data binary auditing and package-content validation mechanisms.
🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly matches the main change: adding a Pi gallery preview asset and related package metadata updates.
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.
✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch docs/pi-gallery-card
⚔️ Resolve merge conflicts
  • Resolve merge conflict in branch docs/pi-gallery-card

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

@Steel-tech
Steel-tech merged commit 093370d into main Jul 28, 2026
3 of 4 checks passed
@Steel-tech
Steel-tech deleted the docs/pi-gallery-card branch July 28, 2026 22:30

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Actionable comments posted: 2

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@package.json`:
- Around line 50-51: Update the package metadata image URL in package.json to
reference an immutable release commit SHA or package-hosted asset instead of the
mutable main branch, preserving the reviewed image bytes for published releases.

In `@PUBLIC_DATA_POLICY.md`:
- Around line 15-17: Update the public gallery media policy to require
documented provenance and redistribution rights before allowlisting, limiting
the exception to original, owned, or properly licensed media. Retain the
existing review and SHA-256 digest requirements for approved media.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 4de0bde3-275d-47f9-985f-0af0d19600ab

📥 Commits

Reviewing files that changed from the base of the PR and between c9065e3 and 4af0bb3.

📒 Files selected for processing (6)
  • PUBLIC_DATA_POLICY.md
  • docs/assets/pi-steel-gallery.webp
  • package.json
  • scripts/check-public-data.py
  • tests/test_package_contents.py
  • tests/test_public_data_policy.py

Comment thread package.json
Comment on lines +50 to +51
],
"image": "https://raw.githubusercontent.com/StructuPath/pi-steel/main/docs/assets/pi-steel-gallery.webp"

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🗄️ Data Integrity & Integration | 🟠 Major | ⚡ Quick win

Use an immutable image URL for released metadata.

The scanner pins the checked-in bytes, but this URL points at mutable main; an already-published package or catalog entry can therefore render a later asset. Point to the release commit SHA or another immutable/package-hosted URL so the reviewed image remains stable after release.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@package.json` around lines 50 - 51, Update the package metadata image URL in
package.json to reference an immutable release commit SHA or package-hosted
asset instead of the mutable main branch, preserving the reviewed image bytes
for published releases.

Comment thread PUBLIC_DATA_POLICY.md
Comment on lines +15 to +17
- Public gallery media reviewed before publication and pinned in the scanner by
exact repository path and SHA-256 digest. Replacing it requires a new review and
digest.

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🔒 Security & Privacy | 🟠 Major | ⚡ Quick win

Require provenance and redistribution rights for gallery media.

A SHA-256 pin authenticates the bytes but does not prove that the repository owns or may redistribute them. Limit this exception to original/owned or properly licensed media, with provenance and redistribution rights documented before allowlisting.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@PUBLIC_DATA_POLICY.md` around lines 15 - 17, Update the public gallery media
policy to require documented provenance and redistribution rights before
allowlisting, limiting the exception to original, owned, or properly licensed
media. Retain the existing review and SHA-256 digest requirements for approved
media.

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