Reduce the Atlassian skills to Jira, and fix eight broken modules - #1101
Draft
johnml1135 wants to merge 4 commits into
Draft
Reduce the Atlassian skills to Jira, and fix eight broken modules#1101johnml1135 wants to merge 4 commits into
johnml1135 wants to merge 4 commits into
Conversation
confluence_comments, confluence_labels, confluence_pages, jira_agile, jira_links, jira_projects, jira_workflow and jira_worklog all raised NameError on import: Optional or AtlassianCredentials was referenced by a surviving function signature but missing from the import lines. Eight of the twelve read-only modules were therefore unreachable, and callers had to fall back to the write skill for reads. The read-only variant looks generated from the write variant by stripping write functions, with the stripper also pruning those two names. The fix restores them and nothing else. It is an upstream bug and a re-sync will reintroduce it until reported. Verified: all twelve modules in both skills now import, and jira_get_transitions returns live data through the read-only skill. Both skills gain a PROVENANCE.md recording the upstream repository, the MIT declaration, the local modifications, and the Data Center behaviours that upstream's Cloud-oriented docstrings get wrong. Upstream declares MIT in its README but ships no LICENSE file and no copyright line, so the frontmatter reference to LICENSE dangles there as well as here; it is left unchanged to keep this copy diffable. Co-Authored-By: Claude Opus 5 <[email protected]>
johnml1135
marked this pull request as draft
August 21, 2026 15:41
atlassian-readonly-skills/SKILL.md restated all 48 function signatures that REFERENCE.md already documents in the same folder, 237 lines of it, copied from the write variant. It now carries a module-to-function table naming every function the variant has, and points at REFERENCE.md for signatures. 560 lines to 265. The delegation is narrower than it first looked. Only Response Data Structures, Error Handling and Dependencies are byte-identical between the two variants and safe to document once; Configuration, Core Workflow and Philosophy differ, because the write variant carries write examples. Those first two are kept here verbatim rather than delegated, and the file says which is which. Verified: every one of the 48 functions named here is documented in REFERENCE.md, and the list is generated from the scripts themselves rather than from the prose it replaces. Refs LT-22723
This comment has been minimized.
This comment has been minimized.
johnml1135
force-pushed
the
atlassian-skills-fix
branch
from
August 21, 2026 15:54
672dc33 to
dcd60dd
Compare
PROVENANCE.md said this skill had deliberately not been compressed. It has been, in the commit before this one, so the note now records what changed and warns that a re-sync must re-apply it alongside the import fix and the SIL section. The read-only note also cites the upstream issue for the import bug now that one exists: langpingxue/atlassian-skills#14. Refs LT-22723 Co-Authored-By: Claude Opus 5 <[email protected]>
johnml1135
force-pushed
the
atlassian-skills-fix
branch
from
August 21, 2026 15:55
dcd60dd to
26a90ea
Compare
FieldWorks uses Jira and nothing else. Nothing in the repository referenced a Confluence or Bitbucket helper, yet both skills carried full support for them: eight script modules each, their documentation, their configuration blocks, and their plumbing in _common.py. Removed across both variants: the confluence_* and bitbucket_* modules, their SKILL.md and REFERENCE.md sections, the CQL query reference, the partial-service configuration guidance, and in _common.py the dataclass fields, is_*_available checks, get_*_client factories and the service branches in AtlassianConfig.from_credentials. Streamlined what remained rather than leaving holes. Configuration is now two short modes, SIL Data Center first, with Jira Cloud kept only for completeness. Core Workflow, the agent-mode example and the credentials reference were rewritten around Jira instead of having their other two thirds cut out. Both frontmatter descriptions claimed Confluence and Bitbucket support, so they are rewritten too. A description that overstates what a skill does is how the wrong skill gets loaded. Verified: zero Confluence or Bitbucket references remain outside the provenance notes. All 9 modules in each skill import, and a live read against SIL Jira through the read-only skill still works. Refs LT-22723
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #1101 +/- ##
=======================================
Coverage 38.33% 38.34%
=======================================
Files 1507 1507
Lines 350580 350580
Branches 40293 40293
=======================================
+ Hits 134410 134426 +16
+ Misses 186941 186925 -16
Partials 29229 29229 🚀 New features to boost your workflow:
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The two Atlassian skills supported Jira, Confluence and Bitbucket. FieldWorks uses Jira. Confluence and Bitbucket are gone — 4,362 deletions against 293 insertions — and eight modules that never worked are fixed.
Start here:
.claude/skills/atlassian-skills/SKILL.md— the Configuration and Core Workflow sections show the shape of the whole change.Where to look:
NameErroron import, so any read through them failed and callers had to reach into the write skill to do a read. Cause is an upstream generator bug: the read-only variant is produced by stripping write functions, and the stripper also prunedOptionalandAtlassianCredentialsfrom imports while surviving signatures still referenced them. Reported as langpingxue/atlassian-skills#14._common.py: dataclass fields,is_*_available,get_*_client, and the service branches infrom_credentials. Zero references remain outside the provenance notes.REFERENCE.mdalready documents. Now a generated module-to-function index.Deliberately not here:
_common.pykeeps itscheck_available_skillsmachinery even though only one service can now be unavailable. It is load-bearing for the credentials path and cheap to leave.Verification: all 9 modules in each skill import (8 were broken); a live
jira_get_issue('LT-22723')andjira_get_transitionsboth succeed through the read-only skill — previously impossible; zero Confluence/Bitbucket references outsidePROVENANCE.md.gitlintclean. Nobuild.ps1/test.ps1: Python utilities outside the build, no compiled code.Next: review and merge — independent of #1098/#1099/#1100/#1102, touching none of their files.
Size before and after
atlassian-skills(md + py)atlassian-readonly-skills(md + py)SKILL.mdspecifically: write variant 741 → 382 lines, read-only 560 → 148.What the licence investigation found
Both skills carry
license: Complete terms in LICENSEin frontmatter, which is what stopped an earlier pass from touching them at all. Checking properly:LICENSEfile upstream?LICENSEfile here?MIT permits modification, so the earlier caution was unnecessary. The attribution it does ask for was missing and now exists as
PROVENANCE.mdin each skill. Since upstream names no copyright holder, a verbatim MIT text could not honestly be authored on their behalf; the provenance files record the declaration and its gaps instead.This is now a hard fork. A re-sync is no longer a merge — upstream becomes a source to cherry-pick Jira fixes from.
PROVENANCE.mdsays so.Data Center gotchas captured while investigating
Upstream's docstrings describe Jira Cloud; SIL's instance is Data Center. Three that silently disagree, now in
atlassian-skills/PROVENANCE.md:assigneewants a username, not anaccountId.jira_create_issueandjira_update_issueboth send{"accountId": ...}, which Data Center rejects. Passcustom_fields={"assignee": {"name": "<username>"}}.custom_fields={"versions": [{"name": "FW 9.3"}]}.resolutioncannot be set by an update — not on the edit screen; only a transition sets it.Each was found by hitting it. They are duplicated into
jira-issue/references/publish.mdon #1098, where someone working an LT ticket looks first.This change is