Supporting evidence
EduLoans reviewer workspace
The complete artifacts and detailed records behind the account. Current public references, original work and proposed designs retain their labels.
Detailed material
The challenge
Thirteen lender thresholds were missing. A polished interface could still produce a convincing match, but it could not supply the policy evidence behind that answer. I treated those gaps as restrictions on affected-lender release rather than letting the prototype guess.
Do not guess missing lender policy
I chose deterministic lender gates for the first version and deferred machine-learning scoring until outcome data existed. The alternative would have made a plausible score easier to display while leaving the underlying eligibility uncertain. Relationship-manager confirmation, backed by a policy screenshot, was required before the five affected lenders could be released.
Human verification before matching
A document can be recognized without its contents being reliable. The design separates classification, validation and verification. For example, an uncertain regional marksheet or scanned tax return must go to a KAM—an account manager reviewing the case—rather than silently becoming verified information. This is the intended handling of the documented example types, not an executed document-quality evaluation.
Impact and its limits
What exists is a documented policy model and original interaction prototype for three roles. The model records 62 rules across eight lender configurations and 23 workflow states; these are scope counts, not correctness scores. Archived software tests cover UI/utilities and locally defined rule helpers, not deployed lender-function correctness or document-model quality. Closure of the recorded release restrictions is not established.
Make uncertainty visible before release
That choice adds a review step instead of maximizing apparent automation. It also makes unfinished work visible. The archived backlog includes rule-source consistency, a specified Punjab pincode rejection not yet wired into the application, 32 unsecured lender–applicant checklist combinations and a separate operational dashboard. None is presented as subsequently completed.
Before release, I would require approved lender fixtures, verification that cannot be bypassed and matching policy versions across builds. These are proposed gates. Document quality, permissions, score boundaries and recovery need their own evaluation; a software-test pass count cannot establish those results.
Deterministic gates before model scoring
The model keeps each lender’s conditions visible: eligibility gates first, then a score bounded at 0–100 and five result tiers. Premium-university income exceptions, course factors and urgency adjustments remain policy inputs rather than reasons to improvise an answer. The same verified facts and rule version should produce the same result.
I separated policy exploration from interface scaffolding so each could be inspected independently. AI-assisted building describes how the working artifacts were produced; it does not mean the captured interface runs a live document model or makes a lender’s credit decision. The original role screens use sample data and scripted responses.
Different people, different case actions
The role views explore different actions against one case model. A student supplies information; a partner submits and manages cases in bulk with payout context; a KAM inspects risk and service-level signals, checks evidence and resolves exceptions. The scripted screenshots show those jobs individually; they are not a recording of one case completing the full journey.
Original role views and workflow detail
The written student journey has fourteen turns; V1.03 shows a thirteen-step counter. Partners explore bulk submission and payout context. KAMs inspect a queue and verify evidence before rule-engine results. The screenshots are separate scripted role views, not a demonstrated end-to-end execution.
The 23 states describe a workflow state machine, not geography. Lender-by-applicant checklists link document requirements to policy. Uncertain regional marksheets, scanned tax returns and joint statements are documented examples for human review. Expanded coverage and a separate operational KAM dashboard remain archived roadmap items.
Implementation notes: policy exploration and scaffolding
The policy/chat build supported rule and conversation review; the React, TypeScript and Supabase scaffold made the application structure tangible. The tool inventory records which work each build supported, not independent evidence of production quality.
Original V1.03 screenshots run with sample records and scripted responses, without a lender, backend or live model connection.
Scroll across to see every column.
| Tool or build | Purpose | Boundary |
|---|---|---|
| Emergent | Policy/chat prototype and interaction exploration | Prototype behaviour needs policy validation |
| Lovable | Application scaffolding | UI availability does not prove workflow completeness |
| Claude and Gemini | Specification, reasoning and review | Outputs remain subject to policy/source review |
| Antigravity | Repository and integration work | Implementation still needs tests and release gates |
| React, TypeScript and Supabase | Application scaffold and data structure | Rule consistency and operational coverage remain release work |
The choices I defended before release
The archived policy model uses lender-specific gates, 0–100 bounded scores and five result tiers. Premium-university income exceptions, course factors and urgency adjustments are retained as explicit policy conditions; machine-learning scoring was deferred pending outcome data.
Thirteen thresholds across Auxilo, Gyandhan, PNB, Axis and ICICI required relationship-manager confirmation backed by policy evidence. The archived P0 restriction applied to those lenders. A Punjab pincode exclusion is specified as policy while its application wiring remains P1 backlog.
Archived backlog: restrictions, coverage and later operations
Status is the archived technical-portfolio account, reviewed 15 October 2026; later completion is not established. Threshold confirmation and consistency between the master rule source and builds restrict release. The proposed consistency options are master-to-Supabase sync with a checksum or a rules-administration flow.
Coverage work includes pincode rejection wiring and 32 unsecured checklist combinations. A proposed single-JWT OpenAPI contract has three scopes and asynchronous document/verification handling, with hard-reject closure. Later operational work includes separate KAM permissions, payout reconciliation and rule-engine re-runs.
Scroll across to see every column.
| Consequence | Work | Recorded status |
|---|---|---|
| Release restriction (P0) | Confirm 13 lender thresholds with relationship managers | Release restriction for affected lenders |
| Release restriction (P0) | Reconcile the rules source across master and builds | Sync/checksum or rules-admin options proposed |
| Coverage or contract work (P1) | Wire Punjab pincode hard rejection | Implementation backlog despite stated policy |
| Coverage or contract work (P1) | Complete 32 unsecured lender–applicant checklist combinations | Coverage expansion |
| Coverage or contract work (P1) | OpenAPI scopes, asynchronous document/verification and hard-reject closure | Proposed contract |
| Later operations (P2) | Separate KAM dashboard, permissions, payout reconciliation and BRE re-runs | Operational roadmap |
Status from the archived technical portfolio, reviewed 15 October 2026. Priorities describe release consequences, not a claim that this is the live backlog.
Separate exploration: orchestration and connectors
Separate exploratory work considered mapping KAM work onto an NVIDIA NemoClaw agent graph in an Antigravity side project, and investigating Zapier MCP, Apify and Unipile for a LinkedIn-related connector gap. These are follow-on learning topics, not components delivered in the lending prototype.
Archived unit and regression validation — March 2026
Archived software tests cover UI/utilities and locally defined rule helpers. They do not establish deployed policy correctness or document-model quality. The Vitest JSON report records 145 passing assertions across ten files on 5 March 2026 at 06:51 UTC; the run was not freshly repeated for this case.
Rule-engine tests define helpers within the test file rather than importing the deployed suggest-lender function. Supabase and selected UI dependencies are mocked; document assertions cover status utilities. Earlier selector failures and an unidentified failed last-run marker also remain in the archive.
Scroll across to see every column.
| Evidence | Recorded scope | Limit |
|---|---|---|
| Deterministic BRE tests | 26 assertions: urgency, strategy, warnings and academic weighting | Local test helpers; not the deployed edge function |
| UI and utility regression tests | Auth hydration, selectors, field validation, completeness, formatting and disclosures | Mocks replace auth, Supabase and selected UI dependencies |
| Document-related assertions | Document-status labels and utilities | No labelled-document model evaluation |
| JSON run report | 145 passing assertions across ten test files | One March 2026 snapshot; older failure logs remain |
Evaluation and release validation — proposed
Proposed, not executed: approved lender fixtures, enforced verification and consistent rule versions are the three first release gates. The full matrix also covers score boundaries, uncertain documents, role permissions and incomplete-case recovery. Fixtures, acceptance thresholds and representative document data have not been supplied as executed model or end-to-end results.
Scroll across to see every column.
| Scenario | Expected behaviour | Available evidence | Status |
|---|---|---|---|
| Missing lender thresholds | Block matching/release for affected lenders until approved thresholds are supplied; never substitute a guessed value. | Existing: release notes identify 13 threshold gaps across five lenders and require relationship-manager policy confirmation. Proposed: signed-off boundary fixtures and a release-blocking test. | Proposed — not executed |
| Verification bypass | Do not return a lender match before required KAM verification; reject attempts to skip the gate. | Existing: workflow and architecture describe verification before BRE results. Proposed: student, partner and KAM attempts to bypass the gate, with permission and recovery checks. | Proposed — not executed |
| Deterministic repeatability | The same applicant inputs and rule version produce the same gates, score and tier across each implementation. | Existing: deterministic policy model and archived local-helper BRE tests; the deployed edge function was not tested by those helpers. Proposed: shared approved fixtures against the model and both builds, recording version disagreements. | Proposed — not executed |
| Score boundaries | Clamp scores to 0–100 and assign the documented five tiers consistently at each boundary. | Existing: bounded-scoring model, scoring diagram and archived local-helper assertions. Proposed: approved lender-specific fixtures at, below and above every score/tier boundary. | Proposed — not executed |
| Uncertain documents | Separate classification, validation and verification; uncertain extraction routes to human review instead of a confident match. | Existing: document-pipeline diagram and regional marksheet, tax-scan and joint-statement examples. Archived document assertions cover status utilities, not model quality. Proposed: consented deidentified difficult scans with per-type quality, abstention and reviewer-correction checks. | Proposed — not executed |
| Role permissions and incomplete-case recovery | Keep student, partner and KAM actions within their remit; explain missing evidence and recover without losing the case state. | Existing: three-role original interaction prototype with scripted sample data and a confirmation card. Proposed: incomplete-document, unauthorised-action and recovery journeys; expand the 32 unsecured checklist combinations. | Proposed — not executed |
| Rule-source reconciliation before release | Use the approved policy version in each build and resolve differences before deployment. | Existing: master/build consistency backlog and proposed checksum or rules-admin controls. Proposed: version reconciliation, signed-off fixtures and documented disagreement resolution. | Proposed — not executed |
The test sets, baselines and release thresholds must be agreed before execution. This table records proposed validation work.
Notes and sources
- Evidence: authored PRD/rule model, original V1.03 role prototype and archived March 2026 software tests. The screenshots are scripted sample-data interactions without live lender, backend or document-model connections.
- Archive scope: 62 rules, eight lender configurations and 23 workflow states. Thirteen missing thresholds, rule-source consistency, pincode wiring, checklist coverage and separate KAM operations remain recorded restrictions or roadmap items; later completion is not established.
- A separate career account describes AI-assisted origination operations with effort reported as nine to four hours per file and about ₹1,562 labour value per file. Its measurement inputs and attribution are unavailable here. It is not a result of this scripted prototype, its rule engine or a document-model benchmark.
- The archived test inventory and proposed release matrix are available in the references. They establish neither a freshly verified deployment nor independent model accuracy.
AI Project by Priyam: EduLoans technical portfolio · Architecture, roles, decisions and roadmap chapters · Working builds and release backlog
AI Project by Priyam · “What I’m learning next” and skills chapters · Follow-on exploration
edulaons-main.zip · src/test, vitest_report.json, test_out.txt, earlier failure logs · 5 March 2026 · Archived software-validation evidence; not independently rerun
Proposed validation plan · Authored portfolio plan; not executed results