887 Commits

Author SHA1 Message Date
Gu
62b0e7126f Merge branch 'main' into revamp 2025-11-26 03:57:43 -08:00
Gu
fc25be4a2b 1. add empty group structure back to dropdown in docs.json to collapse all groups, since mintlify's collapse directive does not work; 2. fix directory namings to keep them consistent with doc group namings. 2025-11-26 01:30:38 -08:00
Chenhe Gu
30b766ac5f Merge pull request #533 from langgenius/siqi/revamp-review
Siqi/revamp review
2025-11-26 13:26:03 +09:00
Gu
4bcdc147ac remove 'pages' layer semantically and structurally now that mintlify allows collapse / expand configuration 2025-11-25 20:23:57 -08:00
Gu
83f9eff4d2 batch update cn/jp url links 2025-11-25 20:15:37 -08:00
Riskey
53b755a2bc modify doc section titles 2025-11-24 17:16:10 +08:00
Riskey
ec0a7b53df fix links in cn/jp introduction, delete author information in some tutorials, add icons for cn/jp plugin docs 2025-11-24 14:11:15 +08:00
Riskey
63930151ba update node names in cn/jp quick start tutorial 2025-11-24 13:47:19 +08:00
Riskey
f62101057a fix trigger-related doc links 2025-11-22 11:38:59 +08:00
Riskey
4af2e22b5d update trigger-related content 2025-11-22 00:45:40 +08:00
Riskey
ca8bdd128e add manage model credential and configure load balancing 2025-11-22 00:23:33 +08:00
Riskey
5be66699ac add multilingual readme into plugin dev docs 2025-11-22 00:03:22 +08:00
Riskey
e667e5ae26 change doc type names 2025-11-21 23:53:03 +08:00
Riskey
aabd14e0b7 update the forum link in the introduction 2025-11-21 23:42:10 +08:00
Riskey
b11b1c4cae update images and node names 2025-11-21 23:38:46 +08:00
Riskey
414c4f1787 delete chatflow illustration 2025-11-21 23:35:29 +08:00
Riskey
c58f23bd40 add redirect url for triggers & start & user input 2025-11-21 23:34:04 +08:00
Gu
57f8f89eef fix answer node doc url link 2025-11-20 12:02:35 +08:00
Gu
f8474d3123 fix user input file icon 2025-11-20 11:23:50 +08:00
Gu
f4380c2d8c update docs.json dev section structure 2025-11-20 11:19:33 +08:00
Gu
40dc44873c incorporate plugin file changes 2025-11-20 11:05:25 +08:00
Gu
c0c12eb8a9 language changes (new files) 2025-11-20 05:37:56 +08:00
Gu
5c4f1546f9 partial language updates 2025-11-20 05:13:35 +08:00
Gu
a10fe14ae6 merge most recent updates (en changes) 2025-11-20 04:22:38 +08:00
Gu
0de36b955a add trigger restrictions 2025-11-17 18:13:58 +08:00
Gu
dc42adf999 revert previous test changes 2025-11-13 14:28:06 +08:00
Gu
a056f23340 test: rename v2 → v3 (final check 3/3)
Second rename to validate consistency across multiple successive renames.

Expected outcome:
 Physical files:
   - cn/validation-v2.mdx → cn/validation-v3.mdx
   - jp/validation-v2.mdx → jp/validation-v3.mdx

 docs.json entries updated (NOT deleted):
   - cn/.../validation-v2 → cn/.../validation-v3
   - jp/.../validation-v2 → jp/.../validation-v3

 No extensions in docs.json entries
 NO deletions of cn/jp entries

This final test confirms that all three fixes work consistently
across multiple successive renames, not just a single rename.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-13 14:14:29 +08:00
Gu
6ee719ce57 test: rename v1 → v2 (final check 2/3)
First rename to validate all three fixes work together.

Expected outcome:
 Physical files:
   - cn/validation-v1.mdx → cn/validation-v2.mdx
   - jp/validation-v1.mdx → jp/validation-v2.mdx

 docs.json entries updated (NOT deleted):
   - cn/.../validation-v1 → cn/.../validation-v2
   - jp/.../validation-v1 → jp/.../validation-v2

 No extensions in docs.json entries
 NO deletions of cn/jp entries

This validates:
1. Extension stripping for location lookup works
2. Conditional rename detection works
3. Extension stripping for new_target works

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-13 14:11:51 +08:00
Gu
2966e82e74 test: add validation-v1.mdx (final check 1/3)
Final comprehensive validation of all three rename fixes.

Validates:
- Fix #1: Extension stripping for location lookup (8bf899c6)
- Fix #2: Conditional rename detection (532e97cf)
- Fix #3: Extension stripping for new_target (b9489a0a)

Test plan:
1. Add validation-v1.mdx → wait for cn/jp translations
2. Rename v1 → v2 → verify complete rename behavior
3. Rename v2 → v3 → verify consistency

Expected: docs.json entries updated (not deleted), no extensions

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-13 14:08:31 +08:00
Gu
07deac1e84 test: rename beta → gamma (validation 3/3)
Second rename to validate consistency of all three fixes.

Expected with complete fix:
 Physical files renamed:
   - cn/rename-test-beta.mdx → cn/rename-test-gamma.mdx
   - jp/rename-test-beta.mdx → jp/rename-test-gamma.mdx

 docs.json entries updated (NOT deleted):
   - cn/.../rename-test-beta → cn/.../rename-test-gamma
   - jp/.../rename-test-beta → jp/.../rename-test-gamma

 No extensions in docs.json entries

This validates that the fix works consistently across multiple
successive renames, not just the first rename.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-13 11:47:58 +08:00
Gu
8b001d9488 test: rename alpha → beta (validation 2/3)
First rename to validate all three fixes work correctly.

Expected with complete fix:
 Physical files renamed:
   - cn/rename-test-alpha.mdx → cn/rename-test-beta.mdx
   - jp/rename-test-alpha.mdx → jp/rename-test-beta.mdx

 docs.json entries updated (NOT deleted):
   - cn/.../rename-test-alpha → cn/.../rename-test-beta
   - jp/.../rename-test-alpha → jp/.../rename-test-beta

 No extensions in docs.json entries

All three fixes should work together:
1. Location lookup finds the file (extension stripped)
2. Reconcile detects rename (conditional skip)
3. New entry has no extension (new_target stripped)

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-13 11:45:17 +08:00
Gu
ab9f2a1f22 test: add rename-test-alpha.mdx (complete validation 1/3)
Fresh test to validate all three rename fixes work together.

Three critical fixes being validated:
1. Extension stripping for location lookup (8bf899c6)
2. Conditional rename detection in reconcile (532e97cf)
3. Extension stripping for new_target (b9489a0a)

Test sequence:
- Step 1: Add this file → wait for cn/jp translations
- Step 2: Rename alpha → beta → verify correct rename behavior
- Step 3: Rename beta → gamma → verify consistency

Expected: All renames update docs.json entries correctly (not delete)

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-13 11:42:00 +08:00
Gu
c5e97bd857 test: rename step2 → step3 (validation 3/3)
Final rename to validate complete fix with all three fixes:
1. Extension stripping for location lookup
2. Conditional rename detection in reconcile
3. Extension stripping for new_target when adding to docs.json

Expected outcome:
- ✓ cn/test-final-step2.mdx → cn/test-final-step3.mdx
- ✓ jp/test-final-step2.mdx → jp/test-final-step3.mdx
- ✓ cn docs.json: "cn/.../test-final-step3" (no extension)
- ✓ jp docs.json: "jp/.../test-final-step3" (no extension)

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-13 11:34:48 +08:00
Gu
b9489a0a93 fix: strip extension from new_target when adding to docs.json
Bug: new_target includes file extension (.mdx), but docs.json entries
don't store extensions. This caused entries like:
  - cn/documentation/pages/nodes/test-final-step2.mdx (WRONG)

Instead of:
  - cn/documentation/pages/nodes/test-final-step2 (CORRECT)

Fixed by stripping extension before calling add_file_to_navigation.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-13 11:33:58 +08:00
Gu
3709bfe51d test: rename step1 → step2 (validation 2/3)
First rename to validate complete fix works correctly.

Expected outcome with fix:
- ✓ cn/test-final-step1.mdx → cn/test-final-step2.mdx
- ✓ jp/test-final-step1.mdx → jp/test-final-step2.mdx
- ✓ cn docs.json: entry updated (not deleted)
- ✓ jp docs.json: entry updated (not deleted)

This tests both fixes:
1. Extension stripping prevents location lookup failure
2. Conditional rename detection ensures reconcile handles R100 renames

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-13 11:31:33 +08:00
Gu
f3614a2a4d test: add test-final-step1.mdx (validation 1/3)
Fresh test to validate complete rename fix (PR#189 + extensions fix).

Tests both critical fixes:
1. Extension stripping in _handle_rename (commit 8bf899c6)
2. Conditional rename detection in reconcile (commit 532e97cf)

Next steps:
- Wait for auto-sync to create cn/jp translations
- Rename step1 → step2 (should update docs.json, not delete)
- Rename step2 → step3 (validates consistency)

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-13 11:28:17 +08:00
Gu
9cfff6c300 test: rename gamma → delta (final validation)
Tests complete fix with both:
1. Extension stripping for location lookup
2. Conditional rename detection in reconcile

Expected: cn/jp docs.json entries renamed (NOT deleted)

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-13 11:16:49 +08:00
Gu
532e97cfc9 fix: only skip rename detection when git detected renames
When files_to_sync is empty (e.g., R100 rename with no content changes),
detect_file_changes doesn't run, so renamed_files is empty.

Previously, reconcile ALWAYS skipped rename detection, so it treated
renames as separate delete+add operations.

Now, reconcile only skips rename detection if git actually found renames.
Otherwise, it uses heuristic-based detection to handle the rename properly.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-13 11:14:54 +08:00
Gu
6a8df1e672 test: rename beta → gamma (validates fix)
Tests that the extension-strip fix works correctly.

Expected with fix:
- cn/docs.json: test-rename-beta → test-rename-gamma ✓
- jp/docs.json: test-rename-beta → test-rename-gamma ✓
- Physical files renamed ✓
- NO deletion of cn/jp entries ✓

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-13 11:08:54 +08:00
Gu
8bf899c6e1 fix: strip file extension when looking up location in _handle_rename
The bug: _handle_rename was looking up file location using paths WITH extensions (e.g., 'en/.../file.mdx'), but docs.json entries don't include extensions.

This caused location lookup to fail, skipping the docs.json update step entirely.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-13 11:07:14 +08:00
Gu
f5fac82c8e test: rename alpha → beta (step 2/2)
Tests rename fix from PR#189.
This commit renames the test file to validate that:
1. Physical files (cn/jp) get renamed ✓
2. docs.json entries (cn/jp) get updated ✓ (NOT deleted)

Expected with fix:
- cn/docs.json: test-rename-alpha → test-rename-beta
- jp/docs.json: test-rename-alpha → test-rename-beta
- Physical files renamed
- NO deletion of cn/jp entries

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-13 11:02:00 +08:00
Gu
889cb07f32 test: add test-rename-alpha.mdx (step 1/2)
Validates rename fix from PR#189.
This is step 1: adding the initial file.
Next step will rename alpha → beta.

Expected workflow:
1. This commit: Create en/test-rename-alpha.mdx + docs.json entry
2. Auto-sync: Translate to cn/jp + add docs.json entries
3. Next commit: Rename en/alpha → en/beta in docs.json
4. Auto-sync: Should update BOTH physical files AND docs.json for cn/jp

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-13 10:56:02 +08:00
Gu
eb85e87385 fix docs.json sync for file renames 2025-11-13 10:45:39 +08:00
Gu
629a70a134 fix: add delete handling to reconcile_docs_json_structural_changes
The reconcile function was detecting deleted files from structural
changes but not processing them. This caused orphaned files in cn/jp
when English files were deleted.

Changes:
- Added delete loop after rename handling
- Removes deleted files from docs.json navigation
- Deletes physical files from cn/jp directories
- Properly handles file extensions (.md, .mdx)

Fixes the issue where renamed files (with content changes) were
treated as delete+add but the delete was never processed.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-13 09:50:44 +08:00
Gu
2b96013a13 fix rename detection 2025-11-12 20:46:25 +08:00
Gu
89be9773a9 fix: preserve file position when moving files in surgical reconciliation
Move operations were incorrectly placing files at the end of target groups
instead of at the specified index position from the English section.

Root cause:
- extract_file_locations() captured page position (idx) but didn't store it
- add_file_to_navigation() used append() instead of insert()

Fix:
- Add "page_index" field to location dict to capture position
- Use insert(page_index, file_path) to preserve ordering from source

This ensures cn/jp files are placed at the exact same position as their
English counterparts when moved between groups.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-12 05:27:45 +08:00
Gu
d87ba0a4fc fix: prevent duplicate commits in execute workflow
Problem:
Both execute and update workflows were triggering for the same commit
when a translation PR already existed, causing duplicate auto-sync
commits (e.g., commit 2ddf04bc in PR #167 created two identical commits
in PR #168).

Root Cause:
- Execute workflow (sync_docs_execute.yml) - handles initial PR creation
- Update workflow (sync_docs_update.yml) - handles incremental updates
- Both listen for "Analyze Documentation Changes" workflow completion
- No coordination to prevent both from running when translation PR exists

Solution:
Execute workflow now skips all translation steps if translation branch
already exists, letting the update workflow handle incremental changes.
This ensures only one workflow processes each commit.

Changes:
- Added "Skip if translation PR already exists" step after branch check
- Updated all subsequent steps to check branch_exists != 'true'
- Steps affected: Python setup, dependencies, approval check, translation,
  and PR comments

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-12 05:00:15 +08:00
Chenhe Gu
56681d77c3 fix bugs (#159)
* fix source file path resolution

* fix
2025-11-11 06:17:45 +09:00
Chenhe Gu
5d8f802afc fix source file path resolution (#152) 2025-11-11 04:51:04 +09:00
Chenhe Gu
b955977b63 fix: handle add-then-delete scenario in sync plan generation (#149)
Previously, if a file was added in one commit and deleted in another
within the same PR, it could still appear in the sync plan because
git diff --diff-filter=AM would show it as added when comparing
base to an intermediate commit.

Now we verify that each file actually exists at head_sha before
including it in files_to_sync. This prevents sync PRs from containing
files that were ultimately deleted.

Fixes issue discovered in Test 7 where temp-test-doc.mdx was added
then deleted but still appeared in the sync PR.
2025-11-10 05:09:13 +09:00