Skip to content

Renma v0.33.0

Choose a tag to compare

@KazuCocoa KazuCocoa released this 18 Aug 04:30
· 73 commits to main since this release

Renma v0.33.0 includes 15 changelog entries across added, changed, fixed, and removed.

This release covers changes from v0.32.1 to v0.33.0.

Highlights

Added

  • Extended renma.inspection-coverage.v1 to close statically proven
    Skill-support inspection gaps. A reachable local support target that becomes
    excluded, oversized, unreadable, depth-limited, symlinked, or otherwise
    uninspectable now contributes exact blocking evidence with static-reference
    provenance, so --strict continues to fail through
    strict_scan.incomplete_inspection and inspection-coverage diffs expose
    parsed-to-blocked regressions. Authority still requires one unambiguous
    owning Skill and a fully parsed source chain; unreferenced support and
    unknown transitive children remain outside this boundary, and unparsed
    targets do not receive synthetic security-analysis coverage rows.
  • Extended CST-backed YAML frontmatter-comment security analysis from Skills
    to eligible, known non-Skill Markdown artifacts with a closed Renma
    frontmatter envelope. Comments retain the raw-agent-visible,
    no-policy-authority boundary and exact source evidence; successful
    zero-comment extraction reports yamlFrontmatterComments: "analyzed",
    while malformed input remains non-analyzable and arbitrary unknown
    Markdown remains out of scope.
  • Hardened HTML-comment security projection to use the same raw-agent-visible,
    no-policy-authority trust boundary as YAML frontmatter comments. Inner
    Markdown presentation and negative-example labels can no longer opt hidden
    security-sensitive text out of analysis, and policy-looking comment text
    cannot authorize or allowlist its own projection.
  • Added semantic security analysis for discovered UTF-8 .txt Skill support
    files only when the existing repository-local static-reference graph proves
    them reachable from exactly one owning Skill. Reachable plain-text support
    now reports semanticInstructions: "analyzed"; otherwise identical
    unreferenced text remains unsupported, and structured, executable, binary,
    external, escaping, symlinked, and unresolved targets remain outside this
    capability.
  • Added versioned renma.security-analysis-coverage.v1 scan JSON evidence for
    every discovered and scanned artifact. The target-state rows distinguish
    executed, unsupported, inapplicable, and non-analyzable hidden-Unicode,
    Markdown semantic instruction, canonical Skill description, and YAML
    frontmatter comment layers without changing findings or CI policy.

Changed

  • Finalized the pre-1.0 repository contract around one operational spelling:
    shared Context Assets use contexts/**; Skills use exact SKILL.md under a
    supported Skill root; configuration uses renma.config.jsonc or
    renma.config.json; Context Lenses use applies_to and
    expected_outputs; and security-profile policy fields use their documented
    canonical spelling. Historical paths, .renma.json, Lens aliases, profile
    aliases, and canonical_context now produce explicit migration diagnostics
    or configuration errors without operational interpretation.
  • Made portable Agent Skills description the sole Skill capability and
    selection-boundary source. renma.when-to-use and renma.when-not-to-use
    are unsupported and ignored operationally with migration-oriented authoring
    warnings; pre-0.16 top-level routing fields remain one-way migration evidence
    only and may help recover description.
  • Restricted non-Skill local security-policy authority to canonical, closed
    Renma frontmatter envelopes. Policy-looking Markdown body text remains
    visible instruction evidence and can no longer authorize network, secret,
    upload, approval, or floating-dependency behavior. Strict scans now also fail
    with strict_scan.incomplete_security_analysis when applicable parser-owned
    YAML frontmatter-comment analysis cannot be completed safely.
  • Raised SUPPORT-MISSING-PATH from Medium to High because a statically
    referenced local resource that does not exist is a broken declared
    relationship. Missing targets remain structural findings rather than
    inspection-coverage issues.

Fixed

  • Made non-Skill Renma metadata consume one shared YAML 1.2 parse before
    catalog, governance, Context Lens, and security interpretation. Quoted,
    block, and flow values now retain YAML semantics consistently, while
    malformed or non-mapping frontmatter and duplicate recognized operational
    keys fail closed with explicit diagnostics instead of selecting raw-line or
    first/last values.
  • Routed Markdown link, image, autolink, and resolved reference destinations
    through parser-owned evidence for security analysis and Skill-local support
    reachability. Reference definitions remain non-operational by themselves,
    visible labels and resolved targets remain additive when distinct, and
    overlapping destination candidates preserve the governing instruction.
  • Closed frontmatter security-boundary gaps by accounting for parser-hidden
    YAML comments in exact non-Skill envelopes, rejecting reviewed invisible or
    default-ignorable corruption of registered policy keys and delimiters without
    recovering their values, and treating exactly one absolute leading U+FEFF
    as an encoding BOM while additional or embedded corruption remains
    fail-closed.
  • Preserved safe Skill-local support file identity across exact exclusion so a
    unique basename-only static reference still produces blocking excluded
    inspection evidence. Excluded files continue to count during basename
    disambiguation, while their contents remain unread and unparsed. When an
    excluded support directory makes a basename candidate set incomplete, Renma
    now emits blocking subtree evidence without traversing the directory or
    inventing an exact child path. Symlink targets remain unfollowed and
    uninspectable even when their path identity supplies blocking evidence.

Removed

  • Removed every renma/dist/... package export and the semantic command,
    renderer, guidance, and migration exports. The intentional v1 library API is
    now the focused renma/types surface plus renma/discovery; removed paths
    fail with ERR_PACKAGE_PATH_NOT_EXPORTED, while the renma CLI remains
    available through the package binary.
  • Removed operational compatibility for the context/** root, historical
    skill.md and *.skill.md entrypoints, .renma.json, Context Lens
    target/targets/output/outputs, and canonical_context. Explicit
    pre-0.16 and historical-entrypoint migration through suggest-metadata
    remains one-way.

Upgrade

npm install
npm run build
npm test

If using the published package:

npm install -g renma@0.33.0

Validation

Validated with:

npm test
npm run build
node dist/index.js scan . --fail-on high
node dist/index.js catalog . --format markdown
node dist/index.js readiness . --format markdown
node dist/index.js graph . --focus skill.release-prep --format mermaid
node dist/index.js diff . --from v0.32.1 --to HEAD --format markdown
node dist/index.js ci-report . --from v0.32.1 --to HEAD --format markdown

Summary

v0.33.0 includes 15 changelog entries across added, changed, fixed, and removed.