# Project plan — unity

Evidence date: 2026-09-30.

Source repository: `git@bitbucket.org:overdrive/unity.git`.

Inspected revision: `master` at `7ac64a5` (2019-04-09, jacobrits, "wiki testing"). `origin/HEAD` points at `master`. A second remote branch, `develop`, tips at `7a19009` (2019-04-08, "Test development branch").

The scan-host path `~/projects/sonar_scan/repos/unity` was not on the machine that produced this document. Facts below come from those git revisions. `SOawsCodeDeploy.pem` is described only as a file type and a risk. Its contents are not reproduced.

This plan describes what the repository contains. It does not decide what the product should become.

## Product

The repository name is **unity**. That word does not appear in the README, the login page, the dashboard, or the wiki tree.

`README.md` is still Bitbucket's default tutorial ("Edit a file, create a new file, and clone from Bitbucket in under 2 minutes"). It does not describe a product.

Pages in the tree use these names:

| String | Where | Provenance |
|---|---|---|
| Silicon Overdrive - jaco | Root `index.html` title on `master` | **Implemented** |
| Silicon Overdrive | Root heading; `develop` title | **Implemented** |
| SO2 | Root login logo | **Implemented** |
| SO.2 | Dashboard title `SO.2 \| Dashboard`, sidebar logo | **Implemented** |
| Silicon Overdrive WebApp framework | Root login footer, year 2019 | **Implemented** |
| Silicon Overdrive +2 | Welcome line on `views/dashboard/index.html` on `master` | **Implemented** |
| Silicon Overdrive Management System | Welcome line on the other dashboard copies and on template pages | **Implemented** |
| INSPINIA - Responsive Admin Theme, version 2.8 | Comment in `assets/css/style.css` | **Documented** inside the theme file |
| TiddlyHome 0.1.3 / TiddlyWiki 2.4.1 | `wiki/index.xml` and `wiki/index.html` | **Documented** by the bundled package |

**Unknown / Requires Confirmation:** which of those strings is the product name, and what the repository name "unity" means. Other Silicon Ark directories (`unity-api`, `unityFrontend`, `unityCLI`, and similar) document other repositories. This tree does not mention them.

There is no product requirements document in the source repository.

## What the tree actually is

Two stacks sit side by side and are not linked to each other in the HTML.

1. A static admin shell. Root `index.html` is a login form that navigates to `views/dashboard/index.html`. That shell and `views/template/` are the INSPINIA 2.8 theme with Silicon Overdrive labels. Charts, mail counts, and project lists are written into the HTML. There is no application server, database, or session behind them.
2. A TiddlyHome 0.1.3 package under `wiki/`, added in commit `7ac64a5`. It is PHP plus a TiddlyWiki HTML file. It is not linked from the dashboard menu. It is on `master` only. `develop` does not contain `wiki/`.

A short Sinatra app (`app.rb`, "Hello world!") existed from `c948365` (2019-04-05) and was removed in `8af29ca` (2019-04-07, "new framework consepts") when the HTML theme landed. It is not on either tip.

## Branch reality

| Line | Tip | Date | What it holds |
|---|---|---|---|
| `master` (default) | `7ac64a5` | 2019-04-09 | Login title "Silicon Overdrive - jaco". Footer without the word DEVELOPMENT. Full `wiki/` tree. |
| `develop` | `7a19009` | 2019-04-08 | Login title "Silicon Overdrive". Footer "Silicon Overdrive WebApp framework © 2019 - DEVELOPMENT". No `wiki/` directory. |

`views/dashboard/index.html` is the same file on both tips: welcome line "Welcome to Silicon Overdrive +2.", department labels Software, Technical, Support, HR, and Finance, title "SO.2 | Dashboard". Commit `591b740` briefly retitled that page "SO.2 Jaco | Dashboard"; `efd1d18` put the title back. That pair is only on `master`, and the net dashboard file matches `develop`.

The pipeline file comments call `master` production and `develop` "development / QA". A `test` pipeline step and `codedeploy_deploy_test.py` existed in `e1add45` and were removed in `98f1832` ("delete test branch, can be tested on pc"). No `origin/test` branch remains.

History is 20 commits, all between 2019-04-05 and 2019-04-09. Authors on the commits are Jaco Brits and jacobrits. Nothing has been committed since.

**Unknown / Requires Confirmation:** whether either branch is still deployed, and which branch a host is serving.

## Scope that is in the repository

In scope of what was built:

- Static login and an INSPINIA admin catalogue re-labelled for Silicon Overdrive.
- Five dashboard entry points labelled Software, Technical, Support, HR, and Finance. They open theme pages. They do not load department data.
- AWS CodeDeploy packaging from Bitbucket Pipelines on `master` and `develop`.
- On `master` only: the unmodified-looking TiddlyHome package (admin init, users, sites, Apache `htpasswd` / `htaccess`).

Out of scope of the implementation, because the files do not do these things:

- Checking the login username and password.
- Creating an account from "Create an account".
- Forgot-password reset.
- Saving search, mail, metrics, invoices, or projects.
- A database, queue, or background worker.
- Installing PHP. The host script only installs `httpd`.
- SonarQube. The task-creation scan listed `sonar-project.properties` and `sonarqube_scan.bat`. Neither file is in git at `7ac64a5` or `7a19009`.

## System shape

```text
Browser
  index.html  --form action-->  views/dashboard/index.html
                                  links into views/template/*.html
                                  and views/dashboard/dashboard_*.html

wiki/   (master only; not linked from the shell)
  index.html          TiddlyWiki 2.4.1 single file
  *.php               thin wrappers
  _th/admin/init.php  creates Admin htpasswd on first POST
  _th/lib/*.php       users, sites, store; requires generated config.php

Bitbucket Pipelines (python:3.5.7)
  zip the tree -> S3 -> CodeDeploy
CodeDeploy host
  scripts/install_dependencies   yum install httpd
  scripts/start_server           service httpd start
  scripts/stop_server            attempted httpd stop
  files land in /var/www/html/
```

## Major components

| Component | Path | Role |
|---|---|---|
| Login | `index.html` | Branded form. No credential check. |
| Shell | `views/dashboard/index.html` | Side menu, static profile "Jaco Brits", sample widgets. |
| Department dashboards | `views/dashboard/dashboard_2.html`, `dashboard_3.html`, `dashboard_4_1.html`, `dashboard_5.html` | Copies of theme dashboards with department labels. |
| Unlinked dashboard | `views/dashboard/dashboard_4.html` | Top-bar layout. Not in the shell submenu. |
| Theme catalogue | `views/template/` (122 HTML files) | INSPINIA demos. |
| Theme assets | `assets/` (about 1,455 files) | CSS, JS, images, fonts. |
| Wiki package | `wiki/` (45 files, `master` only) | TiddlyHome 0.1.3. |
| Deploy spec | `appspec.yml`, `scripts/` | CodeDeploy hooks, `httpd` only. |
| Pipeline deployers | `bitbucket-pipelines.yml`, `codedeploy_deploy.py`, `codedeploy_deploy_develop.py` | Zip, S3, CodeDeploy. |
| Private key file | `SOawsCodeDeploy.pem` | RSA private key committed in `00fe94c`. Not read by the Python scripts. |

## Milestones visible in git

| When | Commit | What changed |
|---|---|---|
| 2019-04-05 | `9d5fa3e` | README only. |
| 2019-04-05 | `c948365` | Sinatra `app.rb` ("Hello world!"), first CodeDeploy experiment. |
| 2019-04-05 | `c760980` | Pipeline image moved from `python:3.5.1` to `python:3.5.7`. |
| 2019-04-07 | `8af29ca` | Theme and `index.html` added. `app.rb` removed. Commit message: "new framework consepts". |
| 2019-04-08 | `16cec9c`, `4141205` | Views moved through `views/templates/` into `views/template/` and `views/dashboard/`. |
| 2019-04-08 | `e1add45` | Develop and test deploy scripts. |
| 2019-04-08 | `98f1832` | Test pipeline and `codedeploy_deploy_test.py` removed. |
| 2019-04-08 | `00fe94c` | `SOawsCodeDeploy.pem` and `codedeploy_deploy_develop.py` added. Branch point for `develop`. |
| 2019-04-08 | `7a19009` | `develop` only. Login title and DEVELOPMENT footer. |
| 2019-04-08 | `591b740`, `efd1d18` | `master` only. Login title becomes "Silicon Overdrive - jaco". Dashboard title is changed to "SO.2 Jaco | Dashboard" and then restored to "SO.2 | Dashboard". |
| 2019-04-09 | `7ac64a5` | `master` only. Entire `wiki/` tree. Message: "wiki testing". |

No later milestone, version tag, or changelog is in the repository.

## Implementation plan as evidenced

The commits show this sequence, already finished in 2019:

1. Put a static theme on `httpd` via CodeDeploy.
2. Split production (`master`) and development (`develop`) deploy entry points.
3. Drop the test environment from the pipeline.
4. Try a wiki by dropping TiddlyHome into `wiki/` on `master`.

There is no written plan for a next release. **Planned** behaviour is limited to comments and strings that were never wired (account creation, forgot password, search results page).

## Dependencies

| Dependency | Evidence | Notes |
|---|---|---|
| Browser | HTML, CSS, JS | Google Fonts imported by `assets/css/style.css` (Open Sans, Roboto). |
| jQuery 3.1.1 | `index.html` script tag | `assets/js/jquery-2.1.1.js` is also in the tree for the theme. |
| Bootstrap, Font Awesome, Animate.css, INSPINIA 2.8 | CSS links and the theme comment | Versions of Bootstrap and Font Awesome are the files shipped in `assets/`. Exact package versions beyond the INSPINIA 2.8 comment were not read out of minified headers. |
| Apache `httpd` | `scripts/install_dependencies`, `start_server`, `stop_server` | `yum install -y httpd`. Implies a yum-based host. **Inferred.** |
| PHP | `wiki/**/*.php` | Required for TiddlyHome. Not installed by the CodeDeploy scripts. Host PHP version is **Unknown**. `bidix_crypt` calls `eregi()`, which PHP 7 removed. |
| Apache auth files | TiddlyHome `.htpasswd`, `.htgroup`, `.htaccess` | No database. |
| Bitbucket Pipelines | `bitbucket-pipelines.yml` | Image `python:3.5.7`. |
| boto3 1.3.0 | Pipeline `pip install` | |
| AWS S3 and CodeDeploy | `codedeploy_deploy.py`, `codedeploy_deploy_develop.py` | Names come from environment variables. Values are not in git. |
| Sinatra | Historical `app.rb` only | Removed. |

## Current status

- Last commit: 2019-04-09. The git history has been still since then.
- `master` contains the shell and the wiki drop.
- `develop` is an older shell with a DEVELOPMENT footer and no wiki.
- Login does not authenticate.
- The wiki admin cannot run until `wiki/_th/admin/init.php` has created `wiki/_th/lib/config.php`. That file is not in git.
- A private key is in the tree and is inside the `zip *` artifact that the pipeline uploads.
- No test suite, no Sonar project file in git, no monitoring config.

**Unknown / Requires Confirmation:** production URL, whether CodeDeploy still runs, AWS application names, whether PHP is installed on the host, and whether "unity" was meant to become one of the later Unity services documented elsewhere in Silicon Ark.
