# DarkMatter AIDC 2026

**Version:** 0.4.2  
**Project:** AI Data Center Interactive Discovery  
**Publisher:** DarkMatter Software

## Purpose

AIDC is a standalone PHP intelligence and knowledge-mapping application for tracing familiar devices, services, technologies, brands, companies, and infrastructure into the corporate and data-center systems beneath them. The project is designed as an interactive ownership and dependency map rather than a flat directory.

The central investigative chain remains:

> What am I using? → What technology powers it? → Which brand provides it? → Which corporation owns the brand? → Which data-center systems support it?

## Version 0.4.2 documentation scope

This documentation release consolidates the original project canon, the Harvester evidence pipeline, the 0.3.1 relationship-first publication work, and the 0.4.x corrections to company enrichment and endpoint linkage.

Version 0.4.2 documents:

- the current AIDC entity and relationship model;
- the Harvester queue and controlled worker path;
- `worker.php` orchestration and runtime controls;
- `extractor.php` structured Ollama extraction;
- source provenance, confidence, claims, and proposals;
- human review as the publication boundary;
- canonical company resolution regardless of review order;
- duplicate-safe primary company publication;
- endpoint publication through `endpoints` and `company_endpoints`;
- human-readable HTML and machine-readable JSON outputs.

## Requirements

- PHP 8.1 or newer
- PDO SQLite
- DOM
- cURL
- Apache, Nginx, or PHP's built-in development server
- Ollama for Harvester structured extraction

Default extraction service:

```text
http://127.0.0.1:11434/api/generate
```

Default model:

```text
llama3
```

Supported environment overrides:

```text
AIDC_HARVEST_EXTRACTOR
AIDC_OLLAMA_URL
AIDC_OLLAMA_MODEL
```

## Installation

Target directory:

```text
/var/www/html/AIDC_2026/
```

Recommended Ubuntu permissions:

```bash
cd /var/www/html/AIDC_2026
sudo chown -R $USER:www-data .
sudo find . -type d -exec chmod 775 {} \;
sudo find . -type f -exec chmod 664 {} \;
sudo chmod 775 data harvester/logs
sudo chmod 664 data/aidc.sqlite
```

When supplied by the application release, the permission repair script may be run directly:

```bash
sudo bash /var/www/html/AIDC_2026/install_permissions.sh
```

## Application architecture

### Human interface

The primary interface provides a category tree, endpoint intelligence panels, search, corporate correlation cards, linked-company views, and navigation into the Harvester module.

### Core data layers

- `categories`: discovery taxonomy
- `endpoints`: devices, services, platforms, and discoverable system types
- `companies`: canonical organization records
- `brands`: brands and ownership mapping
- `technologies`: technology entities
- `services`: data-center and operational services
- `company_endpoints`: direct company-to-endpoint linkage
- relationship tables: typed ownership, technology, service, and association records
- source and evidence records: provenance and verification context

Endpoints are not generic relationships. Accepted endpoint proposals create or resolve an endpoint record and then create the direct `company_endpoints` link. This keeps endpoint counts accurate and prevents the relationship graph from becoming a drawer full of mislabeled cables.

## Harvester processing pipeline

```text
Research Target
    → Queue
    → worker.php
        → source discovery
        → document retrieval
        → extractor.php
            → structured JSON claims
            → provenance and confidence
        → proposed changes
    → Human Review
        → reject or publish
    → Typed AIDC records
        → human interface
        → JSON APIs
```

### `worker.php`

The worker is the controlled execution layer. It claims queued work, applies process locking, tracks attempts and errors, retrieves source documents within configured limits, records activity, and passes bounded content plus the research goal into the extractor. It does not receive unrestricted publication authority.

### `extractor.php`

The extractor is the structured interpretation layer. It calls Ollama using a bounded prompt and schema-shaped JSON response, validates canonical entity names, applies root-entity safeguards, and records extraction provenance. Regex heuristic fallback was removed because sentence fragments, dates, attribution phrases, and research wording could be promoted into false entities.

### Claims and proposals

Extracted claims preserve subject, predicate, value, source URL, document context, excerpt, confidence, extraction engine, endpoint URL, and endpoint category where available. Claims become staged proposals rather than immediate database mutations.

### Publication

Human review remains the publication boundary. Publishing enrichment fields before the primary company proposal is safe because the publication layer resolves or creates the canonical company first. Primary company publication is duplicate-safe.

Accepted data is routed by type:

- company identity and enrichment → `companies`
- AI classification → `companies.sector`
- organization classification → `companies.company_type`
- endpoints → `endpoints`
- company endpoint links → `company_endpoints`
- brands → `brands` and ownership mapping
- technologies and services → their dedicated entity and relation layers
- ownership and other graph assertions → relationship records

## Human-readable and machine-readable publication

AIDC deliberately provides two views of the same intelligence model.

Human-readable formats:

- interactive HTML interface;
- project documentation pages;
- Harvester dashboard, queue, review, and logs;
- readable source excerpts, confidence, and relationship panels.

Machine-readable formats:

- JSON API routes;
- structured company and endpoint records;
- typed relationship output;
- source URL and provenance fields;
- structured claims and review state;
- schema.org metadata embedded in documentation pages.

Machine consumers should use explicit JSON routes and structured records rather than scraping visual cards.

## Documentation files

- `index.html`: documentation portal
- `project.html`: AIDC project, architecture, processing, governance, and outputs
- `harvester.html`: Harvester pipeline, worker, extractor, review, and publication
- `README.md`: operator and developer guide
- `RELEASE_NOTES.txt`: unified release history
- `VERSION`: authoritative version string
- `PROJECT_CANON.txt`: preserved original project documentation

## Security and governance

The administrative and review interfaces are operator tools. Authentication and deployment controls must be applied before public exposure. Harvester assists research; it does not replace source verification, legal review, operational judgment, or human responsibility for published intelligence.
