Releases: smorinlabs/agent2linear
Release list
agent2linear v1.0.0
agent2linear v1.0.0
This is the coordinated v1 release of the M33-M36 work: label and project lifecycle management, raw-cursor pagination, issue and project comments, and the publishable CLI automation contract.
Highlights
- Workspace-aware configuration now has explicit
--configselection, project-local routing, debug/verbose/quiet controls, and a no-input path for noninteractive automation. - Issue and project comments support add/list, reply targets, body files or stdin, dry-run planning, stable JSON results, raw cursor continuation, and cursor history.
- Issue-label and project-label lifecycle management includes bounded and exhaustive raw-cursor listing, lifecycle state controls, guarded writes, and JSON or human output.
- Project trash/untrash uses Linear's supported archive lifecycle.
- The named M36 command inventory separates stdout result data from stderr diagnostics and provides classified exits for scripting.
Breaking changes
- Node: v1 supports Node.js 22 and 24 and declares
>=22; Node 18 and 20 are no longer part of the supported contract. - Version: package, lockfile, CLI, CI, tag, and registry are aligned at
1.0.0;a2l --versionanda2l -Vprint exactlyagent2linear 1.0.0to stdout and exit 0. - Credentials: literal
--api-keyargv input is removed. Use--api-key-file <path|->, named workspace environment variables, profile env files, or the local secrets registry. Raw configapiKeyargv input is rejected. - Comments: replace
issue comment <identifier>withissue comment add <identifier>. - Result selection: changed issue/project/comment/label commands use
-o, --outputand--json; changed list JSON results are resource envelopes rather than bare arrays. Consult command help before replacing selectors on a legacy command. - Labels: use
issue-labelsandproject-labels; the oldlabels|lbllisting form is only a migration shim.--allexhausts pages, while--include-retiredexplicitly widens label lifecycle scope. - Alias clear:
-y, --yesis the explicit consent flag. Use--dry-runto inspect before a real deletion.
Safety and automation
Pagination uses opaque raw cursors: place pageInfo.endCursor in --after for the next page, or use --all for remaining pages. cursor-history stores local continuation context; use --no-cursor-history where retention is not wanted.
For the named M36 mutation inventory, --dry-run performs neither remote Linear writes nor local state/config writes and does not prompt. Successful result data belongs on stdout, diagnostics on stderr. Scripts should use JSON envelopes and classified exit status rather than parsing human text.
Security
- Literal API keys are no longer accepted through argv or config mutation argv; file, stdin, named environment, profile env-file, and local secrets sources replace them.
- Credential stdin cannot be shared with another input consumer, and diagnostics/debug context redact key-like values before rendering.
- The tag workflow is the sole npm publisher. Its GitHub-hosted
npmenvironment job used OIDC trusted publishing and provenance without a long-lived npm publish token; no local publish was performed. - The release workflow's production dependency audit reported zero vulnerabilities.
Compatibility boundaries
This release has explicit accepted exceptions and waivers, including retained legacy selectors outside the named command inventory, existing config/auth layering, environment naming, JSON config, and other compatibility surfaces. See CONFORMANCE.md for the complete list and ownership.
Verification
- Candidate commit:
56f15fee7d5b505cc67d74b2febe501322e73ecd - Annotated tag object:
b038c9b81d072135d6af0d771631bbc5b2f91803 - Node 22/24 ordinary CI passed
- ConceptM M33-M36 live verification passed
- Release verification and the sole OIDC publish job passed
- npm package:
agent2linear@1.0.0 - npm integrity:
sha512-W/ekNJQgbJn73r8VfEQRDJ8ruzumrxpKQsWoiqDNH9xw2dwNb+mHU5QOyJHhawqjVaAMsFCPzSUXGZCGbjHCGQ== - SLSA provenance attestation
- A fresh public-registry installation verified both distributed binaries,
a2landagent2linear, including version and help output.
For old-to-new command replacements and migration detail, see the v1.0.0 migration guide.
v0.24.1
- chore: Update to README and publish 0.24.1 8434f97
- chore: Rename package to agent2linear with a2l alias for v0.24.0 171ec3e
- fix: Resolve IT-003 and IT-005 by updating workspace aliases 4a789ad
- fix: Implement bug fixes from BUGS_TEST_ANALYSIS.md 8dc6699
- docs: Mark M15.6 git release tasks as completed 28d49da