-
Notifications
You must be signed in to change notification settings - Fork 0
feat(gstack2): consolidated runtime — execution-result contract, profiles, capability readiness, hardening #10
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
9b5ae40
a1b2b05
2e1e52e
09492d3
37144e8
cb1792f
d240b0f
52a6101
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,21 @@ | ||
| name: Dependency Review | ||
|
|
||
| on: | ||
| pull_request: | ||
| branches: [main] | ||
|
|
||
| permissions: | ||
| contents: read | ||
|
|
||
| concurrency: | ||
| group: dependency-review-${{ github.event.pull_request.number }} | ||
| cancel-in-progress: true | ||
|
|
||
| jobs: | ||
| dependency-review: | ||
| runs-on: ubuntu-24.04 | ||
| steps: | ||
| - name: Review dependency changes | ||
| uses: actions/dependency-review-action@2031cfc080254a8a887f58cffee85186f0e49e48 # v4.9.0 | ||
| with: | ||
| fail-on-severity: high |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,26 @@ | ||
| name: OSV Scanner | ||
|
|
||
| on: | ||
| schedule: | ||
| - cron: '23 7 * * 1' | ||
| workflow_dispatch: | ||
|
|
||
| permissions: | ||
| contents: read | ||
|
|
||
| concurrency: | ||
| group: osv-scanner | ||
| cancel-in-progress: true | ||
|
|
||
| jobs: | ||
| scan: | ||
| permissions: | ||
| actions: read | ||
| contents: read | ||
| security-events: write | ||
| uses: google/osv-scanner-action/.github/workflows/osv-scanner-reusable.yml@3adb4b14a2b0623876d18d863a498b785fb3752d # v2.3.8 | ||
| with: | ||
| scan-args: |- | ||
| --include-git-root | ||
| --recursive | ||
| ./ |
| Original file line number | Diff line number | Diff line change | ||||||
|---|---|---|---|---|---|---|---|---|
| @@ -0,0 +1,46 @@ | ||||||||
| name: OpenSSF Scorecard | ||||||||
|
|
||||||||
| on: | ||||||||
| branch_protection_rule: | ||||||||
| schedule: | ||||||||
| - cron: '41 7 * * 1' | ||||||||
| push: | ||||||||
| branches: [main] | ||||||||
|
|
||||||||
| permissions: | ||||||||
| contents: read | ||||||||
|
|
||||||||
| concurrency: | ||||||||
| group: scorecard-${{ github.ref }} | ||||||||
| cancel-in-progress: true | ||||||||
|
|
||||||||
| jobs: | ||||||||
| analysis: | ||||||||
| runs-on: ubuntu-24.04 | ||||||||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. P3: A stalled checkout, Scorecard scan, or upload can hold this scheduled runner until the platform limit because Prompt for AI agents
Suggested change
|
||||||||
| permissions: | ||||||||
| contents: read | ||||||||
| security-events: write | ||||||||
| steps: | ||||||||
| - name: Checkout repository | ||||||||
| uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4 | ||||||||
| with: | ||||||||
| persist-credentials: false | ||||||||
|
|
||||||||
| - name: Run Scorecard analysis | ||||||||
| uses: ossf/scorecard-action@4eaacf0543bb3f2c246792bd56e8cdeffafb205a # v2.4.3 | ||||||||
| with: | ||||||||
| results_file: results.sarif | ||||||||
| results_format: sarif | ||||||||
| publish_results: false | ||||||||
|
|
||||||||
| - name: Upload Scorecard results to code scanning | ||||||||
| uses: github/codeql-action/upload-sarif@85b88275909735f5bc23196090e03d2eb148b3de # v3.32.4 | ||||||||
| with: | ||||||||
| sarif_file: results.sarif | ||||||||
|
|
||||||||
| - name: Upload Scorecard results artifact | ||||||||
| uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4 | ||||||||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. P2: A code-scanning upload failure also discards the downloadable Prompt for AI agents |
||||||||
| with: | ||||||||
| name: scorecard-results | ||||||||
| path: results.sarif | ||||||||
| retention-days: 5 | ||||||||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,15 @@ | ||
| # OSV-Scanner configuration. | ||
| # Direct/transitive dependency versions are pinned to their fixed releases via | ||
| # the `overrides` block in package.json; this file only records advisories we | ||
| # have assessed as not-reachable or not-fixable without disproportionate risk. | ||
|
|
||
| [[IgnoredVulns]] | ||
| id = "GHSA-frvp-7c67-39w9" | ||
| # @hono/node-server 1.19.x. Reachable only through @modelcontextprotocol/sdk, | ||
| # which is an unused transitive dependency (no source file imports it) and never | ||
| # starts a Hono HTTP server, so the advisory's request path is not exercised. | ||
| # The only fix is @hono/node-server 2.0.5, a major bump the MCP SDK pins against | ||
| # (^1.19.9); forcing it via override risks breaking the SDK at runtime for a | ||
| # vulnerability we do not expose. Re-evaluate if the MCP SDK becomes a direct, | ||
| # server-hosting dependency. | ||
| reason = "Unreachable transitive (unused @modelcontextprotocol/sdk); fix requires a risky major override on a pinned peer dep." | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. P3: The permanent security exception records the dependency relationship incorrectly: Prompt for AI agents |
||
| Original file line number | Diff line number | Diff line change | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|
@@ -611,8 +611,12 @@ Data is stored in [Supabase](https://supabase.com) (open source Firebase alterna | |||||||||||
|
|
||||||||||||
| ## Troubleshooting | ||||||||||||
|
|
||||||||||||
| For GStack 2, first run `gstack doctor` (or `gstack doctor --json`) when the | ||||||||||||
| optional runtime is installed. For skill discovery problems, use the standard | ||||||||||||
| For GStack 2, run `gstack doctor --capability browser|design|diagram|pdf|ios` | ||||||||||||
| (optionally `--json`) for a focused, non-mutating readiness result. It reports | ||||||||||||
|
Comment on lines
+614
to
+615
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. P2: This troubleshooting command fails when pasted: the shell interprets each Prompt for AI agents
Suggested change
|
||||||||||||
| pure-judgment availability, platform support, preview consent, install consent, | ||||||||||||
| and runtime readiness separately; see | ||||||||||||
| [`docs/gstack-2/CAPABILITY-READINESS.md`](docs/gstack-2/CAPABILITY-READINESS.md). | ||||||||||||
| For skill discovery problems, use the standard | ||||||||||||
| installer's list and reinstall commands; do not manually copy host paths. The | ||||||||||||
| entries below apply to legacy 1.x installations. | ||||||||||||
|
|
||||||||||||
|
|
||||||||||||
Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
P2: Queued image builds can still be silently canceled when three pushes/manual rebuilds overlap:
cancel-in-progress: falseprotects the running build, but GitHub replaces the single pending run by default. Addingqueue: maxpreserves the intended serialized builds and their per-SHA image tags.Prompt for AI agents