# शोध संचयन — परीक्षण मार्गदर्शिका / Testing Guide

For the editor and anyone else trying the platform before it goes live.

You do not need any technical knowledge to work through this. Each step says
what to click and what should happen. If what you see does not match what is
written, that is worth reporting — even if it seems small.

**Nothing here can break anything.** This is a test system with test data. Submit
nonsense papers, reject them, publish them, change the text of any page. It is
meant to be poked at.

---

## Before you start

**Address:** you will be given a link — `http://localhost:3000` on a laptop, or
`https://staging.shodh.net` once it is on a server.

**Accounts.** Six, two of each kind, so two people can test the same role at once
without tripping over each other.

| भूमिका / Role | ईमेल / Email | पासवर्ड / Password |
|---|---|---|
| संपादक / Admin | `sampadak1@test.shodh.net` | `Sampadak@2026` |
| संपादक / Admin | `sampadak2@test.shodh.net` | `Sampadak@2027` |
| समीक्षक / Reviewer | `samikshak1@test.shodh.net` | `Samikshak@2026` |
| समीक्षक / Reviewer | `samikshak2@test.shodh.net` | `Samikshak@2027` |
| लेखक / Author | `lekhak1@test.shodh.net` | `Lekhak@2026` |
| लेखक / Author | `lekhak2@test.shodh.net` | `Lekhak@2027` |

These are throwaway accounts for testing only. They will not exist on the real
site.

**A note on roles.** The platform shows completely different screens depending on
who is logged in. To test the full journey of one paper you will need to log out
and back in as a different person — author submits, admin assigns, reviewer
reviews, admin publishes. That is normal, not a fault.

### What to write down when something is wrong

Four things make a report useful:

1. Who you were logged in as
2. What you clicked
3. What you expected
4. What actually happened

A screenshot is worth more than a description. If an error message appears, it is
usually bilingual — copy it exactly.

---

## 1. सार्वजनिक साइट / The public site

No login needed. Open the site in a fresh browser tab.

| # | करें / Do this | होना चाहिए / Should happen |
|---|---|---|
| 1.1 | Open the home page | Loads in Hindi, shows recent papers |
| 1.2 | Click **English** (top right) | The whole page switches to English, and stays English as you move around |
| 1.3 | Go to **पत्रिका / Journal → संग्रह / Archive** | 25 issues listed, newest first |
| 1.4 | Open any issue | Its articles listed with titles and authors |
| 1.5 | Click an article's PDF | The PDF opens or downloads and is readable |
| 1.6 | Go back and open a different volume | Volumes 1 through 17 all reachable |
| 1.7 | Use the search box | Searching a word from a title finds that paper |
| 1.8 | **पर्यवेक्षक डेस्क / Supervisors registry** | A long searchable list (about 7,500 entries) |
| 1.9 | Search a name in the registry | Matching entries appear |
| 1.10 | **लेखक डेस्क / Author desk** → each page | Guidelines, publication fee, deadlines, peer review, subscription, call for papers all load with real text |
| 1.11 | **सूचना डेस्क / Information** → each page | Seminars, workshops, training, doctoral colloquium, grants |
| 1.12 | **जर्नल्स / Journal** → about, aims, editorial board, impact factor | All load |
| 1.13 | **संपर्क / Contact** — fill and submit | A success message. The admin will see this later (step 5.14) |

> **Worth checking carefully:** the archive is the journal's own back catalogue,
> recovered from the old website — 479 articles across 25 issues. If any article
> is missing, has the wrong title, or its PDF does not match its title, that
> matters more than almost anything else in this guide.

---

## 2. खाता / Accounts and passwords

| # | करें / Do this | होना चाहिए / Should happen |
|---|---|---|
| 2.1 | **पंजीकरण / Register** with a new email | You are signed in immediately as an author |
| 2.2 | **लॉगआउट / Logout**, then log back in | Works |
| 2.3 | Log in with a deliberately wrong password | Refused with a clear bilingual message — not a blank page |
| 2.4 | **Settings → change your password** | Succeeds, and you stay logged in |
| 2.5 | Open the site in a second browser, log in as the same person in both, then change the password in one | The **other** browser is signed out on its next action |

Step 2.5 is the security behaviour worth confirming: changing a password ends
every other session, so a password known to someone else stops being useful
immediately.

> **"पासवर्ड भूल गए? / Forgot password?"** appears only when the system has an
> email account configured. If you do not see the link, that is correct — not a
> missing feature. Once email is set up it appears, and the link it sends expires
> after an hour and works only once.

---

## 3. लेखक / As an author

Log in as `lekhak1@test.shodh.net`.

| # | करें / Do this | होना चाहिए / Should happen |
|---|---|---|
| 3.1 | Open the dashboard | Your papers, each with its status |
| 3.2 | **शोधपत्र जमा करें / Submit Paper** | A four-step form: details → co-authors → upload → review |
| 3.3 | Type a Hindi title, click **AI प्रोसेस** | An English translation and a Roman transliteration appear within a few seconds |
| 3.4 | Do the same for the abstract | Same. A long abstract may take 10–20 seconds |
| 3.5 | **Judge the AI output as an editor** | Is the English publishable? Is the transliteration right for the Sanskrit-derived terms? |
| 3.6 | Add a co-author | Accepted, with an order and a "corresponding" mark |
| 3.7 | Upload a PDF | Accepted. Try a Word file too — it should convert |
| 3.8 | Try uploading something that is not a document | Refused with a clear reason |
| 3.9 | Tick both declarations and submit | A success screen showing your reference number (`SS-2026-…`) |
| 3.10 | Note the reference number | It is what you quote in any correspondence about this paper |
| 3.11 | Open `SS-2026-00001` (already in "revision requested") | You can upload a revised manuscript |
| 3.12 | Click the **bell** icon, top right | Notifications, newest first; clicking one opens what it refers to |

**Step 3.5 is the one only you can answer.** Everything else in this guide is
either right or wrong; whether the AI's Hindi-to-English translation is good
enough to publish is an editorial judgement, and nobody else can make it.

---

## 4. भुगतान / Payment

**Set this up first:** log in as an admin, go to **Page Content → PAYMENT**, and
fill in the UPI ID and account name. Until both are filled in the payment page
deliberately refuses to open — an author who pays to a blank account has lost
real money.

Also check **Journal Settings** shows *Charge a review fee* ticked. If your
journal does not charge at all, that switch is how you turn the whole section
off — tested in section 4A below.

| # | करें / Do this | होना चाहिए / Should happen |
|---|---|---|
| 4.1 | Submit a paper as an author (step 3.9) | It stops at **शुल्क भुगतान शेष / Payment pending** and the success screen offers "pay the review fee" |
| 4.2 | Open the payment page | Amount broken into fee + GST, a QR code, the UPI ID, and the reference number to quote |
| 4.3 | Scan the QR with a UPI app *without paying* | Your app should show the right payee and the right amount. **Do not complete the payment** |
| 4.4 | Enter any 12-digit number as the UTR and submit | The page changes to "awaiting confirmation" and stops offering the form again |
| 4.5 | As an admin, open **Payments** | Your claim is in the queue with the author, amount, UTR and note |
| 4.6 | Click **नहीं मिला / Not found**, give a reason | The author is told, and their paper stays where it is — they do not resubmit |
| 4.7 | As the author, reopen the payment page | The rejection reason is shown, with the form back so a corrected number can be entered |
| 4.8 | Enter a different number, then confirm it as admin | The paper moves to **प्रस्तुत / Submitted** and enters the review process |
| 4.9 | As a second author, claim the **same** UTR | Refused — one reference cannot be used twice |

### 4A. शुल्क बंद करना / Switching the fee off

Only if you might ever stop charging. The point of these steps is that switching
off must not lose an author's money.

| # | करें / Do this | होना चाहिए / Should happen |
|---|---|---|
| 4A.1 | Have one paper waiting with a UTR declared (step 4.4) and one with nothing declared | Two papers at **Payment pending** |
| 4A.2 | **Journal Settings** → untick *Charge a review fee* → Save | A confirmation appears first, saying held papers will be released |
| 4A.3 | Confirm it | Both papers move to **प्रस्तुत / Submitted** and enter review |
| 4A.4 | Open **Payments** | Still reachable, and **the declared UTR is still there** — you can still confirm or reject it against your bank statement |
| 4A.5 | Confirm that claim | Works exactly as before |
| 4A.6 | Submit a new paper as an author | No fee is asked for; it goes straight into review, and the submit form no longer mentions a fee |
| 4A.7 | Look at **लेखक डेस्क / Author's Desk** on the public site | **प्रकाशन शुल्क / Publication Fee** is gone from the menu and from the page of links |
| 4A.8 | Open `/author-desk/publication-fee` directly in the address bar | "No publication fee applies at this time" — not the fee schedule |
| 4A.9 | Open an author's payment page from an old link | "No fee is payable for this paper" — **no QR code and no amount** |
| 4A.10 | Tick the fee back on | The Publication Fee page and its menu entry return, with the editor's original wording |
| 4A.11 | Reopen the released papers | No payment banner reappears — they are past it, and are not charged twice |

> **4A.9 is the one that protects real money.** With the fee switched off, no
> screen anywhere should show a QR code or an amount. If you ever see one, stop
> and report it — scanning it would send a payment the system cannot record.

> The other thing to check hardest is **4A.4**. An author who has already paid must
> never have their claim disappear because of a settings change.

### 4B. शुल्क बदलना / Changing the amount

| # | करें / Do this | होना चाहिए / Should happen |
|---|---|---|
| 4B.1 | **Journal Settings** — enter the fee in rupees | Below the box it shows fee + GST = total, in rupees |
| 4B.2 | Save | A confirmation shows the old total and the new one |
| 4B.3 | As an author with an unpaid paper, reopen the payment page | The new amount, and the QR now carries the new amount |
| 4B.4 | Check an author who already declared a UTR | Still shows the amount **they** were quoted, not the new one |

> The fee box is in rupees, not paise. Type `700` for ₹700.

> The platform can never *know* a payment arrived — a UPI QR sends no message
> back. Everything here records what an author *says* and what an editor
> *decides* after checking the bank statement. That is why the wording says
> "received" rather than "verified" until you confirm it.

---

## 5. संपादक / As an admin

Log in as `sampadak1@test.shodh.net`.

| # | करें / Do this | होना चाहिए / Should happen |
|---|---|---|
| 5.1 | Dashboard | Counts of papers, users, categories; an amber alert if payments are waiting |
| 5.2 | **Papers** | Every paper with its status; filters work |
| 5.3 | Open a submitted paper and read the manuscript | You are asked for a reason first — this is recorded |
| 5.4 | Assign a reviewer | The reviewer is notified |
| 5.5 | Assign a second reviewer | Also allowed |
| 5.6 | **Request revision** with notes | Author sees the notes; status changes |
| 5.7 | **Reject** a paper with a reason | Status changes; the author is told |
| 5.8 | **Publish** an accepted paper | It appears on the public site |
| 5.9 | **Users** — create a reviewer | They are given a temporary password and must change it on first login |
| 5.10 | **Users** — deactivate someone who is logged in | Their session stops working immediately |
| 5.11 | **Categories** — add one, then use it in a submission | Appears in the submit form |
| 5.12 | **Page Content** — change any text, save, view that page | Your change is live. This is how you edit the site without a developer |
| 5.13 | **Page Content** — use AI translate on a field | Fills the other language |
| 5.14 | **Contact enquiries** | The message from step 1.13 is there |
| 5.15 | **Magazine Builder** — assemble an issue and generate the PDF | Covered in section 5B |
| 5.16 | **Activity Log** | Every significant action, with who and when |
| 5.17 | **API Usage** | Per-user request counts |
| 5.18 | **Payments** | Covered in section 4 |
| 5.19 | **Journal Settings** | Covered in sections 4A and 4B |
| 5.20 | On a paper, click **AI details** | Covered in section 5A |

### 5A. AI से विवरण / Asking AI for a title, abstract and keywords

New. The AI reads the whole manuscript and proposes wording; nothing is saved
until you choose to save it.

| # | करें / Do this | होना चाहिए / Should happen |
|---|---|---|
| 5A.1 | On any unpublished paper, click **AI details** | A box offering Title, Abstract, Keywords, and a word limit for the abstract |
| 5A.2 | Leave all three ticked, set the abstract limit, click **Generate** | It thinks for up to a minute, then shows each field beside what the paper says now, in Hindi and English |
| 5A.3 | **Judge the output as an editor** | Is the proposed title better than the author's? Is the abstract accurate to the paper — not just fluent? |
| 5A.4 | Check the word count shown above the abstract | It reports what was actually produced against your limit, and may exceed it slightly |
| 5A.5 | Untick **Use this** on one field, then Save | Only the ticked fields change; the unticked one keeps the author's wording |
| 5A.6 | Reopen the paper list | Your saved title is shown |
| 5A.7 | Try it on a scanned PDF, or a Hindi document typed in an old font like Kruti Dev | It refuses, explaining it could not read the text — it does **not** invent a title |
| 5A.8 | Generate only the abstract, nothing else | Only an abstract comes back |

> **Step 5A.3 is the second judgement only you can make.** The software can check
> that a title appears; whether it is a *better* title than the author's is
> editorial.

> **Step 5A.7 matters more than it looks.** Much of the old archive is Hindi
> typed in pre-Unicode fonts, which computers read as meaningless letters. The
> system is built to say so rather than write a confident summary of nothing. If
> you ever see it produce a plausible title from an unreadable file, report it.

> Published papers deliberately have no **AI details** button: their titles are
> already in the supervisors' registry and in any issue PDF built from them.

### 5B. अंक बनाना / Building an issue

New. The issue is now one continuously paginated document — title page,
subscription rates, instructions to authors, editorial board, contents,
editorial, then the articles — and each article's own PDF is an extract of it.

| # | करें / Do this | होना चाहिए / Should happen |
|---|---|---|
| 5B.1 | **Magazine Builder** — set the volume, issue and publication date, pick two or three papers, click **Generate** | One issue PDF, and one PDF per article |
| 5B.2 | Open the issue PDF and turn the first pages | Title page, then the subscription rates, instructions to authors and editorial board — all of them the same text as the website's own pages |
| 5B.3 | Find the contents page (**अनुक्रम**) | Every article's page number is the page it really opens on. Turn to one and check |
| 5B.4 | Look along the top of a page in the middle of an article | `[13] भाग 18, अंक 1, 15 जनवरी, 2026` on one side, the wordmark on the other, alternating by page |
| 5B.5 | Look at an article's first two pages | Neither carries a running head. The second repeats the title above the columns |
| 5B.6 | Download one article's PDF from the same issue | It is that article's pages lifted out of the issue, still numbered as they are in it |
| 5B.7 | Before generating, choose an **आवरण चित्र / Cover artwork** file | It becomes page one; everything else moves down a page, contents included |
| 5B.8 | Generate again with no cover | The issue opens on its title page, which is what the printed issue carries inside the cover anyway |
| 5B.9 | Edit **Page Content → Subscription Fee**, then generate a new issue | Your change is in the issue's front matter. The pages are kept in one place, not two |
| 5B.10 | Read a page of an article against the printed journal | The page furniture should match. The **body will not**: see the note below |

> **What the body cannot do.** The printed journal was typeset by a compositor
> working from the manuscript. This builds an article from the text extracted
> out of the uploaded file, so tables, figures, footnotes, superscripts and
> citation formatting do not survive — the words do, the structure does not. If
> a paper has a table, the generated issue will not. Nothing about fonts or
> margins changes that. Worth deciding, with Dr. Singh, whether that is
> acceptable for the papers he actually publishes.

> **Step 5.12 is worth dwelling on.** Almost every piece of text on the public
> site — page bodies, button labels, notices — is editable here, in both
> languages. If you find wording anywhere on the site you dislike, you can change
> it yourself.

---

## 6. समीक्षक / As a reviewer

Log in as `samikshak1@test.shodh.net`, after an admin has assigned you a paper
(step 5.4).

| # | करें / Do this | होना चाहिए / Should happen |
|---|---|---|
| 6.1 | Dashboard | Pending and completed reviews |
| 6.2 | Open an assigned paper | You must accept a confidentiality agreement first |
| 6.3 | Read the manuscript | It opens watermarked |
| 6.4 | **Look for the author's name anywhere** | You should not find it — not in the page, not in the PDF's properties. This is the double-blind guarantee |
| 6.5 | Upload an annotated PDF | Accepted and attached to your review |
| 6.6 | Submit a review with a recommendation | The admin sees it; the paper's status moves on |
| 6.7 | Decline a different assignment | Accepted, and the admin can reassign |

**Step 6.4 is the one to test adversarially.** Try to find out who wrote the
paper. If you can, that is a serious problem and worth reporting immediately.

---

## 7. भूमिका की सीमाएँ / Role boundaries

Quick checks that people only see what they should.

| # | करें / Do this | होना चाहिए / Should happen |
|---|---|---|
| 7.1 | As an author, put `/admin/payments` in the address bar | Refused |
| 7.2 | As a reviewer, try to open a paper you were not assigned | Refused |
| 7.3 | As an author, try to open another author's paper | Refused |

---

## What will not work yet, and why

These are known and deliberate — not faults to report.

- **Password reset** is hidden until an email account is configured. Once it is,
  every email in the platform starts working: payment confirmations, reset links,
  the lot.
- **AI details** needs the AI service configured. Without it the button explains
  that rather than failing.
- **Card and net-banking payments** are not built. Payment is by UPI, reconciled
  by hand against the bank statement.
- **Sign in with Google or Microsoft** is not available.
- **SMS** is not sent anywhere.
- The **payment page refuses to open** until the UPI details are filled in
  (section 4).

## What you may safely ignore

- Papers numbered `SS-2026-00001` to `00004` and the six `@test.shodh.net`
  accounts are test data.
- Reference numbers may skip a number. That is intentional — a number is never
  reused, even if a submission is abandoned.
- On a laptop the address is `http://localhost:3000` and the browser may say the
  connection is not secure. On the real site it will be `https://` with a proper
  certificate.

---

## The three questions worth answering above all

Most of this guide checks whether the software works. These three ask whether it
is *right*, and only the editor can answer them:

1. **Is the archive faithful?** 479 recovered articles — are the titles, authors,
   issues and PDFs correct?
2. **Is the AI's English good enough to publish?** (steps 3.5 and 5A.3)
3. **Does the site read well in Hindi?** Not just translated — does it sound like
   a scholarly journal?
