Rebrand SooSeF to FieldWitness
Complete project rebrand for better positioning in the press freedom and digital security space. FieldWitness communicates both field deployment and evidence testimony — appropriate for the target audience of journalists, NGOs, and human rights organizations. Rename mapping: - soosef → fieldwitness (package, CLI, all imports) - soosef.stegasoo → fieldwitness.stego - soosef.verisoo → fieldwitness.attest - ~/.soosef/ → ~/.fwmetadata/ (innocuous data dir name) - SOOSEF_DATA_DIR → FIELDWITNESS_DATA_DIR - SoosefConfig → FieldWitnessConfig - SoosefError → FieldWitnessError Also includes: - License switch from MIT to GPL-3.0 - C2PA bridge module (Phase 0-2 MVP): cert.py, export.py, vendor_assertions.py - README repositioned to lead with provenance/federation, stego backgrounded - Threat model skeleton at docs/security/threat-model.md - Planning docs: docs/planning/c2pa-integration.md, docs/planning/gtm-feasibility.md Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
# SooSeF Kubernetes Deployment
|
||||
# FieldWitness Kubernetes Deployment
|
||||
|
||||
## Architecture
|
||||
|
||||
@@ -29,8 +29,8 @@
|
||||
|
||||
```bash
|
||||
# Build images
|
||||
docker build -t soosef-server --target server -f deploy/docker/Dockerfile .
|
||||
docker build -t soosef-relay --target relay -f deploy/docker/Dockerfile .
|
||||
docker build -t fieldwitness-server --target server -f deploy/docker/Dockerfile .
|
||||
docker build -t fieldwitness-relay --target relay -f deploy/docker/Dockerfile .
|
||||
|
||||
# Deploy to Kubernetes
|
||||
kubectl apply -f deploy/kubernetes/namespace.yaml
|
||||
@@ -41,7 +41,7 @@ kubectl apply -f deploy/kubernetes/relay-deployment.yaml
|
||||
## Notes
|
||||
|
||||
- **Single writer**: Both deployments use `replicas: 1` with `Recreate` strategy.
|
||||
SooSeF uses SQLite and append-only binary logs that require single-writer access.
|
||||
FieldWitness uses SQLite and append-only binary logs that require single-writer access.
|
||||
Do not scale horizontally.
|
||||
- **PVCs**: Both deployments require persistent volumes. The server needs 10Gi,
|
||||
the relay needs 5Gi. Adjust based on expected attestation volume.
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
name: soosef
|
||||
name: fieldwitness
|
||||
labels:
|
||||
app.kubernetes.io/name: soosef
|
||||
app.kubernetes.io/name: fieldwitness
|
||||
|
||||
@@ -1,13 +1,13 @@
|
||||
# SooSeF Federation Relay — Lightweight attestation sync relay.
|
||||
# FieldWitness Federation Relay — Lightweight attestation sync relay.
|
||||
# Deploy on a VPS in a favorable jurisdiction for geographic redundancy.
|
||||
# Stores only attestation records — zero knowledge of encryption keys.
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: soosef-relay
|
||||
namespace: soosef
|
||||
name: fieldwitness-relay
|
||||
namespace: fieldwitness
|
||||
labels:
|
||||
app.kubernetes.io/name: soosef
|
||||
app.kubernetes.io/name: fieldwitness
|
||||
app.kubernetes.io/component: relay
|
||||
spec:
|
||||
replicas: 1
|
||||
@@ -15,12 +15,12 @@ spec:
|
||||
type: Recreate
|
||||
selector:
|
||||
matchLabels:
|
||||
app.kubernetes.io/name: soosef
|
||||
app.kubernetes.io/name: fieldwitness
|
||||
app.kubernetes.io/component: relay
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app.kubernetes.io/name: soosef
|
||||
app.kubernetes.io/name: fieldwitness
|
||||
app.kubernetes.io/component: relay
|
||||
spec:
|
||||
securityContext:
|
||||
@@ -29,12 +29,12 @@ spec:
|
||||
fsGroup: 1000
|
||||
containers:
|
||||
- name: relay
|
||||
image: soosef-relay:latest
|
||||
image: fieldwitness-relay:latest
|
||||
ports:
|
||||
- containerPort: 8000
|
||||
name: federation
|
||||
env:
|
||||
- name: SOOSEF_DATA_DIR
|
||||
- name: FIELDWITNESS_DATA_DIR
|
||||
value: /data
|
||||
volumeMounts:
|
||||
- name: data
|
||||
@@ -61,7 +61,7 @@ apiVersion: v1
|
||||
kind: PersistentVolumeClaim
|
||||
metadata:
|
||||
name: relay-data
|
||||
namespace: soosef
|
||||
namespace: fieldwitness
|
||||
spec:
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
@@ -72,11 +72,11 @@ spec:
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: soosef-relay
|
||||
namespace: soosef
|
||||
name: fieldwitness-relay
|
||||
namespace: fieldwitness
|
||||
spec:
|
||||
selector:
|
||||
app.kubernetes.io/name: soosef
|
||||
app.kubernetes.io/name: fieldwitness
|
||||
app.kubernetes.io/component: relay
|
||||
ports:
|
||||
- name: federation
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# SooSeF Org Server — Full deployment with persistent storage.
|
||||
# FieldWitness Org Server — Full deployment with persistent storage.
|
||||
# For newsroom or trusted infrastructure deployment.
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: soosef-server
|
||||
namespace: soosef
|
||||
name: fieldwitness-server
|
||||
namespace: fieldwitness
|
||||
labels:
|
||||
app.kubernetes.io/name: soosef
|
||||
app.kubernetes.io/name: fieldwitness
|
||||
app.kubernetes.io/component: server
|
||||
spec:
|
||||
replicas: 1 # Single writer — do not scale horizontally
|
||||
@@ -14,12 +14,12 @@ spec:
|
||||
type: Recreate # Not RollingUpdate — SQLite + append-only logs need single writer
|
||||
selector:
|
||||
matchLabels:
|
||||
app.kubernetes.io/name: soosef
|
||||
app.kubernetes.io/name: fieldwitness
|
||||
app.kubernetes.io/component: server
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app.kubernetes.io/name: soosef
|
||||
app.kubernetes.io/name: fieldwitness
|
||||
app.kubernetes.io/component: server
|
||||
spec:
|
||||
securityContext:
|
||||
@@ -27,17 +27,17 @@ spec:
|
||||
runAsGroup: 1000
|
||||
fsGroup: 1000
|
||||
containers:
|
||||
- name: soosef
|
||||
image: soosef-server:latest
|
||||
- name: fieldwitness
|
||||
image: fieldwitness-server:latest
|
||||
ports:
|
||||
- containerPort: 5000
|
||||
name: web
|
||||
- containerPort: 8000
|
||||
name: federation
|
||||
env:
|
||||
- name: SOOSEF_DATA_DIR
|
||||
- name: FIELDWITNESS_DATA_DIR
|
||||
value: /data
|
||||
- name: VERISOO_GOSSIP_INTERVAL
|
||||
- name: FIELDWITNESS_GOSSIP_INTERVAL
|
||||
value: "60"
|
||||
volumeMounts:
|
||||
- name: data
|
||||
@@ -64,13 +64,13 @@ spec:
|
||||
volumes:
|
||||
- name: data
|
||||
persistentVolumeClaim:
|
||||
claimName: soosef-data
|
||||
claimName: fieldwitness-data
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: PersistentVolumeClaim
|
||||
metadata:
|
||||
name: soosef-data
|
||||
namespace: soosef
|
||||
name: fieldwitness-data
|
||||
namespace: fieldwitness
|
||||
spec:
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
@@ -81,11 +81,11 @@ spec:
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: soosef-server
|
||||
namespace: soosef
|
||||
name: fieldwitness-server
|
||||
namespace: fieldwitness
|
||||
spec:
|
||||
selector:
|
||||
app.kubernetes.io/name: soosef
|
||||
app.kubernetes.io/name: fieldwitness
|
||||
app.kubernetes.io/component: server
|
||||
ports:
|
||||
- name: web
|
||||
|
||||
Reference in New Issue
Block a user