Skip to content

RELEASE_NOTES

2000433 edited this page Jun 16, 2026 · 1 revision

SmartScript for Jira — Release Notes

June 2026 Feature Release

This release expands SmartScript from a script editor and template runner into a safer automation workspace for Jira administrators. The focus is practical power features, rollback safety, and clearer import/export behavior.

Highlights

  • Version history and restore: SmartScript keeps the most recent 5 previous versions of each script. Use History to review earlier saved versions and restore one when needed.
  • Export and import: Use Export to download all scripts as JSON and Import to restore a SmartScript export.
  • Safer import validation: Import now rejects text files, malformed JSON, unrelated JSON arrays, unsupported trigger types, and script objects missing required fields. Invalid files show Failed to import scripts (invalid file?) instead of appearing to import successfully.
  • New createIssue helper: Scripts can create standalone Jira issues with createIssue(projectKey, dataJson, callback). SmartScript adds the project and defaults the issue type to Task unless the script overrides it.
  • Consistent sandbox validation: Manual Run/mock mode now validates malformed JSON for createIssue and createSubtask the same way live execution does, returning { error: "Invalid JSON: ..." } instead of a mock success.
  • More advanced templates: The built-in template library now includes 23 templates, including regular-expression issue linking, JQL loop escalation, and release checklist generation with createIssue.
  • English scheduler guidance: The Cron Schedule helper text is now in English and clarifies the Forge one-hour minimum interval.

New Script Helper

createIssue(projectKey, dataJson, callback)

Creates a standalone Jira issue in the given project.

var data = JSON.stringify({
    summary: "Follow up from automation",
    description: "Created by SmartScript",
    issuetype: { name: "Task" }
});

createIssue("TEST", data, function(res) {
    if (res.error) {
        console.log("Create failed: " + res.error);
    } else {
        console.log("Created issue: " + res.key);
    }
});

Malformed JSON returns an error:

createIssue("TEST", "{oops", function(res) {
    console.log(JSON.stringify(res));
});

Expected callback shape:

{
  "error": "Invalid JSON: ..."
}

New Built-In Templates

Template Trigger What it demonstrates
Link Issues Mentioned in Summary (Regex) Issue Created Parses multiple issue keys from summary text and links them with a regular expression loop.
Bulk Escalate Overdue Issues (JQL Loop) Scheduled Run Runs a JQL search, loops over matching issues, comments, and transitions each issue.
Generate Release Checklist (createIssue) Manual Creates multiple standalone checklist issues in one script using createIssue.

Version History

Version history is stored per script:

  • The latest 5 previous versions are retained.
  • A version is captured when an existing script is saved.
  • Restoring a version makes that saved version the current script.
  • Deleting a script deletes its stored version history.

Import and Export Notes

Use export/import for backup, migration between environments, or sharing script sets.

The import file must be a JSON array of SmartScript script objects. Each object must include:

  • id
  • name
  • description
  • code
  • triggerType
  • isActive
  • createdAt
  • updatedAt

Optional supported fields include cronSchedule and projectKeys.

Limits and Compatibility

  • Scripts still run in an ES5-only JavaScript sandbox.
  • Scheduled scripts still run through Forge's hourly scheduled trigger, then SmartScript checks the script's five-field UTC cron expression.
  • comment_created triggers are still not supported.
  • User scripts still cannot call arbitrary outbound HTTP APIs.

Clone this wiki locally