Separate the customer document workspace and developer platform while sharing Bookcicle accounts, subscriptions, and AI budgets.
Changes
- Compare Word and searchable PDF documents without creating an account.
- Save comparisons in your personal document library, organize folders, and return to earlier versions.
- Use your existing subscriber AI allowance for summaries and create Word documents with tracked changes.
- Keep access to saved comparisons, summaries, and exports after downgrading.
- See available comparison text even when a page preview is unavailable.
Separate the customer document workspace and developer platform while sharing Bookcicle accounts, subscriptions, and AI budgets.
Changes
- Compare Word and searchable PDF documents without creating an account.
- Save comparisons in your personal document library, organize folders, and return to earlier versions.
- Use your existing subscriber AI allowance for summaries and create Word documents with tracked changes.
- Keep access to saved comparisons, summaries, and exports after downgrading.
- See available comparison text even when a page preview is unavailable.
Preserves system theme preference across embeds, makes compare toolbar compact, adds high-contrast syntax highlighting in light mode, implements Word Track Changes job polling in docx compare view, and adds zoom/layout controls with prominent change highlights to the page render view.
Fixed
- Embedded iframes (/embed/*) and demo showcases now apply theme classes and CSS color-scheme locally to their document root without mutating parent localStorage[bookcicleTheme].
- Standalone Redline now honors and dynamically tracks OS prefers-color-scheme changes when in system mode.
- Resolved an unhandled ReferenceError in playground text comparisons that occurred when mounting source pages on non-document diffs.
- Word Track Changes export polling in docx compare view now polls job completion and exposes the download link when ready instead of remaining queued indefinitely.
- Syntax highlighting tokens in light mode now use WCAG AAA accessible color variables while preserving dark terminal colors in dark mode and playground code blocks.
Changed
- Comparison document toolbar and track changes banner now feature a compact, streamlined layout preventing metadata collisions and overflow on narrower viewports.
- Page render view now includes Side-by-Side and Single Column (Large) view modes, interactive zoom controls (Fit, 100%, 125%, 150%+), high-visibility outlines on change marks, and per-page change count badges.
Validation
- Playwright E2E and Jest unit test suites verify system theme persistence, embed style scoping, page rendering controls, and document comparisons across all supported formats.
- repo
- bookcicle/ui
Preserves system theme preference across embeds, makes compare toolbar compact, adds high-contrast syntax highlighting in light mode, implements Word Track Changes job polling in docx compare view, and adds zoom/layout controls with prominent change highlights to the page render view.
Fixed
- Embedded iframes (/embed/*) and demo showcases now apply theme classes and CSS color-scheme locally to their document root without mutating parent localStorage[bookcicleTheme].
- Standalone Redline now honors and dynamically tracks OS prefers-color-scheme changes when in system mode.
- Resolved an unhandled ReferenceError in playground text comparisons that occurred when mounting source pages on non-document diffs.
- Word Track Changes export polling in docx compare view now polls job completion and exposes the download link when ready instead of remaining queued indefinitely.
- Syntax highlighting tokens in light mode now use WCAG AAA accessible color variables while preserving dark terminal colors in dark mode and playground code blocks.
Changed
- Comparison document toolbar and track changes banner now feature a compact, streamlined layout preventing metadata collisions and overflow on narrower viewports.
- Page render view now includes Side-by-Side and Single Column (Large) view modes, interactive zoom controls (Fit, 100%, 125%, 150%+), high-visibility outlines on change marks, and per-page change count badges.
Validation
- Playwright E2E and Jest unit test suites verify system theme persistence, embed style scoping, page rendering controls, and document comparisons across all supported formats.
- repo
- bookcicle/ui
Start with a compact file picker, then review changes in the document dashboard.
Changes
- Make the document picker tiles smaller while keeping clear labels and visible file names.
- Center comparison and save messages with comfortable spacing and readable wrapping.
- Open completed comparisons directly in the document dashboard with a collapsed sidebar and a plus button for another comparison.
- Let guests review pages and accept or reject text edits locally; sign in to save, manage documents, and request supported subscriber artifacts.
- Keep local review choices separate from the original saved comparison and Word artifact.
Start with a compact file picker, then review changes in the document dashboard.
Changes
- Make the document picker tiles smaller while keeping clear labels and visible file names.
- Center comparison and save messages with comfortable spacing and readable wrapping.
- Open completed comparisons directly in the document dashboard with a collapsed sidebar and a plus button for another comparison.
- Let guests review pages and accept or reject text edits locally; sign in to save, manage documents, and request supported subscriber artifacts.
- Keep local review choices separate from the original saved comparison and Word artifact.
Start with a compact file picker, then review changes in the document dashboard.
Changes
- Make the document picker tiles smaller while keeping clear labels and visible file names.
- Center comparison and save messages with comfortable spacing and readable wrapping.
- Open completed comparisons directly in the document dashboard with a collapsed sidebar and a plus button for another comparison.
- Let guests review pages and accept or reject text edits locally; sign in to save, manage documents, and request supported subscriber artifacts.
- Keep local review choices separate from the original saved comparison and Word artifact.
Remediated security finding R01 by replacing predictable fallback signing derivations with Secrets Manager-backed HMAC-SHA-256 tokens and fail-closed key validation.
Security
- Removed predictable signing fallback derivation from bucket and environment names.
- Implemented RFC 2104 / RFC 4231 HMAC-SHA-256 v2 tokens with explicit key ID, expiration, clock skew bounding, and constant-time signature verification.
- Configured Secrets Manager resolution with fail-closed semantics for missing or malformed keys.
- Restricted sample and demo bypasses to an exact approved synthetic fixture allowlist.
- repo
- bookcicle/ui
- issue
- https://github.com/bookcicle/ui/issues/1052
Document comparison services receive hardened viewer credentials, protected diagnostics, and fail-closed request admission.
Security
- Shared comparison viewers require secure, scoped credentials with expiration and audience validation.
- Document diagnostics and authentication details are protected from application logs.
- Comparison admission fails safely when its shared rate limiter is unavailable.
Operations
- Dependency and image security checks protect the released comparison services.
- Production alarm routing is verified with the service configuration before traffic is advanced.
- repo
- bookcicle/ui
- component Sources
- [object Object]
Compare HTML, DOCX, and text-based PDF documents, review changes, and integrate comparison into your application.
Added
- Document comparison with change navigation, deterministic comparison statistics, and embeddable views.
- Track Changes review controls and integration callbacks for supported review workflows.
- API access and subscriber Word exports, with account plan controls and usage information.
- Optional document source-page previews provide a read-only view alongside the comparison.
Improved
- DOCX and PDF comparisons preserve document structure and source pages more faithfully, with automatic HTML recovery where needed.
- Each comparison format keeps its own inputs and results.
- Developer documentation includes search, stable section links, and improved mobile navigation.
- Page controls, zoom, theme handling, comparison highlights, and loading states are clearer and more responsive.
- Word Track Changes downloads show their preparation state and follow the correct download route.
- Comparison and optional page-rendering timings are shown separately.
Security
- Shared document viewing requires secure, scoped credentials, and comparison diagnostics protect document content and authentication details.
Availability
- DOCX comparison is in Early Access. Scanned-document OCR and visual image comparison are not included.
- Public one-time Word downloads and AI-generated comparison summaries are not part of this launch.
- repo
- bookcicle/ui
- candidate Seed
- 08e1368fa284cd1cf4a4f6368cc2ff9c441ec489
- component Sources
- [object Object]
Project and billing services are prepared for the Studio and Redline production origins.
Compatibility
- Account and billing services admit only the matching customer and developer origins in each environment.
- Overage processing uses existing Stripe subscriptions and retains subscription identity through webhook updates.
- Membership-period quota activation remains disabled until the coordinated production check passes.
- repo
- bookcicle/ui
Redline policies are available directly on the site.
Added
- Dedicated Privacy Policy, Terms of Service, Cookie Policy and Security views with local navigation and direct links.
- Security includes SOC 2 Type II readiness status and makes clear that no SOC 2 examination has been completed.
- Policies describe comparison retention, shared-link access and privacy choices without implementation details.
- Completed shared controller and release compatibility checks for the policy rollout.
- Policy section links retain their page during initial navigation and loading.
- Clarified encryption for service endpoint connections and the stronger protection for supported credential values.
- repo
- bookcicle/ui
Redline policies are available directly on the site.
Added
- Dedicated Privacy Policy, Terms of Service, Cookie Policy and Security views with local navigation and direct links.
- Security includes SOC 2 Type II readiness status and makes clear that no SOC 2 examination has been completed.
- Policies describe comparison retention, shared-link access and privacy choices without implementation details.
- Completed shared controller and release compatibility checks for the policy rollout.
- Policy section links retain their page during initial navigation and loading.
- Clarified encryption for service endpoint connections and the stronger protection for supported credential values.
- repo
- bookcicle/ui
Public copy focuses on capabilities and documented API behavior.
Improved
- Removed implementation details from homepage and docs copy, demo content, historical release notes and public benchmark downloads. Timing observations are unchanged.
- Page-preview identifiers, including built-in samples, use product terminology. The viewer supports existing identifiers and continues to show layout guidance.
- Generated previews and built-in sample downloads use product branding while retaining the document’s title, author and other descriptive metadata. Original PDFs remain unchanged.
- repo
- bookcicle/ui
Public copy focuses on capabilities and documented API behavior.
Improved
- Removed implementation details from homepage and docs copy, demo content, historical release notes and public benchmark downloads. Timing observations are unchanged.
- Page-preview identifiers, including built-in samples, use product terminology. The viewer supports existing identifiers and continues to show layout guidance.
- Generated previews and built-in sample downloads use product branding while retaining the document’s title, author and other descriptive metadata. Original PDFs remain unchanged.
- repo
- bookcicle/ui
Unified advanced options collapsible panel on playground with complete visual page renders and pre-built tracked changes Word document downloads for built-in samples.
Improved
- Grouped visual page rendering and Word Track Changes export options into matching rows within an 'Advanced options' collapsible panel in the playground.
- Embedded complete document page previews and a Word Track Changes download for built-in samples, ensuring CSP compliance without blob URLs.
- Enabled visual page comparison preview for default built-in document samples (DOCX and PDF) when page rendering is checked, rendering side-by-side pages with highlighted insertions and deletions.
- Added instant pre-built Word Track Changes (.docx) download for the built-in service agreement sample without waiting for document processing.
Testing and validation
- Added E2E coverage asserting visual page rendering and instant pre-built Word Track Changes export on built-in samples without API or upload calls.
- Verified anonymous access preserves disabled export controls while allowing visual page rendering.
- repo
- bookcicle/ui
Unified advanced options collapsible panel on playground with complete visual page renders and pre-built tracked changes Word document downloads for built-in samples.
Improved
- Grouped visual page rendering and Word Track Changes export options into matching rows within an 'Advanced options' collapsible panel in the playground.
- Embedded complete document page previews and a Word Track Changes download for built-in samples, ensuring CSP compliance without blob URLs.
- Enabled visual page comparison preview for default built-in document samples (DOCX and PDF) when page rendering is checked, rendering side-by-side pages with highlighted insertions and deletions.
- Added instant pre-built Word Track Changes (.docx) download for the built-in service agreement sample without waiting for document processing.
Testing and validation
- Added E2E coverage asserting visual page rendering and instant pre-built Word Track Changes export on built-in samples without API or upload calls.
- Verified anonymous access preserves disabled export controls while allowing visual page rendering.
- repo
- bookcicle/ui
Added a responsive spinner glyph and active state when clicking Word Track Changes downloads, and provided immediate status feedback while exports are prepared.
Added
- Added .rl-spinner-glyph animation and active downloading state to Word Track Changes download buttons, showing real-time visual feedback upon click before smoothly resetting.
- Displayed immediate 'Preparing' status badges with animated spinner glyphs inside the Track Changes banner during document comparison so users are continuously informed while exports are generated.
Improved
- Enhanced playground and DOCX comparison lanes to retain the Word Track Changes status banner with active preparation indicators rather than leaving the interface in a suspended state prior to download availability.
- Added spinner glyph indicators to queued and processing polling states for background Word export jobs.
- repo
- bookcicle/ui
Added a responsive spinner glyph and active state when clicking Word Track Changes downloads, and provided immediate status feedback while exports are prepared.
Added
- Added .rl-spinner-glyph animation and active downloading state to Word Track Changes download buttons, showing real-time visual feedback upon click before smoothly resetting.
- Displayed immediate 'Preparing' status badges with animated spinner glyphs inside the Track Changes banner during document comparison so users are continuously informed while exports are generated.
Improved
- Enhanced playground and DOCX comparison lanes to retain the Word Track Changes status banner with active preparation indicators rather than leaving the interface in a suspended state prior to download availability.
- Added spinner glyph indicators to queued and processing polling states for background Word export jobs.
- repo
- bookcicle/ui
Configured Content-Disposition attachment headers for sample tracked changes documents and streamlined browser download triggers to remain in-page.
Fixed
- Configured explicit Content-Disposition attachment metadata on deployment for sample Word Track Changes documents to guarantee native browser downloads without navigating to fallback routes.
- Prevented single-page routing from intercepting file download links and static asset paths, ensuring that clicking 'Download .docx' triggers native browser attachment downloads instead of navigating to fallback error screens.
- Removed target=_blank from playground and DOCX lane tracked changes download links to retain active session context and prevent stray browser tabs.
- repo
- bookcicle/ui
Configured Content-Disposition attachment headers for sample tracked changes documents and streamlined browser download triggers to remain in-page.
Fixed
- Configured explicit Content-Disposition attachment metadata on deployment for sample Word Track Changes documents to guarantee native browser downloads without navigating to fallback routes.
- Prevented single-page routing from intercepting file download links and static asset paths, ensuring that clicking 'Download .docx' triggers native browser attachment downloads instead of navigating to fallback error screens.
- Removed target=_blank from playground and DOCX lane tracked changes download links to retain active session context and prevent stray browser tabs.
- repo
- bookcicle/ui
Add the separate Redline surfaces and document workspace integration. Deployment remains a separate release step.
Changes
- Unify Word and PDF file selection and keep complete available text comparison content visible when page preview fails.
- Add private expiring save claims, durable personal document metadata, immutable version upload sessions, and conflict-safe head commits.
- Route subscriber summaries through existing shared AI credit and budget checks, and retain generated summaries and Word exports after downgrade.
- Resume supported subscriber actions after confirmed checkout and recover abandoned operations without deleting retained documents.
- Keep storage enforcement disabled and count retained originals and comparisons in existing Bookcicle storage reporting.
Refresh performance documentation from live DEV comparisons and show measured timings separately from buffered expectations.
Documentation
- Live DEV benchmarks cover native DOCX and PDF comparison through HTML/JSON response rendering, plus HTML, Markdown, plain text and JSON snippets.
- Measured server timings remain unchanged. Expected processing figures add a labeled 50 ms buffer to measured p50 values.
- Reports distinguish uploaded and direct inputs, nominal DOCX corpus dimensions, actual PDF page counts, repeated warm requests and concurrent comparisons. Original-page rendering is a separate workload.
Validation
- Performance figures are published only for qualified comparisons from a complete run with verified temporary-account cleanup. Failed qualification cases are disclosed without timing claims. Regression checks validate report calculations and documentation disclosures.
- Benchmark requests disable comparison-cache reuse: snippet responses must confirm the bypass, and native document requests omit idempotency keys.
- repo
- bookcicle/ui
Refresh performance documentation from live DEV comparisons and show measured timings separately from buffered expectations.
Documentation
- Live DEV benchmarks cover native DOCX and PDF comparison through HTML/JSON response rendering, plus HTML, Markdown, plain text and JSON snippets.
- Measured server timings remain unchanged. Expected processing figures add a labeled 50 ms buffer to measured p50 values.
- Reports distinguish uploaded and direct inputs, nominal DOCX corpus dimensions, actual PDF page counts, repeated warm requests and concurrent comparisons. Original-page rendering is a separate workload.
Validation
- Performance figures are published only for qualified comparisons from a complete run with verified temporary-account cleanup. Failed qualification cases are disclosed without timing claims. Regression checks validate report calculations and documentation disclosures.
- Benchmark requests disable comparison-cache reuse: snippet responses must confirm the bypass, and native document requests omit idempotency keys.
- repo
- bookcicle/ui
Review DOCX and PDF comparisons on rendered source pages, with the complete semantic diff available below.
Improved
- Document comparison screens show one selected source page per side with independent page navigation. The playground starts with page previews off and keeps the option separate for each format.
- The API adds pageRendering, default false. PDF previews preserve source pages; DOCX previews render source-page layouts. Preview failures preserve the text result.
- Private page links expire after 15 minutes. Fonts and pagination may differ from Word; repeated text and unmapped changes remain accessible in the complete semantic comparison.
Validation and documentation
- Added page-preview smoke lanes for direct and uploaded DOCX/PDF requests, omitted/false/true options, PDF byte preservation and private retrieval.
- Published fresh uncached DEV timings for snippets, native documents and optional page preparation. Raw observations stay unchanged; planning expectations add a labeled 50 ms buffer.
- Shortened API and engineering guides, folded long examples, and corrected the native JSON, Word export and request-signing explanations.
- repo
- bookcicle/ui
Review DOCX and PDF comparisons on rendered source pages, with the complete semantic diff available below.
Improved
- Document comparison screens show one selected source page per side with independent page navigation. The playground starts with page previews off and keeps the option separate for each format.
- The API adds pageRendering, default false. PDF previews preserve source pages; DOCX previews render source-page layouts. Preview failures preserve the text result.
- Private page links expire after 15 minutes. Fonts and pagination may differ from Word; repeated text and unmapped changes remain accessible in the complete semantic comparison.
Validation and documentation
- Added page-preview smoke lanes for direct and uploaded DOCX/PDF requests, omitted/false/true options, PDF byte preservation and private retrieval.
- Published fresh uncached DEV timings for snippets, native documents and optional page preparation. Raw observations stay unchanged; planning expectations add a labeled 50 ms buffer.
- Shortened API and engineering guides, folded long examples, and corrected the native JSON, Word export and request-signing explanations.
- repo
- bookcicle/ui
Zoom and fit keep the page visible, and document changes align with complete words.
Fixed
- Zoom and fit respond immediately while a sharper page image loads. Rapid navigation keeps the latest selected page.
- DOCX page previews preserve text for combined letters such as ff and ffi, fixing missing address and phone highlights. Page drawing and pagination stay the same.
- Highlights preserve paragraph boundaries and use surrounding text to distinguish a changed phone number from an unchanged footer.
- Large documents find changes in the background while the selected page remains usable. Highlight counts describe mapped areas; the complete text diff remains available.
Improved
- Pricing removes review-mode callouts and lists accept/reject completion webhooks in Creator Pro.
- repo
- bookcicle/ui
Zoom and fit keep the page visible, and document changes align with complete words.
Fixed
- Zoom and fit respond immediately while a sharper page image loads. Rapid navigation keeps the latest selected page.
- DOCX page previews preserve text for combined letters such as ff and ffi, fixing missing address and phone highlights. Page drawing and pagination stay the same.
- Highlights preserve paragraph boundaries and use surrounding text to distinguish a changed phone number from an unchanged footer.
- Large documents find changes in the background while the selected page remains usable. Highlight counts describe mapped areas; the complete text diff remains available.
Improved
- Pricing removes review-mode callouts and lists accept/reject completion webhooks in Creator Pro.
- repo
- bookcicle/ui
Keep page-preparation expectations in the main performance table.
Improved
- Removed the duplicate page-rendering timing block and renderer implementation names from the main docs. The Page Rendering column and API behavior are unchanged.
- Operational limits use a compact accessible table with the same input, upload, billing, timeout and ZIP safeguards.
- Clarified that page previews are read-only: Accept/Reject uses the HTML review viewer, and DOCX tracked revisions can be reviewed in Word.
- repo
- bookcicle/ui
Keep page-preparation expectations in the main performance table.
Improved
- Removed the duplicate page-rendering timing block and renderer implementation names from the main docs. The Page Rendering column and API behavior are unchanged.
- Operational limits use a compact accessible table with the same input, upload, billing, timeout and ZIP safeguards.
- Clarified that page previews are read-only: Accept/Reject uses the HTML review viewer, and DOCX tracked revisions can be reviewed in Word.
- repo
- bookcicle/ui
See how much time document comparison and optional page preparation each take.
Improved
- Document timing displays comparison and page rendering separately. Request overhead uses the full server total.
- With metrics enabled, the API adds comparisonMs and pageRenderingMs. Failed page preparation is measured too; totalMs and diffMs keep their existing meanings.
- Smoke checks verify the timing split for direct and uploaded DOCX/PDF comparisons, with pages enabled and disabled.
- repo
- bookcicle/ui
See how much time document comparison and optional page preparation each take.
Improved
- Document timing displays comparison and page rendering separately. Request overhead uses the full server total.
- With metrics enabled, the API adds comparisonMs and pageRenderingMs. Failed page preparation is measured too; totalMs and diffMs keep their existing meanings.
- Smoke checks verify the timing split for direct and uploaded DOCX/PDF comparisons, with pages enabled and disabled.
- repo
- bookcicle/ui
Page changes load with a shimmer while controls stay usable. Performance docs separate comparison and optional page preparation.
Improved
- Document-wide change matching runs in a background worker. Page drawing, text layout and highlight placement yield between cancellable batches.
- Page navigation shows a loading shimmer, preserves the visible page and commits only the latest selection. Reduced-motion preferences are respected.
- Performance tables show expected processing times with a separate optional Page Rendering column. Snippet formats show N/A; raw benchmark evidence remains available.
- repo
- bookcicle/ui
Page changes load with a shimmer while controls stay usable. Performance docs separate comparison and optional page preparation.
Improved
- Document-wide change matching runs in a background worker. Page drawing, text layout and highlight placement yield between cancellable batches.
- Page navigation shows a loading shimmer, preserves the visible page and commits only the latest selection. Reduced-motion preferences are respected.
- Performance tables show expected processing times with a separate optional Page Rendering column. Snippet formats show N/A; raw benchmark evidence remains available.
- repo
- bookcicle/ui
Document word comparisons keep changed words together, and PDF symbol-font bullets render as standard bullets.
Fixed
- Word and auto modes keep DOCX and PDF word replacements intact instead of refining them into scattered character edits.
- Known OpenSymbol PDF bullets decode to standard Unicode bullets in both native and fallback extraction. Unrelated fonts and private-use characters are preserved.
- Updated comparison replay identities prevent old results from standing in for the corrected behavior.
Validation
- Source reconstruction, HTML/JSON responses, font-scoped symbol decoding and document regression tests pass. Both supplied résumé PDFs retain all 19 bullets per document.
- repo
- bookcicle/redline-document-service
Document word comparisons keep changed words together, and PDF symbol-font bullets render as standard bullets.
Fixed
- Word and auto modes keep DOCX and PDF word replacements intact instead of refining them into scattered character edits.
- Known OpenSymbol PDF bullets decode to standard Unicode bullets in both native and fallback extraction. Unrelated fonts and private-use characters are preserved.
- Updated comparison replay identities prevent old results from standing in for the corrected behavior.
Validation
- Source reconstruction, HTML/JSON responses, font-scoped symbol decoding and document regression tests pass. Both supplied résumé PDFs retain all 19 bullets per document.
- repo
- bookcicle/redline-document-service
Compare DOCX and searchable PDF source documents directly, preserve supported formatting changes, and recover through the HTML engine when needed.
Improved
- DOCX comparisons use source paragraphs, headings, lists, tables, headers, footers and footnotes instead of converted HTML for alignment.
- Bold, italic, underline, strikethrough, superscript, subscript and link changes remain valid inline changes. Word run splitting alone does not produce a change.
- Searchable PDF comparisons retain actual source pages. Explicit Word page breaks are retained without inventing rendered Word page counts.
- Recoverable native comparison or rendering failures retry through the HTML engine; reconstruction checks prevent successful responses with missing content. Invalid, encrypted, oversized and image-only documents remain errors.
Validation
- 135 service tests, 171 shared-engine tests, release-build recovery checks and local browser checks pass.
- Local benchmarks include source parsing, native diff, HTML/JSON response generation, reconstruction checks, sanitization and payload encoding. Native is faster in 13 of 15 cases; the edited 100- and 250-page Word fixtures are about 7% and 17% slower.
- repo
- bookcicle/redline-document-service
Compare DOCX and searchable PDF source documents directly, preserve supported formatting changes, and recover through the HTML engine when needed.
Improved
- DOCX comparisons use source paragraphs, headings, lists, tables, headers, footers and footnotes instead of converted HTML for alignment.
- Bold, italic, underline, strikethrough, superscript, subscript and link changes remain valid inline changes. Word run splitting alone does not produce a change.
- Searchable PDF comparisons retain actual source pages. Explicit Word page breaks are retained without inventing rendered Word page counts.
- Recoverable native comparison or rendering failures retry through the HTML engine; reconstruction checks prevent successful responses with missing content. Invalid, encrypted, oversized and image-only documents remain errors.
Validation
- 135 service tests, 171 shared-engine tests, release-build recovery checks and local browser checks pass.
- Local benchmarks include source parsing, native diff, HTML/JSON response generation, reconstruction checks, sanitization and payload encoding. Native is faster in 13 of 15 cases; the edited 100- and 250-page Word fixtures are about 7% and 17% slower.
- repo
- bookcicle/redline-document-service
Switch comparison formats without losing your own text edits, selected files or mode preferences.
Fixed
- HTML, Markdown, plain text and JSON each retain separate original and revised drafts, including intentionally empty inputs.
- PDF and DOCX each retain their own selected files in the playground and direct comparison page. Reset affects the active format only.
- Late document responses cannot populate a different format after switching tabs. Cached comparison results stay associated with their format.
Validation
- Local mocked browser coverage verifies per-format text and file restoration, exact restored upload bytes, active-format resets and delayed response isolation.
- repo
- bookcicle/ui
Switch comparison formats without losing your own text edits, selected files or mode preferences.
Fixed
- HTML, Markdown, plain text and JSON each retain separate original and revised drafts, including intentionally empty inputs.
- PDF and DOCX each retain their own selected files in the playground and direct comparison page. Reset affects the active format only.
- Late document responses cannot populate a different format after switching tabs. Cached comparison results stay associated with their format.
Validation
- Local mocked browser coverage verifies per-format text and file restoration, exact restored upload bytes, active-format resets and delayed response isolation.
- repo
- bookcicle/ui
Allow callers to request document comparison without replaying cached results.
API
- Cache-Control: no-store bypasses caller and shared comparison caches for HTML, Markdown, plain text and JSON requests. The response confirms the bypass. Authentication, rate limits and usage metering still apply.
- Native DOCX and PDF comparisons compute fresh results when no idempotency key is supplied.
Validation
- Regression tests preload both comparison caches and verify that a bypassed request computes changes without reading or replacing either cached result.
- repo
- bookcicle/ui
Allow callers to request document comparison without replaying cached results.
API
- Cache-Control: no-store bypasses caller and shared comparison caches for HTML, Markdown, plain text and JSON requests. The response confirms the bypass. Authentication, rate limits and usage metering still apply.
- Native DOCX and PDF comparisons compute fresh results when no idempotency key is supplied.
Validation
- Regression tests preload both comparison caches and verify that a bypassed request computes changes without reading or replacing either cached result.
- repo
- bookcicle/ui
Eliminates empty dangling bullet points upon rejecting insertions or accepting deletions, disables Split view during track changes review, and surfaces a floating Finish Review prompt when all changes are resolved.
Fixed
- Empty list items (li) are cleanly pruned when resolving inserted or deleted bullets, preventing dangling bullet points.
- Split view toggle buttons and postMessage layout switching are disabled while Review Mode is active to prevent layout desynchronization.
Improved
- Presents a floating Finish Review confirmation button at the bottom-right viewport when all changes have been resolved one-by-one.
- Dismisses bulk Accept All and Reject All options once zero pending changes remain so Finish Review is the only action.
Validation
- Playwright E2E and Jest unit test suites verify bullet pruning, Split mode layout guard, and floating completion lifecycle.
- repo
- bookcicle/ui
Eliminates empty dangling bullet points upon rejecting insertions or accepting deletions, disables Split view during track changes review, and surfaces a floating Finish Review prompt when all changes are resolved.
Fixed
- Empty list items (li) are cleanly pruned when resolving inserted or deleted bullets, preventing dangling bullet points.
- Split view toggle buttons and postMessage layout switching are disabled while Review Mode is active to prevent layout desynchronization.
Improved
- Presents a floating Finish Review confirmation button at the bottom-right viewport when all changes have been resolved one-by-one.
- Dismisses bulk Accept All and Reject All options once zero pending changes remain so Finish Review is the only action.
Validation
- Playwright E2E and Jest unit test suites verify bullet pruning, Split mode layout guard, and floating completion lifecycle.
- repo
- bookcicle/ui
Direct PDF/DOCX input uses a 750 KiB combined threshold; larger pairs use uploads. Hosted retention and viewer token lifetimes are clarified.
Improved
- PDF and DOCX pairs up to 750 KiB combined use direct input; larger pairs use the existing upload flow.
- Standard inline and direct API examples require no client-side hash header. Direct DOCX/PDF smoke lanes validate the documented threshold.
- Privacy and expired-viewer wording distinguish temporary uploads, configurable hosted retention, and separate viewer token expiry.
- repo
- bookcicle/ui
Direct PDF/DOCX input uses a 750 KiB combined threshold; larger pairs use uploads. Hosted retention and viewer token lifetimes are clarified.
Improved
- PDF and DOCX pairs up to 750 KiB combined use direct input; larger pairs use the existing upload flow.
- Standard inline and direct API examples require no client-side hash header. Direct DOCX/PDF smoke lanes validate the documented threshold.
- Privacy and expired-viewer wording distinguish temporary uploads, configurable hosted retention, and separate viewer token expiry.
- repo
- bookcicle/ui
Find API topics and export requirements directly in the documentation.
Changed
- Added documentation search with section links and an index regenerated in every web build.
- Clarified that anonymous HTML comparisons remain available within limits, while export jobs and downloads require a signed-in user or valid API key.
- Aligned playground and document comparison export controls with sign-in requirements; anonymous comparisons remain available and viewer downloads require sign-in.
- repo
- bookcicle/ui
Redline has a dedicated filter in the shared What’s Changed page and deploy change sets match the other brands.
Changed
- Added the Redline release filter and brand logo to the shared parent release history.
- Redline deployments generate release updates and publish their current and archived change sets.
- repo
- bookcicle/ui
Manage Redline plans from Account with clearer billing and dedicated smoke validation.
Fixed
- Account plan management remains available on navigation and refresh.
- Paid Redline plan changes show prorated billing instead of another trial.
- Development previews ignore nested worktrees to avoid unrelated reloads.
Improved
- DEV/TEST smoke lanes validate real document comparisons, exports, hosted viewers, checkout, upgrades and cancellation with owned cleanup.
- repo
- bookcicle/ui
Manage Redline plans from Account with clearer billing and dedicated smoke validation.
Fixed
- Account plan management remains available on navigation and refresh.
- Paid Redline plan changes show prorated billing instead of another trial.
- Development previews ignore nested worktrees to avoid unrelated reloads.
Improved
- DEV/TEST smoke lanes validate real document comparisons, exports, hosted viewers, checkout, upgrades and cancellation with owned cleanup.
- repo
- bookcicle/ui
Paid plan changes load current Redline membership and saved cards reliably.
Fixed
- Checkout recognizes the scoped Redline membership after authentication or refresh.
- Saved cards remain available for paid plan changes even when the navigation URL omits a card hint.
- Live billing smoke failures preserve cleanup instead of leaving an unhandled response wait.
- repo
- bookcicle/ui
Paid plan changes load current Redline membership and saved cards reliably.
Fixed
- Checkout recognizes the scoped Redline membership after authentication or refresh.
- Saved cards remain available for paid plan changes even when the navigation URL omits a card hint.
- Live billing smoke failures preserve cleanup instead of leaving an unhandled response wait.
- repo
- bookcicle/ui
Updated documentation navigation, sidebar links, and search results to use /docs/#<section> routing, preventing stripping of the /docs route when linking to document sections.
Fixed
- Ensured documentation sidebar links and section jumps preserve the /docs/#<section> pathname in the browser URL bar instead of routing to root /#<section>.
- Added history state synchronization so direct visits, back/forward button events, and in-content section links cleanly maintain the /docs/# route.
- Normalized legacy /docs#<section> and root /#doc-<section> URLs to canonical /docs/#<section>.
- repo
- bookcicle/ui
Updated documentation navigation, sidebar links, and search results to use /docs/#<section> routing, preventing stripping of the /docs route when linking to document sections.
Fixed
- Ensured documentation sidebar links and section jumps preserve the /docs/#<section> pathname in the browser URL bar instead of routing to root /#<section>.
- Added history state synchronization so direct visits, back/forward button events, and in-content section links cleanly maintain the /docs/# route.
- Normalized legacy /docs#<section> and root /#doc-<section> URLs to canonical /docs/#<section>.
- repo
- bookcicle/ui
Added standard responsive side margins to the Redline mobile documentation view and ensured code pre blocks respect container boundaries.
Improved
- Added clean side padding to the mobile documentation layout, giving search cards, headings, prose, and tables comfortable breathing room on narrow viewports.
- Aligned documentation content margins with the sticky mobile section drawer bar at 16px.
- Guaranteed code pre snippets within documentation articles respect container max-width with internal horizontal scrolling.
- repo
- bookcicle/ui
Added standard responsive side margins to the Redline mobile documentation view and ensured code pre blocks respect container boundaries.
Improved
- Added clean side padding to the mobile documentation layout, giving search cards, headings, prose, and tables comfortable breathing room on narrow viewports.
- Aligned documentation content margins with the sticky mobile section drawer bar at 16px.
- Guaranteed code pre snippets within documentation articles respect container max-width with internal horizontal scrolling.
- repo
- bookcicle/ui
Paid membership allowances now follow the subscription anniversary, including monthly allowances for annual plans.
Changed
- Cancel plan now asks for confirmation, stops paid renewal, preserves access through the paid period, and retains metered subscriptions.
- Creator and Creator Pro allowances reset on the membership anniversary. Annual subscribers receive a monthly allowance rather than a yearly pool.
- HTML and DOCX comparisons share the same allowance; opt-in overages continue through the existing monthly metered subscription at $0.005 per Creator unit or $0.004 per Creator Pro unit.
- Basic and anonymous allowances retain UTC calendar-month resets.
- repo
- bookcicle/ui
Paid membership allowances now follow the subscription anniversary, including monthly allowances for annual plans.
Changed
- Cancel plan now asks for confirmation, stops paid renewal, preserves access through the paid period, and retains metered subscriptions.
- Creator and Creator Pro allowances reset on the membership anniversary. Annual subscribers receive a monthly allowance rather than a yearly pool.
- HTML and DOCX comparisons share the same allowance; opt-in overages continue through the existing monthly metered subscription at $0.005 per Creator unit or $0.004 per Creator Pro unit.
- Basic and anonymous allowances retain UTC calendar-month resets.
- repo
- bookcicle/ui
Billing updates retain the subscription identity needed to resolve paid comparison allowances.
Fixed
- Subscription and paid-invoice updates preserve the membership subscription ID alongside its paid period.
- Annual Creator Pro quota checks retain their monthly allowance after webhook processing.
- repo
- bookcicle/stripe-webhooks
Billing updates retain the subscription identity needed to resolve paid comparison allowances.
Fixed
- Subscription and paid-invoice updates preserve the membership subscription ID alongside its paid period.
- Annual Creator Pro quota checks retain their monthly allowance after webhook processing.
- repo
- bookcicle/stripe-webhooks
Send PDF and DOCX pairs up to 1 MiB combined directly and preserve visible, consistent additions and deletions.
Improved
- PDF and DOCX pairs up to 1 MiB combined skip upload authorization and input file transfer; larger pairs retain the upload flow. The service keeps a 2 MiB combined acceptance limit.
- PDF previews preserve insertion/deletion wrappers and content outside page sections. Word additions and deletions use consistent readable colors in both themes.
- Image content is omitted from text comparison; image-only and unreadable PDFs return clear errors rather than empty successful comparisons.
- Document API guidance includes direct and upload patterns, byte-based usage, request digest examples, and DOCX/PDF smoke lanes. Benchmarks now show server processing only.
- The CloudFormation-managed WAF body-size exception is scoped to JSON POSTs on document compare routes; shared rate limits and other protections remain active.
- Developer docs remove consumer checkout pricing and chat-review instructions. Quickstart includes minimal Python, curl and JavaScript requests, with syntax highlighting throughout code examples.
- The Customers row identifies Bookcicle Studio with its pen mark and Studio link.
- repo
- bookcicle/ui
Send PDF and DOCX pairs up to 1 MiB combined directly and preserve visible, consistent additions and deletions.
Improved
- PDF and DOCX pairs up to 1 MiB combined skip upload authorization and input file transfer; larger pairs retain the upload flow. The service keeps a 2 MiB combined acceptance limit.
- PDF previews preserve insertion/deletion wrappers and content outside page sections. Word additions and deletions use consistent readable colors in both themes.
- Image content is omitted from text comparison; image-only and unreadable PDFs return clear errors rather than empty successful comparisons.
- Document API guidance includes direct and upload patterns, byte-based usage, request digest examples, and DOCX/PDF smoke lanes. Benchmarks now show server processing only.
- The CloudFormation-managed WAF body-size exception is scoped to JSON POSTs on document compare routes; shared rate limits and other protections remain active.
- Developer docs remove consumer checkout pricing and chat-review instructions. Quickstart includes minimal Python, curl and JavaScript requests, with syntax highlighting throughout code examples.
- The Customers row identifies Bookcicle Studio with its pen mark and Studio link.
- repo
- bookcicle/ui
Skips unnecessary comparison storage and reports one metrics object.
Improved
- Inline comparisons skip hosted artifact storage when all changes fit in one response.
- Hosted viewers and large structured comparisons retain private links and change pagination.
- Hosted HTML and structured changes upload concurrently before links are returned.
- Comparison timings are reported under metrics without duplicate timing fields.
- repo
- bookcicle/redline-service
Skips unnecessary comparison storage and reports one metrics object.
Improved
- Inline comparisons skip hosted artifact storage when all changes fit in one response.
- Hosted viewers and large structured comparisons retain private links and change pagination.
- Hosted HTML and structured changes upload concurrently before links are returned.
- Comparison timings are reported under metrics without duplicate timing fields.
- repo
- bookcicle/redline-service
Refreshing or directly navigating to documentation, comparison, or pricing pages now reliably preserves the target view across dev and preview environments.
Fixed
- Fixed route refresh behavior so direct navigation and browser reloads on /docs, /compare, and other dedicated routes retain their view rather than falling back to the landing page.
- Separated pre-rendered static routes from unrendered SPA paths in route handling, delivering pre-rendered route bundles directly.
- Hydration preserves the active documentation drawer and reading position while properly synchronizing navigation classes and document titles.
Improved
- Removed consumer-focused Compare files link from top navigation to keep developer navigation clean and focused.
- Simplified developer authentication copy to focus on public API credentials, keeping implementation details out of the public docs.
- Streamlined API base URL guidance to public endpoints and retained x-amz-content-sha256 payload signing specifications in dedicated note blocks.
- repo
- bookcicle/ui
Refreshing or directly navigating to documentation, comparison, or pricing pages now reliably preserves the target view across dev and preview environments.
Fixed
- Fixed route refresh behavior so direct navigation and browser reloads on /docs, /compare, and other dedicated routes retain their view rather than falling back to the landing page.
- Separated pre-rendered static routes from unrendered SPA paths in route handling, delivering pre-rendered route bundles directly.
- Hydration preserves the active documentation drawer and reading position while properly synchronizing navigation classes and document titles.
Improved
- Removed consumer-focused Compare files link from top navigation to keep developer navigation clean and focused.
- Simplified developer authentication copy to focus on public API credentials, keeping implementation details out of the public docs.
- Streamlined API base URL guidance to public endpoints and retained x-amz-content-sha256 payload signing specifications in dedicated note blocks.
- repo
- bookcicle/ui
Request limits now apply consistently across server instances and authentication methods.
Fixed
- Shared request limits across server instances for text and document comparisons.
- Applied the same account counter to signed-in and API-key requests, with separate limits for anonymous callers.
- Reported request-limit timing separately from authentication and stopped processing when the limiting service is unavailable.
- repo
- bookcicle/redline-service
Request limits now apply consistently across server instances and authentication methods.
Fixed
- Shared request limits across server instances for text and document comparisons.
- Applied the same account counter to signed-in and API-key requests, with separate limits for anonymous callers.
- Reported request-limit timing separately from authentication and stopped processing when the limiting service is unavailable.
- repo
- bookcicle/redline-service
Review and confirm cancellation from Account Details while retaining usage-based billing.
Improved
- Cancel plan now opens an Are you sure? dialog with Keep my plan and Yes, cancel plan actions.
- Cancellation stops paid plan renewal and retains paid access until its billing period ends. Usage-based billing stays available.
- Live validation checks confirmation, unchanged metered subscriptions, retained annual access, and account cleanup.
- repo
- bookcicle/ui
Review and confirm cancellation from Account Details while retaining usage-based billing.
Improved
- Cancel plan now opens an Are you sure? dialog with Keep my plan and Yes, cancel plan actions.
- Cancellation stops paid plan renewal and retains paid access until its billing period ends. Usage-based billing stays available.
- Live validation checks confirmation, unchanged metered subscriptions, retained annual access, and account cleanup.
- repo
- bookcicle/ui
Align developer documentation with DEV/TEST smoke observations.
Improved
- Document the 750 KiB direct file limit and hash-free public requests.
- Distinguish SSE comparison completion from asynchronous Word export readiness.
- Clarify optional rate-limit headers and server metrics.
- repo
- bookcicle/ui
Align developer documentation with DEV/TEST smoke observations.
Improved
- Document the 750 KiB direct file limit and hash-free public requests.
- Distinguish SSE comparison completion from asynchronous Word export readiness.
- Clarify optional rate-limit headers and server metrics.
- repo
- bookcicle/ui
Added the Early Access (EA) badge to DOCX in the playground format selector and dedicated comparison lane card header, matching PDF Early Access labeling.
Improved
- Added the EA badge to the DOCX tab button in the interactive playground toolbar.
- Added the Early Access pill to the dedicated Word DOCX comparison card header.
- repo
- bookcicle/ui
Added the Early Access (EA) badge to DOCX in the playground format selector and dedicated comparison lane card header, matching PDF Early Access labeling.
Improved
- Added the EA badge to the DOCX tab button in the interactive playground toolbar.
- Added the Early Access pill to the dedicated Word DOCX comparison card header.
- repo
- bookcicle/ui
Redline Usage displays the actual allowance reset date supplied by the usage service.
Improved
- Creator and Creator Pro usage follows the membership billing anniversary when the aligned quota rollout is enabled. Annual memberships retain monthly allowances on their original anniversary.
- Usage shows the exact reset date and time in UTC. Basic and anonymous usage retain UTC calendar-month resets.
- repo
- bookcicle/ui
Redline Usage displays the actual allowance reset date supplied by the usage service.
Improved
- Creator and Creator Pro usage follows the membership billing anniversary when the aligned quota rollout is enabled. Annual memberships retain monthly allowances on their original anniversary.
- Usage shows the exact reset date and time in UTC. Basic and anonymous usage retain UTC calendar-month resets.
- repo
- bookcicle/ui
Fixes dark theme contrast across Redline options and panels, adds split execution and network timing metrics to playground comparisons, and removes AI summary from the UI across all environments.
Fixed
- Eliminated stark white backgrounds and low-contrast label text on playground DOCX and PDF options rows in dark mode.
- Added high-contrast dark surface backgrounds, muted text contrast, and dark border tokens for playground options, tier limits, and alert containers.
Changed
- Enabled API timing metrics in the playground to display split comparison execution time and network duration.
- Removed AI summary as an option and documentation section from the UI across all environments to focus on core redline capabilities.
- repo
- bookcicle/ui
The test environment includes opt-in metered overages and clearer guidance for DOCX support already included on Basic.
Added
- Creator and Creator Pro accounts can enable or disable paid overages from Redline Usage.
- Excess units cost $0.005 on Creator and $0.004 on Creator Pro; period totals below $1 are waived.
Improved
- Basic lists HTML and DOCX comparisons sharing 100 monthly units, with native Word Track Changes available through the API.
- repo
- bookcicle/ui
Redline accounts can enable paid comparisons beyond their included allowance using their existing metered subscription.
Added
- Creator overages cost $0.005 per excess unit; Creator Pro overages cost $0.004.
- Overages require explicit account consent, an active metered subscription, and a payment method. Disabling blocks future excess comparisons.
- Total Redline overages below $1 per metered monthly period are waived without rollover.
- Billing receipts preserve the accepted rate and subscription identity and prevent duplicate charges during replay.
- repo
- bookcicle/ui
Pricing and DOCX guidance now show the document support already included in the free Basic plan.
Improved
- Basic lists HTML and DOCX comparisons sharing its 100 monthly Redline units.
- The free plan lists native Word Track Changes through the API.
- DOCX guidance explains how to start on Basic before moving to a larger paid allowance.
- repo
- bookcicle/ui
Ripped out deprecated AI summary clients, panels, checkout dialogs, styles, and test suites following the backend deprecation, while keeping deterministic document comparison statistics and section change distribution intact.
Removed
- Removed deprecated summaryClient.js and summaryPanel.js components and summaryPanel.css.
- Removed summaryCheckout.jsx Stripe payment checkout dialog for redline summaries.
- Removed AI summary slot, badges, pending skeletons, and postMessage integration from the document viewer.
- Cleaned up obsolete AI summary unit, workflow, and smoke test suites across the repository.
Preserved
- Preserved all deterministic statistics cards (total changes, net words, change density, sections) and the section change distribution table in the document viewer.
- repo
- bookcicle/ui
Account Details includes a clearly marked Destructive actions section with direct plan cancellation.
Added
- Cancel plan and downgrade to Basic in one click. Paid access continues until the current billing period ends.
- Cancel plan and Delete Account appear together in a red Destructive actions box.
Improved
- Cancellation refreshes membership immediately and remains visible after reloading.
- A dedicated dev/test live smoke checks real Stripe renewal cancellation, retained paid access, brand isolation, and disposable account cleanup.
- repo
- bookcicle/ui
Account Details includes a clearly marked Destructive actions section with direct plan cancellation.
Added
- Cancel plan and downgrade to Basic in one click. Paid access continues until the current billing period ends.
- Cancel plan and Delete Account appear together in a red Destructive actions box.
Improved
- Cancellation refreshes membership immediately and remains visible after reloading.
- A dedicated dev/test live smoke checks real Stripe renewal cancellation, retained paid access, brand isolation, and disposable account cleanup.
- repo
- bookcicle/ui
Company information, support, and brand assets have one home on the parent Bookcicle site.
Changed
- Contact links open the parent Bookcicle contact page with the product selected.
- Company brand assets are grouped by brand at the parent Bookcicle site.
- repo
- bookcicle/ui
Redline docs compare the free text result with the planned one-time Word and AI summary options and show a document API summary request.
Improved
- Added a direct-result table with the free comparison, $4.99 Word redline, and $9.99 Word redline plus AI summary, while marking direct checkout as coming soon.
- Added a concrete text-change example and a DOCX API request showing how to opt into an AI summary.
- Clarified that Word Track Changes applies to DOCX pairs and that layout and document structure are outside the comparison guarantee.
- repo
- bookcicle/ui
Signed comparison embeds display requested AI summaries, navigate changes smoothly in split mode, and feature a sticky unchanged toggle at the drawer bottom.
Improved
- A compact view menu beside Theme switches between Document, Changes, and Summary without hiding the toolbar.
- Sample iframe comparisons show an immediate example summary with links to their text changes.
- Next and previous change navigation focuses, scrolls to, and transitions between document parts accurately in split mode.
- Pinned the unchanged expand/collapse toggle to the drawer bottom footer to prevent horizontal button overflow.
- Queued and processing summaries show a clear loading indicator while the document comparison stays available.
- Signed viewer links can read a previously requested summary but cannot start or retry billing workflows.
- Prerendered embed endpoints serve lean comparison viewer shells without landing chrome, navigation headers, footers, or static home page flash.
- repo
- bookcicle/ui
Hosted comparison embeds keep the compact toolbar visible across Document, Changes, and Summary.
Fixed
- Direct embed and viewer links show the comparison instead of an empty page.
- The view menu opens beside Theme and stays available after switching views.
- repo
- bookcicle/ui
Shorter guidance and accurate comparison contracts.
Improved
- Trimmed repeated explanations while retaining request and response tables and examples.
- Clarified HTML-anchored JSON, document parts, and source formatting limits.
- Documented comparison caching and kept GPT and MCP instructions in their own section.
- repo
- bookcicle/ui
Shorter guidance and accurate comparison contracts.
Improved
- Trimmed repeated explanations while retaining request and response tables and examples.
- Clarified HTML-anchored JSON, document parts, and source formatting limits.
- Documented comparison caching and kept GPT and MCP instructions in their own section.
- repo
- bookcicle/ui