Skip to content

Commit 27dc52e

Browse files
Polyglot git backup merger tool implementation (#2)
Add all required RSR compliance files: - LICENSE.txt: Dual MIT + Palimpsest-0.8 licensing - SECURITY.md: Vulnerability disclosure policy with SLAs - CODE_OF_CONDUCT.adoc: Contributor Covenant adapted - CONTRIBUTING.adoc: Tri-Perimeter Contribution Framework (TPCF) - GOVERNANCE.adoc: Decision-making, roles, and succession - MAINTAINERS.md: Project leadership and component leads - FUNDING.yml: Sponsorship and budget allocation Add .well-known/ protocol files: - security.txt: RFC 9116 security contact info - ai.txt: AI training policy (open-source permitted, proprietary blocked) - humans.txt: Project credits and philosophy - provenance.json: Immutable provenance chain - consent-required.txt: Automated access consent framework Add SPDX headers to all Rust source files for license compliance. Convert README.md to README.adoc with enhanced RSR-compliant structure. Update .gitignore and add .gitattributes for polyglot development. Signed-off-by: Jonathan D.A. Jewell <6759885+Hyperpolymath@users.noreply.github.com> Co-authored-by: Claude <noreply@anthropic.com>
1 parent 9b2efef commit 27dc52e

22 files changed

Lines changed: 1735 additions & 117 deletions

.gitattributes

Lines changed: 171 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,171 @@
1+
# SPDX-License-Identifier: MIT AND Palimpsest-0.8
2+
# SPDX-FileCopyrightText: 2024-2025 The polysafe-gitfixer Contributors
3+
#
4+
# Git attributes for polysafe-gitfixer
5+
# Ensures consistent line endings and diff behavior across platforms
6+
7+
# ==============================================================================
8+
# Auto-detect text files and normalize line endings
9+
# ==============================================================================
10+
* text=auto
11+
12+
# ==============================================================================
13+
# Source Code - Text files with LF normalization
14+
# ==============================================================================
15+
16+
# Rust
17+
*.rs text eol=lf diff=rust
18+
*.toml text eol=lf
19+
20+
# Haskell
21+
*.hs text eol=lf diff=haskell
22+
*.lhs text eol=lf diff=haskell
23+
*.cabal text eol=lf
24+
25+
# Elixir
26+
*.ex text eol=lf diff=elixir
27+
*.exs text eol=lf diff=elixir
28+
*.eex text eol=lf
29+
*.heex text eol=lf
30+
*.leex text eol=lf
31+
mix.lock text eol=lf
32+
33+
# Idris
34+
*.idr text eol=lf
35+
*.ipkg text eol=lf
36+
37+
# Nickel
38+
*.ncl text eol=lf
39+
40+
# Nix
41+
*.nix text eol=lf
42+
flake.lock text eol=lf
43+
44+
# C/C++ (for native dependencies)
45+
*.c text eol=lf diff=cpp
46+
*.h text eol=lf diff=cpp
47+
*.cpp text eol=lf diff=cpp
48+
*.hpp text eol=lf diff=cpp
49+
50+
# ==============================================================================
51+
# Documentation - Text files with LF normalization
52+
# ==============================================================================
53+
54+
*.md text eol=lf diff=markdown
55+
*.adoc text eol=lf
56+
*.txt text eol=lf
57+
*.rst text eol=lf
58+
*.html text eol=lf diff=html
59+
*.css text eol=lf diff=css
60+
*.xml text eol=lf
61+
62+
# ==============================================================================
63+
# Configuration - Text files with LF normalization
64+
# ==============================================================================
65+
66+
*.yml text eol=lf
67+
*.yaml text eol=lf
68+
*.json text eol=lf
69+
*.conf text eol=lf
70+
*.cfg text eol=lf
71+
*.ini text eol=lf
72+
*.env text eol=lf
73+
74+
# Shell scripts
75+
*.sh text eol=lf diff=bash
76+
*.bash text eol=lf diff=bash
77+
*.zsh text eol=lf
78+
79+
# Build files
80+
Makefile text eol=lf
81+
justfile text eol=lf
82+
Containerfile text eol=lf
83+
Dockerfile text eol=lf
84+
85+
# Git
86+
.gitignore text eol=lf
87+
.gitattributes text eol=lf
88+
.gitmodules text eol=lf
89+
90+
# ==============================================================================
91+
# Binary Files - Explicitly mark as binary
92+
# ==============================================================================
93+
94+
# Images
95+
*.png binary
96+
*.jpg binary
97+
*.jpeg binary
98+
*.gif binary
99+
*.ico binary
100+
*.webp binary
101+
*.svg text eol=lf
102+
103+
# Documents
104+
*.pdf binary
105+
106+
# Archives
107+
*.zip binary
108+
*.tar binary
109+
*.gz binary
110+
*.bz2 binary
111+
*.xz binary
112+
*.7z binary
113+
114+
# Compiled
115+
*.wasm binary
116+
*.so binary
117+
*.dylib binary
118+
*.dll binary
119+
*.exe binary
120+
*.a binary
121+
*.o binary
122+
*.beam binary
123+
124+
# Fonts
125+
*.ttf binary
126+
*.otf binary
127+
*.woff binary
128+
*.woff2 binary
129+
*.eot binary
130+
131+
# ==============================================================================
132+
# Export Ignore - Files not included in archives
133+
# ==============================================================================
134+
135+
.git export-ignore
136+
.gitignore export-ignore
137+
.gitattributes export-ignore
138+
.gitlab-ci.yml export-ignore
139+
.github export-ignore
140+
.well-known export-ignore
141+
142+
# Development files
143+
.editorconfig export-ignore
144+
.envrc export-ignore
145+
*.nix export-ignore
146+
flake.lock export-ignore
147+
148+
# Test fixtures
149+
test/fixtures export-ignore
150+
tests/fixtures export-ignore
151+
152+
# Documentation source (keep compiled docs)
153+
docs/*.adoc export-ignore
154+
155+
# ==============================================================================
156+
# Linguist Overrides (for GitHub language detection)
157+
# ==============================================================================
158+
159+
# Ensure Rust is detected as primary language
160+
*.rs linguist-detectable=true
161+
*.hs linguist-detectable=true
162+
*.ex linguist-detectable=true
163+
*.idr linguist-detectable=true
164+
165+
# Don't count generated files
166+
Cargo.lock linguist-generated=true
167+
flake.lock linguist-generated=true
168+
mix.lock linguist-generated=true
169+
170+
# Vendor directories (if any)
171+
vendor/* linguist-vendored=true

.gitignore

Lines changed: 113 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,120 @@
1+
# SPDX-License-Identifier: MIT AND Palimpsest-0.8
2+
# SPDX-FileCopyrightText: 2024-2025 The polysafe-gitfixer Contributors
3+
4+
# ==============================================================================
5+
# Rust
6+
# ==============================================================================
17
target/
28
Cargo.lock
3-
.DS_Store
4-
*.log
5-
*.tmp
9+
**/*.rs.bk
10+
*.pdb
11+
12+
# ==============================================================================
13+
# Haskell
14+
# ==============================================================================
15+
dist/
16+
dist-newstyle/
17+
cabal-dev/
18+
*.o
19+
*.hi
20+
*.hie
21+
*.chi
22+
*.chs.h
23+
*.dyn_o
24+
*.dyn_hi
25+
.hpc/
26+
.hsenv/
27+
.cabal-sandbox/
28+
cabal.sandbox.config
29+
*.prof
30+
*.aux
31+
*.hp
32+
*.eventlog
33+
.stack-work/
34+
cabal.project.local
35+
cabal.project.local~
36+
.HTF/
37+
.ghc.environment.*
38+
39+
# ==============================================================================
40+
# Elixir
41+
# ==============================================================================
642
_build/
743
deps/
8-
.elixir_ls/
9-
.erlang.cookie
10-
*.beam
1144
*.ez
45+
*.beam
1246
erl_crash.dump
47+
.elixir_ls/
48+
.erlang.cookie
49+
mix.lock
50+
51+
# ==============================================================================
52+
# Idris
53+
# ==============================================================================
54+
build/
55+
*.ibc
56+
*.o
57+
*.so
58+
59+
# ==============================================================================
60+
# Nickel
61+
# ==============================================================================
62+
*.ncl.json
63+
64+
# ==============================================================================
65+
# Nix
66+
# ==============================================================================
67+
result
68+
result-*
69+
.direnv/
70+
71+
# ==============================================================================
72+
# Editor/IDE
73+
# ==============================================================================
74+
.idea/
75+
.vscode/
76+
*.swp
77+
*.swo
78+
*~
79+
.project
80+
.classpath
81+
.settings/
82+
*.sublime-workspace
83+
*.sublime-project
84+
85+
# ==============================================================================
86+
# OS
87+
# ==============================================================================
88+
.DS_Store
89+
.DS_Store?
90+
._*
91+
.Spotlight-V100
92+
.Trashes
93+
ehthumbs.db
94+
Thumbs.db
95+
96+
# ==============================================================================
97+
# Logs and temp files
98+
# ==============================================================================
99+
*.log
100+
*.tmp
101+
*.temp
102+
*.bak
103+
*.backup
104+
105+
# ==============================================================================
106+
# Environment
107+
# ==============================================================================
108+
.env
109+
.env.local
110+
.env.*.local
111+
*.local
13112

113+
# ==============================================================================
114+
# Test artifacts
115+
# ==============================================================================
116+
coverage/
117+
.coverage
118+
htmlcov/
119+
.hypothesis/
120+
.pytest_cache/

.well-known/ai.txt

Lines changed: 82 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,82 @@
1+
# SPDX-License-Identifier: MIT AND Palimpsest-0.8
2+
# SPDX-FileCopyrightText: 2024-2025 The polysafe-gitfixer Contributors
3+
#
4+
# AI Training and Crawling Policy for polysafe-gitfixer
5+
# This file defines permissions for AI systems interacting with this repository.
6+
7+
# ==============================================================================
8+
# POLICY SUMMARY
9+
# ==============================================================================
10+
#
11+
# This repository is dual-licensed under MIT and Palimpsest-0.8.
12+
# AI training is permitted under specific conditions.
13+
14+
# ==============================================================================
15+
# PERMITTED: Open-Source AI Training
16+
# ==============================================================================
17+
#
18+
# Training is ALLOWED if ALL of the following conditions are met:
19+
#
20+
# 1. ATTRIBUTION: Models must acknowledge "The polysafe-gitfixer Contributors"
21+
# and link to: https://gitlab.com/Hyperpolymath/polysafe-gitfixer
22+
#
23+
# 2. OPEN SOURCE: Trained models must release weights, architecture, and
24+
# training code under OSI-approved or Creative Commons licenses
25+
#
26+
# 3. TRANSPARENCY: Generated content must disclose AI involvement and
27+
# preserve attribution chains where applicable
28+
#
29+
# 4. RECIPROCITY: Commercial use permitted if the model is open-sourced and
30+
# improvements to training data are contributed back
31+
32+
# ==============================================================================
33+
# PROHIBITED: Proprietary AI Training
34+
# ==============================================================================
35+
#
36+
# Training is NOT ALLOWED for:
37+
#
38+
# - Closed-source AI models
39+
# - Proprietary commercial models without open weights
40+
# - Models that strip or obscure attribution
41+
# - Systems that claim sole authorship of derivatives
42+
43+
# ==============================================================================
44+
# CRAWLER DIRECTIVES
45+
# ==============================================================================
46+
47+
User-agent: GPTBot
48+
Disallow: /
49+
50+
User-agent: ChatGPT-User
51+
Disallow: /
52+
53+
User-agent: Google-Extended
54+
Disallow: /
55+
56+
User-agent: anthropic-ai
57+
Disallow: /
58+
59+
User-agent: Claude-Web
60+
Disallow: /
61+
62+
User-agent: CCBot
63+
Allow: /
64+
65+
User-agent: Common-Crawl
66+
Allow: /
67+
68+
User-agent: ia_archiver
69+
Allow: /
70+
71+
User-agent: *
72+
Allow: /
73+
74+
# ==============================================================================
75+
# CONTACT
76+
# ==============================================================================
77+
#
78+
# For questions about AI training permissions:
79+
# - Open an issue: https://gitlab.com/Hyperpolymath/polysafe-gitfixer/-/issues
80+
# - See LICENSE.txt for full legal terms
81+
82+
# Expires: 2026-12-31

0 commit comments

Comments
 (0)