diff --git a/.devcontainer/Containerfile b/.devcontainer/Containerfile index d9f18cf..4f31281 100644 --- a/.devcontainer/Containerfile +++ b/.devcontainer/Containerfile @@ -1,9 +1,9 @@ # SPDX-License-Identifier: MPL-2.0 # Copyright (c) 2026 Jonathan D.A. Jewell (hyperpolymath) # -# Dev Container image for TradeUnionist.jl +# Dev Container image for TradeUnionism.jl # Base: Chainguard Wolfi (minimal, supply-chain-secure) -# Build: podman build -t TradeUnionist.jl-dev -f .devcontainer/Containerfile . +# Build: podman build -t TradeUnionism.jl-dev -f .devcontainer/Containerfile . FROM cgr.dev/chainguard/wolfi-base:latest @@ -24,7 +24,7 @@ RUN groupadd -g 1000 nonroot || true \ && useradd -m -u 1000 -g 1000 -s /bin/bash nonroot || true # Set workspace directory -WORKDIR /workspaces/TradeUnionist.jl +WORKDIR /workspaces/TradeUnionism.jl # Default shell ENV SHELL=/bin/bash diff --git a/.devcontainer/README.adoc b/.devcontainer/README.adoc index adeac07..dbbd97d 100644 --- a/.devcontainer/README.adoc +++ b/.devcontainer/README.adoc @@ -25,4 +25,4 @@ This dev container uses `cgr.dev/chainguard/wolfi-base` with git, curl, bash, an == Customization -Replace `TradeUnionist.Jl` placeholders in both `devcontainer.json` and `Containerfile` with your actual project name. Run `just deps` to verify the environment after first launch. +Replace `TradeUnionism.Jl` placeholders in both `devcontainer.json` and `Containerfile` with your actual project name. Run `just deps` to verify the environment after first launch. diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index 3711264..afb316b 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -1,11 +1,11 @@ // SPDX-License-Identifier: MPL-2.0 // Copyright (c) 2026 Jonathan D.A. Jewell (hyperpolymath) // -// Dev Container configuration for TradeUnionist.jl +// Dev Container configuration for TradeUnionism.jl // Works with: VS Code Dev Containers, GitHub Codespaces, Gitpod // Container runtime: Podman (recommended) or any OCI-compliant runtime { - "name": "TradeUnionist.jl", + "name": "TradeUnionism.jl", "build": { "dockerfile": "Containerfile", diff --git a/.editorconfig b/.editorconfig index 42f8990..06af94a 100644 --- a/.editorconfig +++ b/.editorconfig @@ -1,4 +1,4 @@ -# TradeUnionist.jl - Editor Configuration +# TradeUnionism.jl - Editor Configuration # https://editorconfig.org root = true diff --git a/.envrc b/.envrc index 010028d..ad255b4 100644 --- a/.envrc +++ b/.envrc @@ -18,7 +18,7 @@ if has nix && [ -f flake.nix ]; then fi # Project environment variables -export PROJECT_NAME="TradeUnionist.jl" +export PROJECT_NAME="TradeUnionism.jl" export RSR_TIER="infrastructure" # export DATABASE_URL="..." # export API_KEY="..." diff --git a/.guix-channel b/.guix-channel index 0f7c4dd..f390bc0 100644 --- a/.guix-channel +++ b/.guix-channel @@ -1,20 +1,20 @@ ;; SPDX-License-Identifier: MPL-2.0 ;; Copyright (c) 2026 Jonathan D.A. Jewell (hyperpolymath) ;; -;; Guix channel definition for TradeUnionist.jl +;; Guix channel definition for TradeUnionism.jl ;; ;; To use this channel, add to ~/.config/guix/channels.scm: ;; ;; (channel -;; (name 'TradeUnionist.jl) -;; (url "https://github.com/hyperpolymath/TradeUnionist.jl") +;; (name 'TradeUnionism.jl) +;; (url "https://github.com/hyperpolymath/TradeUnionism.jl") ;; (branch "main")) ;; ;; Then: guix pull (channel (version 0) - (url "https://github.com/hyperpolymath/TradeUnionist.jl") + (url "https://github.com/hyperpolymath/TradeUnionism.jl") (dependencies (channel (name 'guix) diff --git a/.machine_readable/6a2/ECOSYSTEM.a2ml b/.machine_readable/6a2/ECOSYSTEM.a2ml index 7a08c3b..77012c3 100644 --- a/.machine_readable/6a2/ECOSYSTEM.a2ml +++ b/.machine_readable/6a2/ECOSYSTEM.a2ml @@ -3,7 +3,7 @@ # Converted from ECOSYSTEM.scm on 2026-03-15 [metadata] -project = "TradeUnionist.jl" +project = "TradeUnionism.jl" ecosystem = "hyperpolymath" [position] diff --git a/.machine_readable/6a2/META.a2ml b/.machine_readable/6a2/META.a2ml index d4a9faa..a0607a0 100644 --- a/.machine_readable/6a2/META.a2ml +++ b/.machine_readable/6a2/META.a2ml @@ -3,7 +3,7 @@ # Converted from META.scm on 2026-03-15 [metadata] -project = "TradeUnionist.jl" +project = "TradeUnionism.jl" author = "Jonathan D.A. Jewell " license = "MPL-2.0" standard = "RSR 2026" diff --git a/.machine_readable/6a2/STATE.a2ml b/.machine_readable/6a2/STATE.a2ml index 3f05461..52f1a7b 100644 --- a/.machine_readable/6a2/STATE.a2ml +++ b/.machine_readable/6a2/STATE.a2ml @@ -3,12 +3,12 @@ # Converted from STATE.scm on 2026-03-15 [metadata] -project = "TradeUnionist.jl" +project = "TradeUnionism.jl" version = "0.1.0" last-updated = "2026-03-15" status = "active" [project-context] -name = "TradeUnionist.jl" +name = "TradeUnionism.jl" completion-percentage = 40 phase = "alpha" diff --git a/.machine_readable/6a2/anchor/ANCHOR.a2ml b/.machine_readable/6a2/anchor/ANCHOR.a2ml index 02866b2..7164119 100644 --- a/.machine_readable/6a2/anchor/ANCHOR.a2ml +++ b/.machine_readable/6a2/anchor/ANCHOR.a2ml @@ -1,7 +1,7 @@ -# ⚓ ANCHOR: TradeUnionist.jl -# This is the canonical authority for the TradeUnionist.jl repository. +# ⚓ ANCHOR: TradeUnionism.jl +# This is the canonical authority for the TradeUnionism.jl repository. -id: "org.hyperpolymath.TradeUnionist.jl" +id: "org.hyperpolymath.TradeUnionism.jl" version: "1.0.0" clade: "unknown" status: "active" diff --git a/.machine_readable/CLADE.a2ml b/.machine_readable/CLADE.a2ml index 295395e..ff72412 100644 --- a/.machine_readable/CLADE.a2ml +++ b/.machine_readable/CLADE.a2ml @@ -6,8 +6,8 @@ uuid = "f28895eb-673c-5376-930c-8aab9f69b6a6" primary-forge = "github" primary-owner = "hyperpolymath" -canonical-name = "TradeUnionist.jl" -prefixed-name = "dx-TradeUnionist.jl" +canonical-name = "TradeUnionism.jl" +prefixed-name = "dx-TradeUnionism.jl" [clade] primary = "dx" @@ -16,9 +16,9 @@ assigned = "2026-03-16" rationale = "" [forges] -github = "hyperpolymath/TradeUnionist.jl" -gitlab = "hyperpolymath/TradeUnionist.jl" -bitbucket = "hyperpolymath/TradeUnionist.jl" +github = "hyperpolymath/TradeUnionism.jl" +gitlab = "hyperpolymath/TradeUnionism.jl" +bitbucket = "hyperpolymath/TradeUnionism.jl" [lineage] type = "standalone" diff --git a/.machine_readable/contractiles/Justfile b/.machine_readable/contractiles/Justfile index 5010526..ee6cd83 100644 --- a/.machine_readable/contractiles/Justfile +++ b/.machine_readable/contractiles/Justfile @@ -18,7 +18,7 @@ set positional-arguments := true import? "contractile.just" # Project metadata — customize these -project := "TradeUnionist.jl" +project := "TradeUnionism.jl" version := "0.1.0" tier := "infrastructure" # 1 | 2 | infrastructure diff --git a/.reuse/dep5 b/.reuse/dep5 index 112ba76..3eb6057 100644 --- a/.reuse/dep5 +++ b/.reuse/dep5 @@ -1,7 +1,7 @@ Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ -Upstream-Name: TradeUnionist.jl +Upstream-Name: TradeUnionism.jl Upstream-Contact: Jonathan D.A. Jewell -Source: https://github.com/hyperpolymath/TradeUnionist.jl +Source: https://github.com/hyperpolymath/TradeUnionism.jl # Default: all files are MPL-2.0 Files: * diff --git a/.well-known/security.txt b/.well-known/security.txt index 10c3760..0dc8eaa 100644 --- a/.well-known/security.txt +++ b/.well-known/security.txt @@ -6,6 +6,6 @@ Contact: mailto:{{SECURITY_EMAIL}} Expires: 2026-12-31T23:59:59.000Z Encryption: {{PGP_KEY_URL}} Preferred-Languages: en -Canonical: https://github.com/hyperpolymath/TradeUnionist.jl/.well-known/security.txt -Policy: https://github.com/hyperpolymath/TradeUnionist.jl/blob/main/SECURITY.md +Canonical: https://github.com/hyperpolymath/TradeUnionism.jl/.well-known/security.txt +Policy: https://github.com/hyperpolymath/TradeUnionism.jl/blob/main/SECURITY.md Hiring: https://{{WEBSITE}}/careers diff --git a/ABI-FFI-README.md b/ABI-FFI-README.md index e8c427c..712bcee 100644 --- a/ABI-FFI-README.md +++ b/ABI-FFI-README.md @@ -4,7 +4,7 @@ Copyright (c) Jonathan D.A. Jewell --> {{~ Aditionally delete this line and fill out the template below ~}} -# TradeUnionist.jl ABI/FFI Documentation +# TradeUnionism.jl ABI/FFI Documentation ## Overview @@ -251,7 +251,7 @@ gcc -o example example.c -l{{project}} -L./zig-out/lib ### From Idris2 ```idris -import TradeUnionist.jl.ABI.Foreign +import TradeUnionism.jl.ABI.Foreign main : IO () main = do diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md index 5b2065f..bba7a82 100644 --- a/CODE_OF_CONDUCT.md +++ b/CODE_OF_CONDUCT.md @@ -8,10 +8,10 @@ Copyright (c) Jonathan D.A. Jewell ============================================================================ TEMPLATE INSTRUCTIONS (delete this block before publishing) ============================================================================ -Replace all TradeUnionist.jl values: - TradeUnionist.Jl - Your project name +Replace all TradeUnionism.jl values: + TradeUnionism.Jl - Your project name hyperpolymath - GitHub/GitLab username or org - TradeUnionist.jl - Repository name + TradeUnionism.jl - Repository name j.d.a.jewell@open.ac.uk - Email for conduct reports {{CONDUCT_TEAM}} - Name of conduct team/committee {{RESPONSE_TIME}} - Initial response SLA (e.g., 48 hours) @@ -26,7 +26,7 @@ Review and customise: ## Our Pledge -We as members, contributors, and leaders pledge to make participation in TradeUnionist.Jl a harassment-free experience for everyone, regardless of age, body size, visible or invisible disability, ethnicity, sex characteristics, gender identity and expression, level of experience, education, socio-economic status, nationality, personal appearance, race, caste, colour, religion, or sexual identity and orientation. +We as members, contributors, and leaders pledge to make participation in TradeUnionism.Jl a harassment-free experience for everyone, regardless of age, body size, visible or invisible disability, ethnicity, sex characteristics, gender identity and expression, level of experience, education, socio-economic status, nationality, personal appearance, race, caste, colour, religion, or sexual identity and orientation. We pledge to act and interact in ways that contribute to an open, welcoming, diverse, inclusive, and healthy community. @@ -314,7 +314,7 @@ We thank these communities for their leadership in creating welcoming spaces. If you have questions about this Code of Conduct: -- Open a [Discussion](https://github.com/hyperpolymath/TradeUnionist.jl/discussions) (for general questions) +- Open a [Discussion](https://github.com/hyperpolymath/TradeUnionism.jl/discussions) (for general questions) - Email j.d.a.jewell@open.ac.uk (for private questions) - Contact any maintainer directly diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 9c3a236..8bcf21d 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -3,15 +3,15 @@ SPDX-License-Identifier: CC-BY-SA-4.0 Copyright (c) Jonathan D.A. Jewell --> # Clone the repository -git clone https://github.com/hyperpolymath/TradeUnionist.jl.git -cd TradeUnionist.jl +git clone https://github.com/hyperpolymath/TradeUnionism.jl.git +cd TradeUnionism.jl # Using Nix (recommended for reproducibility) nix develop # Or using toolbox/distrobox -toolbox create TradeUnionist.jl-dev -toolbox enter TradeUnionist.jl-dev +toolbox create TradeUnionism.jl-dev +toolbox enter TradeUnionism.jl-dev # Install dependencies manually # Verify setup @@ -21,7 +21,7 @@ just test # Run test suite ### Repository Structure ``` -TradeUnionist.jl/ +TradeUnionism.jl/ ├── src/ # Source code (Perimeter 1-2) ├── lib/ # Library code (Perimeter 1-2) ├── extensions/ # Extensions (Perimeter 2) @@ -95,10 +95,10 @@ Use the [feature request template](.github/ISSUE_TEMPLATE/feature_request.md) an Look for issues labelled: -- [`good first issue`](https://github.com/hyperpolymath/TradeUnionist.jl/labels/good%20first%20issue) — Simple Perimeter 3 tasks -- [`help wanted`](https://github.com/hyperpolymath/TradeUnionist.jl/labels/help%20wanted) — Community help needed -- [`documentation`](https://github.com/hyperpolymath/TradeUnionist.jl/labels/documentation) — Docs improvements -- [`perimeter-3`](https://github.com/hyperpolymath/TradeUnionist.jl/labels/perimeter-3) — Community sandbox scope +- [`good first issue`](https://github.com/hyperpolymath/TradeUnionism.jl/labels/good%20first%20issue) — Simple Perimeter 3 tasks +- [`help wanted`](https://github.com/hyperpolymath/TradeUnionism.jl/labels/help%20wanted) — Community help needed +- [`documentation`](https://github.com/hyperpolymath/TradeUnionism.jl/labels/documentation) — Docs improvements +- [`perimeter-3`](https://github.com/hyperpolymath/TradeUnionism.jl/labels/perimeter-3) — Community sandbox scope --- diff --git a/Containerfile b/Containerfile index b85bfa1..af4b53d 100644 --- a/Containerfile +++ b/Containerfile @@ -1,7 +1,7 @@ # SPDX-License-Identifier: MPL-2.0 # Copyright (c) 2026 Jonathan D.A. Jewell (hyperpolymath) # -# Containerfile for TradeUnionist.jl +# Containerfile for TradeUnionism.jl # Build: podman build -t {{project}}:latest -f Containerfile . # Run: podman run --rm -it {{project}}:latest # Seal: selur seal {{project}}:latest diff --git a/EXPLAINME.adoc b/EXPLAINME.adoc index 30e0566..2c67328 100644 --- a/EXPLAINME.adoc +++ b/EXPLAINME.adoc @@ -1,6 +1,6 @@ // SPDX-License-Identifier: CC-BY-SA-4.0 // Copyright (c) Jonathan D.A. Jewell -= TradeUnionist.jl — Show Me The Receipts += TradeUnionism.jl — Show Me The Receipts :toc: :icons: font @@ -56,9 +56,9 @@ ____ == Dogfooded Across The Account -TradeUnionist.jl is the **labor analytics tier** for ecosystem operations: -- **PRComms.jl**: Uses TradeUnionist data for member alerts and union press releases (via `comms_bridge.jl` export at line 60) -- **PostDisciplinary.jl**: TradeUnionist labor economics data feeds into cross-disciplinary research (union density as `LinkedEntity`) +TradeUnionism.jl is the **labor analytics tier** for ecosystem operations: +- **PRComms.jl**: Uses TradeUnionism data for member alerts and union press releases (via `comms_bridge.jl` export at line 60) +- **PostDisciplinary.jl**: TradeUnionism labor economics data feeds into cross-disciplinary research (union density as `LinkedEntity`) - **Cliodynamics.jl** (planned): Historical union membership trends and collective bargaining outcomes Same domain-modeling pattern used in `idaptik` (game economics), `opsm` (package management), `prcomms` (stakeholder communication). @@ -69,7 +69,7 @@ Same domain-modeling pattern used in `idaptik` (game economics), `opsm` (package |=== | Path | What's There -| `src/TradeUnionist.jl` | Module entry point (62 lines); includes 8 submodules; exports 11 core types and 8 operations for worksite, member, grievance, bargaining, spatial, metrics, events, comms +| `src/TradeUnionism.jl` | Module entry point (62 lines); includes 8 submodules; exports 11 core types and 8 operations for worksite, member, grievance, bargaining, spatial, metrics, events, comms | `src/types.jl` | 1.6KB data structures: `Worksite` (employer, headcount, location, departments, shifts), `MemberRecord` (id, name, worksite_id, department, shift, engagement_level, status), `OrganizerConversation` (timestamp, member_id, message_text, sentiment_score), `GrievanceCase` (id, member_id, description, status, opened_at, updated_at), `ContractClause` (id, text, wage_impact, benefits), `BargainingProposal` (clauses, total_cost, strategic_priority), plus event and union strategy types | `src/organizing.jl` | Member enrollment and organizer conversation logging; `upsert_member(site, record)` adds/updates member; `log_conversation(member_id, msg, sentiment)` records engagement | `src/grievances.jl` | Grievance case management: `open_grievance(member_id, description)` creates case; `update_grievance_status(case, status)` transitions state; evidence storage in case metadata @@ -89,7 +89,7 @@ Same domain-modeling pattern used in `idaptik` (game economics), `opsm` (package 3. **Metric consistency**: `calc_density`, `calc_coverage`, `calc_leadership_ratio` must all reference the same member set (transactions must not interleave) 4. **Spatial query correctness**: `find_members_near(lat, lon, r)` must be symmetric—if member A is near member B, then B is near A 5. **Costing accuracy**: `cost_proposal` must correctly aggregate all clause costs; no rounding errors >$0.01 -6. **PR integration atomicity**: A member alert sent via PRComms must log to TradeUnionist audit trail atomically +6. **PR integration atomicity**: A member alert sent via PRComms must log to TradeUnionism audit trail atomically == Questions? diff --git a/GOVERNANCE.md b/GOVERNANCE.md index 54b5c3b..2e81ca1 100644 --- a/GOVERNANCE.md +++ b/GOVERNANCE.md @@ -4,13 +4,13 @@ Copyright (c) Jonathan D.A. Jewell --> # Project Governance -This document describes the governance model for **TradeUnionist.Jl**. +This document describes the governance model for **TradeUnionism.Jl**. --- ## Project Governance Model -TradeUnionist.Jl follows a **Benevolent Dictator For Life (BDFL)** governance model. +TradeUnionism.Jl follows a **Benevolent Dictator For Life (BDFL)** governance model. This model is well-suited for solo maintainers and small project teams where rapid, consistent decision-making is more valuable than formal consensus processes. diff --git a/Justfile b/Justfile index 5010526..ee6cd83 100644 --- a/Justfile +++ b/Justfile @@ -18,7 +18,7 @@ set positional-arguments := true import? "contractile.just" # Project metadata — customize these -project := "TradeUnionist.jl" +project := "TradeUnionism.jl" version := "0.1.0" tier := "infrastructure" # 1 | 2 | infrastructure diff --git a/MAINTAINERS.md b/MAINTAINERS.md index 165be13..05687a8 100644 --- a/MAINTAINERS.md +++ b/MAINTAINERS.md @@ -4,7 +4,7 @@ Copyright (c) Jonathan D.A. Jewell --> # Maintainers -This document lists the current and former maintainers of **TradeUnionist.Jl**. +This document lists the current and former maintainers of **TradeUnionism.Jl**. --- diff --git a/PLACEHOLDERS.md b/PLACEHOLDERS.md index 5163ee6..bb977bb 100644 --- a/PLACEHOLDERS.md +++ b/PLACEHOLDERS.md @@ -4,7 +4,7 @@ Copyright (c) Jonathan D.A. Jewell --> # Template Placeholders -All placeholders in this template follow the `TradeUnionist.jl` pattern. +All placeholders in this template follow the `TradeUnionism.jl` pattern. After cloning, replace them with your project-specific values. ## Recommended: Interactive Bootstrap @@ -24,10 +24,10 @@ validates the result, and runs k9-svc checks if available. sed -i 's/Jonathan D.A. Jewell/Jane Doe/g' $(grep -rl 'Jonathan D.A. Jewell' .) sed -i 's/j.d.a.jewell@open.ac.uk/jane@example.org/g' $(grep -rl 'j.d.a.jewell@open.ac.uk' .) sed -i 's/hyperpolymath/my-org/g' $(grep -rl 'hyperpolymath' .) -sed -i 's/TradeUnionist.Jl/my-project/g' $(grep -rl 'TradeUnionist.Jl' .) -sed -i 's/TradeUnionist.jl/MY_PROJECT/g' $(grep -rl 'TradeUnionist.jl' .) +sed -i 's/TradeUnionism.Jl/my-project/g' $(grep -rl 'TradeUnionism.Jl' .) +sed -i 's/TradeUnionism.jl/MY_PROJECT/g' $(grep -rl 'TradeUnionism.jl' .) sed -i 's/{{project}}/my_project/g' $(grep -rl '{{project}}' .) -sed -i 's/TradeUnionist.jl/my-project/g' $(grep -rl 'TradeUnionist.jl' .) +sed -i 's/TradeUnionism.jl/my-project/g' $(grep -rl 'TradeUnionism.jl' .) sed -i 's/github.com/github.com/g' $(grep -rl 'github.com' .) sed -i "s/2026/$(date +%Y)/g" $(grep -rl '2026' .) sed -i "s/2026-03-16/$(date +%Y-%m-%d)/g" $(grep -rl '2026-03-16' .) @@ -51,11 +51,11 @@ sed -i "s/2026-03-16/$(date +%Y-%m-%d)/g" $(grep -rl '2026-03-16' .) | Placeholder | Description | Example | Files | |---|---|---|---| -| `TradeUnionist.Jl` | Human-readable project name | `My Project` | SECURITY.md, CODE_OF_CONDUCT.md, TOPOLOGY.md, STATE.a2ml, Justfile, GOVERNANCE.md, MAINTAINERS.md, flake.nix, devcontainer.json | -| `TradeUnionist.jl` | One-line description | `A tool for X` | flake.nix | -| `TradeUnionist.jl` | Uppercase identifier (for Idris2 modules, C macros) | `MY_PROJECT` | ABI-FFI-README.md, src/abi/*.idr, ffi/zig/*.zig | +| `TradeUnionism.Jl` | Human-readable project name | `My Project` | SECURITY.md, CODE_OF_CONDUCT.md, TOPOLOGY.md, STATE.a2ml, Justfile, GOVERNANCE.md, MAINTAINERS.md, flake.nix, devcontainer.json | +| `TradeUnionism.jl` | One-line description | `A tool for X` | flake.nix | +| `TradeUnionism.jl` | Uppercase identifier (for Idris2 modules, C macros) | `MY_PROJECT` | ABI-FFI-README.md, src/abi/*.idr, ffi/zig/*.zig | | `{{project}}` | Lowercase identifier (for C symbols, filenames) | `my_project` | ABI-FFI-README.md, ffi/zig/*.zig | -| `TradeUnionist.jl` | Repository name (slug) | `my-project` | CONTRIBUTING.md, SECURITY.md, CODE_OF_CONDUCT.md, cliff.toml | +| `TradeUnionism.jl` | Repository name (slug) | `my-project` | CONTRIBUTING.md, SECURITY.md, CODE_OF_CONDUCT.md, cliff.toml | | `hyperpolymath` | GitHub/GitLab org or username | `my-org` | SPDX headers, CONTRIBUTING.md, SECURITY.md, GOVERNANCE.md, MAINTAINERS.md, CODEOWNERS, mirror.yml, cliff.toml | | `github.com` | Git forge domain | `github.com` | CONTRIBUTING.md | @@ -90,7 +90,7 @@ sed -i "s/2026-03-16/$(date +%Y-%m-%d)/g" $(grep -rl '2026-03-16' .) | Placeholder | Description | Example | Files | |---|---|---|---| | `MPL-2.0` | License name | `MPL-2.0` | ABI-FFI-README.md | -| `TradeUnionist.jl` | One-line project description | `FFI bridges between languages` | STATE.a2ml | +| `TradeUnionism.jl` | One-line project description | `FFI bridges between languages` | STATE.a2ml | ### AI Manifest diff --git a/PROOF-PROGRESS.adoc b/PROOF-PROGRESS.adoc index 9e59168..92a6ffd 100644 --- a/PROOF-PROGRESS.adoc +++ b/PROOF-PROGRESS.adoc @@ -1,15 +1,15 @@ // SPDX-License-Identifier: CC-BY-SA-4.0 // SPDX-FileCopyrightText: 2026 Jonathan D.A. Jewell // -// Proof Progress Snapshot — TradeUnionist.jl +// Proof Progress Snapshot — TradeUnionism.jl // Generated: 2026-08-14 -= TradeUnionist.jl — Proof/Verification Guarantee Progress Snapshot += TradeUnionism.jl — Proof/Verification Guarantee Progress Snapshot :toc: :icons: font This document provides an indicative state of progress on formal guarantees for -the TradeUnionist.jl Julia package as of 2026-08-14. +the TradeUnionism.jl Julia package as of 2026-08-14. == Status: PLACEHOLDER diff --git a/Project.toml b/Project.toml index 4fe082c..e74f1a1 100644 --- a/Project.toml +++ b/Project.toml @@ -1,4 +1,4 @@ -name = "TradeUnionist" +name = "TradeUnionism" uuid = "28827ff7-c05d-49d1-8ea0-4ff47f2d6875" authors = ["Jonathan D.A. Jewell "] version = "0.1.0" diff --git a/QUICKSTART-DEV.adoc b/QUICKSTART-DEV.adoc index db41992..facc0c5 100644 --- a/QUICKSTART-DEV.adoc +++ b/QUICKSTART-DEV.adoc @@ -15,8 +15,8 @@ Clone, build, test, contribute. [source,bash] ---- -git clone https://github.com/hyperpolymath/TradeUnionist.jl -cd TradeUnionist.jl +git clone https://github.com/hyperpolymath/TradeUnionism.jl +cd TradeUnionism.jl just doctor # verify toolchain just heal # auto-install missing tools ---- diff --git a/QUICKSTART-MAINTAINER.adoc b/QUICKSTART-MAINTAINER.adoc index 47e7c76..14e33c4 100644 --- a/QUICKSTART-MAINTAINER.adoc +++ b/QUICKSTART-MAINTAINER.adoc @@ -33,7 +33,7 @@ Key workflows: [source,bash] ---- -podman build -f Containerfile -t TradeUnionist.jl:latest . +podman build -f Containerfile -t TradeUnionism.jl:latest . ---- == Mirrors diff --git a/QUICKSTART-USER.adoc b/QUICKSTART-USER.adoc index 0b5c968..38f6747 100644 --- a/QUICKSTART-USER.adoc +++ b/QUICKSTART-USER.adoc @@ -14,8 +14,8 @@ Get up and running in 60 seconds. [source,bash] ---- -git clone https://github.com/hyperpolymath/TradeUnionist.jl -cd TradeUnionist.jl +git clone https://github.com/hyperpolymath/TradeUnionism.jl +cd TradeUnionism.jl just doctor # check toolchain just heal # auto-install missing tools ---- @@ -32,4 +32,4 @@ just help-me # see common workflows * `just help-me` — common workflows * `just doctor` — diagnose toolchain issues -* https://github.com/hyperpolymath/TradeUnionist.jl/issues — report bugs +* https://github.com/hyperpolymath/TradeUnionism.jl/issues — report bugs diff --git a/README.adoc b/README.adoc index 769bd1e..4851f3a 100644 --- a/README.adoc +++ b/README.adoc @@ -1,13 +1,13 @@ // SPDX-License-Identifier: CC-BY-SA-4.0 // Copyright (c) Jonathan D.A. Jewell -= TradeUnionist.jl += TradeUnionism.jl :toc: macro :toclevels: 2 :icons: font image:https://img.shields.io/badge/Project-Topology-9558B2[Topology,link="TOPOLOGY.md"] image:https://img.shields.io/badge/Completion-70%25-yellow[70%,link="TOPOLOGY.md"] -image:https://img.shields.io/badge/OpenSSF-Best_Practices-green?logo=opensourcesecurity[OpenSSF Best Practices,link="https://www.bestpractices.dev/en/projects/new?repo_url=https://github.com/hyperpolymath/TradeUnionist.jl"] +image:https://img.shields.io/badge/OpenSSF-Best_Practices-green?logo=opensourcesecurity[OpenSSF Best Practices,link="https://www.bestpractices.dev/en/projects/new?repo_url=https://github.com/hyperpolymath/TradeUnionism.jl"] image:https://img.shields.io/badge/License-MPL--2.0-blue.svg[License: PMPL-1.0,link="https://github.com/hyperpolymath/palimpsest-license"] image:https://api.thegreenwebfoundation.org/greencheckimage/github.com[Green Web,link="https://www.thegreenwebfoundation.org/green-web-check/?url=github.com"] image:https://img.shields.io/badge/Julia-1.10+-9558B2?logo=julia[Julia,link="https://julialang.org/"] @@ -20,7 +20,7 @@ toc::[] == Overview -TradeUnionist.jl is a management and analysis toolkit for labor unions and organizing committees. It provides high-integrity structures for mapping workplaces, tracking member engagement, managing the grievance lifecycle, and supporting collective bargaining with transparent costing and clause comparison. +TradeUnionism.jl is a management and analysis toolkit for labor unions and organizing committees. It provides high-integrity structures for mapping workplaces, tracking member engagement, managing the grievance lifecycle, and supporting collective bargaining with transparent costing and clause comparison. == Core Capabilities @@ -34,7 +34,7 @@ TradeUnionist.jl is a management and analysis toolkit for labor unions and organ [source,julia] ---- -using TradeUnionist +using TradeUnionism # Register a new worksite site = register_worksite(employer="GlobalCorp", headcount=500) diff --git a/ROADMAP.adoc b/ROADMAP.adoc index a5c4442..81c0396 100644 --- a/ROADMAP.adoc +++ b/ROADMAP.adoc @@ -1,6 +1,6 @@ // SPDX-License-Identifier: CC-BY-SA-4.0 // Copyright (c) Jonathan D.A. Jewell -= TradeUnionist.jl Roadmap += TradeUnionism.jl Roadmap == v0.1.0 - Organizing Core (Current) * [x] Core data models (`Worksite`, `MemberRecord`, `GrievanceCase`). diff --git a/RSR_OUTLINE.adoc b/RSR_OUTLINE.adoc index ba763cc..6e92a8d 100644 --- a/RSR_OUTLINE.adoc +++ b/RSR_OUTLINE.adoc @@ -241,7 +241,7 @@ The STATE.a2ml file tracks project state: # STATE — Project State Checkpoint # Format: a2ml (AI-readable markup) -project: TradeUnionist.Jl +project: TradeUnionism.Jl version: 0.1.0 last-updated: 2026-02-14 status: active diff --git a/SECURITY.md b/SECURITY.md index 7746afa..7e85b3e 100644 --- a/SECURITY.md +++ b/SECURITY.md @@ -8,10 +8,10 @@ Copyright (c) Jonathan D.A. Jewell ============================================================================ TEMPLATE INSTRUCTIONS (delete this block before publishing) ============================================================================ -Replace all TradeUnionist.jl values with your information: - TradeUnionist.Jl - Your project name +Replace all TradeUnionism.jl values with your information: + TradeUnionism.Jl - Your project name hyperpolymath - GitHub username or org (e.g., hyperpolymath) - TradeUnionist.jl - Repository name + TradeUnionism.jl - Repository name 6759885+hyperpolymath@users.noreply.github.com - Security contact email [PGP fingerprint not set] - Your PGP key fingerprint (40 chars, no spaces) {{PGP_KEY_URL}} - URL to your public PGP key @@ -44,7 +44,7 @@ We take security seriously. We appreciate your efforts to responsibly disclose v The preferred method for reporting security vulnerabilities is through GitHub's Security Advisory feature: -1. Navigate to [Report a Vulnerability](https://github.com/hyperpolymath/TradeUnionist.jl/security/advisories/new) +1. Navigate to [Report a Vulnerability](https://github.com/hyperpolymath/TradeUnionism.jl/security/advisories/new) 2. Click **"Report a vulnerability"** 3. Complete the form with as much detail as possible 4. Submit — we'll receive a private notification @@ -207,7 +207,7 @@ If we cannot reach agreement on disclosure timing, we default to 90 days from yo The following are within scope for security research: -- This repository (`hyperpolymath/TradeUnionist.jl`) and all its code +- This repository (`hyperpolymath/TradeUnionism.jl`) and all its code - Official releases and packages published from this repository - Documentation that could lead to security issues - Build and deployment configurations in this repository @@ -326,7 +326,7 @@ Recognition includes: To stay informed about security updates: - **Watch this repository**: Click "Watch" → "Custom" → Select "Security alerts" -- **GitHub Security Advisories**: Published at [Security Advisories](https://github.com/hyperpolymath/TradeUnionist.jl/security/advisories) +- **GitHub Security Advisories**: Published at [Security Advisories](https://github.com/hyperpolymath/TradeUnionism.jl/security/advisories) - **Release notes**: Security fixes noted in [CHANGELOG](CHANGELOG.md) ### Update Policy @@ -352,7 +352,7 @@ To stay informed about security updates: ## Security Best Practices -When using TradeUnionist.Jl, we recommend: +When using TradeUnionism.Jl, we recommend: ### General @@ -375,7 +375,7 @@ When using TradeUnionist.Jl, we recommend: ## Additional Resources - [Our PGP Public Key]({{PGP_KEY_URL}}) -- [Security Advisories](https://github.com/hyperpolymath/TradeUnionist.jl/security/advisories) +- [Security Advisories](https://github.com/hyperpolymath/TradeUnionism.jl/security/advisories) - [Changelog](CHANGELOG.md) - [Contributing Guidelines](CONTRIBUTING.md) - [CVE Database](https://cve.mitre.org/) @@ -387,8 +387,8 @@ When using TradeUnionist.Jl, we recommend: | Purpose | Contact | |---------|---------| -| **Security issues** | [Report via GitHub](https://github.com/hyperpolymath/TradeUnionist.jl/security/advisories/new) or 6759885+hyperpolymath@users.noreply.github.com | -| **General questions** | [GitHub Discussions](https://github.com/hyperpolymath/TradeUnionist.jl/discussions) | +| **Security issues** | [Report via GitHub](https://github.com/hyperpolymath/TradeUnionism.jl/security/advisories/new) or 6759885+hyperpolymath@users.noreply.github.com | +| **General questions** | [GitHub Discussions](https://github.com/hyperpolymath/TradeUnionism.jl/discussions) | | **Other enquiries** | See [README](README.md) for contact information | --- @@ -403,7 +403,7 @@ This security policy may be updated from time to time. Significant changes will --- -*Thank you for helping keep TradeUnionist.Jl and its users safe.* 🛡️ +*Thank you for helping keep TradeUnionism.Jl and its users safe.* 🛡️ --- diff --git a/TEST-NEEDS.md b/TEST-NEEDS.md index a9ccf95..4782fa9 100644 --- a/TEST-NEEDS.md +++ b/TEST-NEEDS.md @@ -2,7 +2,7 @@ SPDX-License-Identifier: CC-BY-SA-4.0 Copyright (c) Jonathan D.A. Jewell --> -# TEST-NEEDS: TradeUnionist.jl +# TEST-NEEDS: TradeUnionism.jl ## CRG Grade: C — ACHIEVED 2026-04-04 diff --git a/TOPOLOGY.md b/TOPOLOGY.md index f945185..c18f6a2 100644 --- a/TOPOLOGY.md +++ b/TOPOLOGY.md @@ -5,7 +5,7 @@ Copyright (c) Jonathan D.A. Jewell -# TradeUnionist.jl — Project Topology +# TradeUnionism.jl — Project Topology ## System Architecture diff --git a/benches/benchmarks.jl b/benches/benchmarks.jl index a3a0f75..41683fa 100644 --- a/benches/benchmarks.jl +++ b/benches/benchmarks.jl @@ -1,9 +1,9 @@ # SPDX-License-Identifier: MPL-2.0 # (MPL-2.0 preferred; MPL-2.0 required for Julia ecosystem) -# BenchmarkTools benchmarks for TradeUnionist.jl +# BenchmarkTools benchmarks for TradeUnionism.jl using BenchmarkTools -using TradeUnionist +using TradeUnionism using Dates const SUITE = BenchmarkGroup() diff --git a/cliff.toml b/cliff.toml index 4eb6c93..883c1a9 100644 --- a/cliff.toml +++ b/cliff.toml @@ -6,7 +6,7 @@ # # Placeholders — replace before first use: # hyperpolymath — GitHub organization or username -# TradeUnionist.jl — GitHub repository name +# TradeUnionism.jl — GitHub repository name [changelog] # Changelog header @@ -21,7 +21,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 # https://keats.github.io/tera/docs/#introduction body = """ {%- macro remote_url() -%} - https://github.com/hyperpolymath/TradeUnionist.jl + https://github.com/hyperpolymath/TradeUnionism.jl {%- endmacro -%} {% if version -%} @@ -57,7 +57,7 @@ body = """ # Template for the changelog footer footer = """ {%- macro remote_url() -%} - https://github.com/hyperpolymath/TradeUnionist.jl + https://github.com/hyperpolymath/TradeUnionism.jl {%- endmacro -%} {% for release in releases -%} diff --git a/docs/CITATIONS.adoc b/docs/CITATIONS.adoc index 39c4c12..ccecff3 100644 --- a/docs/CITATIONS.adoc +++ b/docs/CITATIONS.adoc @@ -1,36 +1,36 @@ // SPDX-License-Identifier: CC-BY-SA-4.0 // Copyright (c) Jonathan D.A. Jewell -= TradeUnionist.jl - Citation Guide += TradeUnionism.jl - Citation Guide :toc: == BibTeX [source,bibtex] ---- -@software{TradeUnionist.jl_2026, +@software{TradeUnionism.jl_2026, author = {Jewell, Jonathan D.A.}, - title = {TradeUnionist.jl}, + title = {TradeUnionism.jl}, year = {2026}, - url = {https://github.com/hyperpolymath/TradeUnionist.jl}, + url = {https://github.com/hyperpolymath/TradeUnionism.jl}, license = {MPL-2.0} } ---- == Harvard Style -Jewell, J.D.A. (2026) _TradeUnionist.jl_ [Computer software]. Available at: https://github.com/hyperpolymath/TradeUnionist.jl +Jewell, J.D.A. (2026) _TradeUnionism.jl_ [Computer software]. Available at: https://github.com/hyperpolymath/TradeUnionism.jl == OSCOLA -Jonathan D.A. Jewell, 'TradeUnionist.jl' (2026) +Jonathan D.A. Jewell, 'TradeUnionism.jl' (2026) == MLA -Jewell, Jonathan D.A. "TradeUnionist.jl." 2026, github.com/hyperpolymath/TradeUnionist.jl. +Jewell, Jonathan D.A. "TradeUnionism.jl." 2026, github.com/hyperpolymath/TradeUnionism.jl. == APA 7 -Jewell, J.D.A. (2026). _TradeUnionist.jl_ [Computer software]. GitHub. https://github.com/hyperpolymath/TradeUnionist.jl +Jewell, J.D.A. (2026). _TradeUnionism.jl_ [Computer software]. GitHub. https://github.com/hyperpolymath/TradeUnionism.jl == See Also diff --git a/docs/QUICKSTART.md b/docs/QUICKSTART.md index e7c721e..00b8ae2 100644 --- a/docs/QUICKSTART.md +++ b/docs/QUICKSTART.md @@ -24,8 +24,8 @@ just init # interactive placeholder replacement ## Clone and Setup (Existing Project) ```bash -git clone https://github.com/hyperpolymath/TradeUnionist.jl.git -cd TradeUnionist.jl +git clone https://github.com/hyperpolymath/TradeUnionism.jl.git +cd TradeUnionism.jl just deps ``` @@ -63,5 +63,5 @@ docs/ # Documentation If `just deps` fails, ensure your toolchain version matches the project requirements listed in the `Justfile` or `.machine_readable/ECOSYSTEM.a2ml`. -Open a [Discussion](https://github.com/hyperpolymath/TradeUnionist.jl/discussions) +Open a [Discussion](https://github.com/hyperpolymath/TradeUnionism.jl/discussions) if you get stuck. diff --git a/docs/THREAT-MODEL.md b/docs/THREAT-MODEL.md index deaf634..c96f2ed 100644 --- a/docs/THREAT-MODEL.md +++ b/docs/THREAT-MODEL.md @@ -4,13 +4,13 @@ Copyright (c) Jonathan D.A. Jewell --> -# Threat Model: TradeUnionist.Jl +# Threat Model: TradeUnionism.Jl ## Document Info | Field | Value | |---------------|--------------------------------| -| Project | TradeUnionist.Jl | +| Project | TradeUnionism.Jl | | Version | 1.0 | | Last Reviewed | 2026-03-16 | | Author | Jonathan D.A. Jewell | @@ -36,7 +36,7 @@ Copyright (c) Jonathan D.A. Jewell ## System Overview -Brief description of TradeUnionist.Jl and its architecture. +Brief description of TradeUnionism.Jl and its architecture. > See [TOPOLOGY.md](../TOPOLOGY.md) for the full architecture diagram and completion dashboard. diff --git a/eclexiaiser.toml b/eclexiaiser.toml index e9437d9..7bcd138 100644 --- a/eclexiaiser.toml +++ b/eclexiaiser.toml @@ -1,8 +1,8 @@ # SPDX-License-Identifier: MPL-2.0 -# eclexiaiser manifest for TradeUnionist.jl +# eclexiaiser manifest for TradeUnionism.jl [project] -name = "TradeUnionist.jl" +name = "TradeUnionism.jl" [[functions]] name = "main" diff --git a/examples/organizing_drive.jl b/examples/organizing_drive.jl index 17c0995..335c32f 100644 --- a/examples/organizing_drive.jl +++ b/examples/organizing_drive.jl @@ -1,4 +1,4 @@ -using TradeUnionist +using TradeUnionism using Dates # 1. Start a new drive diff --git a/ffi/zig/src/main.zig b/ffi/zig/src/main.zig index eca3ec5..ebf47f5 100644 --- a/ffi/zig/src/main.zig +++ b/ffi/zig/src/main.zig @@ -52,7 +52,7 @@ pub const Handle = opaque { /// Initialize the library /// Returns a handle, or null on failure -export fn TradeUnionist.jl_init() ?*Handle { +export fn TradeUnionism.jl_init() ?*Handle { const allocator = std.heap.c_allocator; const handle = allocator.create(Handle) catch { @@ -71,7 +71,7 @@ export fn TradeUnionist.jl_init() ?*Handle { } /// Free the library handle -export fn TradeUnionist.jl_free(handle: ?*Handle) void { +export fn TradeUnionism.jl_free(handle: ?*Handle) void { const h = handle orelse return; const allocator = h.allocator; @@ -87,7 +87,7 @@ export fn TradeUnionist.jl_free(handle: ?*Handle) void { //============================================================================== /// Process data (example operation) -export fn TradeUnionist.jl_process(handle: ?*Handle, input: u32) Result { +export fn TradeUnionism.jl_process(handle: ?*Handle, input: u32) Result { const h = handle orelse { setError("Null handle"); return .null_pointer; @@ -111,7 +111,7 @@ export fn TradeUnionist.jl_process(handle: ?*Handle, input: u32) Result { /// Get a string result (example) /// Caller must free the returned string -export fn TradeUnionist.jl_get_string(handle: ?*Handle) ?[*:0]const u8 { +export fn TradeUnionism.jl_get_string(handle: ?*Handle) ?[*:0]const u8 { const h = handle orelse { setError("Null handle"); return null; @@ -133,7 +133,7 @@ export fn TradeUnionist.jl_get_string(handle: ?*Handle) ?[*:0]const u8 { } /// Free a string allocated by the library -export fn TradeUnionist.jl_free_string(str: ?[*:0]const u8) void { +export fn TradeUnionism.jl_free_string(str: ?[*:0]const u8) void { const s = str orelse return; const allocator = std.heap.c_allocator; @@ -146,7 +146,7 @@ export fn TradeUnionist.jl_free_string(str: ?[*:0]const u8) void { //============================================================================== /// Process an array of data -export fn TradeUnionist.jl_process_array( +export fn TradeUnionism.jl_process_array( handle: ?*Handle, buffer: ?[*]const u8, len: u32, @@ -182,7 +182,7 @@ export fn TradeUnionist.jl_process_array( /// Get the last error message /// Returns null if no error -export fn TradeUnionist.jl_last_error() ?[*:0]const u8 { +export fn TradeUnionism.jl_last_error() ?[*:0]const u8 { const err = last_error orelse return null; // Return C string (static storage, no need to free) @@ -196,12 +196,12 @@ export fn TradeUnionist.jl_last_error() ?[*:0]const u8 { //============================================================================== /// Get the library version -export fn TradeUnionist.jl_version() [*:0]const u8 { +export fn TradeUnionism.jl_version() [*:0]const u8 { return VERSION.ptr; } /// Get build information -export fn TradeUnionist.jl_build_info() [*:0]const u8 { +export fn TradeUnionism.jl_build_info() [*:0]const u8 { return BUILD_INFO.ptr; } @@ -213,7 +213,7 @@ export fn TradeUnionist.jl_build_info() [*:0]const u8 { pub const Callback = *const fn (u64, u32) callconv(.C) u32; /// Register a callback -export fn TradeUnionist.jl_register_callback( +export fn TradeUnionism.jl_register_callback( handle: ?*Handle, callback: ?Callback, ) Result { @@ -244,7 +244,7 @@ export fn TradeUnionist.jl_register_callback( //============================================================================== /// Check if handle is initialized -export fn TradeUnionist.jl_is_initialized(handle: ?*Handle) u32 { +export fn TradeUnionism.jl_is_initialized(handle: ?*Handle) u32 { const h = handle orelse return 0; return if (h.initialized) 1 else 0; } @@ -254,22 +254,22 @@ export fn TradeUnionist.jl_is_initialized(handle: ?*Handle) u32 { //============================================================================== test "lifecycle" { - const handle = TradeUnionist.jl_init() orelse return error.InitFailed; - defer TradeUnionist.jl_free(handle); + const handle = TradeUnionism.jl_init() orelse return error.InitFailed; + defer TradeUnionism.jl_free(handle); - try std.testing.expect(TradeUnionist.jl_is_initialized(handle) == 1); + try std.testing.expect(TradeUnionism.jl_is_initialized(handle) == 1); } test "error handling" { - const result = TradeUnionist.jl_process(null, 0); + const result = TradeUnionism.jl_process(null, 0); try std.testing.expectEqual(Result.null_pointer, result); - const err = TradeUnionist.jl_last_error(); + const err = TradeUnionism.jl_last_error(); try std.testing.expect(err != null); } test "version" { - const ver = TradeUnionist.jl_version(); + const ver = TradeUnionism.jl_version(); const ver_str = std.mem.span(ver); try std.testing.expectEqualStrings(VERSION, ver_str); } diff --git a/llm-warmup-dev.md b/llm-warmup-dev.md index a46fb15..d42e08c 100644 --- a/llm-warmup-dev.md +++ b/llm-warmup-dev.md @@ -2,9 +2,9 @@ SPDX-License-Identifier: CC-BY-SA-4.0 Copyright (c) Jonathan D.A. Jewell --> -# LLM Warmup — TradeUnionist.jl (Developer) +# LLM Warmup — TradeUnionism.jl (Developer) -## What is TradeUnionist.jl? +## What is TradeUnionism.jl? See README.adoc for overview. ## Key Commands diff --git a/llm-warmup-user.md b/llm-warmup-user.md index aa3f4f4..6365299 100644 --- a/llm-warmup-user.md +++ b/llm-warmup-user.md @@ -2,9 +2,9 @@ SPDX-License-Identifier: CC-BY-SA-4.0 Copyright (c) Jonathan D.A. Jewell --> -# LLM Warmup — TradeUnionist.jl (User) +# LLM Warmup — TradeUnionism.jl (User) -## What is TradeUnionist.jl? +## What is TradeUnionism.jl? See README.adoc for overview. ## Key Commands diff --git a/src/TradeUnionist.jl b/src/TradeUnionism.jl similarity index 95% rename from src/TradeUnionist.jl rename to src/TradeUnionism.jl index 26761f4..60fff50 100644 --- a/src/TradeUnionist.jl +++ b/src/TradeUnionism.jl @@ -1,6 +1,6 @@ # SPDX-License-Identifier: MPL-2.0 """ - TradeUnionist + TradeUnionism Trade union analytics, membership tracking, and labour economics toolkit. Covers worksite registration, member management, organiser conversations, grievance @@ -15,13 +15,13 @@ handling, collective bargaining analysis, spatial mapping, and union density met # Example ```julia -using TradeUnionist +using TradeUnionism site = register_worksite("Factory A", 500) metrics = UnionMetrics(site) calc_density(metrics) ``` """ -module TradeUnionist +module TradeUnionism include("types.jl") include("organizing.jl") @@ -59,4 +59,4 @@ export UnionEvent, StrikeVote, Rally, TownHall, CommitteeMeeting, create_event_t export build_union_press_release, generate_member_alert export UnionLeaderProfile, make_leader_card -end # module TradeUnionist +end # module TradeUnionism diff --git a/src/mapping.jl b/src/mapping.jl index 6597c7e..5bd226d 100644 --- a/src/mapping.jl +++ b/src/mapping.jl @@ -1,7 +1,7 @@ # SPDX-License-Identifier: MPL-2.0 # Copyright (c) 2026 Jonathan D.A. Jewell (hyperpolymath) # -# Geospatial mapping module for TradeUnionist.jl. +# Geospatial mapping module for TradeUnionism.jl. # Provides spatial analysis for union organising: finding members near worksites, # computing commute distances, and performing spatial joins with external data. diff --git a/stapeln.toml b/stapeln.toml index 39cf61f..ca9a196 100644 --- a/stapeln.toml +++ b/stapeln.toml @@ -1,13 +1,13 @@ # SPDX-License-Identifier: MPL-2.0 -# stapeln.toml — Layer-based container build for TradeUnionist.jl +# stapeln.toml — Layer-based container build for TradeUnionism.jl # # stapeln builds containers as composable layers (German: "to stack"). # Each layer is independently cacheable, verifiable, and signable. [metadata] -name = "TradeUnionist.jl" +name = "TradeUnionism.jl" version = "0.1.0" -description = "TradeUnionist.jl container service" +description = "TradeUnionism.jl container service" author = "Jonathan D.A. Jewell " license = "MPL-2.0" registry = "ghcr.io/hyperpolymath" @@ -32,7 +32,7 @@ packages = [] cache = true [layers.build] -description = "TradeUnionist.jl build" +description = "TradeUnionism.jl build" extends = "toolchain" commands = [] @@ -43,7 +43,7 @@ packages = ["ca-certificates", "curl"] copy-from = [ { layer = "build", src = "/app/", dst = "/app/" }, ] -entrypoint = ["/app/TradeUnionist.jl"] +entrypoint = ["/app/TradeUnionism.jl"] user = "nonroot" # ── Security ─────────────────────────────────────────────────── diff --git a/test/e2e_test.jl b/test/e2e_test.jl index 003accd..6955d2b 100644 --- a/test/e2e_test.jl +++ b/test/e2e_test.jl @@ -1,9 +1,9 @@ # SPDX-License-Identifier: MPL-2.0 # (MPL-2.0 preferred; MPL-2.0 required for Julia ecosystem) -# E2E pipeline tests for TradeUnionist.jl +# E2E pipeline tests for TradeUnionism.jl using Test -using TradeUnionist +using TradeUnionism using Dates using DataFrames diff --git a/test/property_test.jl b/test/property_test.jl index 242a3b6..2b90c1c 100644 --- a/test/property_test.jl +++ b/test/property_test.jl @@ -1,9 +1,9 @@ # SPDX-License-Identifier: MPL-2.0 # (MPL-2.0 preferred; MPL-2.0 required for Julia ecosystem) -# Property-based invariant tests for TradeUnionist.jl +# Property-based invariant tests for TradeUnionism.jl using Test -using TradeUnionist +using TradeUnionism @testset "Property-Based Tests" begin diff --git a/test/runtests.jl b/test/runtests.jl index 0257798..9bbac62 100644 --- a/test/runtests.jl +++ b/test/runtests.jl @@ -1,10 +1,10 @@ # SPDX-License-Identifier: MPL-2.0 using Test -using TradeUnionist +using TradeUnionism using Dates using DataFrames -@testset "TradeUnionist.jl" begin +@testset "TradeUnionism.jl" begin # ───────────────────────────────── # Types @@ -261,9 +261,9 @@ using DataFrames @testset "Planning" begin @testset "PlanningLevel subtypes" begin - @test StrategicGoal() isa TradeUnionist.Planning.PlanningLevel - @test TacticalObjective() isa TradeUnionist.Planning.PlanningLevel - @test OperationalTask() isa TradeUnionist.Planning.PlanningLevel + @test StrategicGoal() isa TradeUnionism.Planning.PlanningLevel + @test TacticalObjective() isa TradeUnionism.Planning.PlanningLevel + @test OperationalTask() isa TradeUnionism.Planning.PlanningLevel end @testset "UnionActivity construction" begin @@ -274,7 +274,7 @@ using DataFrames "Jane Doe", :in_progress, ) - @test act.level isa TradeUnionist.Planning.PlanningLevel + @test act.level isa TradeUnionism.Planning.PlanningLevel @test act.function_area == :Organizing @test act.description == "Achieve 50% density by Q4" @test act.owner == "Jane Doe" @@ -297,10 +297,10 @@ using DataFrames @testset "Events" begin @testset "EventType subtypes" begin - @test StrikeVote() isa TradeUnionist.Events.EventType - @test Rally() isa TradeUnionist.Events.EventType - @test TownHall() isa TradeUnionist.Events.EventType - @test CommitteeMeeting() isa TradeUnionist.Events.EventType + @test StrikeVote() isa TradeUnionism.Events.EventType + @test Rally() isa TradeUnionism.Events.EventType + @test TownHall() isa TradeUnionism.Events.EventType + @test CommitteeMeeting() isa TradeUnionism.Events.EventType end @testset "UnionEvent construction" begin