This commit is contained in:
@@ -6,7 +6,7 @@ The hidden ecosystem has one friendly source of truth:
|
||||
|
||||
The live site still consumes generated constants in:
|
||||
|
||||
- `assets/scripts/hidden-details.js` in `org_web`
|
||||
- `assets/scripts/features/hidden-details.js` in `org_web`
|
||||
|
||||
## Canonical Content
|
||||
|
||||
|
||||
@@ -48,7 +48,7 @@ POSTS_DIR = ROOT / "posts"
|
||||
LIMA_DIR = ROOT / "lima"
|
||||
IMAGE_ASSETS_DIR = ROOT / "assets" / "images"
|
||||
HZONE_ASSETS_DIR = IMAGE_ASSETS_DIR / "hzone"
|
||||
HIDDEN_DETAILS_JS = ROOT / "assets" / "scripts" / "hidden-details.js"
|
||||
HIDDEN_DETAILS_JS = ROOT / "assets" / "scripts" / "features" / "hidden-details.js"
|
||||
HIDDEN_CONTENT_JSON = ROOT / "assets" / "content" / "hidden-details.json"
|
||||
HIDDEN_BACKUP_DIR = Path(os.environ.get("AUTHOR_HIDDEN_BACKUP_DIR", APP_ROOT / "backups" / "hidden-details")).expanduser().resolve()
|
||||
EXCLUDED_CONTENT_DIR_NAMES = {
|
||||
|
||||
@@ -477,7 +477,7 @@ def load_hidden_store() -> dict[str, Any]:
|
||||
migrated = True
|
||||
data = {
|
||||
"schemaVersion": 2,
|
||||
"generatedFrom": "assets/scripts/hidden-details.js",
|
||||
"generatedFrom": "assets/scripts/features/hidden-details.js",
|
||||
"generatedAt": datetime.now().isoformat(timespec="seconds"),
|
||||
"entries": entries,
|
||||
"stories": stories,
|
||||
@@ -554,7 +554,7 @@ def validate_hidden_integrity(entries: list[dict[str, Any]], stories: list[dict[
|
||||
|
||||
def hidden_architecture_recommendations() -> dict[str, Any]:
|
||||
return {
|
||||
"storage": "Use assets/content/hidden-details.json as the friendly source of truth for reusable memories, first-class stories, and story-only sections, then regenerate the editable constants in assets/scripts/hidden-details.js.",
|
||||
"storage": "Use assets/content/hidden-details.json as the friendly source of truth for reusable memories, first-class stories, and story-only sections, then regenerate the editable constants in assets/scripts/features/hidden-details.js.",
|
||||
"backups": "Every save writes timestamped backups for both JSON and JS under backups/hidden-details/.",
|
||||
"versioning": "Commit the JSON and generated JS together so the live site and authoring history stay aligned.",
|
||||
"collaboration": "For simultaneous editing, resolve conflicts by entry id and story id rather than by whole-file ownership.",
|
||||
|
||||
@@ -1989,7 +1989,7 @@ HIDDEN_APP_HTML = r"""<!doctype html>
|
||||
<p><strong>Canonical model:</strong> fragments are tiny reusable lines, memories are richer observatory moments, interactions are triggers, lore is world material, and stories are curated routes through them.</p>
|
||||
<p><strong>Story model:</strong> stories are first-class emotional routes. Entries can belong to multiple stories, but routes stay readable and authored in order.</p>
|
||||
<p><strong>Legacy links:</strong> old continuations, echoes, and symbolic links are retained for migration only. New authoring happens through Story Builder.</p>
|
||||
<p><strong>Storage:</strong> the friendly graph lives in <code>assets/content/hidden-details.json</code>; the live site still receives generated constants in <code>assets/scripts/hidden-details.js</code>.</p>
|
||||
<p><strong>Storage:</strong> the friendly graph lives in <code>assets/content/hidden-details.json</code>; the live site still receives generated constants in <code>assets/scripts/features/hidden-details.js</code>.</p>
|
||||
</div>
|
||||
</section>
|
||||
</aside>
|
||||
|
||||
Reference in New Issue
Block a user