Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
69 changes: 61 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,63 @@
# TrustCode Platform 🚀

AI-assisted Trust-aware CI/CD platform that improves software reliability
using automated code audits, testing pipelines, and trust metrics.

## Features
- AI-based code review (LangChain)
- Automated CI/CD with GitHub Actions
- Trust Loop for commit verification
- Test execution & failure analysis
TrustCode is an **Academic Integrity & Research Authenticity Platform** that helps faculty, students, and administrators evaluate originality, argument quality, AI overuse risk, and research novelty with explainable evidence.

## What is new (Next-Level Scope)

This repository now includes a practical implementation roadmap for the advanced Level-3 capabilities:

- Concept-level plagiarism detection (idea theft)
- Argument & logic-flow scoring
- AI-vs-human probability analysis
- Student stylometric fingerprinting
- Group contribution verification
- Research novelty scoring
- Viva support question generation
- Learning outcome mapping (CO/PO/Bloom)
- Batch/college analytics dashboards
- Policy-driven integrity rules
- Student improvement timeline
- Evidence-backed decision reports
- Secure dataset builder for research
- Multi-language support
- Composite Academic Integrity Index

## Top 10 must-build first

1. Policy-Driven Integrity Rules Engine
2. Evidence-Backed Decision Reports
3. Concept-Level Plagiarism Detector
4. AI vs Human Writing Probability
5. Stylometric Fingerprint + Drift Detection
6. Novelty Score Engine
7. Contribution Verification for Group Projects
8. Learning Outcome Mapping
9. Batch/College Analytics
10. Academic Integrity Index

Why this order:
- Delivers governance and trust early.
- Reduces false-positive risk by requiring explainability.
- Builds reusable scoring infrastructure before advanced UX layers.

## Initial API scaffold

A lightweight FastAPI scaffold is included at `backend/main.py` with:

- health endpoint
- policy registration endpoint
- integrity index scoring endpoint
- explainable evidence payload in the response

Run locally:

```bash
pip install -r backend/requirements.txt
uvicorn backend.main:app --reload --port 8000
```

## Documentation

Detailed architecture, data model, phased rollout, and IEEE-friendly research framing:

- `docs/academic-integrity-next-level.md`
91 changes: 91 additions & 0 deletions backend/main.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,91 @@
from typing import List, Optional

from fastapi import FastAPI
from pydantic import BaseModel, Field

app = FastAPI(title="TrustCode Academic Integrity API", version="0.1.0")


class IntegrityPolicy(BaseModel):
name: str
max_similarity: float = Field(ge=0.0, le=100.0)
ai_strictness: float = Field(ge=0.0, le=1.0)
originality_weight: float = Field(ge=0.0, le=1.0)
citation_weight: float = Field(ge=0.0, le=1.0)
novelty_weight: float = Field(ge=0.0, le=1.0)


class IntegritySignals(BaseModel):
originality_score: float = Field(ge=0.0, le=100.0)
citation_quality_score: float = Field(ge=0.0, le=100.0)
logic_flow_score: float = Field(ge=0.0, le=100.0)
novelty_score: float = Field(ge=0.0, le=100.0)
writing_quality_score: float = Field(ge=0.0, le=100.0)
ai_overuse_risk: float = Field(ge=0.0, le=100.0)
idea_similarity_risk: float = Field(ge=0.0, le=100.0)


class EvidenceItem(BaseModel):
section: str
reason: str
confidence: float = Field(ge=0.0, le=1.0)
source: Optional[str] = None


class IntegrityScoreResponse(BaseModel):
integrity_index: float
verdict: str
evidence: List[EvidenceItem]


POLICIES: List[IntegrityPolicy] = []


@app.get("/health")
def health() -> dict:
return {"status": "ok"}


@app.post("/policies", response_model=IntegrityPolicy)
def create_policy(policy: IntegrityPolicy) -> IntegrityPolicy:
POLICIES.append(policy)
return policy


@app.get("/policies", response_model=List[IntegrityPolicy])
def list_policies() -> List[IntegrityPolicy]:
return POLICIES


@app.post("/score", response_model=IntegrityScoreResponse)
def score_submission(signals: IntegritySignals) -> IntegrityScoreResponse:
index = (
0.25 * signals.originality_score
+ 0.15 * signals.citation_quality_score
+ 0.15 * signals.logic_flow_score
+ 0.15 * signals.novelty_score
+ 0.10 * signals.writing_quality_score
- 0.10 * signals.ai_overuse_risk
- 0.10 * signals.idea_similarity_risk
)

verdict = "pass" if index >= 60 else "review"
evidence = [
EvidenceItem(
section="Overall",
reason="Composite index derived from originality, citation quality, logic flow, novelty, and risk penalties.",
confidence=0.86,
),
EvidenceItem(
section="AI Usage",
reason="AI-overuse risk reduces the final index under institutional policy.",
confidence=0.78,
source="policy:default-weight-profile",
),
]

return IntegrityScoreResponse(
integrity_index=round(index, 2),
verdict=verdict,
evidence=evidence,
)
3 changes: 3 additions & 0 deletions backend/requirements.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
fastapi==0.115.0
uvicorn==0.30.6
pydantic==2.9.2
93 changes: 93 additions & 0 deletions docs/academic-integrity-next-level.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,93 @@
# Academic Integrity Platform – Level-3 Blueprint

## 1) Product goal

Build an enterprise-ready academic integrity system that moves beyond string matching and supports **idea-level authenticity**, **explainable decisioning**, and **institution-scale analytics**.

## 2) Core modules

| Layer | Responsibilities |
|---|---|
| AI Engine | embeddings, stylometry, argument mining, multilingual NLP |
| Integrity Engine | weighted scoring, policy evaluation, penalties, thresholds |
| Explainability | source snippets, confidence, rationale trace |
| Analytics | student, class, department, institution trend intelligence |
| Governance | policy authoring, audit logs, ethics + consent handling |
| Research | novelty analysis and anonymized dataset export |

## 3) Prioritized implementation roadmap

### Phase A: Trust foundation (Weeks 1–3)
- Policy-Driven Rules Engine
- Evidence-Backed Decision Reports
- Academic Integrity Index (first version)

### Phase B: Detection intelligence (Weeks 4–8)
- Concept-Level Plagiarism Detector
- AI-vs-Human Writing Probability
- Stylometric fingerprint + anomaly detection
- Contribution verification for team submissions

### Phase C: Research quality (Weeks 9–12)
- Argument & Logic Flow Analyzer
- Novelty Score against historical/internal/public sources
- Viva-support auto question generator
- Learning Outcome mapping (Bloom/CO/PO)

### Phase D: Enterprise scale (Weeks 13–16)
- Batch/college analytics dashboards
- Improvement timeline per student
- Multi-language support + cross-language similarity
- Secure dataset builder with ethics controls

## 4) Academic Integrity Index (proposed v1)

```text
IntegrityIndex =
(0.25 * OriginalityScore)
+ (0.15 * CitationQualityScore)
+ (0.15 * LogicFlowScore)
+ (0.15 * NoveltyScore)
+ (0.10 * WritingQualityScore)
- (0.10 * AIOveruseRisk)
- (0.10 * IdeaSimilarityRisk)
```

Policy engine can override weights by institution.

## 5) Data entities (minimal)

- StudentProfile
- Submission
- EvidenceItem
- IntegrityPolicy
- AnalysisResult
- ContributionSplit
- OutcomeMapping
- AuditEvent

## 6) Explainability contract

Every flagged result must include:
- evidence snippet
- matched source
- score/confidence
- model signal summary
- policy/rule that fired

This keeps outcomes auditable and defensible during viva/disciplinary reviews.

## 7) Research/IEEE readiness

- Anonymized dataset pipeline with consent metadata
- Experiment tracking for model versions
- Baseline comparison (classical plagiarism vs idea-level model)
- Fairness checks across language/background segments

## 8) Suggested KPIs

- False positive rate (<5% target)
- Manual review agreement (>85%)
- Policy override frequency
- Semester-over-semester integrity improvement
- Time saved in faculty review process