# Changelog — @cleepi/atlassian

All notable changes to this package are documented here.

Format: [Keep a Changelog 1.1.0](https://keepachangelog.com/en/1.1.0/).
Versioning: [SemVer](https://semver.org/spec/v2.0.0.html). Pre-`1.0.0`, minor
bumps may include breaking changes.

## [Unreleased]

## [0.4.1] — 2026-06-03

### Fixed
- Both skills (`atlassian`, `jira-authoring`) now resolve the
  bound Jira project / Confluence space as their **first action
  on activation**, silently, before asking any clarifying
  question. Previously the binding lookup was framed as "do this
  before creating tickets" and the agent would still ask
  "Which Jira project?" in its opening question batch even when
  `.pi/settings.json` already had `cleepi.atlassian.jira` set.
  When a binding exists, the skills now mention it once
  ("Planning against `AC`." / "Reading from Jira project `AC` /
  Confluence space `H`.") and proceed without prompting.

## [0.4.0] — 2026-06-02

Per-codebase project binding. Each Cleevio repo can now declare which
Jira project(s) and Confluence space(s) it lives in; the agent stays
scoped to those on every read/write. Per
[spec DRAFT-007](../../docs/DRAFT-007-cleepi-atlassian-project-binding/spec.md).

### Added
- **Project binding preamble** in `skills/atlassian/SKILL.md` and
  `skills/jira-authoring/SKILL.md`. On first Jira/Confluence use in a
  session, the skill checks `.pi/settings.json` for
  `cleepi.atlassian.jira` / `cleepi.atlassian.confluence`. If empty,
  it lists projects/spaces via MCP, opens `cleepi_pick` (from
  `@cleepi/base` 0.2.0+), and persists the selection.
- `prompts/atlassian-projects.md` — `/atlassian-projects` slash
  command for explicit (re)configure of bound Jira projects.
- `prompts/atlassian-spaces.md` — `/atlassian-spaces` for Confluence
  spaces.
- `peerDependency` on `@cleepi/base ^0.2.0` (for `cleepi_pick`).

## [0.3.1] — 2026-06-02

### Fixed
- `skills/jira-authoring/SKILL.md` frontmatter: quoted `description:` value
  so the unescaped colon inside ("Cleevio conventions: business-focused…")
  parses as a YAML scalar instead of a nested mapping. Pi was failing to
  load the skill.

## [0.3.0] — 2026-06-02

Adds the write-side companion to `/spec-from-ticket`: a planning skill
and `/jira-plan` prompt that turn a fuzzy intent into a reviewable
batch of Jira tickets. Per [DRAFT-001-jira-authoring](./docs/DRAFT-001-jira-authoring/spec.md).

### Added
- `skills/jira-authoring/SKILL.md` — sibling write-side skill: planning
  loop, per-type templates (Epic / Story / Task / Bug), `[FE]/[BE]/[QA]/[DE]`
  title naming convention, anti-bloat rules, parent/child wiring. Per
  [DRAFT-001-jira-authoring](./docs/DRAFT-001-jira-authoring/spec.md).
- `prompts/jira-plan.md` — `/jira-plan <intent>` flow: propose-tree →
  refine → preview-bodies → batch-create. Auto-trigger phrases like
  *"let's plan Jira tasks"* covered by the skill's `description`.

### Changed
- `SPEC.md` — flipped the *"Not a write-back guide"* non-goal: ticket
  authoring now in scope via the new `jira-authoring` sibling skill.
  The read-side `atlassian` skill remains read-only.

## [0.2.0] — 2026-06-02

First release that actually exposes the skill + prompt promised by
the original 0.1.0 scaffold. `0.1.0` shipped to npm with `SPEC.md`,
`README.md`, `CHANGELOG.md`, and `mcp.example.json` only — no
runnable surface. `0.2.0` ships the runnable surface.

### Added
- `skills/atlassian/SKILL.md` — field-to-spec-section map,
  ignore-list, honest-degradation guidance. Per
  [DRAFT-004](../../docs/DRAFT-004-natural-language-ticket-flow/spec.md).
- `prompts/spec-from-ticket.md` — `/spec-from-ticket <KEY|URL>`
  flow with self-tiering (easy → `/spec`, hard →
  `/spec-with-crew`) and `--with-crew` / `--simple` overrides.
  Soft-aware of `@cleepi/sdd` and `@cleepi/crew`. Per
  [DRAFT-004](../../docs/DRAFT-004-natural-language-ticket-flow/spec.md).

### Changed
- `SPEC.md` status flipped `draft → accepted` now that the
  promised skill and prompt actually exist. Added a `## Decision`
  section summarising ADRs 0005 and 0006 plus the new
  self-tiering decision from DRAFT-004 (per @cleepi/sdd v0.2.0+).

[0.2.0]: https://github.com/honzanemecek/cleepi/releases/tag/%40cleepi%2Fatlassian%400.2.0

## [0.1.0] — 2026-05-24

### Added
- Initial package scaffold per
  [spec 0003](../../docs/specs/0003-cleepi-atlassian-v0.1.0-mcp.md),
  amended by [ADR 0006](../../docs/adr/0006-allow-writes-in-atlassian-v0.1.0.md).
- `mcp.example.json` — copy/paste MCP server config for the Atlassian
  Rovo MCP server, with OAuth and a curated `directTools` allowlist
  covering reads (`getJiraIssue`, `searchJiraIssuesUsingJql`,
  `getConfluencePage`, …) plus the useful Jira writes
  (`createJiraIssue`, `editJiraIssue`, `transitionJiraIssue`,
  `addCommentToJiraIssue`) and the metadata helpers needed to use
  them. The pi-mcp-adapter `mcp` proxy is enabled for exploration.
  Per ADR 0006, write safety is enforced upstream by the org admin's
  permission-group toggles in *Atlassian Administration → Rovo MCP
  server*, not by this snippet.
- `SPEC.md`, `README.md`, `CHANGELOG.md`.

### Pending (delivered in 0.2.0)
- `skills/atlassian/SKILL.md` — see 0.2.0.
- `prompts/spec-from-ticket.md` — see 0.2.0.

[0.1.0]: https://github.com/honzanemecek/cleepi/releases/tag/%40cleepi%2Fatlassian%400.1.0

### Notes
- No `0.1.0` tag yet — skill and prompt content are still pending.
  Spec status flips to `shipped` when both land and `/spec-from-ticket`
  has been smoke-tested against a real Cleevio ticket.

[Unreleased]: https://github.com/cleevio/cleepi/compare/atlassian-v0.0.0...HEAD
