• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

Scripta-Qumranica-Electronica / SQE_API / 29809994364
83%
master: 83%

Build:
Build:
LAST BUILD BRANCH: v0.15.1
DEFAULT BRANCH: master
Ran 21 Jul 2026 07:29AM UTC
Jobs 1
Files 130
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

21 Jul 2026 07:18AM UTC coverage: 83.025% (+0.2%) from 82.822%
29809994364

Pull #74

github

h15629526027
Add edition publishing endpoint with Redis-backed published-editions cache

Publishing is now a first-class action on PUT /v1/editions/{editionId} via a
new EditionUpdateRequestDTO.isPublic flag. Only an edition admin may publish;
publishing sets public=1 and locked=1, freezing the edition forever (a public
edition can never be edited again, since MayWrite = may_write AND NOT locked).

The published-edition list (~1,600 rows from a ~0.3s seven-table query) only
changes when an edition is published, so it is now served from an in-memory
cache (PublishedEditionsCache) invalidated across all API instances over the
existing Redis backplane. ListEditionsAsync serves the shared published branch
from the cache while the per-user personal branch stays uncached. With Redis
disabled (dev/tests) the cache works locally; a manual DB publish is picked up
by restarting the servers.

Also fixes a latent bug in UpdateEditionAsync: editionBeforeChanges used a bare
.First() on the merged edition list, which returned an unrelated public edition
(the published branch emits all public editions first). It now selects the
edition actually being edited, which also corrects the copyright/metrics change
detection.

Adds the CanPublishEdition integration test: publish -> public+locked -> the
edition appears in the cached published list (proving cross-instance
invalidation).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Pull Request #74: Edition publishing + published-editions cache; write-path round-trip reduction

1554 of 2355 branches covered (65.99%)

Branch coverage included in aggregate %.

62 of 72 new or added lines in 7 files covered. (86.11%)

1 existing line in 1 file now uncovered.

12459 of 14523 relevant lines covered (85.79%)

25424.12 hits per line

Uncovered Changes

Lines Coverage ∆ File
7
76.92
sqe-api-server/Services/PublishedEditionsCache.cs
1
41.33
0.0% sqe-api-server/Services/UtilService.cs
1
88.1
-0.21% sqe-api-server/Startup.cs
1
80.96
1.91% sqe-database-access/EditionRepository.cs

Coverage Regressions

Lines Coverage ∆ File
1
88.1
-0.21% sqe-api-server/Startup.cs
Jobs
ID Job ID Ran Files Coverage
1 29809994364.1 21 Jul 2026 07:29AM UTC 130
83.03
GitHub Action Run
Source Files on build 29809994364
  • Tree
  • List 130
  • Changed 7
  • Source Changed 0
  • Coverage Changed 7
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Pull Request #74
  • PR Base - master (#29775995733)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc