8000 oss/integration repo hygiene by norrietaylor · Pull Request #840 · gominimal/minimal · GitHub
[go: up one dir, main page]

Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
53 commits
Select commit Hold shift + click to select a range
7002a52
docs(CLA,README,CONTRIBUTING,LICENSE): add/update files
msample Jul 16, 2026
28a2ce2
docs(CONTRIBUTING): fix typo
msample Jul 17, 2026
fef25de
docs(README): fix typos
msample Jul 17, 2026
28759f4
docs(README): fix typos
msample Jul 17, 2026
8198d32
docs(README): example updates, supported platforms
msample Jul 17, 2026
0fc0abe
docs(README): rework, fix typos etc
msample Jul 18, 2026
eff81d9
build: declare MIT OR Apache-2.0 via workspace license inheritance
norrietaylor Jul 17, 2026
504f492
docs: add dual-license texts, NOTICE, and internal licensing stance
norrietaylor Jul 17, 2026
da8f74b
build(deps): annotate deny.toml exceptions and drop vestigial source …
norrietaylor Jul 17, 2026
01b4a1e
docs: add security policy and code of conduct
norrietaylor Jul 17, 2026
21febaa
chore: replace stock issue templates with tuned forms and add PR temp…
norrietaylor Jul 17, 2026
229ac24
docs: refer to the installer as curl | sh in security policy
norrietaylor Jul 17, 2026
ca941c2
fix(mip): self-identify as mip in CLI name and help text
norrietaylor Jul 17, 2026
5cbc6b9
fix(minimald): correct completions help example
norrietaylor Jul 17, 2026
f4e97eb
docs(reference): rewrite CLI reference around the four binaries
norrietaylor Jul 17, 2026
a67f3be
fix(mip,minimald): correct stale flag example and daemon help text
norrietaylor Jul 17, 2026
088aa87
docs(reference): mark ignored -n flag in minimald flags table
norrietaylor Jul 17, 2026
abb76ac
docs(internal): draft docs-site CI lane and sync repoint proposals
norrietaylor Jul 17, 2026
8b89a44
docs(internal): harden CI proposals per review
norrietaylor Jul 17, 2026
f2b7eb1
feat(docs): scaffold vitepress site with brand theme
norrietaylor Jul 17, 2026
2ad53ee
docs(reference): normalize links for dead-link enforcement
norrietaylor Jul 17, 2026
c94b782
style(docs): keep non-tip admonitions monochrome, drop dead brand var
norrietaylor Jul 17, 2026
180b8b1
docs: rewrite architecture for the two-plane system
norrietaylor Jul 17, 2026
5e2c4f3
docs(specs): add index and correct shipped statuses
norrietaylor Jul 17, 2026
7253580
docs: index spikes and ADRs, move session diagram internal
norrietaylor Jul 17, 2026
9b54153
docs: scrub internal references from public-bound corpus
norrietaylor Jul 17, 2026
4ac7111
docs(internal): document the release pipeline
norrietaylor Jul 17, 2026
73e4897
docs: restore hardware guidance and note prebuilt minvmd artifact
norrietaylor Jul 17, 2026
30a3c5b
docs(internal): index release pipeline and proposals, drop stale exclude
norrietaylor Jul 17, 2026
ba6cca7 8000
docs: route architecture crate-doc links through site wrapper pages
norrietaylor Jul 17, 2026
49567e9
docs: add canonical AGENTS.md for agents and contributors
norrietaylor Jul 17, 2026
9bd5e20
docs: reduce CLAUDE.md to AGENTS.md include plus claude notes
norrietaylor Jul 17, 2026
0ed2fa3
docs: align build-dep list with README and trim redundant note
norrietaylor Jul 17, 2026
64b6abd
fix(minimal,mip): fill and correct user-visible help text
norrietaylor Jul 17, 2026
e6f2fd2
docs(reference): correct pages against current binaries and shipped f…
norrietaylor Jul 17, 2026
1fab7a2
docs(reference): add export manifest
norrietaylor Jul 17, 2026
ddbff5f
docs(reference): fix stale command names and helper flag semantics
norrietaylor Jul 17, 2026
6e6bfc9
docs: reconcile agent surface with reworked justfile
norrietaylor Jul 18, 2026
b228023
docs(reference): document min bug and refresh generated help
norrietaylor Jul 18, 2026
5ab5595
docs(README): add theme-aware logo mark and badge row
norrietaylor Jul 18, 2026
89caecf
docs(site): theme mermaid diagrams to the site palette
norrietaylor Jul 18, 2026
9a6ce81
docs(reference): rename harness terminology to stacks
norrietaylor Jul 18, 2026
0eaa2ed
docs(reference): add loadouts reference page
norrietaylor Jul 18, 2026
c920777
docs(minvmd): drop the minimal-shim materialize flow from macOS bring-up
norrietaylor Jul 18, 2026
87a3387
docs(reference): fold live-verified loadout behavior into the page
norrietaylor Jul 18, 2026
fbb0faa
chore(license): consolidate to a single Apache-2.0 stance
norrietaylor Jul 18, 2026
cd7d82d
docs(README,CONTRIBUTING): fix quickstart commands and contributor gu…
norrietaylor Jul 18, 2026
d7ec656
ci: land the docs-site lane and apply the frozen-workflow proposals
norrietaylor Jul 18, 2026
adf612b
docs(README): link the staging docs site
norrietaylor Jul 18, 2026
79659fa
Merge branch 'mike/cla-readme-conduct' into oss/integration
norrietaylor Jul 18, 2026
01acf40
Merge branch 'mike/cla-readme-conduct' into oss/integration
norrietaylor Jul 18, 2026
59ab988
docs: address CodeRabbit review on PR #840
norrietaylor Jul 18, 2026
7e9c216
ci(docs-site): move lane logic into scripts/docs-check.sh (thin sched…
norrietaylor Jul 18, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
68 changes: 68 additions & 0 deletions .github/ISSUE_TEMPLATE/bug.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
name: Bug report
description: Something in minimal is broken or behaving unexpectedly
labels: ["bug"]
body:
- type: textarea
id: what-happened
attributes:
label: What happened
description: A clear description of the bug, including the full error output if there was any.
validations:
required: true
- type: textarea
id: expected
attributes:
label: Expected behavior
description: What you expected to happen instead.
validations:
required: true
- type: textarea
id: reproduction
attributes:
label: Reproduction steps
description: Minimal steps to reproduce the behavior — ideally the exact commands and a `minimal.toml` snippet.
placeholder: |
1. ...
2. ...
3. ...
validations:
required: true
- type: textarea
id: version
attributes:
label: Version
description: Output of the version commands for the binaries involved.
placeholder: min version / mip --version
render: text
validations:
required: true
- type: dropdown
id: os-arch
attributes:
label: OS/arch
options:
- Linux amd64
- Linux arm64
- macOS arm64 (Apple Silicon)
- other
validations:
required: true
- type: dropdown
id: install-channel
attributes:
label: Install channel
options:
- stable
- unstable
- nightly
- built from source
validations:
required: true
- type: textarea
id: logs
attributes:
label: Relevant logs
description: Any relevant log output. Long logs are fine — this field is rendered as code automatically.
render: shell
validations:
required: false
38 changes: 0 additions & 38 deletions .github/ISSUE_TEMPLATE/bug_report.md

This file was deleted.

8 changes: 8 additions & 0 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
blank_issues_enabled: false
contact_links:
- name: Questions and discussion
url: https://github.com/gominimal/minimal/discussions
about: Ask questions and discuss ideas before filing an issue.
- name: Documentation
url: https://minimal-docs-staging.pages.dev/
about: Reference documentation for minimal.
25 changes: 25 additions & 0 deletions .github/ISSUE_TEMPLATE/feature.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
name: Feature request
description: Propose a new feature or improvement
labels: ["enhancement"]
body:
- type: textarea
id: problem
attributes:
label: Problem statement
description: What problem are you trying to solve? What does the current behavior make hard or impossible?
validations:
required: true
- type: textarea
id: solution
attributes:
label: Proposed solution
description: What you would like to happen. Sketch the CLI/config surface if you have one in mind.
validations:
required: true
- type: textarea
id: alternatives
attributes:
label: Alternatives considered
description: Other approaches or workarounds you have considered, and why they fall short.
validations:
required: false
20 changes: 0 additions & 20 deletions .github/ISSUE_TEMPLATE/feature_request.md

This file was deleted.

17 changes: 17 additions & 0 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
<!-- PR title: use a Conventional Commit subject — `type(scope): summary`,
imperative, lower-case, no trailing period. The PR title becomes the
squash commit subject. See docs/commit-conventions.md. -->

## Summary

<!-- What changes, and why. Link related issues (`Refs: #123` / `Closes: #123`). -->

## Testing

<!-- What you ran (`cargo test`, `cargo clippy`, harness/e2e scripts, manual
steps) — paste the relevant output as evidence. -->

## Checklist

- [ ] Docs updated if behavior changed
- [ ] `BREAKING CHANGE:` footer present if this is a breaking change
6 changes: 5 additions & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,11 @@ jobs:
- "!*.md"
- "!**/*.md"
- "!docs/**"
- "!LICENSE"
- "!LICENSE*"
- "!NOTICE"
- "!package.json"
- "!package-lock.json"
- "!.nvmrc"

fmt:
needs: [changes]
Expand Down
178 changes: 178 additions & 0 deletions .github/workflows/docs-site.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,178 @@
name: docs-site

# Docs-site lane. A THIN SCHEDULER: the build + link-check LOGIC lives in
# scripts/docs-check.sh (and the `just docs-check` recipe), per the CI contract
# in CONTRIBUTING.md / docs/ci-strategy.md — this workflow only gates events,
# installs the toolchain (Node, lychee), invokes the script, and uploads the
# rendered site. The script builds the VitePress site (`npm run docs:build`),
# fails on site-absolute links under docs/reference/ (those pages are mirrored
# into gominimal/webapp, where `](/...` resolves against a different base, and
# they are equally broken when read on GitHub), and offline-checks internal
# links with lychee. This workflow uploads the rendered site
# (docs/.vitepress/dist) as an artifact; a weekly scheduled job runs the
# script's ONLINE lychee sweep (advisory only); a Pages deploy job is fully
# drafted but disabled until launch.
#
# NOT a required check yet. Making `docs-site-success` required is a
# branch-protection change (main ruleset edit) AND touches release.yml's
# verify-ci expectations — its `required=` list of lane aggregators would
# need `docs-site-success` appended. Both are owner decisions.
#
# ALWAYS-TRIGGERED, path-scoped INSIDE the workflow (the `changes` job), so
# the `if: always()` aggregator can join the required checks later without a
# deadlock. Do NOT add trigger-level `paths:` — a path-skipped required
# context stays "Expected" forever and wedges the PR (see ci.yml).
on:
pull_request:
branches: ["main"]
push:
branches: ["main"]
workflow_dispatch:
schedule:
# Weekly ONLINE link sweep only — every other job no-ops on schedule.
# 05:00 UTC Monday, offset from nightly.yml (10:00 daily) and
# nightly-tests.yml (06:00 daily).
- cron: "0 5 * * 1"

# Cancel superseded runs on a branch; never cancel a run on main.
concurrency:
group: docs-site-${{ github.ref }}
cancel-in-progress: ${{ github.ref != 'refs/heads/main' }}

permissions:
contents: read
# dorny/paths-filter reads the PR file list on pull_request events.
pull-requests: read

jobs:
changes:
runs-on: ubuntu-latest
timeout-minutes: 5
outputs:
docs: ${{ steps.filter.outputs.docs }}
steps:
- uses: actions/checkout@v7
with:
persist-credentials: false
- name: Detect docs-site changes
id: filter
# v3.0.2, SHA-pinned. Runs ONLY on pull_request, where dorny reads
# the PR file list via the API (a push would need a local diff our
# shallow, credential-free checkout cannot provide) — and pushes to
# main / dispatches run everything regardless. POSITIVE filter,
# unlike ci.yml's everything-but-docs negation: this lane cares only
# about the site sources and the Node toolchain pins.
if: github.event_name == 'pull_request'
uses: dorny/paths-filter@7b450fff21473bca461d4b92ce414b9d0420d706
with:
filters: |
docs:
- "docs/**"
- "package.json"
- "package-lock.json"
- ".nvmrc"
# Lane idiom: a workflow-only PR must still exercise its lane.
- ".github/workflows/docs-site.yml"

docs-build:
needs: [changes]
# Never on schedule (that trigger exists only for link-sweep); otherwise
# the standard lane gate: run unless a pull_request touched no docs path.
if: github.event_name != 'schedule' && (github.event_name != 'pull_request' || needs.changes.outputs.docs == 'true')
runs-on: ubuntu-latest
timeout-minutes: 15
steps:
- uses: actions/checkout@v7
with:
persist-credentials: false
- uses: actions/setup-node@v5
with:
node-ver 106FC sion-file: .nvmrc
cache: npm
# TODO: enable once the gen-cli-docs xtask exists — it regenerates the
# docs/reference/cli-*.md pages from the clap definitions and fails on
# any diff, so the committed pages can never drift from --help output.
# Needs a Rust toolchain when enabled (add
# `- uses: ./.github/actions/setup-rust` above it).
# - name: CLI reference pages are current
# run: cargo xtask gen-cli-docs --check
- name: Build site
# npm ci + `npm run docs:build`; the logic is repo-owned in the script.
run: ./scripts/docs-check.sh build
# Tool install is a scheduler concern (kept in the workflow); the offline
# link-check LOGIC lives in the script the next step calls.
- name: Install lychee
uses: taiki-e/install-action@v2
with:
tool: lychee
- name: Check links (site-absolute guard + offline lychee)
run: ./scripts/docs-check.sh links
- name: Upload rendered site
uses: actions/upload-artifact@v7
with:
name: docs-site-dist
path: docs/.vitepress/dist

link-sweep:
# Weekly ONLINE sweep of external URLs. Advisory: dead third-party links
# and rate limits must not redden the repo, hence continue-on-error at
# the job level and no edge into the aggregator; failures surface in the
# Actions log for a human to triage.
if: github.event_name == 'schedule' || github.event_name == 'workflow_dispatch'
continue-on-error: true
runs-on: ubuntu-latest
timeout-minutes: 15
steps:
- uses: actions/checkout@v7
with:
persist-credentials: false
- name: Install lychee
uses: taiki-e/install-action@v2
with:
tool: lychee
- name: Online link check
run: ./scripts/docs-check.sh online-links

docs-deploy:
needs: [docs-build]
# Fully drafted but DISABLED. Enabling is a launch decision: it needs the
# repository's Pages source set to "GitHub Actions" and the public site
# URL settled. To enable, replace the `if: false` line below with:
# if: github.event_name == 'push' && github.ref == 'refs/heads/main'
if: false # enable at launch
runs-on: ubuntu-latest
timeout-minutes: 10
permissions:
pages: write
id-token: write
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
steps:
- uses: actions/download-artifact@v8
with:
name: docs-site-dist
path: dist
- name: Upload Pages artifact
uses: actions/upload-pages-artifact@v3
with:
path: dist
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v4

# Single stable status for (eventual) branch protection: green when every
# gating job succeeded OR was skipped (docs-untouched PRs, the disabled
# deploy); red only on failure/cancellation. Mirrors ci.yml's ci-success
# idiom. link-sweep is deliberately NOT in `needs`: it is advisory and
# runs on a schedule, so it must never colour this check.
docs-site-success:
if: always()
needs: [changes, docs-build, docs-deploy]
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- name: Verify all gating jobs succeeded or were skipped
if: contains(needs.*.result, 'failure') || contains(needs.*.result, 'cancelled')
run: exit 1
- run: echo "All docs-site gates passed"
Loading
0