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

safe-global / safe-client-gateway / 26284681609
90%
main: 90%

Build:
Build:
LAST BUILD BRANCH: chore/trigger-ci
DEFAULT BRANCH: main
Ran 22 May 2026 11:21AM UTC
Jobs 2
Files 1196
Run time 3min
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

22 May 2026 11:17AM UTC coverage: 89.651% (-0.04%) from 89.695%
26284681609

Pull #3107

github

tongyaosafe
fix(surveys): address PR review (uniqueness, slug validation, audit, schema cleanup)

- Make idx_surveys_active a UNIQUE partial index so two rows can't both
  have is_active=true for the same slug. The kill-switch story assumes a
  single active row per slug; this enforces it at the DB.
- Validate the :slug path param with the same Zod schema the DB column
  uses (SurveySlugSchema). Rejects junk input at the controller boundary
  before it reaches the repository.
- Tighten the selections Zod schema with a non-empty .refine, so an
  empty {} now consistently fails ValidationPipe with 422 instead of
  reaching the service-level "missing pages" 400. e2e tests updated.
- Unify SurveyPage.subtitle to .nullable() (was .nullable().optional()),
  matching Survey.subtitle. Same wire shape across the two.
- Expose updatedAt on SpaceSurveyResponseDto and SurveyResponseResultDto,
  and assert in e2e that update_updated_at bumps it on re-submission
  (submittedAt stays pinned to insert time).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Pull Request #3107: feat: per-Space onboarding survey module

4242 of 5108 branches covered (83.05%)

Branch coverage included in aggregate %.

157 of 182 new or added lines in 12 files covered. (86.26%)

2 existing lines in 2 files now uncovered.

16281 of 17784 relevant lines covered (91.55%)

566.62 hits per line

Uncovered Changes

Lines Coverage ∆ File
8
38.46
src/modules/surveys/domain/surveys.repository.ts
6
84.62
src/modules/surveys/routes/surveys.service.ts
4
60.0
src/modules/surveys/domain/entities/survey-response.entity.ts
3
81.25
src/modules/surveys/routes/surveys.controller.ts
2
90.0
src/modules/surveys/datasources/entities/survey-response.entity.db.ts
1
90.91
src/modules/surveys/datasources/entities/survey.entity.db.ts
1
92.31
src/modules/surveys/surveys.module.ts

Coverage Regressions

Lines Coverage ∆ File
1
93.75
-3.13% src/modules/notifications/routes/v1/entities/__tests__/create-registration-v2.dto.builder.ts
1
89.87
-3.8% src/modules/notifications/routes/v1/notifications.controller.ts
Jobs
ID Job ID Ran Files Coverage
1 run-integration-tests - 26284681609.1 22 May 2026 11:30AM UTC 2299
78.22
GitHub Action Run
2 run-unit-tests - 26284681609.2 22 May 2026 11:21AM UTC 2098
57.08
GitHub Action Run
Source Files on build 26284681609
  • Tree
  • List 1196
  • Changed 333
  • Source Changed 1
  • Coverage Changed 333
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #26284681609
  • Pull Request #3107
  • PR Base - main (#26100982395)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc