Practitionist / Practitionist/elluminar_web

Trust & integrity suite — plagiarism/AI detection, proctoring, authorship verification

Open
#20 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

post-mvp trust-integrity v2
Dominant language
TypeScript
Stars
1
Forks
0
Avg merge
17h 2m
Merged PRs (30d)
18

Description

Why / Context

PRD §7.2C: plagiarism/AI-generation detection and browser-locked assessments protect "the credibility of certificates and mentor time alike" — the certificate's value IS the business as the marketplace scales (PRD §12: AI-shortcut integrity is the core threat to 'verified proof of skill'). Teardown §5.3: project-authorship verification as a headline trust claim is ownable whitespace (AVNI verifies interviews, not authorship; Crio has policy but no buyer-facing claim).

Schema already in place — NO migration required

  • IntegrityFlag (subject types incl. ASSIGNMENT_SUBMISSION/MILESTONE_SUBMISSION/QUIZ_ATTEMPT/DEFENSE/CREDENTIAL; kinds PLAGIARISM/AI_GENERATED/SIMILARITY/PROCTOR_VIOLATION/MANUAL_REPORT; status workflow)
  • ProctorRecord (quizAttempt 1:1, config/events/verdict)
  • Credential.revokedAt/revokeReason + public verify page reflects revocation (MVP M11)
  • Quiz.proctored flag; ProjectReview.aiMetadata can carry authorship signals

Implementation plan

  1. Similarity pipeline: on milestone/assignment submission, background function computes cross-corpus similarity (MOSS-style token fingerprinting for code via a service like Codequiry/MeasureOfSoftwareSimilarity self-host decision doc) → IntegrityFlag(kind: SIMILARITY, score) above threshold.
  2. AI-generation signals: stylometry + commit-history heuristics (single-dump repos, no iteration) + optional detector API; recorded as advisory flags — never auto-fail (documented policy: flags inform mentors/defense, humans decide).
  3. Authorship verification claim: combine defense verdict (issue #3) + integrity flags + commit cadence into a per-credential "authorship verified" badge on the verify page + portfolio (the marketable trust claim).
  4. Proctored quizzes: browser-lock mode (fullscreen enforcement, tab-blur/copy-paste events, webcam snapshot opt-in per config) writing ProctorRecord.events; verdict review UI for admins; enable per Quiz.proctored for certification exams.
  5. Review workflows: admin integrity queue (filter by kind/status/score), resolution actions (dismiss/confirm), confirmed flags → mentor notification, resubmission requirement, or credential revocation (existing revoke flow) per severity matrix.
  6. Learner-facing due process: notice of confirmed flags, appeal path (thread in admin queue), policy pages (with issue #24).
  7. Metrics: flag rates by course/project, false-positive tracking from dismissals.

Acceptance criteria

  • Two near-identical submissions in a project corpus both get SIMILARITY flags with linked evidence
  • Proctored quiz records blur/fullscreen-exit events; verdict reviewable; VIOLATION blocks auto-pass pending review
  • Confirmed integrity violation can revoke a credential; verify page shows revoked state
  • Flags never auto-fail without human confirmation (policy enforced in code paths)
  • Credential pages show "authorship verified" only when defense + clean flags criteria met

Dependencies / sequencing

  • MVP M9/M10/M11; issue #3 (defense) feeds the authorship claim
  • Policy copy coordinates with issue #24

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by mapping the existing IntegrityFlag, ProctorRecord, Credential revocation, Quiz.proctored, and ProjectReview.aiMetadata flows. Read issue #3 for defense sequencing and issue #24 for policy dependencies. Done means the listed similarity, proctoring, review, authorship, revocation, and human-confirmation acceptance criteria are implemented together.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
backend, frontend, security
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.