Skip to content

[Parked · Epic] Creator-Monetized Study Vehicles — Gated Vaults · AI Mock Builder · Hybrid Tuition Bridge #474

Open

Description

@owlstonbusiness-svg

[Parked · Epic] Creator-Monetized Study Vehicles — Gated Vaults · AI Mock Builder · Hybrid Tuition Bridge

V1 status: On Hold / Later — NOT Urgent. Do not schedule until CEO unparks.
Depends on: #459 accounts + ledger · community epic #218 · seasons #232 / #235 · notes-shop delivery rails #203 (FPS cashier + private signed delivery; user brief said “#318” — live notes shop is #203) · later #461 Vehicle MRR KPI · optional #468 streaks for mock-completion hours.
Active window lock: Hybrid free access uses the same 45-day inactive rule as #462.
Protective / copyright language: align #221 ban list + #473 safe-harbor / final-decision pack when published.
Cap.57 / tutor-pays 1.5 for 1-on-1 tutoring: UNCHANGED. Vehicle fees are separate SaaS / content revenue.


0. Why not host official past papers

Sites like Think IB / IB Documents / Revision Village host or organise past papers and mark schemes. MatchMax must not become an official or semi-official repository.

Copyright risk with IBO, HKEAA, Cambridge Assessment, publishers, and school internal papers is real. Existing community rules already ban it:

  • #221 (community rules): “No school internal paper, publisher page, HKEAA paper, or IB paper.”
  • Community epic #218 is parked.
  • Monetization sketched in #232 (Stage 4 paid seasons: mentor 70–80% / MatchMax 20–30%).
  • Season pages #235 already say Resources link to the creator’s note listings — not a second upload system for exam boards.

Safe path: user-created Study Vehicles (creator-owned gated communities) where tutors / centres / verified scholars upload their own original or properly licensed practice papers, notes, worked solutions, mock packs, and AI-mutated syllabus-aligned questions — and control access + monetise.

MatchMax = host infrastructure only (Skool / Whop / Notion pattern): DMCA / copyright takedown policy, report queue, safe harbor. Creators warrant rights. MatchMax does not operate a past-paper library.

Strategic reasons (CEO lock)

  1. Zero copyright liability (safe harbor) — IBO / HKEAA / Cambridge aggressively take down sites that officially sell or host their papers. Creator-owned vaults + takedown path shields the company.
  2. Creator-driven viral acquisition — An IB 45/45 tutor or centre creates “HKDSE BAFS 5 Vault & AI Mock Hub” at HK$99/mo (or free for active 1-on-1 students) and promotes /v/$slug on IG / Threads / Xiaohongshu.
  3. Recurring passive MRR for MatchMax — Separate from one-time 1.5-lesson admin fee: platform cut on every paid Vehicle subscription / pass.

1. Problem / solution overview

Problem

  • Centralised past-paper sites need content teams + carry heavy copyright risk.
  • Tutors’ best notes / mocks sit offline or leak via Airdrop after one paid download.
  • No on-platform way for creators to run a gated folder + recurring membership that also pulls 1-on-1 lessons back onto MatchMax.
  • Students want topic-filtered timed mocks without MatchMax hosting board papers.

Solution — Study Vehicles (“Vehicles”)

Self-contained, creator-owned micro-communities where Tutors, Education Centres, Top Scholars, and Student Societies can:

  1. Build a Gated Cloud Resource Vault (nested folders, PDF notes, worked solutions, video walkthroughs) — members only.
  2. Build & share an AI Custom Question Bank & Auto-Paper Generator (syllabus-aligned mock questions tagged by Topic / Difficulty / Paper Type → custom timed mocks on demand).
  3. Monetise flexibly: monthly sub · one-time exam pass · freemium · free VIP for active 1-on-1 TuitionCase students (hybrid tuition bridge).

Non-members see public description + folder tree titles + optional teaser files + Join CTA only.


2. Hard locks (CEO)

Lock Rule
Official papers Banned. IB / HKEAA / Cambridge / school internal / publisher papers & mark schemes — reuse #221 language verbatim in Vehicle create/upload + rules page.
Content ownership User-created original or properly licensed only. Creator warrants rights on every upload. MatchMax = host only.
Platform fee Prefer 12% MatchMax / 88% creator for Vehicle subs / passes (platformFeePercent default 12.00).
Fee consistency note Notes shop #203 ≈ 20%; season split #232 mentor 70–80 / MatchMax 20–30. Vehicle cut is Vehicle-specific (creator-economy SaaS). CEO may tune before unpark — document any change in this issue + fee track.
Cap.57 / 1.5 Tutor-pays 1.5-lesson admin fee for 1-on-1 matching unchanged. Vehicle fees ≠ admin fee; not Cap.57 employment-agency placement.
Active window Hybrid free access pauses when TuitionCase inactive 45 days — align #462.
Under-18 Parent acceptance required when opened wider (same pattern as #221).
Contact filter No phone / email / WhatsApp / IG / WeChat / Telegram / QR in Vehicle descriptions or vault file metadata (existing filter).
Urgent Do not mark urgent. Do not create a MatchMax-operated past-paper library issue.

3. Access models (full table)

VehicleAccessModel How it works Platform cut Why creators love it
FREE_PUBLIC Anyone can join (top-of-funnel lead gen). Upsells via paid packs inside. 12% on paid add-on tickets / bundles School societies / partner centres bring cohorts in one link.
PAID_SUBSCRIPTION Recurring monthly HKD (e.g. HK$80–250) via FPS / card / Apple Pay for Vault + Q&A + Paper Builder. 12% (creator 88%) Scalable passive MRR (50 × HK$150 = HK$7,500/mo).
ONE_TIME_PASS Single payment (e.g. HK$399) until exam cohort end date (e.g. May IB / April HKDSE). 12% Peak-season conversion without subscription fatigue.
ACTIVE_STUDENTS_ONLY Free only for learners with an active TuitionCase with this tutor/centre. 0% on free unlock Pure retention / logging flywheel.
HYBRID_PAID_OR_STUDENT Public pays (e.g. HK$150/mo); active 1-on-1 TuitionCase → auto free unlock. If case inactive 45 days, free access pauses → must pay. 12% on paid path; 0% on free unlock (value = on-platform logging) “Book 1-on-1 with me → get my HK$180/mo Vault free while classes stay on MatchMax.”

4. Database schema & data models

enum VehicleAccessModel {
  FREE_PUBLIC               // Anyone can join (great for top-of-funnel tutor lead gen)
  PAID_SUBSCRIPTION         // Recurring monthly HKD fee (e.g., HK$120/month)
  ONE_TIME_PASS             // Single payment for lifetime or exam-cohort access (e.g., HK$380 till May 2027 Exams)
  ACTIVE_STUDENTS_ONLY      // Free exclusively for students with an active TuitionCase with this Tutor/Centre
  HYBRID_PAID_OR_STUDENT    // Paid for general public, FREE auto-unlock if student books 1-on-1 lessons with creator
}

enum VaultItemType {
  FOLDER
  PDF_DOCUMENT              // Notes, worked examples, formula sheets (Watermarked on view)
  VIDEO_WALKTHROUGH         // Embedded HLS video stream
  QUESTION_BANK_COLLECTION  // Links to AI/Creator Question Bank for auto-paper generation
}

model StudyVehicle {
  id                      String             @id @default(uuid())
  slug                    String             @unique // e.g., "ib-hl-econ-vault" → /v/ib-hl-econ-vault
  creatorUserId           String             // Owner (Tutor, Student Scholar, or Org Admin)
  organizationId          String?            // Optional link if owned by an Education Centre

  title                   String             // e.g., "IBDP HL Economics 7/7 Vault & AI Paper Maker"
  curriculumTag           String             // "IBDP", "HKDSE", "IGCSE", "IAL", "UNI"
  subjectTag              String             // "Economics", "Mathematics AA", "Chemistry"
  bannerUrl               String?
  description             String             @db.Text

  // Monetization & Pricing Settings
  accessModel             VehicleAccessModel @default(HYBRID_PAID_OR_STUDENT)
  monthlyPriceHkd         Decimal?           @db.Decimal(8, 2) // e.g., 120.00
  oneTimePassPriceHkd     Decimal?           @db.Decimal(8, 2) // e.g., 450.00
  platformFeePercent      Decimal            @default(12.00) @db.Decimal(4, 2) // MatchMax 12%, Creator 88%

  // Social Proof Metrics
  memberCount             Int                @default(0)
  totalVaultFilesCount    Int                @default(0)
  totalQuestionsCount     Int                @default(0)
  avgRating               Decimal            @default(5.0) @db.Decimal(2, 1)

  memberships             VehicleMembership[]
  vaultItems              VehicleVaultItem[]
  questionBank            VehicleQuestionItem[]
  createdAt               DateTime           @default(now())
}

model VehicleMembership {
  id                      String             @id @default(uuid())
  vehicleId               String
  vehicle                 StudyVehicle       @relation(fields: [vehicleId], references: [id])
  learnerProfileId        String             // [#459] LearnerProfile

  role                    String             @default("MEMBER") // "OWNER", "MODERATOR", "MEMBER"
  accessGrantReason       String             // "PAID_SUB", "ONE_TIME_PASS", "ACTIVE_TUITION_CASE_LINK", "FREE"
  linkedTuitionCaseId     String?            // If granted via ACTIVE_TUITION_CASE_LINK

  status                  String             @default("ACTIVE") // "ACTIVE", "EXPIRED", "REVOKED", "PAUSED"
  expiresAt               DateTime?          // Null if lifetime; synced to billing cycle or TuitionCase active status
  joinedAt                DateTime           @default(now())
}

// Hierarchical Folder & File Tree inside the Vehicle ("The Big Gated Folder")
model VehicleVaultItem {
  id                      String             @id @default(uuid())
  vehicleId               String
  vehicle                 StudyVehicle       @relation(fields: [vehicleId], references: [id])
  parentFolderId          String?            // Null = Root directory; supports nested sub-folders

  itemType                VaultItemType
  title                   String             // e.g., "Topic 3: Macroeconomics — 20x Level 7 Essay Plans"
  fileStorageKey          String?            // Private S3/R2 key (Never publicly accessible via raw URL)
  fileSizeBytes           Int?

  isPreviewableForNonMembers Boolean         @default(false) // Free teaser file to convert visitors into buyers
  enableDynamicWatermark  Boolean            @default(true)  // Stamps viewer's @handle & phone on PDF to stop piracy

  sortOrder               Int                @default(0)
  createdAt               DateTime           @default(now())
}

// Structured Question Bank for AI / Custom Mock Paper Generation inside the Vehicle
model VehicleQuestionItem {
  id                      String             @id @default(uuid())
  vehicleId               String
  vehicle                 StudyVehicle       @relation(fields: [vehicleId], references: [id])

  syllabusTopicCode       String             // e.g., "2.1 Microeconomics - Elasticity"
  paperComponent          String             // e.g., "Paper 1 (Essay)", "Paper 2 (Data Response)", "Paper 3 (HL Calc)"
  difficultyLevel         Int                // 1 (Foundation) to 5 (Level 7 / 5** Killer Question)
  marksAllocated          Int                // e.g., 10, 15, 25
  estimatedMinutes        Int                // e.g., 18 minutes

  questionPromptMarkdown  String             @db.Text // Supports LaTeX math, diagrams, and tables
  markschemeMarkdown      String             @db.Text // Step-by-step grading rubric & model answer
  isAiGeneratedVariant    Boolean            @default(false) // True if synthesized via AI Question Mutator
}

Rights / compliance fields (impl): on create + every vault upload — creator checkbox warranting original/licensed rights; store acceptance version id (align #221 / #473). Ban list mirrored in upload validation copy.


5. Core modules

Module A — Gated Vault & Anti-Piracy DRM

Creators worry: one student pays HK$99, downloads all PDFs, Airdrops the school.

  1. Signed ephemeral URLs + in-browser viewer

    • Files in private bucket. API checks VehicleMembership.status == "ACTIVE" before streaming into in-app PDF/media reader.
    • Raw S3/R2 URLs expire ≤ 60 seconds. Never expose permanent public URLs.
  2. Dynamic anti-leak watermarking (enableDynamicWatermark = true)

    • Diagonal semi-transparent overlay every page:
      Licensed to @leo_chan (852-9XXX-XX12) via MatchMax Vehicle — Do Not Distribute
    • Uses logged-in member @handle + masked phone.
  3. Teaser / preview lock (isPreviewableForNonMembers)

    • Non-members see full folder tree + titles (e.g. 📁 01. Microeconomics (14 PDFs)).
    • Open 1–2 unlocked sample files.
    • Locked click → 1-click Join / Subscribe modal.

Module B — AI Custom Paper Builder & “Past Paper Style” Mutator

Not uploading copyrighted IB/DSE PDFs. Creators get a 2-in-1 engine:

Creator — AI Question Mutator (“Clone the Style, Change the Scenario”)

  • Paste a classic concept or own worksheet → “✨ Generate 5 Syllabus-Aligned Variants”.
  • LLM produces brand-new, copyright-free questions testing the same syllabus formula/concept (IB/DSE command terms: Evaluate, Calculate, Hence, or otherwise) + point-by-point markschemes + LaTeX → save to VehicleQuestionItem with isAiGeneratedVariant = true.

Student member — 3-click Custom Mock Paper Generator

  1. Select syllabus topics (weak chapters).
  2. Select paper component + difficulty + target duration / marks.
  3. Generate → either:
    • Interactive Timed Exam Mode — live countdown; then markscheme side-by-side (self-grade or AI rubric); log time toward activity streak (#468 later).
    • Printable Custom Exam PDF + MS — exam-formatted booklet + markscheme appendix, watermarked for that student.

Module C — Creator monetization & 1-on-1 tuition flywheel

See §3 access-model table. Payment rails: reuse notes shop FPS / manual cashier + signed delivery patterns from #203 and season payment shape from #232 where possible (recurring polish in Phase B).

Hybrid tuition bridge (exact logic):

  • isCurrentlyActive == true on TuitionCase with creator → auto VehicleMembership with accessGrantReason = ACTIVE_TUITION_CASE_LINK.
  • If TuitionCase inactive ≥ 45 days (same window as #462 Active) → membership PAUSED / free grant ends → paywall.
  • Re-logging lessons on MatchMax restores free access.
  • Drives on-platform lesson logging — Cap.57 1.5 path unchanged.

6. UI / UX wireframe (Vault + Paper Builder)

+-----------------------------------------------------------------------------------+
|  🚗 VEHICLE: IBDP HL Economics 7/7 Vault & Paper Lab        [👑 Creator: @hauzton]|
|  🏛️ Curriculum: IBDP HL/SL  •  👥 184 Members  •  ⭐ 4.98 (62)  •  [✔ Active Pass] |
+-----------------------------------------------------------------------------------+
|  [ 📁 Resource Vault (48) ]  [ 📝 Custom Paper Builder ]  [ 💬 Q&A Wall ]  [ 📊 Analytics ]
+-----------------------------------------------------------------------------------+
|  (VIEW 1: When [ 📁 Resource Vault ] is selected — Gated Nested Folder Tree)      |
|  +-----------------------------------+-----------------------------------------+  |
|  | 📂 VAULT DIRECTORY                | 📄 PREVIEW: Topic_2_Elasticity_7_Notes  |  |
|  | ├── 📁 00. Start Here & Syllabus  | +-------------------------------------+ |  |
|  | ├── 📂 01. Microeconomics (Open)  | |  [Watermark: @leo_chan • 852-9XXX]  | |  |
|  | │   ├── 📄 1.1 Competitive Mkts   | |                                     | |  |
|  | │   ├── 📄 1.2 Elasticity Drills  | |  1.2 Price Elasticity of Demand     | |  |
|  | │   └── 🎬 Paper 1 Essay Video    | |  Formula: PED = (%ΔQd) / (%ΔP)      | |  |
|  | ├── 📁 02. Macroeconomics (16)    | |  Exam Tip: Always state whether...  | |  |
|  | ├── 📁 03. Global Economy (12)    | +-------------------------------------+ |  |
|  | └── 📁 04. HL Paper 3 Calc (19)   | [🔍 Fullscreen] [⭐ Save to My Binder]  |  |
|  +-----------------------------------+-----------------------------------------+  |
|                                                                                   |
|  (VIEW 2: When [ 📝 Custom Paper Builder ] is selected — Student Test Maker)      |
|  +-----------------------------------------------------------------------------+  |
|  | ⚡ GENERATE A CUSTOM MOCK PAPER FROM THIS VEHICLE'S QUESTION BANK (340 Qs)  |  |
|  |                                                                             |  |
|  | 1. Select Syllabus Topics:                                                  |  |
|  |    [☑ 1. Microeconomics (95 Qs)] [☑ 2. Macroeconomics (110 Qs)] [☐ 3. Global]|  |
|  |                                                                             |  |
|  | 2. Paper Style & Difficulty:                                                |  |
|  |    Component: [● Paper 2 Data Response] [○ Paper 1 Essay] [○ Paper 3 Calc]  |  |
|  |    Difficulty: [○ Foundation] [● Standard Exam (Lvl 5-6)] [● Lvl 7 Killer]  |  |
|  |    Target Length: [ 45 Mins / 40 Marks ▾ ]                                  |  |
|  |                                                                             |  |
|  | [ 🚀 Start Interactive Timed Exam ]   [ 🖨️ Download Custom Exam PDF + MS ]  |  |
|  +-----------------------------------------------------------------------------+  |
+-----------------------------------------------------------------------------------+

7. Placement & discovery

Surface Behaviour
/v/$slug Public landing (description, tree titles, teasers, Join) + member vault
Tutor / centre profile “Study Vehicles” section — cards linking to owned Vehicles
Browse page /vehicles (or under Discover) — curriculum / subject filters; Phase D
Season Resources #235 May link to a Vehicle or note listings — do not fork a third file system in Phase A

8. Integration with existing issues

Issue Integration
#459 learnerProfileId on membership; roles (tutor / parent / student scholar); optional verified self-study / practice hours credit when timed mock completed (anti-idle) — Phase D
#461 4th KPI pill later: 🔄 Vehicle MRR (Passive Income): HK$ X/mo beside 1-on-1 tutoring buckets — Phase D
#462 45-day Active window for hybrid free access pause
#468 Optional: mock completion → daily/weekly streak / MaxPoints — Phase D
#218 / #221 Community park + ban list + report/takedown queue; parent acceptance under-18
#232 / #235 Season monetization & Resources page patterns; Vehicle is separate product with its own 12% cut
#203 FPS cashier, private storage, signed delivery, watermark stamp patterns — reuse/extend
#473 Safe-harbor / creator warranty / takedown / final-decision language for Vehicle T&Cs

9. Phasing

Phase A — first unpark (MVP vault commerce)

Private folder vault + membership gate + simple paid one-time / monthly + watermark DRM + #221 ban + report/takedown + ephemeral URLs + teaser files + create Vehicle < 2 min.

Phase B — billing + hybrid flywheel

Creator dashboard (members, revenue, downloads, retention) + recurring billing polish + hybrid tuition bridge (active TuitionCase ↔ free access; 45-day pause).

Phase C — AI / mocks

AI question mutator + custom mock paper builder + timed exam mode + printable PDF+MS.

Phase D — discovery + closed-loop polish

Browse page, bundling with matching, Vehicle MRR on #461 dashboard, verified self-study hours → #459 / #468.


10. Acceptance criteria (QA)

Phase A

  • Tutor, Centre, or verified Student Scholar can create a StudyVehicle in < 2 minutes, configure folder hierarchies, set pricing (FREE_PUBLIC, PAID_SUBSCRIPTION, ONE_TIME_PASS, ACTIVE_STUDENTS_ONLY, HYBRID_PAID_OR_STUDENT).
  • Upload path rejects / bans official IB / HKEAA / Cambridge / school internal / publisher papers (copy from #221); creator rights warranty checkbox required.
  • Non-members see tree titles + teasers only; members with status=ACTIVE stream vault items.
  • DRM: every PDF in viewer stamps viewer @handle + masked phone; raw storage URLs expire ≤ 60s.
  • Paid one-time / monthly checkout reuses #203-style FPS/cashier; platform cut 12% recorded; creator keeps 88%.
  • Report + staff takedown path works (community report queue).
  • No contact details in descriptions (existing filter).
  • Cap.57 / tutor-pays 1.5 path untouched by Vehicle payments.

Phase B

  • Hybrid Tuition Bridge: active TuitionCase (isCurrentlyActive == true) with creator → auto free access to HYBRID_PAID_OR_STUDENT / ACTIVE_STUDENTS_ONLY Vehicle; inactive 45 days → free access pauses / reverts to paywall.
  • Creator dashboard: members, revenue, downloads, retention.
  • Recurring subscription renew / expire / revoke states correct.

Phase C

  • Custom Paper Generator: members filter VehicleQuestionItem by topic, paper component, difficulty → randomized timed test or downloadable PDF + markscheme.
  • AI mutator produces variants flagged isAiGeneratedVariant; no path to upload board past papers as “official”.

Phase D

  • Browse / profile discovery surfaces Vehicles.
  • #461 shows Vehicle MRR KPI pill.
  • Timed mock completion (anti-idle) can credit 0.5–1.0 verified self-study hours (#459) and optionally streak (#468).
  • Under-18 join requires parent acceptance when feature opened wider.

11. Implementation checklists (per phase)

Phase A checklist

  • Migration: enums + StudyVehicle / VehicleMembership / VehicleVaultItem (+ indexes on slug, creatorUserId, learnerProfileId).
  • Private bucket + signed URL helper (≤60s) + in-app PDF viewer.
  • Dynamic watermark overlay (handle + masked phone).
  • Create / edit Vehicle UI + access model + prices + rights warranty.
  • Folder tree CRUD; teaser flag; non-member vs member gating.
  • Checkout: FPS/cashier reuse from #203; ledger row for platform 12% / creator 88%.
  • Ban-list validation + report/takedown hook from community queue.
  • Contact filter on description + file metadata strip.
  • Routes: /v/$slug, creator manage console.
  • i18n: Vehicle create, join, paywall, ban copy (EN + 繁中).
  • RLS / authz: only ACTIVE members read vault bytes; owner/moderator write.

Phase B checklist

  • Recurring billing cycle + expire job.
  • TuitionCase active watcher → grant / pause hybrid membership (45-day rule shared constant with #462).
  • Creator dashboard KPIs.
  • Refund / revoke / chargeback staff tools (minimal).

Phase C checklist

  • VehicleQuestionItem CRUD + LaTeX render.
  • AI mutator endpoint (rate-limited; store variants).
  • 3-click paper builder + timed mode + PDF export + watermark.
  • Explicit product copy: “original / AI-mutated mocks — not official past papers”.

Phase D checklist

  • /vehicles browse + profile section.
  • #461 Vehicle MRR pill.
  • Optional ledger write for practice hours + #468 streak hook.
  • Parent acceptance gate for under-18.
  • Bundling CTA: Vehicle ↔ Request this tutor / case (no Cap.57 change).

12. Out of scope

  • MatchMax-operated past paper library (IB / HKEAA / Cambridge / school / publisher).
  • Official mark schemes hosted by MatchMax.
  • Replacing notes shop #203 or season Resources #235 — Vehicles extend, do not delete those rails.
  • Chat / Telegram / Stripe Connect / Cal.com as Vehicle deps (respect #218 / #332 bans unless separately unparked).
  • Changing tutor-pays 1.5 or Cap.57 posture.
  • Marking this epic Urgent / V1.

13. Open questions (CEO can tune before unpark)

  1. Confirm 12% Vehicle cut vs raise/lower toward notes-shop 20% or season 20–30% for consistency marketing.
  2. Q&A Wall in wireframe — ship with Phase A (reuse community comments) or defer until #218 Stage 1?
  3. Video walkthrough hosting — Phase A link-out only vs HLS in Phase B+?
  4. Apple Pay / card vs FPS-only at Phase A (notes shop is FPS-first).

Parked until #459 + community foundation stable. Pull forward only if creator acquisition needs a gated-content monetization wedge — still not an official paper host.

Activity

  1. owlstonbusiness-svg commented on Oct 27, 2026

    @owlstonbusiness-svg
    CollaboratorAuthor

    Related: #486 Phase D (paid tutor subscription community groups) parks against this Study Vehicles / #232 monetization track. Free community (Phases A–C) must have real DAU before unparking paid group walls.

  2. owlstonbusiness-svg commented on Oct 27, 2026

    @owlstonbusiness-svg
    CollaboratorAuthor

    Different scope: Materials Marketplace Pack (#487/#488/#489) = one-shot shop SKUs / variants / storefront on digital_materials. This Vehicles epic = gated memberships / AI mocks. Cross-link only — do not merge. Memberships stay pointed here from the pack’s Out of scope.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    On HoldExtra attention is neededenhancementNew feature or request

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions