Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .bot_directives/echidnabot.a2ml
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
# SPDX-License-Identifier: PMPL-1.0-or-later
# echidnabot.a2ml — Directives for echidnabot in odds-and-sods-package-manager

project = "odds-and-sods-package-manager"

[identity]
bot = "echidnabot"
role = "code-quality"
Expand Down
2 changes: 2 additions & 0 deletions .bot_directives/finishbot.a2ml
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
# SPDX-License-Identifier: PMPL-1.0-or-later
# finishbot.a2ml — Directives for finishbot in odds-and-sods-package-manager

project = "odds-and-sods-package-manager"

[identity]
bot = "finishbot"
role = "task-completion"
Expand Down
2 changes: 2 additions & 0 deletions .bot_directives/glambot.a2ml
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
# SPDX-License-Identifier: PMPL-1.0-or-later
# glambot.a2ml — Directives for glambot in odds-and-sods-package-manager

project = "odds-and-sods-package-manager"

[identity]
bot = "glambot"
role = "documentation"
Expand Down
2 changes: 2 additions & 0 deletions .bot_directives/rhodibot.a2ml
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
# SPDX-License-Identifier: PMPL-1.0-or-later
# rhodibot.a2ml — Directives for rhodibot in odds-and-sods-package-manager

project = "odds-and-sods-package-manager"

[identity]
bot = "rhodibot"
role = "git-operations"
Expand Down
2 changes: 2 additions & 0 deletions .bot_directives/seambot.a2ml
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
# SPDX-License-Identifier: PMPL-1.0-or-later
# seambot.a2ml — Directives for seambot in odds-and-sods-package-manager

project = "odds-and-sods-package-manager"

[identity]
bot = "seambot"
role = "integration"
Expand Down
2 changes: 2 additions & 0 deletions .bot_directives/sustainabot.a2ml
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
# SPDX-License-Identifier: PMPL-1.0-or-later
# sustainabot.a2ml — Directives for sustainabot in odds-and-sods-package-manager

project = "odds-and-sods-package-manager"

[identity]
bot = "sustainabot"
role = "dependency-updates"
Expand Down
77 changes: 0 additions & 77 deletions .github/workflows/rsr-antipattern.yml
Original file line number Diff line number Diff line change
Expand Up @@ -137,83 +137,6 @@ jobs:
print(f"✅ No TypeScript files outside allowlist ({len(exemption_patterns)} per-repo exemption(s) parsed).")
PYEOF

# Universal builtin allowlist — bridges that need no per-repo declaration.
# Files matching any of these patterns are always allowed.
BUILTIN_GLOBS = [
'*.d.ts',
'**/bindings/**',
'**/tests/**', '**/test/**',
'**/scripts/**',
'**/mcp-adapter/**',
'**/*vscode*/**',
'**/cli/**',
'**/mod.ts',
'**/lsp-server.ts', '**/lsp_server.ts', '**/lsp.ts', '**/*-lsp.ts',
'**/deno-*/**',
'**/node_modules/**',
'**/vendor/**',
'**/examples/**',
'**/ffi/**',
]

# Per-repo exemptions parsed from .claude/CLAUDE.md "TypeScript Exemptions" table.
# Single source of truth — adding a row here unblocks CI for that path.
# Format expected:
# ### TypeScript Exemptions ...
# | Path | Files | Rationale | Unblock condition |
# |---|---|---|---|
# | `path/to/file.ts` | 1 | ... | ... |
# | `dir/*.ts` | 6 | ... | ... |
exemptions = []
claude_md = pathlib.Path('.claude/CLAUDE.md')
if claude_md.exists():
in_table = False
for line in claude_md.read_text(encoding='utf-8').splitlines():
if re.search(r'TypeScript [Ee]xemptions', line):
in_table = True
continue
if in_table and line.startswith(('### ', '## ', '# ')):
break
if in_table and line.startswith('|'):
m = re.match(r'\|\s*`([^`]+)`', line)
if m:
exemptions.append(m.group(1))

# Find all .ts and .tsx files
found = []
for ext in ('ts', 'tsx'):
found.extend(str(p) for p in pathlib.Path('.').rglob(f'*.{ext}'))

def allowed(path):
p = path.lstrip('./')
for g in BUILTIN_GLOBS + exemptions:
if fnmatch.fnmatchcase(p, g):
return True
# also treat glob ending with / as a directory prefix
base = g.rstrip('/').rstrip('*').rstrip('/')
if base and (p == base or p.startswith(base + '/')):
return True
return False

bad = sorted(f for f in found if not allowed(f))
if bad:
print("❌ TypeScript files detected outside the allowlist.\n")
for f in bad:
print(f" {f}")
print()
print("To resolve, either:")
print(" (a) migrate the file to AffineScript")
print(" (see Human_Programming_Guide.adoc migration chapter), OR")
print(" (b) move it to an allowlisted bridge path")
print(" (bindings/, tests/, scripts/, mcp-adapter/, *vscode*/, cli/, deno-*/, etc.), OR")
print(" (c) add an entry to the 'TypeScript Exemptions' table in .claude/CLAUDE.md")
print(" with rationale + unblock condition.")
if exemptions:
print(f"\n(Currently {len(exemptions)} exemption(s) parsed from .claude/CLAUDE.md.)")
sys.exit(1)
print(f"✅ No TypeScript files outside allowlist ({len(exemptions)} per-repo exemption(s) parsed).")
PYEOF

- name: Check for Go
run: |
if find . -name "*.go" | grep -q .; then
Expand Down
2 changes: 2 additions & 0 deletions .machine_readable/6a2/AGENTIC.a2ml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@
# AGENTIC.a2ml — AI agent constraints and capabilities
# Defines what AI agents can and cannot do in this repository.

project = "odds-and-sods-package-manager"

[metadata]
version = "0.1.0"
last-updated = "2026-03-16"
Expand Down
2 changes: 2 additions & 0 deletions .machine_readable/6a2/NEUROSYM.a2ml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@
# NEUROSYM.a2ml — Neurosymbolic integration metadata
# Configuration for Hypatia scanning and symbolic reasoning.

project = "odds-and-sods-package-manager"

[metadata]
version = "0.1.0"
last-updated = "2026-03-16"
Expand Down
2 changes: 2 additions & 0 deletions .machine_readable/6a2/PLAYBOOK.a2ml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@
# PLAYBOOK.a2ml — Operational playbook
# Runbooks, incident response, deployment procedures.

project = "odds-and-sods-package-manager"

[metadata]
version = "0.1.0"
last-updated = "2026-03-16"
Expand Down
2 changes: 2 additions & 0 deletions .machine_readable/CLADE.a2ml
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
# Clade declaration — part of the gv-clade-index registry
# See: https://github.com/hyperpolymath/gv-clade-index

project = "odds-and-sods-package-manager"

[identity]
uuid = "8d0e4d70-0d5d-58c4-a0eb-ff46b91b7de2"
primary-forge = "github"
Expand Down
2 changes: 2 additions & 0 deletions .machine_readable/SECURITY-STANDARDS.a2ml
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,8 @@
#
# SECURITY-STANDARDS.a2ml — Migrated from SECURITY-STANDARDS.scm

project = "odds-and-sods-package-manager"

[metadata]
version = "0.1.0"
last-updated = "2026-03-16"
Expand Down
2 changes: 2 additions & 0 deletions .machine_readable/agent_instructions/coverage.a2ml
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@
#
# Reference: ADR-002 in standards/agentic-a2ml/docs/

project = "odds-and-sods-package-manager"

[metadata]
version = "1.0.0"
last-updated = "2026-03-24"
Expand Down
2 changes: 2 additions & 0 deletions .machine_readable/agent_instructions/debt.a2ml
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@
#
# Reference: ADR-002 in standards/agentic-a2ml/docs/

project = "odds-and-sods-package-manager"

[metadata]
version = "1.0.0"
last-updated = "2026-03-24"
Expand Down
2 changes: 2 additions & 0 deletions .machine_readable/agent_instructions/methodology.a2ml
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@
#
# Reference: ADR-002 in standards/agentic-a2ml/docs/

project = "odds-and-sods-package-manager"

[metadata]
version = "1.0.0"
last-updated = "2026-03-24"
Expand Down
2 changes: 2 additions & 0 deletions .machine_readable/anchors/ANCHOR.a2ml
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
# ⚓ ANCHOR: odds-and-sods-package-manager
# This is the canonical authority for the odds-and-sods-package-manager repository.

project = "odds-and-sods-package-manager"

id: "org.hyperpolymath.odds-and-sods-package-manager"
version: "1.0.0"
clade: "unknown"
Expand Down
2 changes: 2 additions & 0 deletions .machine_readable/contractiles/adjust/Adjustfile.a2ml
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,8 @@
;
; ── End Definitions ──────────────────────────────────────────────

project = "odds-and-sods-package-manager"

(adjust-contractile
(version "1.0.0")
(full-name "Accessibility & Digital Justice for Universal Software & Technology")
Expand Down
2 changes: 2 additions & 0 deletions .machine_readable/contractiles/dust/Dustfile.a2ml
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
# SPDX-License-Identifier: PMPL-1.0-or-later
# Dustfile — Cleanup and Hygiene Contract

project = "odds-and-sods-package-manager"

[dustfile]
version = "1.0.0"
format = "a2ml"
Expand Down
2 changes: 2 additions & 0 deletions .machine_readable/contractiles/intend/Intentfile.a2ml
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,8 @@
;
; ── End Definitions ──────────────────────────────────────────────

project = "odds-and-sods-package-manager"

(intent-contractile
(version "1.0.0")
(repo "odds-and-sods-package-manager")
Expand Down
2 changes: 2 additions & 0 deletions .machine_readable/contractiles/must/Mustfile.a2ml
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,8 @@
;
; ── End Definitions ──────────────────────────────────────────────

project = "odds-and-sods-package-manager"

(must-contractile
(version "1.0.0")
(repo "odds-and-sods-package-manager")
Expand Down
2 changes: 2 additions & 0 deletions .machine_readable/contractiles/trust/Trustfile.a2ml
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
# SPDX-License-Identifier: PMPL-1.0-or-later
# Trustfile — Integrity and Provenance Contract

project = "odds-and-sods-package-manager"

[trustfile]
version = "1.0.0"
format = "a2ml"
Expand Down
2 changes: 2 additions & 0 deletions 0-AI-MANIFEST.a2ml
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# ⚠️ STOP - CRITICAL READING REQUIRED

project = "odds-and-sods-package-manager"

**THIS FILE MUST BE READ FIRST BY ALL AI AGENTS**

## WHAT IS THIS?
Expand Down
2 changes: 2 additions & 0 deletions opsm-ui/.machine_readable/6a2/AGENTIC.a2ml
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
# Copyright (c) 2026 Jonathan D.A. Jewell (hyperpolymath) <j.d.a.jewell@open.ac.uk>
#
# AGENTIC.a2ml — AI agent constraints and capabilities
project = "opsm-ui"

[metadata]
version = "0.1.0"
last-updated = "2026-04-11"
Expand Down
2 changes: 2 additions & 0 deletions opsm-ui/.machine_readable/6a2/META.a2ml
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
# Copyright (c) 2026 Jonathan D.A. Jewell (hyperpolymath) <j.d.a.jewell@open.ac.uk>
#
# META.a2ml — Opsm Ui meta-level information
project = "opsm-ui"

[metadata]
version = "0.1.0"
last-updated = "2026-04-11"
Expand Down
2 changes: 2 additions & 0 deletions opsm-ui/.machine_readable/6a2/NEUROSYM.a2ml
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
# Copyright (c) 2026 Jonathan D.A. Jewell (hyperpolymath) <j.d.a.jewell@open.ac.uk>
#
# NEUROSYM.a2ml — Neurosymbolic integration metadata
project = "opsm-ui"

[metadata]
version = "0.1.0"
last-updated = "2026-04-11"
Expand Down
2 changes: 2 additions & 0 deletions opsm-ui/.machine_readable/6a2/PLAYBOOK.a2ml
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
# Copyright (c) 2026 Jonathan D.A. Jewell (hyperpolymath) <j.d.a.jewell@open.ac.uk>
#
# PLAYBOOK.a2ml — Operational playbook
project = "opsm-ui"

[metadata]
version = "0.1.0"
last-updated = "2026-04-11"
Expand Down
2 changes: 2 additions & 0 deletions opsm-ui/0-AI-MANIFEST.a2ml
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# ⚠️ STOP - CRITICAL READING REQUIRED

project = "opsm-ui"

**THIS FILE MUST BE READ FIRST BY ALL AI AGENTS**

## WHAT IS THIS?
Expand Down
Loading
Loading