diff --git a/Cargo.lock b/Cargo.lock index 1205bbe..766bad5 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -677,7 +677,7 @@ dependencies = [ [[package]] name = "socketry-project" -version = "0.3.11" +version = "0.3.12" dependencies = [ "bake", "bake-agent-context", diff --git a/Cargo.toml b/Cargo.toml index 94593d2..82c000e 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "socketry-project" -version = "0.3.11" +version = "0.3.12" edition = "2024" license = "MIT" repository = "https://github.com/socketry/socketry-project-rust" diff --git a/bake/Cargo.toml b/bake/Cargo.toml index c2ee72b..2cc4269 100644 --- a/bake/Cargo.toml +++ b/bake/Cargo.toml @@ -7,4 +7,4 @@ publish = false [dependencies] bake = "0.19.0" bake-markdown = "0.3.0" -socketry-project = { path = "..", version = "0.3.11" } +socketry-project = { path = "..", version = "0.3.12" } diff --git a/context/conventions.md b/context/conventions.md index 17e6388..ec4de89 100644 --- a/context/conventions.md +++ b/context/conventions.md @@ -37,6 +37,7 @@ Before introducing a new semantic, layout, or naming pattern, check how related - Start `license.md` with `# MIT License`. - Keep `readme.md` human-focused: explain the project, its motivation when useful, how to use it, recent releases, and how to contribute. Follow the `Readme Structure` guide supplied by `bake-readme`. - Put reusable, package-specific agent guidance in `context/`; keep repository-only instructions and project-owned skills in `.agents/`. Treat the root `agents.md` as repository-owned guidance. +- Refer to skills by their installed names and context guides by their package and title when crossing between skills and context. The installer places them in separate directories, so relative links between them do not survive installation. Keep Markdown links within context files installed together or to stable external documentation. - Avoid duplicating Rust-wide guidance from `bake-agent-context`; add project context for the architecture and decisions that are specific to the crate. - Follow the Agent Context section in `readme.md` to install and discover shared context and skills. The `bake-agent-context` guide explains the installer's behavior. @@ -53,5 +54,5 @@ Before introducing a new semantic, layout, or naming pattern, check how related - Keep development tasks in a private `bake/` package. Depend on `socketry-project` there so task tooling does not become a runtime dependency of the published library. - Use the `cargo:after_version_bump` hook registered by `socketry-project` to update `license.md`, `releases.md`, and the generated sections of `readme.md`, then normalize those files and all Markdown under the public `context/` directory. -- Follow the [socketry-project-pull-requests skill](https://github.com/socketry/socketry-project-rust/blob/main/context/pull-requests.md), including independent adversarial review and local iteration until all non-trivial issues are resolved. +- Follow the `socketry-project-pull-requests` skill, including independent adversarial review and local iteration until all non-trivial issues are resolved. - Follow the `socketry-project-releasing` skill to prepare and publish a release. It links to Bake Cargo task documentation for workflow setup, trusted publishing, reviewers, and tag creation. diff --git a/context/layout.md b/context/layout.md index 57e2181..5303ab3 100644 --- a/context/layout.md +++ b/context/layout.md @@ -20,7 +20,7 @@ project/ ## Cargo package and source modules -The root `Cargo.toml` defines the package and, when needed, the workspace. Put library code under `src/`, integration tests under `tests/`, and runnable examples under `examples/`. See [Conventions](conventions.md) for package and workspace boundaries, and the [setup skill](setup.md) for the private Bake package. +The root `Cargo.toml` defines the package and, when needed, the workspace. Put library code under `src/`, integration tests under `tests/`, and runnable examples under `examples/`. See [Conventions](conventions.md) for package and workspace boundaries, and the `socketry-project-setup` skill for the private Bake package. ## Source modules and files @@ -61,4 +61,4 @@ Declare child modules from `main.rs`; Cargo discovers the target root and the de Put runnable examples under `examples/`. Store project tool configuration in a clearly named configuration file or the relevant Cargo metadata; avoid adding a configuration directory without a concrete tool that uses it. -Follow the `socketry-project-testing` skill for testing expectations and consult the installed `bake-test-rust` context for task and workflow details. Use the [setup skill](setup.md) for workflow setup. +Follow the `socketry-project-testing` skill for testing expectations and consult the installed `bake-test-rust` context for task and workflow details. Use the `socketry-project-setup` skill for workflow setup. diff --git a/context/releasing.md b/context/releasing.md index 535c763..8978255 100644 --- a/context/releasing.md +++ b/context/releasing.md @@ -9,7 +9,7 @@ Use this skill to prepare releases for Socketry Rust projects. Read the root `ag ## Prepare a release -Keep one Cargo workspace when its publishable packages share a version, release notes, and tag. Use separate repositories for packages that need independent release timing. See [Conventions](conventions.md#repository-and-package-boundaries). +Keep one Cargo workspace when its publishable packages share a version, release notes, and tag. Use separate repositories for packages that need independent release timing. See the Repository and package boundaries section of the Socketry Rust Conventions guide supplied by `socketry-project`. Use the tasks linked by the project's private `bake/` package to bump the workspace version: diff --git a/context/setup.md b/context/setup.md index 7e17031..02d876a 100644 --- a/context/setup.md +++ b/context/setup.md @@ -32,7 +32,7 @@ cargo add --manifest-path bake/Cargo.toml socketry-project In `bake/Cargo.toml`, prefix the version selected by Cargo with `>=` to make it an open-ended minimum. Keep that actual minimum in the manifest and the resolved version in `Cargo.lock`; the setup documentation does not need a copy of either version. -The open-ended minimum requirement allows newer `socketry-project` releases. The workspace's root `Cargo.lock` records the selected version for the private `bake/` package, so update that lockfile deliberately when adopting a newer release. Follow the [dependency-version documentation guidelines](https://github.com/socketry/socketry-project-rust/blob/main/context/conventions.md#dependency-versions-in-documentation) when writing setup examples or compatibility requirements. +The open-ended minimum requirement allows newer `socketry-project` releases. The workspace's root `Cargo.lock` records the selected version for the private `bake/` package, so update that lockfile deliberately when adopting a newer release. Follow the Dependency versions in documentation section of the Socketry Rust Conventions guide supplied by `socketry-project` when writing setup examples or compatibility requirements. Run regeneration again to link its task registrations: @@ -51,7 +51,7 @@ The `socketry-project` dependency makes the shared tasks available to the privat ## Agent context -Follow the [Agent Context section in `readme.md`](../readme.md#agent-context) to install and discover shared context and skills. Follow [Conventions](conventions.md#source-and-documentation) for where to keep package guidance and project-only instructions. The `bake-agent-context` guide documents installer behavior and options. +Follow the Agent Context section in the project's root `readme.md` to install and discover shared context and skills. Follow the Source and documentation section of the Socketry Rust Conventions guide supplied by `socketry-project` for where to keep package guidance and project-only instructions. The `bake-agent-context` guide documents installer behavior and options. ## Set up GitHub diff --git a/readme.md b/readme.md index a094e79..c36f131 100644 --- a/readme.md +++ b/readme.md @@ -39,6 +39,10 @@ Prepare a release with `cargo bake cargo:version:patch` (or `minor`, `major`, or See [releases.md](releases.md) for the full release history. +### v0.3.12 + +- Use named references between skills and agent context so guidance remains usable after installation. + ### v0.3.11 - Document how to maintain dependency versions in installation examples and compatibility guidance, using manifests and lockfiles as authoritative sources. @@ -49,10 +53,6 @@ See [releases.md](releases.md) for the full release history. - Add independent adversarial review guidance, with local iteration until all non-trivial issues are resolved before opening a pull request. - Clarify that the private Bake package shares the workspace's root lockfile. -### v0.3.9 - -- Follow Rust acronym casing in type and trait names, using `HtmlRenderer`, `HttpClient`, `UrlParser`, and `FileIo`. - ## See Also diff --git a/releases.md b/releases.md index 038f46f..840ebd2 100644 --- a/releases.md +++ b/releases.md @@ -1,5 +1,9 @@ # Releases +## v0.3.12 + +- Use named references between skills and agent context so guidance remains usable after installation. + ## v0.3.11 - Document how to maintain dependency versions in installation examples and compatibility guidance, using manifests and lockfiles as authoritative sources.