Skip to content

Restructure Chapter 5: From Patterns to Metamorphosis Philosophy - #4

Merged
koriym merged 10 commits into
proofreadingfrom
chapter5-metamorphosis
Sep 12, 2025
Merged

koriym merged 10 commits into
proofreadingfrom
chapter5-metamorphosis

Conversation

@koriym

@koriym koriym commented Sep 12, 2025 •

Copy link
Copy Markdown
Contributor

Summary

Transform Chapter 5 from a pattern catalog to a philosophical overview of metamorphosis, integrating deep insights from temporal programming philosophy while maintaining practical utility.

Major Philosophy Integration

  • Einstein's Space-Time: Replace opening with authentic 1916 general relativity quote about space-time inseparability
  • Time-Domain Inseparability: Core concept that time and domain cannot be separated, paralleling Einstein's discovery
  • Heraclitean Flow: Conclude with "the flowing is the river" philosophy connecting to Be Framework essence
  • Temporal Existence: Objects exist in irreversible time with memory integration

Structural Improvements

  • Title Change: "Metamorphosis Patterns" → "Metamorphosis" (essence over cataloging)
  • Temporal Flow: Replace linear patterns with T0→T1→T2→T3 temporal progression
  • Self-Determination: Rename conditional branching to emphasize object agency
  • Implementation Guidelines: Add practical "when to choose" decision criteria
  • Philosophical Balance: Remove quantum superposition section to maintain practical focus

Content Quality

  • Both Japanese and English versions updated in parallel
  • Deep philosophical insights serve as "understanding aids" not cosmic proclamations
  • Maintains practical manual utility while providing profound conceptual foundation
  • from-space-to-time.md insights successfully integrated into framework documentation

Test Plan

  • Verify Jekyll site builds correctly
  • Confirm navigation links work for both languages
  • Validate philosophical accuracy of quotes and attributions
  • Check that practical implementation guidance is clear and actionable

This restructuring elevates Chapter 5 from pattern documentation to philosophical cornerstone while preserving its essential role as practical framework guidance.

🤖 Generated with Claude Code

Summary by CodeRabbit

  • New Features

    • Locale-aware “Learn more” link now auto-directs Japanese users to the JA manual.
    • Manuals navigation rebuilt to surface curated, language-specific pages with improved filtering and ordering.
  • Documentation

    • Major expansions and restructures across EN/JA manuals: new epigraphs, revised sections, and a clearer, time-centric narrative.
    • Enhanced explanations of Input/Being/Final Objects and Metamorphosis patterns with refreshed examples.
    • Improved terminology consistency and strengthened concluding chapters in both languages.

koriym and others added 10 commits September 12, 2025 10:10
Add philosophical depth to chapters 1-3 with Eastern and Western philosophy integration
Add explicit path-based filtering to ensure each language
navigation only shows pages from its respective language directory.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
Replace plugin dependency with pure Jekyll filters:
- Explicit path-based filtering (/ja/ vs /en/)
- Works identically in local and GitHub Pages environments
- Eliminates mixed language navigation issues

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
Implement browser language detection similar to BEAR.Sunday:
- Add 'intl' class to Learn More button
- JavaScript detects navigator.language
- Auto-redirect Japanese users to /ja/ manual
- English users go to /en/ manual by default

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
- Added philosophical quotations to chapter openings in both languages
- Implemented consistent NewsWeek-style formatting with proper attribution
- Added section headings after quotations for better structure:
  - Chapter 1: "まず、これを見てください" / "First, Look at This"
  - Chapter 2: "出発点" / "The Beginning"
  - Chapter 3: "内在と超越" / "Immanence Meets Transcendence"
  - Chapter 4: "終着点" / "The Destination"
  - Chapter 12: "あなたが発見したもの" / "What You Have Discovered"
- Enhanced Chapter 4 with $been concept integration and temporal completion
- Unified philosophical framework across English and Japanese versions

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
Change "The Way constantly does nothing" to "The Tao does nothing"
for more accurate and concise philosophical expression.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
- Added Temporal Completeness section with #[Be] and $been axes
- Integrated intrinsic self-evidence with BeenProcessed and BeenRejected examples
- Enhanced both success and failure objects with complete temporal evidence
- Added philosophical conclusion about entelecheia and transformation completion
- Unified English and Japanese versions with identical $been concept depth

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
- Added Heraclitus philosophical quotation with proper NewsWeek-style formatting
- Added "変容の流れ" / "Patterns of Change" section headings after quotations
- Consolidated redundant "Branching Destinies" and "Conditional Transformation" into unified "Conditional Branching Pattern"
- Removed obvious "Fork-Join Pattern" that was just parallel data collection
- Enhanced "Self-Organizing Pipelines" section with UNIX pipes comparison
- Updated pattern selection list to remove redundancy
- Improved final message to be more natural
- Applied consistent structure across both Japanese and English versions

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
Transform Chapter 5 from pattern catalog to philosophical overview of metamorphosis,
integrating Einstein's space-time inseparability with Heraclitean flow philosophy.

Major changes:
- Replace Heraclitean quote with Einstein's authentic 1916 general relativity quote
- Add core concept: time and domain cannot be separated
- Restructure from pattern-focused to essence-focused metamorphosis overview
- Replace linear patterns with temporal flow (T0→T1→T2→T3)
- Rename conditional branching to "self-determination of destiny"
- Remove quantum superposition section for practical balance
- Add comprehensive implementation guidelines
- Conclude with Heraclitean philosophy connecting to Be Framework essence

Both Japanese and English versions updated with philosophical depth while
maintaining practical utility as framework documentation.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Sep 12, 2025 •

Copy link
Copy Markdown
Contributor

Walkthrough

Refactors manual navigation templates to use filtered site pages, adds client-side locale switching for the homepage “Learn more” link, and updates multiple English/Japanese manual chapters with new epigraphs, reorganized sections, and expanded examples, including significant rewrites to Final Objects and Metamorphosis content.

Changes

Cohort / File(s) Summary
Manual nav via filtered site pages
_includes/manuals/1.0/en/contents.html, _includes/manuals/1.0/ja/contents.html
Replaces get_sidebar_pages with Liquid-filtered site.pages by category/layout, sorted by path; excludes index/convention/opposite-locale; checks title; keeps active-state logic.
Homepage locale-aware link
index.html
Adds intl class and a DOMContentLoaded script to rewrite /en/ hrefs to /ja/ when navigator.language starts with "ja".
EN manuals: epigraphs and section headers
manuals/1.0/en/01-overview.md, .../en/02-input-classes.md, .../en/03-being-classes.md, .../en/12-from-doing-to-being-final.md
Adds/updates titles, epigraph quotes, and introductory headers; content otherwise preserved or lightly adjusted.
EN manuals: Final Objects rewrite
manuals/1.0/en/04-final-objects.md
Expands narrative; introduces intrinsic self-evidence with example properties `public readonly BeenProcessed
EN manuals: Metamorphosis rewrite
manuals/1.0/en/05-metamorphosis-patterns.md
Major restructure: new framing around time-domain, added/removed sections, updated examples, renamed sections, revised guidance; no runtime code changes (docs only).
JA manuals: epigraphs and section headers
manuals/1.0/ja/01-overview.md, .../ja/02-input-classes.md, .../ja/03-being-classes.md, .../ja/12-from-doing-to-being-final.md
Adds/updates epigraphs, headers, and narrative; preserves core examples.
JA manuals: Final Objects rewrite
manuals/1.0/ja/04-final-objects.md
Adds self-proof properties in examples: public readonly BeenProcessed $been and public readonly BeenRejected $been; union-type container example; expanded temporal narrative.
JA manuals: Metamorphosis rewrite
manuals/1.0/ja/05-metamorphosis-patterns.md
Heavy rewrite with class renames and API shape changes in examples, time-labeled steps, nested transformations, Unix-pipe analogy, and redesigned guidance.

Sequence Diagram(s)

sequenceDiagram
  autonumber
  actor User
  participant Browser
  participant IndexPage as index.html
  participant Script as Intl Script

  User->>Browser: Open /
  Browser->>IndexPage: Load HTML
  IndexPage-->>Script: DOMContentLoaded
  Script->>Script: Find links with .intl
  alt navigator.language startsWith("ja")
    Script->>IndexPage: Rewrite href /en/... -> /ja/...
  else Non-ja locale
    Script-->>IndexPage: No change
  end
  User->>Browser: Click "Learn more"
  Browser->>Browser: Navigate to localized manual
Loading
sequenceDiagram
  autonumber
  participant Jekyll as Jekyll Build
  participant Liquid as Contents Template
  participant Pages as site.pages
  participant Output as HTML Nav

  Jekyll->>Liquid: Render contents.html (en/ja)
  Liquid->>Pages: Collect pages by category=Manual & layout=docs-(en|ja)
  Liquid->>Liquid: sort: "path"
  loop For each item
    alt Path/title guards pass
      Liquid->>Output: Append nav item (permalink|url), active-state check
    else Excluded (/index.md, /convention/, other locale, missing title)
      Liquid-->>Output: Skip
    end
  end
Loading

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~25 minutes

Possibly related PRs

Pre-merge checks (3 passed)

✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title Check ✅ Passed The title clearly and directly describes the main change: restructuring Chapter 5 from a patterns-oriented chapter toward a "Metamorphosis" philosophical framing; it names the chapter and the conceptual shift so a reviewer scanning history understands the primary intent.
Docstring Coverage ✅ Passed No functions found in the changes. Docstring coverage check skipped.

Poem

A nibble of links, a hop through time,
I tweak the trails for locales to rhyme.
Pages sort neatly, carrots aligned,
Final forms prove what they’ve enshrined.
Metamorph paths flow T0 to T3—
Thump! says the rabbit, “Ship it, wee!” 🥕✨

✨ Finishing touches
🧪 Generate unit tests
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch chapter5-metamorphosis

Comment @coderabbitai help to get the list of available commands and usage tips.

@claude

claude Bot commented Sep 12, 2025

Copy link
Copy Markdown

Code Review: Restructure Chapter 5: From Patterns to Metamorphosis Philosophy

Overall Assessment ⭐⭐⭐⭐☆

This is a thoughtful transformation of Chapter 5 that elevates the documentation from a simple pattern catalog to a philosophical cornerstone while maintaining practical utility. The integration of temporal programming philosophy with Einstein's space-time concepts is intellectually compelling and serves the framework's ontological vision well.

Strengths 💪

1. Philosophical Coherence

  • Excellent integration of Einstein's 1916 general relativity quote to establish the time-domain inseparability concept
  • The Heraclitean "flowing is the river" metaphor effectively connects to the Be Framework's essence
  • Temporal progression (T0→T1→T2→T3) provides clear conceptual structure

2. Improved Content Structure

  • Title change from "Metamorphosis Patterns" to "Metamorphosis" better reflects the philosophical approach
  • "Self-Determination of Destiny" is more evocative than simple conditional branching
  • Implementation guidelines provide practical decision criteria

3. Technical Quality

  • PHP code examples are syntactically correct and follow framework conventions
  • Type annotations (#[Be()], #[Input], #[Inject]) are used consistently
  • Navigation template improvements correctly filter pages by language and category

Areas for Improvement 🔧

1. Navigation Template Issues

{% assign manual_pages = site.pages | where: "category", "Manual" | where: "layout", "docs-en" | sort: "path" %}

Issue: The navigation logic has become more complex but may not maintain the intended chapter order.
Recommendation: Consider using a weight or order frontmatter property instead of sorting by path to ensure chapters appear in logical sequence.

2. JavaScript Implementation Concerns

window.addEventListener('DOMContentLoaded', (event) => {
    const links = document.getElementsByClassName('intl');
    const locale = window.navigator.language;
    if (locale.startsWith('ja')) {
        for(let i = 0; i < links.length; i++) {
            links[i].setAttribute('href', links[i].getAttribute('href').replace('/en/', '/ja/'));
        }
    }
});

Issues:

  • Using getElementsByClassName() returns a live HTMLCollection that could change during iteration
  • Language detection is basic and doesn't handle edge cases
  • No fallback for unsupported locales

Recommendations:

window.addEventListener('DOMContentLoaded', () => {
    const links = Array.from(document.getElementsByClassName('intl'));
    const locale = navigator.language || 'en';
    
    if (locale.startsWith('ja')) {
        links.forEach(link => {
            const currentHref = link.getAttribute('href');
            if (currentHref && currentHref.includes('/en/')) {
                link.setAttribute('href', currentHref.replace('/en/', '/ja/'));
            }
        });
    }
});

3. Missing File Endings

The navigation template files end without newlines, which can cause issues in some environments:

</nav>

Should be:

</nav>

4. Permalink Consistency

The permalink changed from 05-metamorphosis-patterns.html to 05-metamorphosis.html, which could break existing links. Consider:

  • Adding a redirect from the old URL
  • Updating any internal references to the old permalink

Security Considerations 🔒

1. Client-Side Language Detection

The JavaScript language switching relies on client-side navigator.language, which can be spoofed. While not a security vulnerability in this context, consider:

  • Server-side language detection based on Accept-Language headers
  • Fallback mechanisms for edge cases

2. Content Injection

The Liquid templates properly escape content with {{ item.title | escape }}, which is good practice.

Performance Considerations ⚡

1. Jekyll Build Performance

The navigation template changes from using a custom filter (get_sidebar_pages) to Jekyll's built-in filters. This should improve build performance as built-in filters are more optimized.

2. Client-Side Performance

The DOM manipulation is minimal and runs only on DOMContentLoaded, so performance impact is negligible.

Test Coverage Recommendations 🧪

Since this is Jekyll documentation, consider testing:

  1. Build Tests:
bundle exec jekyll build --strict_front_matter --trace
  1. Link Validation:
# Test that all internal links resolve correctly
find _site -name "*.html" -exec grep -l "href.*\.html" {} \;
  1. Multi-language Navigation:
  • Verify navigation shows correct pages for each language
  • Test language switching functionality
  • Ensure philosophical quotes render correctly

Minor Issues 📝

1. Inconsistent Quote Attribution Format

Some quotes use em-dashes (—), others use regular dashes. Consider standardizing on em-dashes for better typography.

2. Code Comment Consistency

Comments mix styles:

// Immanent nature (preferred)
// Immanent from validation (older style)

Recommendations Summary 📋

High Priority

  1. Fix navigation template to preserve chapter ordering
  2. Improve JavaScript language detection logic
  3. Add newlines at end of template files

Medium Priority

  1. Consider redirect strategy for permalink changes
  2. Standardize quote attribution formatting
  3. Add build validation tests

Low Priority

  1. Consider server-side language detection
  2. Normalize code comment styles

Conclusion 🎯

This PR successfully transforms Chapter 5 into a philosophical cornerstone while maintaining practical utility. The integration of temporal programming concepts with Einstein's relativity theory provides a compelling conceptual foundation for the Be Framework's ontological approach.

The technical implementation is sound with minor improvements needed in navigation logic and JavaScript robustness. The bilingual content updates demonstrate careful attention to maintaining consistency across languages.

Recommendation: Approve with minor revisions to address the navigation ordering and JavaScript issues.


Generated with Claude Code

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
manuals/1.0/en/01-overview.md (1)

85-85: Fix cross-link to follow .html permalink guideline.
Replace Jekyll {% link ...md %} with an .html permalink.

-Let's start with the foundation: [Input Classes →]({% link manuals/1.0/en/02-input-classes.md %})
+Let's start with the foundation: [Input Classes →]({{ '/manuals/1.0/en/02-input-classes.html' | relative_url }})
🧹 Nitpick comments (22)
index.html (1)

14-27: Make locale link rewriting baseurl-safe and less brittle.
Avoid string replace; emit both URLs via Liquid and select via JS.

-    <a class="intl btn btn-primary" href="/manuals/1.0/en/index.html">
+    <a class="intl btn btn-primary"
+       href="{{ '/manuals/1.0/en/index.html' | relative_url }}"
+       data-ja-href="{{ '/manuals/1.0/ja/index.html' | relative_url }}">
         Learn more &raquo;
     </a>
     <script>
-        window.addEventListener('DOMContentLoaded', (event) => {
-            const links = document.getElementsByClassName('intl');
-            const locale = window.navigator.language;
-            if (locale.startsWith('ja')) {
-                for(let i = 0; i < links.length; i++) {
-                    links[i].setAttribute('href', links[i].getAttribute('href').replace('/en/', '/ja/'));
-                }
-            }
-        });
+        window.addEventListener('DOMContentLoaded', () => {
+            const links = document.getElementsByClassName('intl');
+            const locale = navigator.language || '';
+            if (locale.startsWith('ja')) {
+                for (let i = 0; i < links.length; i++) {
+                    const jaHref = links[i].dataset.jaHref;
+                    if (jaHref) links[i].setAttribute('href', jaHref);
+                }
+            }
+        });
     </script>
manuals/1.0/en/04-final-objects.md (6)

26-36: “No external testing” is overreaching—rephrase.

Intrinsic self-evidence can reduce external verification, but it does not eliminate tests. Suggest softening the claim.

-Here's an intriguing question: What if objects had such completeness that they needed no external testing?
+Here's an intriguing question: What if objects had such completeness that they could carry much of their own verification, reducing reliance on external tests?

39-72: Examples use PHP 8.1+ features—call out minimum PHP.

Readonly properties, union types, and named arguments require PHP 8.1+. Add a version note to prevent confusion.

 ## Examples
+> Requires PHP 8.1+ (readonly properties, union types, named arguments).

47-69: Avoid PII in self-evidence.

actor: $card->getHolderName() may expose personal data; storing payment method details can be sensitive. Prefer anonymized/pseudonymous evidence.

-    $this->been = new BeenProcessed(
-        actor: $card->getHolderName(),
+    $this->been = new BeenProcessed(
+        actor: $card->getMaskedHolder(), // e.g., initials or hash
         timestamp: $this->timestamp,
         evidence: [
-            'total' => $total->getAmount(),
-            'payment_method' => $card->getType(),
+            'total' => $total->getAmount(),
+            'payment_method' => $card->getNetwork(), // e.g., VISA/MC only
             'confirmation' => $this->confirmationCode
         ]
     );

74-75: Reiterate tempered testing claim.

Suggest aligning this sentence with the softened stance above.

-This object requires no external testing.
+This object can be validated largely through its own embedded evidence.

121-137: Cross-reference container class.

“From OrderValidation's being property” references a type not defined in this page. Consider adding a brief snippet or link to its definition.


149-156: Tighten closing phrasing.

Minor style tweak to avoid repetition and tighten flow.

-Final Objects express the state of entelecheia (complete realization). They are fully realized beings that no longer need transformation.
+Final Objects express entelecheia—complete realization. They no longer require transformation.
manuals/1.0/ja/04-final-objects.md (4)

29-39: 「テストが不要」は強すぎます。

外部テストの削減までは主張できますが、完全不要は誤解を招きます。表現の緩和を検討ください。

-テストが不要になるほどの完全性
+外部テストへの依存を減らせるほどの自己証明

42-75: PHP 8.1+ 明記。

readonly/union/named arguments を使用しているため対応バージョンを注記してください。

 ## 例
+> 動作要件: PHP 8.1+(readonlyプロパティ・ユニオン型・名前付き引数)

63-72: 個人情報の扱いに配慮。

actor: $card->getHolderName() は個人名を残す可能性。決済手段も最小化(ネットワーク名等)を推奨。

-    $this->been = new BeenProcessed(
-        actor: $card->getHolderName(),
+    $this->been = new BeenProcessed(
+        actor: $card->getMaskedHolder(), // 例: イニシャルやハッシュ
         timestamp: $this->timestamp,
         evidence: [
             'total' => $total->getAmount(),
-            'payment_method' => $card->getType(),
+            'payment_method' => $card->getNetwork(),
             'confirmation' => $this->confirmationCode
         ]
     );

77-78: 表現の整合。

「外部テストを必要としません」→「自己証明により外部検証の多くを代替できます」などへ調整を検討。

manuals/1.0/en/05-metamorphosis-patterns.md (5)

3-6: Permalink changed—preserve old links.

Add a redirect from the previous URL to avoid breaking inbound links.

 ---
 layout: docs-en
 title: "5. Metamorphosis"
 category: Manual
 permalink: /manuals/1.0/en/05-metamorphosis.html
+redirect_from:
+  - /manuals/1.0/en/05-metamorphosis-patterns.html
 ---

52-58: Terminology consistency.

Earlier you switch to “Intrinsic nature / External environment.” Ensure the same terminology is used across all examples for coherence.


78-80: Mixed terms (“Immanent/Transcendent”).

This block reverts to the old terms. Align with “Intrinsic nature / External environment” or define both as synonyms upfront.

-        #[Input] Order $order,                    // Immanent
-        #[Inject] Becoming $becoming              // Transcendent
+        #[Input] Order $order,                    // Intrinsic nature
+        #[Inject] Becoming $becoming              // External environment

90-108: “No controllers, no orchestrators” is absolute.

Suggest softening to “minimal orchestration” to avoid implying anti-patterns for cross-cutting concerns.

-// No controllers, no orchestrators—just natural flow
+// Minimal orchestration—favor natural flow

194-196: Mark Heraclitus phrasing as a paraphrase or add a citation.
Annotate with "as paraphrased" or add a footnote citing Heraclitus (DK B12 or a standard translation such as Kahn/Robinson); acceptable short paraphrase: "You cannot step into the same river twice." Location: manuals/1.0/en/05-metamorphosis-patterns.md lines 194–196

manuals/1.0/ja/05-metamorphosis-patterns.md (5)

3-6: 旧パーマリンクからのリダイレクト追加を推奨。

既存リンク保全のため redirect_from を追加してください。

 ---
 layout: docs-ja
 title: "5. メタモルフォーシス"
 category: Manual
 permalink: /manuals/1.0/ja/05-metamorphosis.html
+redirect_from:
+  - /manuals/1.0/ja/05-metamorphosis-patterns.html
 ---

52-58: 用語の統一。

「内在的性質 / 外部環境」で統一するか、イマナンス/トランセンデンスの対応関係を最初に明示してください。


70-83: コメントの語彙を統一。

このブロックは「内在的/超越的」を使用。前節に合わせて統一を。

-        #[Input] Order $order,                    // 内在的
-        #[Inject] Becoming $becoming              // 超越的
+        #[Input] Order $order,                    // 内在的性質
+        #[Inject] Becoming $becoming              // 外部環境

89-107: UNIX/Unix 表記を統一。

本文全体で “UNIX” に揃えると読みやすいです。

-### Unixパイプとの比較
+### UNIXパイプとの比較
-# Unix: テキストが流れる外部制御のパイプライン
+# UNIX: テキストが流れる外部制御のパイプライン

111-119: 断定表現の緩和。

「コントローラーもオーケストレーターもなし」は誤解を招きます。最小化の方向で表現を調整。

-// コントローラーもオーケストレーターもなし—ただ自然な流れ
+// オーケストレーションを最小化し、自然な流れを重視
_includes/manuals/1.0/ja/contents.html (1)

19-31: Ordering and filtering diverge from plugin behavior.

  • Sorting by path may not match numeric chapter ordering if filenames change; plugin sorts by numeric prefix.
  • This loop ignores sidebar: false exclusions respected by get_sidebar_pages.

Consider delegating to the plugin or mirroring its logic in Liquid.

-{% assign manual_pages = site.pages | where: "category", "Manual" | where: "layout", "docs-ja" | sort: "path" %}
-{% for item in manual_pages %}
-{% unless item.path contains "/index.md" or item.path contains "/convention/" or item.path contains "/en/" %}
-{% if item.path contains "/ja/" and item.title %}
+{%- comment -%} Prefer plugin-provided curated list if available {%- endcomment -%}
+{%- assign manual_pages = site.pages | where: "category", "Manual" | where: "layout", "docs-ja" | sort: "path" -%}
+{%- for item in manual_pages -%}
+{%- unless item.path contains "/index.md" or item.path contains "/convention/" or item.path contains "/en/" -%}
+{%- if item.path contains "/ja/" and item.title and item.sidebar != false -%}

Additionally, if you keep Liquid-only sorting, ensure filenames remain zero-padded (01-, 02-, …, 12-) to preserve order.

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between fcef710 and 2e68a71.

📒 Files selected for processing (15)
  • _includes/manuals/1.0/en/contents.html (1 hunks)
  • _includes/manuals/1.0/ja/contents.html (1 hunks)
  • index.html (1 hunks)
  • manuals/1.0/en/01-overview.md (1 hunks)
  • manuals/1.0/en/02-input-classes.md (1 hunks)
  • manuals/1.0/en/03-being-classes.md (1 hunks)
  • manuals/1.0/en/04-final-objects.md (3 hunks)
  • manuals/1.0/en/05-metamorphosis-patterns.md (4 hunks)
  • manuals/1.0/en/12-from-doing-to-being-final.md (1 hunks)
  • manuals/1.0/ja/01-overview.md (1 hunks)
  • manuals/1.0/ja/02-input-classes.md (1 hunks)
  • manuals/1.0/ja/03-being-classes.md (1 hunks)
  • manuals/1.0/ja/04-final-objects.md (2 hunks)
  • manuals/1.0/ja/05-metamorphosis-patterns.md (2 hunks)
  • manuals/1.0/ja/12-from-doing-to-being-final.md (1 hunks)
🧰 Additional context used
📓 Path-based instructions (3)
index.@(md|html)

📄 CodeRabbit inference engine (CLAUDE.md)

The index page must use the special index layout

Files:

  • index.html
_includes/manuals/1.0/@(en|ja)/contents.html

📄 CodeRabbit inference engine (CLAUDE.md)

Update navigation contents when adding pages (edit _includes/manuals/1.0/[lang]/contents.html)

Files:

  • _includes/manuals/1.0/en/contents.html
  • _includes/manuals/1.0/ja/contents.html
manuals/1.0/@(en|ja)/**/*.md

📄 CodeRabbit inference engine (CLAUDE.md)

manuals/1.0/@(en|ja)/**/*.md: Place new manual pages as Markdown under manuals/1.0/en/ or manuals/1.0/ja/
Manual pages must include correct layout in frontmatter: docs-en for English, docs-ja for Japanese
Use .html permalinks for cross-links in content (avoid linking to .md)

Files:

  • manuals/1.0/en/02-input-classes.md
  • manuals/1.0/ja/01-overview.md
  • manuals/1.0/ja/02-input-classes.md
  • manuals/1.0/ja/03-being-classes.md
  • manuals/1.0/en/04-final-objects.md
  • manuals/1.0/en/05-metamorphosis-patterns.md
  • manuals/1.0/en/12-from-doing-to-being-final.md
  • manuals/1.0/en/03-being-classes.md
  • manuals/1.0/ja/12-from-doing-to-being-final.md
  • manuals/1.0/en/01-overview.md
  • manuals/1.0/ja/04-final-objects.md
  • manuals/1.0/ja/05-metamorphosis-patterns.md
🧠 Learnings (5)
📓 Common learnings
Learnt from: CR
PR: be-framework/be-framework.github.io#0
File: CLAUDE.md:0-0
Timestamp: 2025-09-12T01:10:59.396Z
Learning: Applies to _includes/manuals/1.0/@(en|ja)/contents.html : Update navigation contents when adding pages (edit _includes/manuals/1.0/[lang]/contents.html)
📚 Learning: 2025-09-12T01:10:59.396Z
Learnt from: CR
PR: be-framework/be-framework.github.io#0
File: CLAUDE.md:0-0
Timestamp: 2025-09-12T01:10:59.396Z
Learning: Applies to _includes/manuals/1.0/@(en|ja)/contents.html : Update navigation contents when adding pages (edit _includes/manuals/1.0/[lang]/contents.html)

Applied to files:

  • index.html
  • _includes/manuals/1.0/en/contents.html
  • _includes/manuals/1.0/ja/contents.html
📚 Learning: 2025-09-12T01:10:59.396Z
Learnt from: CR
PR: be-framework/be-framework.github.io#0
File: CLAUDE.md:0-0
Timestamp: 2025-09-12T01:10:59.396Z
Learning: Applies to manuals/1.0/@(en|ja)/**/*.md : Use .html permalinks for cross-links in content (avoid linking to .md)

Applied to files:

  • index.html
  • _includes/manuals/1.0/en/contents.html
  • _includes/manuals/1.0/ja/contents.html
📚 Learning: 2025-09-12T01:10:59.396Z
Learnt from: CR
PR: be-framework/be-framework.github.io#0
File: CLAUDE.md:0-0
Timestamp: 2025-09-12T01:10:59.396Z
Learning: Applies to manuals/1.0/@(en|ja)/**/*.md : Manual pages must include correct layout in frontmatter: docs-en for English, docs-ja for Japanese

Applied to files:

  • _includes/manuals/1.0/en/contents.html
  • _includes/manuals/1.0/ja/contents.html
📚 Learning: 2025-09-12T01:10:59.396Z
Learnt from: CR
PR: be-framework/be-framework.github.io#0
File: CLAUDE.md:0-0
Timestamp: 2025-09-12T01:10:59.396Z
Learning: Applies to manuals/1.0/@(en|ja)/**/*.md : Place new manual pages as Markdown under manuals/1.0/en/ or manuals/1.0/ja/

Applied to files:

  • _includes/manuals/1.0/ja/contents.html
🧬 Code graph analysis (2)
_includes/manuals/1.0/en/contents.html (1)
_plugins/sidebar_data.rb (3)
  • get_sidebar_pages (3-51)
  • get_sidebar_pages (2-52)
  • get_sidebar_pages (1-53)
_includes/manuals/1.0/ja/contents.html (1)
_plugins/sidebar_data.rb (3)
  • get_sidebar_pages (1-53)
  • get_sidebar_pages (3-51)
  • get_sidebar_pages (2-52)
🔇 Additional comments (17)
manuals/1.0/ja/01-overview.md (1)

8-12: LGTM: heading and epigraph fit, frontmatter/permalink correct.
No issues; links use .html and relative_url as per guidelines.

manuals/1.0/ja/03-being-classes.md (1)

10-15: LGTM: epigraph and new section integrate cleanly.
Frontmatter, code blocks, and terminology are consistent.

manuals/1.0/en/03-being-classes.md (1)

10-15: LGTM: epigraph + “Immanence Meets Transcendence” section read well and mirror JA.

manuals/1.0/en/01-overview.md (1)

8-12: LGTM: title simplification and Proust epigraph.

manuals/1.0/en/12-from-doing-to-being-final.md (1)

10-15: LGTM: Heraclitus epigraph and new section header support the chapter’s reframing.

manuals/1.0/en/02-input-classes.md (1)

10-15: LGTM: epigraph and “The Beginning” section clarify the role of Input Classes.
End-of-page link correctly uses .html + relative_url.

_includes/manuals/1.0/en/contents.html (1)

19-31: Preserve sidebar: false exclusions; mirror to JA include

Add a guard to skip pages with sidebar: false so intentionally hidden pages aren't listed; shell check shows the JA include assigns manual_pages but lacks this filter — apply the same change to both EN and JA includes.

-            {% if item.path contains "/en/" and item.title %}
+            {% if item.sidebar != false and item.path contains "/en/" and item.title %}

Files: _includes/manuals/1.0/en/contents.html and _includes/manuals/1.0/ja/contents.html.

manuals/1.0/en/04-final-objects.md (2)

94-104: Clarify $errors shape.

implode(', ', $errors) implies a list of messages, while array_keys($errors) implies an associative array. Pick one representation and reflect it consistently.

Would you like to standardize $errors as array<string> and derive error_types differently, or make it array<string, string> and use implode(', ', array_values($errors))?


10-13: Quote attribution — add authoritative citation.
Confirm this is Zhuangzi, Qiushui (Autumn Floods), ch. 17 (Chinese: 子非魚,安知魚之樂?) and add a footnote/source link to an authoritative English translation (recommended: A. C. Graham, Chuang‑tzu: The Inner Chapters; Burton Watson, Chuang Tzu).

manuals/1.0/ja/04-final-objects.md (2)

97-106: $errors の構造を明確化。

本文では implode(', ', $errors)(リスト)と array_keys($errors)(連想配列)が混在。どちらかに統一してください。


10-13: 出典を明記してください — 荘子『秋水』第十七章(「知魚楽」)を脚注に追加し、日本語訳/英語訳の出典を併記すること。

ファイル: manuals/1.0/ja/04-final-objects.md 行10–13

  • 脚注に原典表記(荘子/莊子,外篇『秋水』第十七章「知魚楽」)を追加。
  • 参考日本語訳例:新釈漢文大系8(遠藤哲夫・市川安司,明治書院)や大学公開の書き下し・現代語訳(加藤徹等)を示す。英語版と語句が異なる場合は英語訳(訳者・版)も脚注で明示して整合を取る。
manuals/1.0/ja/12-from-doing-to-being-final.md (2)

14-16: 見出しの導入は良いです。

新設の「あなたが発見したもの」見出しで流れが明確になっています。


10-13: ヘラクレイトス引用の出典明記/「意訳」表記を追加

File: manuals/1.0/ja/12-from-doing-to-being-final.md (行10–13):現行の「存在するものは全て生成の途上にある」は逐語ではなく通俗的な意訳・総括表現です。原文例(例: πάντα ῥεῖ / πάντα χωρεῖ καὶ οὐδὲν μένει / 河のたとえ DK B12)と典拠(例: Plato『Cratylus』、Simplicius の注、Diels–Kranz の断片番号)を脚注で示すか、本文に「意訳」と明記してください。

manuals/1.0/en/05-metamorphosis-patterns.md (1)

10-13: Einstein quote — verify source and use an authoritative translation or cite as paraphrase.

The sentence is a paraphrase; cite the original: A. Einstein, Die Grundlage der allgemeinen Relativitätstheorie, Annalen der Physik (1916), or replace with a verbatim line from an authoritative English translation (e.g., collected translations / Lawson 1920) and include section/page. Either use an exact quoted translation + citation or mark the line explicitly as a paraphrase with a citation.

Location: manuals/1.0/en/05-metamorphosis-patterns.md lines 10–13

manuals/1.0/ja/02-input-classes.md (2)

76-76: .html パーマリンク準拠 OK。

03-being-classes.html へのリンクはガイドラインに準拠しています。


10-13: 出典(版・章/節/頁)を明記してください

File: manuals/1.0/ja/02-input-classes.md Lines: 10-13

現状は『存在と時間』(1927年)だけなので、該当節/頁と版情報を追記してください。参考出典例:

  • 原著(独語): Heidegger, Martin. Sein und Zeit. Halle: Max Niemeyer, 1927.
  • 英訳(代表): Heidegger, Martin. Being and Time. Trans. John Macquarrie & Edward Robinson. London: SCM Press, 1962.(代替訳: Joan Stambaugh, SUNY Press, 1996)
  • 訳語: "Geworfenheit" は一般に「被投性」または「投げ出された状態」と訳されます。本文の語に合わせ原語 (Geworfenheit) を併記してください。
_includes/manuals/1.0/ja/contents.html (1)

23-27: Prefer permalink but guard against missing.

Current fallback is good. Consider HTML-escaping item_link only in the text node (already done) and keep href unescaped—looks correct.

@koriym
koriym merged commit 35af6f5 into proofreading Sep 12, 2025
3 checks passed
@koriym
koriym deleted the chapter5-metamorphosis branch September 12, 2025 08:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant