Skip to content

Releases: ddv1982/json-analyzer

JSON Analyzer v0.1.16 - The Window Finds Its Color

Choose a tag to compare

@github-actions github-actions released this 12 Jun 09:51

JSON Analyzer v0.1.16 - The Window Finds Its Color

The Quest

The desktop shell had become cleaner and more native, but the shared palette still felt too gray for daily work. This release gives the app more color, depth, and contrast in both light and dark mode while keeping the analyzer and curl workflows unchanged.

What Awoke

  • Light mode now uses cooler ink neutrals, a soft multi-stop page background, stronger panel separation, and more vivid primary actions.
  • Dark mode now uses deeper ink surfaces, brighter text ramps, teal accents, and clearer control and panel boundaries.
  • Shared semantic tokens now carry richer success, warning, danger, and info colors across JSON Analyzer and Curl Executor views.
  • The fallback sRGB palette and the modern OKLCH/color-mix palette were updated together so older WebView engines keep the same visual direction.
  • Focus rings, shadows, button hover colors, segment tracks, editor surfaces, and code backgrounds now align with the refreshed color system.

Runes of Assurance

  • pnpm run release:verify passed, including baseline capture, Rust checks, frontend checks, Tauri checks, and the no-bundle release build.
  • pnpm --dir frontend typecheck passed.
  • pnpm --dir frontend validate:csp passed.
  • pnpm --dir frontend build passed.
  • pnpm --dir frontend test App.shell-theme.test.tsx passed.
  • Browser smoke on http://127.0.0.1:5173/ covered JSON Analyzer and Curl Executor in light and dark mode, including populated analysis results.

Known Boundaries

  • This release is a visual polish release; analyzer, duplicate, values, curl, and packaging command contracts are unchanged.
  • Manual packaged desktop smoke remains the final check for generated release artifacts.
  • The APT repository currently publishes Linux amd64 packages only.

JSON Analyzer v0.1.15 - The Window Learns Its Native Light

Choose a tag to compare

@github-actions github-actions released this 11 Jun 22:10

JSON Analyzer v0.1.15 - The Window Learns Its Native Light

The Quest

The app had the shape of the target workflow, but its surfaces still carried older weight: heavier buttons, sharper color seams, and popovers that depended too much on glass effects. This release gives the desktop window a quieter native rhythm while preserving the analyzer's existing command paths.

What Awoke

  • The app shell, header, segmented controls, tabs, cards, and shared actions now use a macOS-inspired neutral palette and lighter typography.
  • Light and dark themes now share updated system color tokens, shadows, focus rings, and font stacks.
  • Primary actions now use dedicated accessible action colors instead of inheriting the brighter accent blue directly.
  • Sticky desktop headers now use a translucent backdrop with an opaque fallback when blur is unavailable.
  • Theme and dropdown popovers now get the same opaque fallback path when backdrop filtering is unsupported.
  • JSON analysis, Values, Duplicates, and Curl styling now read from the refreshed shared token system without changing command behavior.

Runes of Assurance

  • pnpm run release:verify passed, including baseline capture, Rust checks, frontend checks, Tauri checks, and the no-bundle release build.
  • npm --prefix frontend run build passed.
  • npm --prefix frontend run lint -- --max-warnings=0 passed.
  • git diff --check passed.
  • Primary action contrast was checked at 5.42:1 for normal state and 6.87:1 for hover state against white text.
  • Browser smoke on http://127.0.0.1:5173/ covered the refreshed desktop shell, primary action styling, theme menu layering, and mobile stacked header behavior.

Known Boundaries

  • This release is a visual polish release; analyzer, duplicate, values, curl, and packaging command contracts are unchanged.
  • Manual packaged desktop smoke remains the final check for generated release artifacts.
  • The APT repository currently publishes Linux amd64 packages only.

JSON Analyzer v0.1.14 - The Release Bell Finds Its Rope

Choose a tag to compare

@github-actions github-actions released this 09 Jun 14:52

JSON Analyzer v0.1.14 - The Release Bell Finds Its Rope

The Quest

The forge could build a release when the right tag arrived, but a missed GitHub release had no clean path back. This release gives the release bell a visible rope: an existing tag can now be sent through the Release workflow from GitHub Actions, while the normal tag-push path remains unchanged.

What Awoke

  • The Release workflow can now be run manually with an existing vX.Y.Z tag.
  • Release jobs now resolve and reuse one RELEASE_TAG value across validation, draft creation, asset uploads, and final publishing.
  • Manual recovery now checks that the requested tag exists and still has a successful CI run with the required release artifacts.
  • Existing releases are no longer forced back to draft when a recovery run updates notes or uploads missing assets.
  • The release checklist now explicitly includes pushing the version tag and describes the CI artifact requirement for manual recovery.

Runes of Assurance

  • pnpm -C frontend run typecheck passed.
  • pnpm -C frontend run lint passed.
  • pnpm -C frontend run test passed with 127 tests.
  • ruby -e 'require "yaml"; YAML.load_file(".github/workflows/release.yml"); puts "release workflow YAML parsed"' passed.
  • git diff --check passed.
  • The release workflow diff was reviewed after the draft-preservation fix.

Known Boundaries

  • Manual release recovery still depends on non-expired CI artifacts for the tagged commit.
  • If release artifacts have expired, a fresh release commit or CI artifact rebuild is still required.
  • actionlint was not available on this workstation, so GitHub Actions semantic linting was not run locally.
  • Rust format, clippy, and test checks could not be run on this workstation because cargo and rustfmt were not available on PATH.

JSON Analyzer v0.1.13 - The Empty Scroll Invites the Paste

Choose a tag to compare

@github-actions github-actions released this 08 Jun 21:15

JSON Analyzer v0.1.13 - The Empty Scroll Invites the Paste

The Quest

The Curl Executor had learned to suggest better batch values, but its command editor still arrived already filled. That made guidance look like user input. This release restores the expected rhythm: the editor starts empty, the placeholder shows the Postman-style cURL shape, and execution waits for the user to paste the request they actually want to run.

What Awoke

  • Curl Executor now opens with an empty curl command field instead of preloaded sample text.
  • The full Postman-style cURL example now lives in the curl command placeholder.
  • Execute stays disabled until the user enters a real curl command.
  • Clear no longer appears active in single-request mode only because hidden batch example values exist.
  • Curl workflow tests now assert the empty initial editor, placeholder guidance, and execution after pasting the sample.

Runes of Assurance

  • npm --prefix frontend run test -- App.curl.test.tsx passed with 39 tests.
  • npm --prefix frontend run typecheck passed.
  • npm --prefix frontend run lint passed.
  • npm --prefix frontend run build passed.
  • git diff --check passed.

Known Boundaries

  • Batch replacement remains intentionally raw and exact. Users should provide already-encoded values for URL paths or query strings.
  • Example generation is shape-based only; it does not infer route semantics or API-specific entity names.
  • Rust format, clippy, and test checks could not be run on this workstation because cargo and rustfmt were not available on PATH.
  • Curl jobs remain in-memory only; durable job history is still deferred.
  • The APT repository currently publishes Linux amd64 packages only.

JSON Analyzer v0.1.12 - The Batch Compass Learns the Shape

Choose a tag to compare

@github-actions github-actions released this 08 Jun 20:43

JSON Analyzer v0.1.12 - The Batch Compass Learns the Shape

The Quest

Batch mode no longer needed only to be general-purpose; it needed to feel obvious before the first request was sent. The old 1 and 2 sample values were too vague for real REST work, especially when a pasted Postman curl already showed whether the selected target looked like a UUID, number, email, date, slug, or token.

What Awoke

  • Curl Executor now starts with neutral UUID-style batch examples instead of ambiguous numeric placeholders.
  • Batch setup now generates editable example values from the selected URL path segment or query parameter shape.
  • Generated examples cover UUIDs, integers, email addresses, dates, timestamps, slugs, token-like values, encoded query values, empty values, and unknown strings.
  • User-entered batch values are preserved when switching batch targets; generated examples update only while the field is still auto-managed.
  • Clearing the form now resets the auto-example tracker so a newly pasted curl can repopulate smart examples correctly.
  • Stale domain-specific wording was removed from touched docs so Curl Executor remains framed as a generic REST API tool.

Runes of Assurance

  • npm --prefix frontend run test -- App.curl.test.tsx src/components/curl-executor/utils.test.ts passed with 49 tests.
  • npm --prefix frontend run typecheck passed.
  • npm --prefix frontend run lint passed.
  • npm --prefix frontend run test passed with 127 tests.
  • npm --prefix frontend run build passed.
  • git diff --check passed.
  • Neutral-language scans found no blocked domain-specific wording in source, tests, docs, release notes, README, or package metadata touched by this release.

Known Boundaries

  • Batch replacement remains intentionally raw and exact. Users should provide already-encoded values for URL paths or query strings.
  • Example generation is shape-based only; it does not infer route semantics or API-specific entity names.
  • Rust format, clippy, and test checks could not be run on this workstation because cargo and rustfmt were not available on PATH.
  • Curl jobs remain in-memory only; durable job history is still deferred.
  • The APT repository currently publishes Linux amd64 packages only.

JSON Analyzer v0.1.11 - The Curl Lens Sharpens

Choose a tag to compare

@github-actions github-actions released this 08 Jun 19:18

JSON Analyzer v0.1.11 - The Curl Lens Sharpens

The Quest

Curl Executor had become general-purpose, but the last steps still needed a sharper eye. HTTP errors should be visible responses, and batch setup should make common path and query replacements easy without guessing domains or mutating the wrong URL.

What Awoke

  • Single curl execution now shows non-2xx HTTP responses with status, headers, formatted body preview, copy response, and copy details instead of treating them as missing-url or parse failures.
  • Batch setup can detect URL path segments and query parameters from the actual request URL and insert generic placeholders for selected targets.
  • Query-parameter insertion now preserves raw URL text, duplicate parameter order, encoded names, fragments, empty values, and valueless parameters.
  • Curl URL detection now follows a span-aware argument parser for supported curl options, including quoted and inline --url values, multiline Postman curl commands, and safe rejection of ambiguous unsupported URL options.
  • Batch result handling now counts HTTP 4xx and 5xx responses as failed items while preserving their response payloads and input value traceability.
  • Curl response spacing, typography, status badges, and body previews were tightened for easier scanning.

Runes of Assurance

  • pnpm -C frontend run test -- App.curl.test.tsx --runInBand passed with 114 tests.
  • pnpm -C frontend run typecheck passed.
  • pnpm -C frontend run lint passed.
  • pnpm -C frontend run build passed.
  • git diff --check passed.
  • Neutral-language scans found no domain-specific wording in curl-related implementation and tests.

Known Boundaries

  • Rust format, clippy, and test checks could not be run on this workstation because cargo and rustfmt were not available on PATH.
  • Batch replacement remains intentionally raw and exact. Users should provide already-encoded values for URL paths or query strings.
  • Curl jobs remain in-memory only; durable job history is still deferred.
  • The APT repository currently publishes Linux amd64 packages only.

JSON Analyzer v0.1.10 - The Curl Path Widens

Choose a tag to compare

@github-actions github-actions released this 08 Jun 16:25

JSON Analyzer v0.1.10 - The Curl Path Widens

The Quest

Curl Executor could walk one known path, but batch runs still carried old assumptions in their pack. A pasted Postman curl should be enough: the user chooses the variable, provides values, and the app expands the run without guessing domains, identifiers, or private business language.

What Awoke

  • Curl batch jobs now use one curl command plus an explicit placeholder and input values instead of a pre-expanded curl list.
  • Batch expansion is owned by the Rust job service, including placeholder validation, generated-curl parsing, input value tracking, size limits, large-batch confirmation, and bounded concurrency.
  • Batch mode now keeps the curl editor visible, detects generic {name} placeholders, previews the first generated request, and explains exact raw replacement.
  • Single curl execution now renders the request method and URL alongside status, elapsed time, headers, body preview, and copy actions.
  • Batch results now show generic input values, merged successful payload copying, and grouped errors tied to affected input values.
  • Curl private-network policy is configurable and now defaults to allowing private/internal targets unless strict mode is enabled by environment.
  • The default single-request sample is a normal executable-looking curl; batch examples opt into placeholders explicitly.

Runes of Assurance

  • pnpm -C frontend run typecheck passed.
  • pnpm -C frontend run lint passed.
  • pnpm -C frontend run test -- --runInBand passed with 94 tests.
  • pnpm -C frontend run build passed.
  • git diff --check passed.
  • Neutral-language scans found no domain-specific wording in the implementation, tests, README, decision docs, or release notes touched by this release.

Known Boundaries

  • Rust format, clippy, and test checks could not be run on this workstation because cargo and rustfmt were not available on PATH.
  • Curl jobs remain in-memory only; durable job history is still deferred.
  • Batch replacement is intentionally raw and exact. Users should provide already-encoded values for URL paths or query strings.
  • The APT repository currently publishes Linux amd64 packages only.

JSON Analyzer v0.1.9 - The Quiet Path Opens

Choose a tag to compare

@github-actions github-actions released this 08 Jun 12:47

JSON Analyzer v0.1.9 - The Quiet Path Opens

The Quest

The repository gate was sound, but its footpath was too narrow. The installer verified the setup package correctly and enabled the APT source, yet APT could not let its _apt sandbox step through the private temporary directory that held the local setup package. The install completed, but the road ended with a warning that looked sharper than it was.

What Awoke

  • The APT repository installer now keeps signature, checksum, keyring, and GnuPG work inside the private verification directory.
  • The local repository setup .deb is now placed in a separate /tmp install directory that APT's _apt sandbox can traverse.
  • The setup package remains world-readable only for the short install window, and cleanup removes both temporary directories on exit.
  • The README latest/download/install-apt-repo.sh path will pick up this quieter installer once the release assets are published.

Runes of Assurance

  • sh -n scripts/install-apt-repo.sh passed.
  • git diff --check passed.
  • A simulated release substitution with the live APT signing fingerprint kept the pinned fingerprint intact.
  • Temporary directory permissions were sanity checked so verification files stay private while the local .deb path is _apt-readable.

Known Boundaries

  • The exact _apt notice could not be reproduced on the local macOS workstation; hosted Linux release validation remains the final build proof.
  • This release changes installer behavior only; application UI, parsing, PDF export, auto-update metadata, and Windows signing remain unchanged.
  • The APT repository currently publishes Linux amd64 packages only.

JSON Analyzer v0.1.8 - The Pinned Key Holds

Choose a tag to compare

@github-actions github-actions released this 08 Jun 12:19

JSON Analyzer v0.1.8 - The Pinned Key Holds

The Quest

The release road found a quiet trap in its own warding. The installer carried the trusted APT signing key into the published asset, then mistook that same key for an unreplaced placeholder and erased it before verification could begin. This release reforges that check so the pinned key remains pinned.

What Awoke

  • The APT repository installer template now keeps its placeholder sentinel separate from the release-injected signing fingerprint.
  • The Linux release workflow now renders install-apt-repo.sh into a dedicated release asset directory instead of mutating the source template in place.
  • Release validation now checks the generated installer asset directly, including shell syntax, absence of the raw placeholder, presence of the injected fingerprint, and protection against clearing that fingerprint.
  • Linux release asset upload now publishes the generated installer from release-assets/, matching the file that validation inspected.

Runes of Assurance

  • sh -n scripts/install-apt-repo.sh passed.
  • A simulated release substitution with the live APT signing fingerprint kept the default fingerprint and did not create a self-clearing sentinel check.
  • .github/workflows/release.yml parsed as YAML.
  • git diff --check passed for the installer and release workflow changes.

Known Boundaries

  • The hosted release workflow remains the final proof that GitHub Pages, release assets, and package signing all converge.
  • Existing broken installer assets from older releases still need to be replaced by publishing this release.
  • The APT repository currently publishes Linux amd64 packages only.
  • PDF export UI, auto-update metadata, and Windows signing remain outside this release.

JSON Analyzer v0.1.7 - The Ledger Learns Its Shape

Choose a tag to compare

@github-actions github-actions released this 06 Jun 13:41

JSON Analyzer v0.1.7 - The Ledger Learns Its Shape

The Quest

The release road is no longer only about proving packages. This release turns inward and pays down the complexity that had gathered around the app: broad frontend files are split into clearer rooms, browser mocks become command-family ledgers, and the release gate gains a repeatable baseline before the next feature push.

What Awoke

  • Values Explorer now lives as a stateful controller with focused panels, icons, types, and pure helpers instead of one broad component.
  • Curl Executor now follows the same shape, with response, job, and error panels separated from execution state.
  • The app stylesheet is split into ordered domain files under frontend/src/styles/app/, while app.css remains the cascade manifest.
  • Browser mocks are split into analysis, curl, config, and problem modules while preserving the public mock dispatcher.
  • Release discipline now has pnpm baseline, pnpm run release:verify, and a release-candidate checklist.
  • Values Explorer large-result pagination and curl relative same-origin redirect behavior both gained regression coverage.
  • Tauri capability auditing now requires the allowed command list to exactly match the app command set.

Runes of Assurance

  • pnpm run release:verify passed before the release cut, including baseline capture, pnpm check, and the no-bundle Tauri release build.
  • Browser smoke on http://127.0.0.1:5173/ covered Analyze, Values Explorer, Curl Executor, light theme, dark theme, console errors, and horizontal overflow.
  • Focused frontend, Rust, and capability checks passed during implementation before the final integrated gate.

Known Boundaries

  • The packaged desktop light/dark manual smoke remains a release-candidate validation step for generated artifacts.
  • The APT repository currently publishes Linux amd64 packages only.
  • Curl jobs remain in-memory only; durable job history is still deferred.
  • PDF export UI, auto-update metadata, and Windows signing remain outside this release.