tools capa

tools-update-process

Sync canonical versioned <!-- canonical:name vN --> managed blocks from the source-of-truth process document into every real repo's docs/PROCESS.md (only). Replace-never-append; strict markers; --check exits nonzero on drift; byte-verified. v0.2 BREAKING: no longer writes .claude/CLAUDE.md.

Sync canonical versioned managed blocks from the source-of-truth process document into every real repo's docs/PROCESS.md (only). Replace-never-append; strict markers; --check exits nonzero on drift; byte-verified. v0.2 BREAKING: no longer writes .claude/CLAUDE.md.

Tiertools
Roleunclassified (baselined)
Pathcrates/tools/update-process
Edition2021
Targetstools-update-process
Public items1 across 0 modules
Tests26

What it is for

tools-update-process — sync canonical versioned managed blocks from the source-of-truth process document into every ecosystem repo's docs/PROCESS.md.

A managed block is delimited by a versioned sentinel pair: <!-- canonical:<name> v<N> --><!-- /canonical:<name> v<N> --> The tool extracts each registered block from the canonical file and, in every target docs/PROCESS.md, replaces the entire prior-version block with the canonical bytes. It is idempotent: a re-run with no canonical change is a no-op.

Guarantees (each has a direct test):

failed* per --on-missing, never silently appended to.

version-mismatched markers make that repo FAILED, never mangled.

is compared byte-for-byte to the canonical block; a mismatch is FAILED.

(rp-frozen-*, plus FROZEN_ROOTS for frozen roots whose directory name predates that convention, matched exactly), git linked worktrees, vendored trees, and repos whose docs/PROCESS.md is dirty are skipped with a reason.

exit nonzero on any failure.

BREAKING CHANGE (v0.2.0): this tool no longer writes .claude/CLAUDE.md. A propagation tool with a hidden second file target is wrong; if CLAUDE.md managed-block sync is still needed, add a separate command for it. Do not reintroduce a --include-claude flag — that recreates the mixed responsibility this change removed. The pre-v0.2 <!-- BEGIN managed-block --> (unversioned) convention is no longer managed here; legacy blocks are frozen until migrated to the versioned convention.

House-style: every external command is an explicit argument vector (Command::new(bin).arg(..)), never a shell string (PROCESS.md §4).

Capabilities

MarkerError

tools-update-process — sync canonical versioned managed blocks from the

Item
MarkerError :: fn fmt(& self, f : & mut std::fmt::Formatter <'_>) -> std::fmt::Result

How to use it

No examples/ target and no doctest in this crate's rustdoc. The tests listed under Verification are the closest executable usage.

Module structure

No public modules: the crate root is its whole surface.

Public surface

`crate root`

ItemWhat it is
MarkerError :: fn fmt(& self, f : & mut std::fmt::Formatter <'_>) -> std::fmt::Result

No pub use re-exports: every item above is declared in this crate.

Boundary

Depends on no other workspace tier.

Shares tier tools with 84 other crates: tools-advisory-reach, tools-archive-guard, tools-artifact-scaffold, tools-ask-ai-core, tools-ask-ais, tools-ask-gemini, tools-book, tools-book-report, … (84 total).

_What this crate deliberately does NOT own is a judgment. No committed registry records one for it, so none is stated here._

Where it sits

Tier (ontology)tools
Architectural role (taxonomy)unclassified (baselined)
Locationcrates/tools/update-process
Vocabulary in force (lexicon)current

Dependencies

Runtime, from outside the workspace.

CrateRequirementFeaturesOptionalOnly on
anyhow^1noalways
clap^4derivenoalways

Development, in this workspace.

CrateTierOptionalOnly on
`tools-cli-conformance`toolsnoalways

Build. None.

Depended on by. Nothing in this workspace.

Signal flow — what reaches this crate, and what it reaches.

flowchart LR
  SELF["tools-update-process"]
  SELF -->|development| n_tools_cli_conformance["tools-cli-conformance"]
  classDef self fill:#1f883d,stroke:#1f883d,color:#fff;
  class SELF self;

Feature flags

No Cargo features are defined: every capability is unconditional, so no consumer can receive a half-wired crate.

Targets

KindNameSource
bintools-update-process`src/main.rs`

Error model

No public error type was detected: no public item declares a type named *Error, and no public signature returns one.

Operational characteristics

PropertyEvidence
async public surfacenone detected
async runtimenone detected
database accessnone detected
network I/Onone detected
unsafe codenone detected
environment variablesyes

No unsafe block, unsafe fn, unsafe impl or unsafe trait was found by the parser anywhere in this crate's source.

Configuration

VariableRead in
HOMEsrc/main.rs

No workspace crate depends on this one.

Verification

KindCount
Unit tests26
Integration tests0
Examples0
Doctests0

What the tests establish, by name:

Documentation coverage

MeasureDocumentedTotal
Public items with rustdoc01
Public modules with a //! block00
pie showData
    title Public items with rustdoc
    "Documented" : 0
    "No rustdoc detected" : 1

Metrics

MetricValue
Rust source files1
Source lines1137
Code lines860
Public API items1
Public modules0
Tests26
Examples0
Cargo features0
Direct runtime dependencies2
Workspace reverse dependencies0
pie showData
    title Public API by kind
    "method" : 1
pie showData
    title Rust source composition
    "Code" : 860
    "Blank or comment" : 277

Generation

Rendered by tools-corpus corpus readme from repository evidence alone, renderer schema 2, lexicon current. No model, network service or database was consulted. Regenerate with tools-corpus corpus readme --write; verify with --check.

Todas las tools · Manual