feat: add data table and release checks
This commit is contained in:
+51
-8
@@ -8,13 +8,14 @@ The current goal is modest:
|
||||
- version `@ai-ui/ui` and `@ai-ui/tokens` deliberately
|
||||
- keep release notes attached to the changes that caused them
|
||||
- avoid inventing ad hoc version bumps when the component system evolves
|
||||
- make release intent enforceable in CI before package work merges
|
||||
|
||||
## Current assumptions
|
||||
|
||||
- The repository root is private.
|
||||
- Workspace packages currently use explicit package versions even when they are not yet published.
|
||||
- `@ai-ui/docs` is a consumer app, not a releasable package, so it is ignored by Changesets.
|
||||
- Publishing mechanics, registry credentials, and CI release automation are still to be added.
|
||||
- Publishing mechanics and registry credentials are still to be added.
|
||||
|
||||
Because of that, this baseline is intentionally conservative.
|
||||
|
||||
@@ -44,6 +45,9 @@ You can usually skip a changeset for:
|
||||
- test-only edits
|
||||
- internal refactors with no consumer-visible behavior change
|
||||
|
||||
If CI would otherwise require a changeset for one of those exceptions, apply the
|
||||
`no-changeset-needed` pull request label and explain the reason in the PR description.
|
||||
|
||||
## Versioning guidance
|
||||
|
||||
Use semver pragmatically:
|
||||
@@ -100,7 +104,7 @@ keep the dependency graph coherent without requiring manual package edits.
|
||||
|
||||
### 4. Version the packages
|
||||
|
||||
When it is time to cut a release, run the Changesets version step:
|
||||
When it is time to cut a release manually, run the Changesets version step:
|
||||
|
||||
```bash
|
||||
pnpm changeset version
|
||||
@@ -114,6 +118,10 @@ That step is expected to:
|
||||
|
||||
Review the resulting package diffs carefully before merging.
|
||||
|
||||
On `main`, the repository also runs a `Release Version PR` workflow that opens or updates a
|
||||
version PR with the same command. That workflow is intentionally limited to version-file updates;
|
||||
it does not publish packages.
|
||||
|
||||
### 5. Publish or tag
|
||||
|
||||
Publishing is not fully wired in this repo yet, so treat this step as pending infrastructure.
|
||||
@@ -126,6 +134,45 @@ pnpm changeset publish
|
||||
|
||||
But until registry, auth, and CI behavior are explicit, do not assume publish is automated.
|
||||
|
||||
## CI workflows
|
||||
|
||||
### Pull request check
|
||||
|
||||
The `Changeset Status` workflow runs on pull requests and enforces a simple rule:
|
||||
|
||||
- if a PR changes `@ai-ui/ui` or `@ai-ui/tokens`, it should usually include a new
|
||||
`.changeset/*.md` file
|
||||
- if the work is intentionally non-releasable, maintainers can apply the
|
||||
`no-changeset-needed` label
|
||||
|
||||
When a changeset is present, the workflow also runs:
|
||||
|
||||
```bash
|
||||
pnpm changeset:status --since origin/main
|
||||
```
|
||||
|
||||
This validates that pending changesets resolve cleanly against the base branch.
|
||||
|
||||
### Version PR workflow
|
||||
|
||||
The `Release Version PR` workflow runs on pushes to `main` and on manual dispatch. It:
|
||||
|
||||
- installs dependencies
|
||||
- runs `pnpm changeset version`
|
||||
- opens or updates a version PR using `changesets/action`
|
||||
|
||||
This is a versioning skeleton, not a publish pipeline. It is safe to enable before registry
|
||||
credentials or publish commands exist.
|
||||
|
||||
## Future publish prerequisites
|
||||
|
||||
Before turning the version workflow into a publish workflow, the repo still needs:
|
||||
|
||||
- a root publish script, for example `pnpm changeset publish` or a guarded wrapper around it
|
||||
- registry credentials such as `NPM_TOKEN`
|
||||
- a decision on which workspace packages should actually be published versus versioned internally
|
||||
- any extra validation that must run before publish is allowed
|
||||
|
||||
## Notes for maintainers
|
||||
|
||||
- Keep `packages/ui/src/index.ts` and package exports aligned with any release-worthy surface.
|
||||
@@ -136,9 +183,5 @@ But until registry, auth, and CI behavior are explicit, do not assume publish is
|
||||
|
||||
## Main-thread follow-up still needed
|
||||
|
||||
This baseline adds config and process docs only. To make it operational, the repo still needs:
|
||||
|
||||
- `@changesets/cli` added to root `devDependencies`
|
||||
- root scripts such as `changeset`, `version-packages`, or `release`
|
||||
- a decision on whether private packages should be published, mirrored internally, or versioned only
|
||||
- CI wiring for version PRs and/or publish jobs
|
||||
This baseline now covers changeset intent checks in PRs and version PR creation on `main`.
|
||||
What remains is the publish decision and any registry-specific automation.
|
||||
|
||||
Reference in New Issue
Block a user