# Technical documentation — IOSApp

Evidence date: 2026-10-12. Source: `git@bitbucket.org:overdrive/iosapp.git`, `master` at `ee54dfbbc1d2ed95d9f52b34731b8408e2947f5c`.

Provenance labels: **Documented**, **Implemented**, **Inferred**, **Planned**, **Unknown**.

No technical document existed in the repository or in `silicon_ark/IOSApp/` before this file.

## What this repository is

A Bitbucket Git repository in the `overdrive` workspace with slug `iosapp`. On 2026-10-12 `master` contained one commit and one file.

Provenance: **Implemented** (clone, `git log`, `git ls-tree`).

The Silicon Ark directory for this slug is `IOSApp/`, matching the onboarding task name. The Git remote slug is lowercase `iosapp`.

## Inspection method

1. `git ls-remote git@bitbucket.org:overdrive/iosapp.git HEAD` printed `ee54dfbbc1d2ed95d9f52b34731b8408e2947f5c`. The HTTPS URL of the same repository returned the same hash.
2. The tree was cloned with `git clone --branch master git@bitbucket.org:overdrive/iosapp.git`. `git rev-list --all --count` printed `1`. `git status -sb` reported `## master...origin/master`.
3. `git branch -a` listed only `master` and `remotes/origin/HEAD -> origin/master`.
4. `git log --all` showed one commit. `git tag -l` printed nothing.
5. `git ls-tree -r HEAD` listed `.gitignore` only (blob `b24d71e22373e5147f3c05c68a8742714a89b5d6`).
6. The scan-host path `~/projects/sonar_scan/repos/IOSApp` does not exist on this machine. The two filenames in OVER-165 were therefore not opened.
7. Bitbucket repository metadata through the Bitbucket API client returned HTTP 401, so project settings, default-branch configuration beyond `origin/HEAD`, and permissions were not read. Git's `origin/HEAD` still points at `origin/master`.
8. A search of Silicon Ark Markdown found no earlier `iosapp` or `IOSApp` document. `magusEventsXamarin` documents a different repository that contains an iOS target. That target is not this remote.

## Application structure

```text
iosapp/
└── .gitignore
```

No `src/`, `app/`, `public/`, tests, Xcode project, or infra directory exists in the remote. Local `.git/` after the clone is client metadata and is not a project source file.

## The only file

`.gitignore` is 50 lines. The first lines are comments:

- "These are some examples of commonly ignored file patterns."
- "You should customize this list as applicable to your project."
- A link to `https://www.atlassian.com/git/tutorials/saving-changes/gitignore`.

Patterns that follow, grouped as the file comments group them:

| Comment in the file | Patterns |
|---|---|
| Node artifact files | `node_modules/`, `dist/` |
| Compiled Java class files | `*.class` |
| Compiled Python bytecode | `*.py[cod]` |
| Log files | `*.log` |
| Package files | `*.jar` |
| Maven | `target/`, `dist/` (second time) |
| JetBrains IDE | `.idea/` |
| Unit test reports | `TEST*.xml` |
| Generated by MacOS | `.DS_Store` |
| Generated by Windows | `Thumbs.db` |
| Applications | `*.app`, `*.exe`, `*.war` |
| Large media files | `*.mp4`, `*.tiff`, `*.avi`, `*.flv`, `*.mov`, `*.wmv` |

Provenance: **Implemented** (file contents at `ee54dfb`).

**Inferred:** this is a host-generated starter ignore file. The commit message is `Initial commit`, the commit contains nothing else, and the header tells the reader to customize the examples. That file does not select a language. Node, Java, Python, Maven, and `*.app` patterns appear together because the template lists them together.

`sonar-project.properties` and `sonarqube_scan.bat` are not among the patterns. If those files were present and untracked, this ignore list would not hide them.

The blob `b24d71e22373e5147f3c05c68a8742714a89b5d6` is the same object hash recorded for `smart_overdrive` at `1b27efb` in `silicon_ark/smart_overdrive/technical-documentation.md`. Same Git blob hash means the file bytes are identical. That is a template comparison only. The two slugs are separate remotes, created years apart (`iosapp` on 2021-04-02, `smart_overdrive` on 2025-12-07).

## Frameworks and languages

None are implemented. There is no source file and no dependency manifest.

| Signal | What it is | Provenance |
|---|---|---|
| Node, Java, Python, Maven, media, and binary patterns in `.gitignore`, including `*.app` | Example ignore groups in one starter file | **Documented** as comments and patterns. **Not** a selected stack |
| Swift, Objective-C, Xcode, or another application language, framework, or runtime | Absent | **Unknown** |

## Runtime configuration

None. There is no `.env`, config file, `Info.plist`, or settings class. `.env` is not an ignore pattern in this file.

## Authentication

None in the tree. No login route, token, session, or secret store.

Git commit identity is `Jaco Brits <jaco@overdrive.co.za>`. That is author metadata on `ee54dfb`, not an authentication mechanism.

## Data

No database, schema, migration, or seed. No product records are stored in git.

## APIs

None. No route table, client, or OpenAPI file.

## Background work

None. No worker, queue, cron, or scheduler.

## Storage

None beyond the Git object for `.gitignore`.

## Build, environments, and scripts

None in git. No Dockerfile, pipeline file, Makefile, Xcode scheme, or package script.

`sonarqube_scan.bat` was named by OVER-165 and is not in the commit, so any command it might contain is **Unknown**.

## Testing

No test directory, test runner config, or test source. `TEST*.xml` is an ignore pattern for unit-test reports. No such report is in the tree.

## Security notes (observed, not a pentest)

- No secret, credential, or `.env` file is committed. The tree is one ignore file.
- The ignore file does not exclude `.env`. If a later commit adds environment files, this starter list will not keep them out. That is an observation about the current patterns, not a finding that a secret exists.
- Bitbucket project permissions were not read (API HTTP 401).

## Deployment and operations

No deployment manifest, host name, port, bundle id, or runbook is in the repository. How, or whether, anything from this slug is deployed is **Unknown / Requires Confirmation**.

## Git metadata

| Item | Value |
|---|---|
| Remote | `git@bitbucket.org:overdrive/iosapp.git` |
| Default branch | `master` (`origin/HEAD`) |
| Tip | `ee54dfbbc1d2ed95d9f52b34731b8408e2947f5c` |
| Tip date | 2021-04-02 09:44:51 +0000 |
| Tip author | Jaco Brits `<jaco@overdrive.co.za>` |
| Tip message | Initial commit |
| Commit count | 1 |
| Tags | none |
| Tracked paths | `.gitignore` |

## Related repositories

No file in this remote names another repository. Silicon Ark had no prior page for this slug.

`silicon_ark/smart_overdrive/technical-documentation.md` records the same `.gitignore` blob. That comparison does not join the two products.

## Human confirmation

- Whether a language or framework was intended, including whether an iOS app was the goal.
- Whether `sonar-project.properties` and `sonarqube_scan.bat` on the scan host belong to this repository, and what they contain.
- Bitbucket project settings and who may push, which the API client could not read.
- Whether this repository is deployed anywhere.
