Skip to content

Commit 4c70d79

Browse files
final: Hardening, usability improvements, and v4.0/v2.0 anatomy restoration
1 parent 52ada45 commit 4c70d79

10 files changed

Lines changed: 371 additions & 20 deletions

File tree

CONTINUITY LEGACY Lite/pyproject.toml

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
[build-system]
1+
[build-system]
22
requires = ["setuptools>=61.0"]
33
build-backend = "setuptools.build_meta"
44

@@ -15,12 +15,15 @@ classifiers = [
1515
"Programming Language :: Python :: 3",
1616
"License :: OSI Approved :: MIT License",
1717
"Operating System :: OS Independent",
18-
"Topic :: Software Development :: Libraries :: Python Modules",
1918
]
2019
dependencies = []
2120

2221
[project.urls]
2322
"Homepage" = "https://github.com/SteveBlackbeard/CONTINUITY-LEGACY-by-Ethernium"
2423

2524
[project.scripts]
26-
continuity-legacy-lite = "run_continuity_lite:run_cycle"
25+
continuity-legacy-lite = "tools.continuity_legacy.run_continuity_lite:main"
26+
27+
[tool.setuptools.packages.find]
28+
where = ["."]
29+
include = ["tools*"]

CONTINUITY LEGACY Omega/pyproject.toml

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
[build-system]
1+
[build-system]
22
requires = ["setuptools>=61.0"]
33
build-backend = "setuptools.build_meta"
44

@@ -15,7 +15,6 @@ classifiers = [
1515
"Programming Language :: Python :: 3",
1616
"License :: OSI Approved :: MIT License",
1717
"Operating System :: OS Independent",
18-
"Topic :: Scientific/Engineering :: Artificial Intelligence",
1918
]
2019
dependencies = [
2120
"chromadb>=0.4.0",
@@ -28,3 +27,7 @@ dependencies = [
2827

2928
[project.scripts]
3029
continuity-legacy-omega = "tools.continuity_legacy.run_continuity_omega:main"
30+
31+
[tool.setuptools.packages.find]
32+
where = ["."]
33+
include = ["tools*"]

CONTINUITY LEGACY Pro/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# CONTINUITY LEGACY Pro by Ethernium
1+
# CONTINUITY LEGACY Pro by Ethernium
22

33
`CONTINUITY LEGACY` is a standalone starter toolkit for building projects with persistent continuity, canonical memory, and repeatable handoff between humans and AI operators.
44

CONTINUITY LEGACY Pro/STATE.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,5 +35,8 @@
3535
"command": "python tools/continuity_legacy/run_continuity_cycle.py --repo-root <repo> --strict",
3636
"report": "outputs/continuity/continuity_cycle_report.json",
3737
"bootstrap_summary": "outputs/continuity/context_bootstrap_summary.json"
38+
},
39+
"metadata": {
40+
"last_updated": "2026-04-02T07:55:19.237951Z"
3841
}
3942
}
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
| Date | Decision | Reason | Actor |
2+
| 2026-04-01 | Start Project | Initial bootstrap | Admin |
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
# Sample Project: Continuity Legacy in Action
2+
3+
This directory demonstrates how CONTINUITY LEGACY maintains project state across development sessions.
4+
5+
## How to use this example:
6+
1. Copy this sample_project folder to a new location.
7+
2. Run the continuity cycle:
8+
python ../../tools/continuity_legacy/run_continuity_cycle.py --repo-root .
9+
3. Observe how it validates the existing logs.
10+
4. Try deleting DECISIONS_LOG.md and see it flag the project as 'attention_required'.
11+
12+
## Before and After:
13+
- **Before**: Fragmented commits with no clear strategic context.
14+
- **After**: A canonical STATE.json and DECISIONS_LOG.md that allow any AI or developer to resume work instantly.
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
{"project_name": "Example", "phase": "alpha"}

CONTINUITY LEGACY Pro/pyproject.toml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,8 @@ all = ["chromadb>=0.4.0", "sentence-transformers", "networkx", "rdflib"]
2929
"Bug Tracker" = "https://github.com/SteveBlackbeard/CONTINUITY-LEGACY-by-Ethernium/issues"
3030

3131
[project.scripts]
32-
continuity-legacy = "continuity_legacy_cli.cli:main"
32+
continuity-legacy = "tools.continuity_legacy.run_continuity_cycle:main"
3333

3434
[tool.setuptools.packages.find]
35-
where = ["src"]
35+
where = ["."]
36+
include = ["tools*"]
Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
import pytest
2+
from pathlib import Path
3+
import json
4+
import os
5+
import sys
6+
7+
# Add tools to path
8+
sys.path.append(str(Path(__file__).parent.parent / 'tools' / 'continuity_legacy'))
9+
10+
from doc_parity_check import run_parity_check
11+
12+
def test_parity_check_functional(tmp_path):
13+
# Setup a mock project root
14+
repo_root = tmp_path
15+
cont_dir = repo_root / '.continuity'
16+
cont_dir.mkdir()
17+
18+
# Create required files
19+
(cont_dir / 'DECISIONS_LOG.md').write_text("# Decisions", encoding='utf-8')
20+
(cont_dir / 'CONTEXT_CONTINUITY.md').write_text("# Context", encoding='utf-8')
21+
(cont_dir / 'TIMELINE.md').write_text("# Timeline", encoding='utf-8')
22+
(repo_root / 'README.md').write_text("# README", encoding='utf-8')
23+
(repo_root / 'STATE.json').write_text(json.dumps({"phase": "test"}), encoding='utf-8')
24+
(repo_root / 'continuity_legacy.json').write_text(json.dumps({
25+
"project_name": "Test",
26+
"tool_version": "5.0.0"
27+
}), encoding='utf-8')
28+
29+
# Run check
30+
report = run_parity_check(None, str(repo_root))
31+
32+
# Assert
33+
assert report['status'] == 'ok'
34+
assert 'Diferencia de paridad (checksum)' not in str(report)
35+
36+
def test_parity_fails_on_missing_file(tmp_path):
37+
repo_root = tmp_path
38+
(repo_root / '.continuity').mkdir()
39+
(repo_root / 'README.md').write_text("# README", encoding='utf-8')
40+
41+
report = run_parity_check(None, str(repo_root))
42+
assert report['status'] != 'ok'
43+
assert 'attention_required' in report['status']
44+

0 commit comments

Comments
 (0)