linmas / changelog

Every version.
Every step forward.

Follow Linmas from v0.1.0 to v0.9.1. Security improvements, new workflows, and breaking changes, straight from the official release notes.

22 published versions · 3 repository-only entries · Latest first

A complete record, with clear sources.

Repository-only entries have official change notes but no matching publication in npm or GitHub Releases. No release date is inferred. Notes are translated where needed; the original sources remain linked.

v0.9.1

Latest stable

· GitHub release

Official source ↗

Documentation and branding follow-up to Linmas 0.9.0.

  • Updates the npm and GitHub README to describe the published 0.9.0 capabilities and upgrade path.
  • Replaces the README logo with the current Linmas website logo.
  • Corrects the package and release version badges.
  • Adds no runtime, security-policy, CLI, skill, MCP, or data-format changes.

Existing 0.9.0 installations do not require an upgrade for functionality. Install 0.9.1 when you want the refreshed package documentation and metadata:

npm install --global linmas@0.9.1
linmas --version

No data migration is required. The compatibility boundaries and upgrade guidance remain documented in the 0.9.0 release notes.

· GitHub release

Official source ↗

Released on October 1, 2026 (UTC). Available on npm and GitHub Releases.

Clarifies operation-level compatibility evidence for all eleven canonical skills and seven MCP tools. Distinguishes Claude Code installation from Claude API execution and Hermes format compatibility from runtime verification. Adds a bound-reference MCP validation runbook and retains the 0.8.0 Windows destructive-operation denial.

The release also includes portable test fixtures and hardened release automation: Linux sandbox checks, Windows Git discovery, artifact integrity checks, and publication provenance. Existing CLI and skill identities remain compatible with 0.8.0; publication does not establish live provider or production runtime behavior.

Upgrade from 0.8.0

No user data migration is required. Node.js 24 or newer remains required.

For the npm CLI:

npm install --global linmas@0.9.0
linmas --version

For a new Codex marketplace installation, use --ref v0.9.0. If the marketplace is already pinned to an older tag, remove the installed plugin and old marketplace registration before registering the new ref; marketplace upgrade only refreshes the configured ref. Verify the installed version, restart Codex, and open a fresh task.

The 0.8.0 Windows destructive-operation denial remains in place. Human review, transmission consent, and write consent remain separate requirements.

See the implementation notes and compatibility evidence policy for the scope and limits of the evidence. Historical candidate records describe their own revisions; release artifacts and provenance identify the bytes actually published.

· GitHub release

Official source ↗

Security and reliability

Linmas 0.8.0 hardens the boundaries around the review and release workflow:

  • filesystem containment, uninstall planning, and cleanup preserve ownership and fail closed instead of falling back to unsafe lexical path mutation;
  • Proof Chain bundles bind every recorded finding to the validated source and decision receipt;
  • human-review decisions bind to the process-local review reference and exact capsule digest, so a caller cannot substitute an unrelated result;
  • credentials, review input, raw provider output, and stderr remain redacted at the public error boundary;
  • provider failures use an explicit taxonomy with transmission state and retryability;
  • CLI argument, package-entrypoint, and package-surface validation are strict; and
  • the Codex isolated launch and filesystem checks preserve their platform-specific security contract.

These controls improve reliability and evidence integrity without turning a policy result or model response into automatic approval.

Breaking MCP request contract

The human-review decision flow no longer accepts a caller-supplied review_result. In 0.8.0, linmas_review_execute returns a bound reviewReference containing a process-local handle and the SHA-256 capsuleDigest. Pass those values to linmas_review_decide as review_handle and capsule_digest. The reference must be used by the same MCP server process and the digest must match exactly.

Before 0.8.0 (caller-supplied result):

{
  "workspace_root": "/work/linmas-demo",
  "review_result": { "schemaVersion": 1, "findings": [] },
  "decision": { "disposition": "manual_review_required" }
}

After 0.8.0 (bound reference returned by execute, then supplied to decide):

{
  "reviewReference": {
    "handle": "demo-review-handle",
    "capsuleDigest": "0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef"
  }
}
{
  "workspace_root": "/work/linmas-demo",
  "review_handle": "demo-review-handle",
  "capsule_digest": "0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef",
  "decision": { "disposition": "manual_review_required" }
}

The handle and digest above are safe synthetic values only. A real caller must use the values returned by its own linmas_review_execute call. Human review, transmission consent, and write consent remain separate gates.

Windows contract

  • The deterministic/offline workflow and CLI remain supported on Windows.
  • Codex isolated launch preparation is supported on Windows with the same authenticated-source safeguards.
  • Destructive uninstall and cleanup intentionally fail closed on Windows.
  • The repository-defined diagnostic is SAFE_FILESYSTEM_OPERATION_UNAVAILABLE because Node.js does not provide the handle-relative mutation primitive needed to preserve Linmas’s anti-substitution invariant there.
  • Dry-run uninstall remains available and does not mutate data.

0.8.0 does not claim native destructive Windows parity. Use a supported POSIX environment for destructive cleanup or wait for a separately reviewed native implementation; do not replace the guard with a path-based fallback.

Upgrade: 0.7.0 → 0.8.0

For the npm CLI:

npm install --global linmas@0.8.0
npx --yes linmas@0.8.0 list

Codex stores a marketplace source and its ref separately. A moving ref such as main can be refreshed; an immutable ref such as v0.7.0 does not move when refreshed. marketplace upgrade never repins an existing source, and a second marketplace add with a different ref is rejected until the old source is removed. Verify both the configured ref and the installed plugin version before starting a new task.

A. Existing moving-ref marketplace

If the configured marketplace follows main (or another moving branch), refresh that same source and then install or re-enable the plugin:

codex plugin marketplace upgrade linmas
codex plugin add linmas@linmas
codex plugin marketplace list --json
codex plugin list --json

The marketplace entry in the configured Codex config.toml should still show the intended moving ref, and the plugin list should report the installed release version. marketplace upgrade alone does not update an already cached plugin. Restart the Codex desktop/app-server and start a fresh task afterward.

B. Existing marketplace pinned to v0.7.0

When codex plugin list --json shows the installed 0.7.0 plugin and the marketplace is pinned to v0.7.0, remove the installed plugin first, remove the old marketplace source, and then add the source again with the new immutable ref:

codex plugin remove linmas@linmas
codex plugin marketplace remove linmas
codex plugin marketplace add TanKimGwan/linmas --ref v0.8.0
codex plugin add linmas@linmas
codex plugin marketplace list --json
codex plugin list --json

Confirm that the [marketplaces.linmas] section in the configured Codex config.toml contains ref = "v0.8.0" and that the installed linmas@linmas entry reports version 0.8.0. Do not treat a successful marketplace upgrade linmas as proof that a pinned ref changed. Restart the Codex desktop/app-server and start a fresh task after the verification.

Update MCP callers to the bound review_handle/capsule_digest contract before using linmas_review_decide with 0.8.0.

Rollback

If a release rollback is required, use a reviewed Git revert or pin the npm package and Codex marketplace to 0.7.0 / v0.7.0, then restart the Codex desktop/app-server and verify the tools from a fresh task. Do not use a destructive reset, mix the 0.7.0 caller contract with a 0.8.0 server, or npm unpublish a release.

· GitHub release

Official source ↗

Interactive human-review gate

Linmas now provides linmas_review_decide to request a human disposition after findings are available, through MCP form elicitation. Hosts that support this capability receive four choices:

  • Ask the agent to fix the findings and repeat the review.
  • Continue with specific notes; Critical/High findings require risk acknowledgement and a rationale.
  • Stop the task for manual review.
  • Provide custom instructions without bypassing transmission consent, write consent, or safety gates.

If the host does not support MCP elicitation, Linmas returns structured choices to ask through chat. This gate has no default selection, automatic approval, provider transmission, or workspace writes.

Contract and upgrade

The new MCP tool is additive; existing tools remain available. Results continue to carry humanReviewRequired=true and reviewState=needs_human_review.

npm install --global linmas@0.7.0
codex plugin marketplace add TanKimGwan/linmas --ref v0.7.0
codex plugin add linmas@linmas
codex plugin list

After upgrading native MCP, restart the Codex desktop/app-server and start a new task. Existing tasks may retain a child process or plugin metadata from the previous version.

Verification and security boundaries

  • Node.js 24 or newer is required.
  • Offline tools remain read-only and do not transmit data.
  • Provider execution still requires confirm_transmission=true.
  • Continuing with Critical/High findings requires explicit risk acknowledgement and a rationale.
  • Full Access or --dangerously-skip-permissions does not count as a human disposition.
  • This release makes no claims about live-provider execution, native Windows, or production deployment without separate verification.

Rollback

Restore the source with Git revert and pin installation to linmas@0.6.0 / --ref v0.6.0, restart the app-server, then verify the MCP tools from a new task. Do not use a destructive reset or npm unpublish.

· GitHub release

Official source ↗

Granular MCP and provider diagnostics

MCP now accepts canonical specialist IDs and legacy aliases already supported by the Linmas resolver, then normalizes them before preparing a review. Input errors expose safe codes and fields so callers can correct a payload without seeing review contents.

Provider-backed reviews now run a configuration preflight before processing the payload, distinguish configuration, authentication, rate limit, timeout, transport, upstream, response, and contract failures, and explicitly return the last transmission state. Credentials, source diffs, raw provider responses, stderr, and request IDs are never returned through MCP.

Contract and upgrade

The top-level error code changes break compatibility. Clients that previously recognized only INVALID_INPUT, PROVIDER_FAILURE, or TIMEOUT must be updated to use granular codes and schemaVersion in the error envelope.

npm install --global linmas@0.6.0
codex plugin marketplace add TanKimGwan/linmas --ref v0.6.0
codex plugin add linmas@linmas
codex plugin list

After upgrading native MCP, restart the Codex desktop/app-server and start a new task. Existing tasks may retain a child process or plugin metadata from the previous version.

Verification and security boundaries

  • Node.js 24 or newer is required.
  • Offline tools remain read-only and do not transmit data.
  • Provider execution still requires confirm_transmission=true.
  • There are no automatic retries; callers use retryable and transmissionState to decide what to do next.
  • This release makes no claims about live-provider execution, native Windows, or production deployment without separate verification.

Rollback

Restore the source with Git revert and pin installation to linmas@0.5.2 / --ref v0.5.2, restart the app-server, then verify all six MCP tools from a new task. Do not use a destructive reset or npm unpublish.

· GitHub release

Official source ↗

Structured provider diagnostics

Provider-backed reviews now preserve a bounded, allowlisted diagnostic envelope through the MCP boundary. When execution fails, callers can identify the failure class, stage, reason code, retryability, provider, and transmission state without receiving raw stderr, causes, credentials, request IDs, or other sensitive provider output.

The diagnostic contract covers Codex and Claude execution, capability discovery, model selection, response reading, normalization, and MCP timeout handling. Successful reviews and the existing consent gates are unchanged; human review remains mandatory.

Upgrade

npm install --global linmas@0.5.3
codex plugin marketplace add TanKimGwan/linmas --ref v0.5.3
codex plugin add linmas@linmas
codex plugin list

After upgrading a native MCP plugin, restart the Codex desktop/app-server and start a fresh task. An existing task may retain a stale child process or cached plugin metadata from an earlier version.

Verification and safety

  • Node.js 24 or newer is required.
  • Offline tools remain read-only and do not transmit data.
  • Provider execution still requires explicit confirm_transmission=true.
  • No raw provider diagnostic or credential is exposed through MCP.
  • Native Windows and live-provider certification remain outside this release’s claim unless separately verified.

Rollback

Pin npm or the Codex marketplace to linmas@0.5.2 / --ref v0.5.2, reinstall, restart the Codex desktop/app-server, and verify the six MCP tools from a fresh task. Source rollback should use a Git revert; do not use a destructive reset. No npm unpublish is required.

· GitHub release

Official source ↗

Branded Codex plugin experience

Linmas now displays its own logo in the Codex plugin catalog and ships matching icons for all eleven Linmas skills. The public marketplace artifact includes both light and dark plugin branding plus per-skill Codex metadata, so users can identify Linmas consistently in the plugin page and skill list.

Install the stable release from the public marketplace:

codex plugin marketplace add TanKimGwan/linmas --ref v0.5.2
codex plugin add linmas@linmas
codex plugin list

Users already following main can refresh the marketplace and reinstall the plugin:

codex plugin marketplace upgrade linmas
codex plugin add linmas@linmas

After installation or upgrade, restart the Codex desktop/app-server and start a fresh task. An existing task can retain stale MCP child processes or cached plugin metadata from the previous version.

Reproducibility

  • package.json remains the canonical version source for the npm package, MCP server, builder output, and marketplace artifact.
  • npm run sync:codex-marketplace regenerates the tracked plugin and checks every generated file byte-for-byte in tests.
  • Plugin validation covers the manifest, canonical branding assets, all eleven skill icons, and each generated agents/openai.yaml file.
  • Windows CI verifies that generated metadata uses repository-canonical line endings.

Safety boundary

This patch changes presentation and distribution metadata only. Linmas remains defensive-only: offline tools do not transmit data, provider execution still requires confirm_transmission=true, proof creation still requires confirm_write=true, and human review remains mandatory.

Rollback

Remove the plugin with codex plugin remove linmas@linmas. To restore the previous stable release, add the marketplace at --ref v0.5.1, reinstall linmas@linmas, restart the Codex desktop/app-server, and verify discovery from a fresh task. Source rollback should use a Git revert rather than a destructive reset.

· GitHub release

Official source ↗

Public Codex plugin installation

Linmas can now be installed from the public Git repository as a Codex marketplace plugin. The repository tracks a generated plugins/linmas artifact and a marketplace manifest at .agents/plugins/marketplace.json, so Codex does not need to run a build step during installation.

codex plugin marketplace add TanKimGwan/linmas --ref main
codex plugin add linmas@linmas

The installed plugin exposes eleven Linmas skills and six native MCP tools. After installation or upgrade, restart the Codex desktop/app-server and start a fresh task so stale MCP child processes cannot retain an older plugin cache.

Reproducibility

  • npm run sync:codex-marketplace rebuilds the tracked public plugin from canonical package, manifest, MCP, runtime, policy, and skill sources.
  • Tests compare every tracked plugin file byte-for-byte against a fresh temporary build.
  • The plugin validator checks the tracked artifact before release.
  • The npm package remains focused on canonical sources and excludes .agents/ and plugins/; npm users can still build a local plugin with npm run build:codex-plugin.

Safety boundary

The marketplace changes distribution only. Offline tools remain local and advisory. linmas_proof_create still requires explicit write confirmation, and linmas_review_execute still requires explicit transmission confirmation. Human review remains mandatory.

Rollback

Remove the marketplace installation with codex plugin remove linmas@linmas. If the marketplace itself is no longer needed, remove it with codex plugin marketplace remove linmas, restart the Codex desktop/app-server, and start a fresh task. Users who need the previous local plugin can rebuild 0.5.0 from the immutable npm or Git release using the documented local builder flow.

· GitHub release

Official source ↗

Release candidate scope

Linmas 0.5.0 packages the native MCP server and Codex plugin as one bounded release surface. package.json is the canonical version source; the lockfile, generated plugin manifest, MCP serverInfo.version, provider client metadata, builder, tests, and documentation are checked against it. Development cachebusters remain host-artifact metadata and are not part of the canonical version.

Native MCP

  • Adds six bounded MCP tools: review preparation, capsule comparison, policy evaluation, proof verification, proof creation, and provider-backed review execution.
  • Offline tools do not transmit data. linmas_review_execute requires confirm_transmission=true; linmas_proof_create requires confirm_write=true.
  • Every result remains advisory and reports that human review is required.
  • Stdio input uses a byte-bounded newline JSON reader that handles fragmented UTF-8, LF/CRLF, multiple messages per chunk, malformed JSON, and deterministic oversized-line rejection.

Packaging and security boundary

  • npm pack includes the builder’s manifest template and all runtime inputs it needs, including plugin/manifest.template.json and package metadata.
  • The packed-artifact test builds a plugin with exactly eleven skills, .mcp.json, mcp/server.mjs, and validates it with validate_plugin.py.
  • Provider cancellation uses an abort/deadline signal. Late provider responses are rejected before normalization, policy evaluation, temporary output creation, and atomic final writes. Temporary files and staged proof bundles are cleaned on cancellation.
  • Credentials, raw provider responses, request IDs, and sensitive provider diagnostics remain excluded from result output.

Migration

  1. Build a fresh plugin directory with npm run build:codex-plugin -- --target /absolute/path/to/plugins/linmas.
  2. Run validate_plugin.py against the generated directory.
  3. Use the official Codex plugin reinstall/cachebuster flow for development hosts when authorized.
  4. Restart the Codex desktop/app-server so any MCP child process using an older or deleted cache is terminated.
  5. Start a fresh Codex task before treating plugin discovery as verified. Starting a new task without restarting a stale app-server may continue to reuse the old MCP child process.

Direct stdio verification, plugin-cache verification, and Codex fresh-task discovery are separate claims. The latter requires invocation evidence tied to this exact 0.5.0 artifact.

Known limitations

  • Node.js 24 or newer is required.
  • Native MCP and direct stdio are verified on Linux. Native Windows MCP is not claimed.
  • Live-provider verification is not claimed by this release candidate; offline and injected-fixture paths remain the deterministic verification surface.
  • Human review remains mandatory. A policy pass, empty comparison, verified bundle, or successful tool status is not approval, certification, remediation proof, or proof that software is secure.

Rollback

The validated rollback artifact is linmas-0.4.0-reconstructed-rollback.tar.gz, reconstructed from the official linmas@0.4.0 npm package. It contains exactly the eleven skills and an Interactive/Read Codex plugin manifest, with no MCP declaration, apps, or hooks. It is not claimed to be byte-identical to a historical Codex plugin bundle.

Provenance:

  • npm package: linmas@0.4.0
  • npm registry tarball: https://registry.npmjs.org/linmas/-/linmas-0.4.0.tgz
  • npm gitHead: 09d982a484daa121aff238fb575b7af67f6b0ccb
  • npm dist.integrity: sha512-wOHw3LEyPmGzA+UtAfYitr8xPcmIoXCaI7ycpOuhv9+C7Gy2+ivy+TCa8UP81xLDyrUbeUQ/F/X6mGYa7AEakw==
  • reconstructed archive SHA-256: 13abcd3d8011d9547f7a171a09a04e6e3ab9068f2a6c025ade0a15bbe5e4adca

The binary archive and plugin backup are release assets, not source files, and must remain excluded from the source commit and npm package. Before relying on the archive, obtain the release asset and verify its SHA-256 against the value above.

Rollback procedure:

  1. Move the current plugin target to a recoverable backup.
  2. Verify the reconstructed archive SHA-256, then restore it as the complete plugin directory so no native-MCP files remain alongside the skills-only tree.
  3. Run validate_plugin.py against the restored plugin.
  4. Reinstall through the official Codex plugin flow for the configured local marketplace.
  5. Restart the Codex desktop/app-server to terminate stale MCP child processes.
  6. Start a fresh Codex task and verify discovery of all eleven skills. The rollback artifact intentionally exposes no MCP tools.

Source rollback is performed with a revert commit after the release commit exists; git reset --hard is not part of the rollback procedure.

· GitHub release

Official source ↗

Proof Chain

  • Adds human decision receipts with per-finding dispositions and a derived overall disposition.
  • Creates portable offline proof bundles with hashed source evidence, Markdown and HTML reports, and fail-closed verification.
  • Adds optional SSH signatures with explicit distinction between cryptographic validity and trusted signer identity.
  • Adds a sealed Codex Security adapter that accepts only a completed scan directory with verified manifest, findings, coverage, and artifact hashes.
  • Adds an offline npm run demo:proof path for reproducible Build Week judging.

Linmas remains defensive-only. Proof bundles are evidence records, not approvals, certifications, or proof that software is secure. Human review remains required.

· GitHub release

Official source ↗

Codex compatibility and live evaluation

  • Selects the account-visible Codex default model without pinning automatic execution to one GPT generation.
  • Adds explicit --model support to the judge demo for reproducible evidence.
  • Makes Codex the default live evaluator while retaining explicitly selected Claude compatibility.
  • Keeps CI credentials step-scoped and removes request identifiers and raw responses from live reports.

Verification and repository operations

  • Adds enforced Node 24 source coverage thresholds: 96% lines, 85% branches, and 94% functions.
  • Adds deterministic Windows CI while preserving the required Linux verify check.
  • Updates maintained checkout, setup-node, and upload-artifact actions to major v7.
  • Creates a protected main-to-dev ancestry sync pull request after promotions when required.

Documentation and branding

  • Aligns npm and GitHub positioning around proof-carrying defensive security reviews.
  • Replaces the public Linmas logo and preserves the name story, independent-project disclaimer, and Build Week evidence.
  • Documents CI-only API-key use separately from subscription-first local Codex authentication.
  • Adds a truthful trusted-machine gate for future native Windows live evidence.

Linmas remains defensive-only. Policy output is not approval or proof of security, and human review remains required.

· GitHub release

Official source ↗

Project identity and npm documentation

  • Restores the story behind the Linmas name and its connection to Perlindungan Masyarakat.
  • Explains Linmas as a first layer of defense close to everyday builders, while keeping human review authoritative.
  • Makes the project’s independence and non-government affiliation explicit.
  • Preserves the OpenAI Build Week judge demo, live Codex path, Review Capsule contract, and privacy boundaries in the npm README.

This patch updates the documentation shipped with the npm package. It does not change review runtime behavior, weaken safety boundaries, or imply government or OpenAI endorsement. Human review remains required.

· GitHub release

Official source ↗

Host and provider expansion

  • Separates installation hosts from review execution providers with independent registries.
  • Preserves Claude Code and Codex installation behavior behind a shared adapter contract.
  • Adds explicit, read-only Codex review execution through the existing normalized ReviewResult boundary.
  • Adds fake-home, fake-runner, and parity coverage without making live provider calls a merge requirement.
  • Defines an evidence and maintenance gate for future installation hosts; no third host is included.

Safety boundary

Provider credentials remain in provider-native configuration and never enter Linmas installation manifests. Live execution remains opt-in, transmits only explicitly supplied input after confirmation, and cannot approve, merge, release, or automatically remediate changes. Human review remains required.

v0.2.1

Repository notes only

Publication date not available

Official source ↗

Declarative policy packs

  • Adds schema-versioned declarative JSON policy packs.
  • Ships baseline-appsec, cloud-change, and release-security built-ins.
  • Supports one explicitly named local policy file capped at 64 KiB.
  • Evaluates only validated ReviewResult schema version 1 objects.
  • Produces separate versioned PolicyResult output with rule-by-rule reasons.

Safety boundary

Policy packs contain no executable code, commands, expressions, templates, plugins, provider hooks, or remote imports. They cannot modify findings, invoke providers, approve releases, accept risk, or remove human review. Safety and contract failures always produce blocked.

pass means only that the declared conditions were met. It does not prove security, compliance, certification, or approval. Human review remains required for every decision.

v0.2.0

Repository notes only

Publication date not available

Official source ↗

linmas review MVP

  • Adds bounded local prepare mode for one explicitly supplied text file or stdin.
  • Adds deterministic specialist recommendations without an implicit model chain.
  • Adds explicit, opt-in Claude execution with an outbound-data confirmation boundary.
  • Normalizes provider output through ReviewResult schema version 1.
  • Keeps findings advisory: human review remains required.

Safety limits

The command does not scan repositories, invoke Git, accept URLs or archives, or automatically approve, merge, release, or remediate changes. Provider execution transmits only the named input after explicit confirmation. Raw provider responses remain diagnostic-only and are not stable output.

v0.1.9

Repository notes only

Publication date not available

Official source ↗

Evaluation foundation

  • Added versioned synthetic evaluation cases and normalized ReviewResult validation.
  • Added deterministic contract, finding, evidence, remediation, verification, check, and safety scoring.
  • Added an offline evaluation command suitable for CI without network access or credentials.
  • Added a bounded advisory Claude evaluation runner and trusted scheduled workflow.

Passing included cases does not prove that a response or project is secure. Live evaluation is advisory and never approves changes or releases. Human review remains required.

· GitHub release

Official source ↗

Security advisor skill rollout.

Changes

  • Add bounded advisor review and design review protocols across the specialist skill catalog.
  • Standardize defensive review output around confirmed findings, validation needs, recommendations, evidence, remediation, verification, and deterministic checks.
  • Update README guidance for choosing a specialist or using the domain router to select one.

Notes

  • Advisor guidance is limited to supplied, authorized material and does not replace human review or project validation.

· GitHub release

Official source ↗

Release infrastructure hardening.

Changes

  • Migrate npm publishing from long-lived NPM_TOKEN authentication to npm Trusted Publishing / OIDC.
  • Keep guarded main-to-tag release automation and workflow-dispatch based release handoff.
  • Add repository metadata required for npm Trusted Publishing provenance validation.
  • Fix README logo rendering on GitHub and npm using the public Linmas logo asset.

Notes

  • No skill behavior change is intended in this release.
  • After this release succeeds, the GitHub NPM_TOKEN secret can be removed and the old npm token can be revoked.

· GitHub release

Official source ↗

Patch release for the clean public Linmas repository.

Changes

  • Fix README logo rendering on npm by using a public raw GitHub asset URL.
  • Add a guarded release-tag workflow that creates vX.Y.Z tags from main only when the package version and release notes are ready.
  • Add Dependabot monitoring for GitHub Actions and npm dependencies.

Notes

  • npm publishing still runs through the existing tag-based release workflow.
  • Migration to npm Trusted Publishing/OIDC remains planned as a separate hardening follow-up.

· GitHub release

Official source ↗

Initial clean public repository release from the new TanKimGwan/linmas repository.

This release validates the new GitHub Actions based npm publishing flow using the clean public-ready repository history.

Notes

  • No internal docs/ history is included in the new public repository.
  • Public package surface has been validated with tests, skill validation, dry-run packaging, tarball inspection, and gitleaks.
  • No skill behavior change is intended from the previous package release.

· npm publication

Official source ↗

Summary

Version bump for provenance validation.

Included changes

  • automated release lane verified
  • provenance workflow hardened
  • CI/runtime hardening remains in place

· npm publication

Official source ↗

Summary

Validation patch release to confirm the automated provenance lane now succeeds end-to-end.

Included changes

  • automated release lane remains active on main + vX.Y.Z
  • provenance validation is now part of release success criteria
  • CI/runtime hardening remains in place

Operator note

Future releases should continue through main and vX.Y.Z tags.

· npm publication

Official source ↗

Summary

Clean automated patch release using the existing main + vX.Y.Z workflow.

Included changes

  • release automation is active through main + vX.Y.Z
  • provenance workflow remains active
  • CI hardening uses Node 24 and a committed lockfile
  • stronger rehearsal checks now support the release operator flow

Operator note

Future releases should continue through main and vX.Y.Z tags.

· npm publication

Official source ↗

Summary

First automated patch release using the new main + vX.Y.Z release flow.

Included changes

  • release CI/CD workflows are active
  • release provenance workflow is active
  • CI hardening now uses Node 24 and a committed lockfile
  • host-detection test fixture is runner-portable

Operator note

Future releases should continue through main and vX.Y.Z tags.

v0.1.0

First npm release

· npm publication

Official source ↗

npm confirms this version was published, but no official release notes were found in the public repository or GitHub Releases. Detailed changes are not available.

Install LinmasPanduan ID ↗