← BBS SG Bank submission · All documents

07 — Submission Checklist

Gate list against the official rubric. A box is only checked when the evidence exists and is linked. Several boxes are intentionally unchecked — that is the honest state.

Legend: [x] done + evidence · [~] partial · [ ] not done / blocked.


A. Eligibility gates (mandatory — missing any one is disqualifying)

RequirementStatusEvidence / placeholder
A1Hosted working prototype URL[x]Interactive Worker (JavaScript port; COBOL terminal runs locally)
A2Short demo (≤3 min)[x]https://bbs-sg-bank-demo.pages.dev/media/bbs-sg-bank-demo.mp4; script ready 05-demo-script.md
A3Before/after explanation[x]02-before-after.md
A4Original public post per team member (Medium or LinkedIn)[ ]06-social-posts.md; URLs {MEMBER_n_POST_URL}
A5Built substantially with Opsera Forge[~] 🟡project created; Assessment complete (57/100, 10 findings; raw report not exported; docs/forge/assessment.md is a team transcript); Intent v1 + PRD-Spec v1 + Architecture v1 + User Stories v1 approved and exported, Testing v1 generated and exported (not approved) to docs/forge/; Delivery pending (04-...)
A6Public repo[x]https://github.com/vasanthsreeram/bbs-sg-bank-modernization

B. Rubric readiness

B1 — Working prototype (35%)

ItemStatusEvidence
B1.1Legacy batch in repo[x]legacy/bank.cob
B1.2Modern batch implemented (with malformed-row guard)[x]modern/bank.py L23-25
B1.3End-to-end run produces correct counts/balances[x]03-... §3 (PROCESSED=3, REJECTED=4, TOTAL=230)
B1.4Automated tests pass[x]scripts/test_bank.pyRan 33 tests … OK; tests/test_modern.pyRan 5 tests … OK
B1.5Acceptance tests AT-1…AT-13 pass[x]03-... §4
B1.6Parity AT-12 (legacy ↔ modern, byte-identical)[x]parity … byte-identical: YES in all scripts/evidence/benchmark-*.txt
B1.7Demo app runs locally[x]site/backend/app.py (50 site tests), smoke-tested 2026-09-23
B1.8Terminal runs the real COBOL batch[x]legacy-ui/ (20 tests): live 1,200×400 job → 400 processed, 3 rejected, 1.197 s actual COBOL execution (1.234 s overall), modern TOTAL_CENTS 5489403400
B1.9Hosted, clickable prototype (public URL)[x]https://bbs-sg-bank-demo.s-vasanthrojin.workers.dev/

B2 — Substantial Opsera Forge use (30%)

ItemStatusEvidence
B2.1Forge project created[x]projects/6de0abcc-… from /tmp/bbs-sg-legacy.zip (COBOL SHA-256 f4730e6d…afc21d at upload)
B2.2Assessment / ForgeScore complete[x]57/100 (Developing); 10 findings incl. 3 high (O(m×n) scans, full-file rewrites, missing specs) — read from the signed-in UI 2026-09-23
B2.3Assessment artifact exported[~] 🟡docs/forge/assessment.md is a team transcription of the observed values (57/100, 10 findings incl. 3 high); the raw report is not exported (MCP 401; browser download available)
B2.4Intent artifact exported[x]v1 approved and downloaded to docs/forge/intent.md (SHA-256 8510138776e8…94cc)
B2.5PRD-Spec artifact exported[x]v1 generated (~95% confidence), approved and downloaded to docs/forge/prd.md (SHA-256 8b138ae25790…3453)
B2.6Architecture artifact exported[x]v1 completed (~100% confidence), approved and downloaded to docs/forge/architecture.md (SHA-256 d0be1c535a37…058b)
B2.7User Stories / work orders[x]User Stories v1 (6 epics / 33 proposed stories, ~75% confidence), approved and downloaded to docs/forge/work-orders.md (SHA-256 a78ac60579ae…cd0d2)
B2.8Testing artifact exported[x]Testing v1 — 132 proposed cases (33 functional / 33 smoke / 33 regression / 33 performance), generated and exported (not approved — no Approve action shown) to docs/forge/testing.md (SHA-256 19749260605e…92b3). Not executed tests; local suites 108 passing
B2.9Delivery record + hosted app[ ]Delivery stage pending; docs/forge/delivery.md; https://bbs-sg-bank-demo.pages.dev
B2.10MCP export credential[ ] 🚫supplied forge_ token → HTTP 401 Invalid or revoked token; signed-in browser downloads work and were used to export Intent v1 / PRD-Spec v1

B3 — Modernization impact (15%)

ItemStatusEvidence
B3.1Algorithmic improvement documented (O(M·A)O(A+M))[x]02-before-after.md §3, §6
B3.2I/O reduction documented (one write/run)[x]02-before-after.md §6
B3.3Maintainability / operability comparison[x]02-before-after.md §5, §7
B3.4Measured speedup, disclosed[x]scripts/evidence/benchmark-1200x400.txt (28.6x), benchmark-5000x500.txt (128.1x) — synthetic workload, deliberately inefficient legacy design (02-... §6)

B4 — Presentation (10%)

ItemStatusEvidence
B4.1Polished slide deck[x]slides/index.html, slides/SLIDES.md
B4.2Demo script timed ≤3 min[x]05-demo-script.md
B4.3Deck rehearsed end-to-end[ ]
B4.4Demo recorded[x]https://bbs-sg-bank-demo.pages.dev/media/bbs-sg-bank-demo.mp4

B5 — Content (10%)

ItemStatusEvidence
B5.1Documentation pack complete[x]docs/README.md + docs 01–07
B5.2Post per member published[ ]{MEMBER_n_POST_URL}
B5.3All placeholder tokens replaced[ ]grep for { before submitting

C. Pre-submit QA

disclosure and links a scripts/evidence/ transcript.

Testing v1 was approved, that the 33 proposed stories / 132 proposed test cases were implemented or run, or that Forge's proposals (safe temp-file replacement, append-only audit, FastAPI, Forge Shipping) were built — Forge authored the planning documents; the engine is our local code and the local suites are 108 passing.

(its SHA-256 differs from the uploaded copy).


D. Known open items (honest summary)

  1. Parity + speed measured — isolated GnuCOBOL 3.2.0; byte-identical parity, 28.6x

(1200×400) and 128.1x (5000×500). Only open caveat: figures are synthetic and the legacy design is deliberately inefficient — always disclose.

  1. 🟡 **Forge Assessment complete; Intent, PRD-Spec, Architecture and User Stories approved

and exported; Testing v1 generated/exported (not approved); Delivery pending — Assessment is done (57/100, 10 findings; raw report not exported, docs/forge/assessment.md is a team transcription) and Intent v1, PRD-Spec v1, Architecture v1 and User Stories v1 (33 proposed stories) are approved and downloaded into docs/forge/, with Testing v1 (132 proposed cases) generated and exported but not approved. The 33 stories and 132 cases are proposals, not implemented features or executed tests (local suites: 108 passing). The supplied MCP forge_ token is HTTP 401, but signed-in browser downloads work. 30% criterion is partly** satisfied.

  1. Public demo deployed — the Cloudflare Worker runs the JavaScript port of the modern engine. The real COBOL terminal requires local GnuCOBOL.
  2. 🟡 73-second demo published; individual public posts pending.
  3. 🟡 accounts.dat parsing unguarded (low priority; see 02-... §4).
Current status: public interactive Worker, 73-second video, slide deck and public repository are available. Individual public posts, the submission portal URL, team identity details and Forge Delivery are still outstanding. The hosted Worker runs a JavaScript port; the real COBOL terminal is reproducible locally.