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

akvo / akvo-mis / #671
88%
main: 88%

Build:
Build:
LAST BUILD BRANCH: feature/236-fb-007-implement-form-importexport
DEFAULT BRANCH: main
Ran 14 Jun 2026 11:33PM UTC
Jobs 1
Files 110
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

12 Jun 2026 04:00PM UTC coverage: 88.31% (-0.4%) from 88.702%
#671

Pull #237

coveralls-python

ifirmawan
[#236] Refactor form_seeder onto shared FB-007 parser (NFR-6/D-8)

- form_seeder now parses every file via normalize -> validate ->
  import_form_definition; legacy source/forms/*.json keep working
- normalize: bridge legacy options->option and parent_id->parent_hint;
  validate: tolerate list-typed extra and non-dict fn/api in legacy files
- import_form_definition: new seeder-only kwargs require_parent=False
  (legacy monitoring fixtures without parent) and
  claim_foreign_questions=True (cross-form question moves keep their PK
  so answers stay linked); API behaviour unchanged
- Fix latent update-path bug: new groups/questions from an import file
  now preserve their exported IDs when free (FR-9/R-2) instead of
  getting fresh auto-IDs that silently broke later ID-based re-imports
- Seeder keeps answer migration, hard-delete of removed questions, QA
  attributes, publish-on-seed and version bumps; validation errors go
  to stderr in the shared {code, path, message} shape
- Verified nginx client_max_body_size 50M covers the 5 MB import cap
  (NFR-2 deployment note updated in design doc)

Tests: 17 seeder + 217 full v1_forms suite pass

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Pull Request #237: [#236] Add FB-007 form import/export requirements and design docs

5625 of 6538 branches covered (86.04%)

Branch coverage included in aggregate %.

10632 of 11871 relevant lines covered (89.56%)

0.9 hits per line

Coverage Regressions

Lines Coverage ∆ File
85
80.15
-10.53% api/v1/v1_forms/views.py
41
90.76
-1.77% api/v1/v1_forms/functions.py
9
91.38
-1.58% api/v1/v1_forms/management/commands/form_seeder.py
4
98.57
0.03% api/v1/v1_forms/serializers.py
1
95.45
-2.27% api/v1/v1_users/management/commands/fake_user_seeder.py
1
94.03
-0.5% utils/custom_generator.py
1
77.65
-2.35% utils/functions.py
Jobs
ID Job ID Ran Files Coverage
1 #671.1 14 Jun 2026 11:33PM UTC 110
88.31
Source Files on build #671
  • Tree
  • List 110
  • Changed 10
  • Source Changed 0
  • Coverage Changed 10
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Pull Request #237
  • PR Base - main (#)
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