An open API service indexing awesome lists of open source software.

https://github.com/sandst1/qwen3.6-smoketest

Testing how Qwen-3.6-35B-A3B does agentic engineering locally
https://github.com/sandst1/qwen3.6-smoketest

Last synced: 28 days ago
JSON representation

Testing how Qwen-3.6-35B-A3B does agentic engineering locally

Awesome Lists containing this project

README

          

# Bookstore backend (smoketest)

## Why this repository exists

This project is a **controlled exercise in agentic software engineering**. The goal is to observe how well **[Qwen3.6-35B-A3B](https://huggingface.co/Qwen/Qwen3.6-35B-A3B)** performs when asked to design, implement, and test a non-trivial backend **through an autonomous coding agent**, rather than hand-written edits only.

Implementation work was driven by **[nav](https://github.com/sandst1/nav)** — a minimal coding agent that plans tasks, edits the tree, and runs shell commands — so this repo doubles as a **traceable artifact** of that agent loop (including `.nav/` logs and task state when present).

## What the software does

This is a small **bookstore REST API**: it exposes HTTP endpoints for **authors**, **books**, and **customers**, backed by **SQLite** via `better-sqlite3`. Requests are handled with **Express**, with shared error handling and a layered layout (routes → controllers → services → repositories → database schema/migrations).

It is not meant to be a production storefront; it is a **realistic API surface** with enough structure (and tests) to stress planning, consistency, and refactoring under an agent.

## Stack

- **Runtime:** Node.js
- **Language:** TypeScript
- **Web:** Express
- **Database:** SQLite (`better-sqlite3`)
- **Tests:** Jest, Supertest (including integration-style HTTP tests)

## Repository size (approximate)

Counts are **physical lines** (as in `wc -l` per file), including blank lines and comments. **Excluded** from the scan: `node_modules/`, `dist/`, `coverage/`, `.git/`, `.nav/`.

| Category | Files | Lines |
|----------|------:|------:|
| Application TypeScript (`src/**/*.ts`) | 27 | **2,031** |
| Test TypeScript (`tests/**/*.ts`) | 14 | **7,465** |
| Tooling config (`jest.config.js`, `.eslintrc.cjs`, `package.json`, `tsconfig.json`) | 4 | **89** |
| `package-lock.json` (generated) | 1 | **6,837** |

Roughly **3.7×** as many test lines as `src/` lines in this snapshot — useful context when comparing agent-generated verbosity vs. application code.

### `src/` lines by area (TypeScript only)

| Area | Lines |
|------|------:|
| `repositories/` | 810 |
| `services/` | 418 |
| `controllers/` | 250 |
| `database/` | 181 |
| `types/` | 168 |
| `src/` root (`app.ts`, `index.ts`, `server.ts`) | 95 |
| `routes/` | 62 |
| `middleware/` | 47 |

## Development

```bash
npm install
npm run dev # ts-node src/server.ts
npm run build # compile to dist/
npm start # node dist/src/server.js
npm run lint
npm run typecheck
npm test
npm run test:changed # Jest --onlyChanged
```

See also `AGENTS.md` for project-local agent notes.