@localheroai/cli 0.0.74 → 0.0.75-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/dist/api/pull-request-imports.js +9 -1
  2. package/dist/api/pull-request-imports.js.map +1 -1
  3. package/dist/api/source-alignments.js +46 -0
  4. package/dist/api/source-alignments.js.map +1 -0
  5. package/dist/commands/check.js +1 -4
  6. package/dist/commands/check.js.map +1 -1
  7. package/dist/commands/ci.js +4 -1
  8. package/dist/commands/ci.js.map +1 -1
  9. package/dist/commands/init.js +11 -3
  10. package/dist/commands/init.js.map +1 -1
  11. package/dist/commands/translate.js +127 -39
  12. package/dist/commands/translate.js.map +1 -1
  13. package/dist/utils/aligned-import.js +105 -0
  14. package/dist/utils/aligned-import.js.map +1 -0
  15. package/dist/utils/aligned-values-on-disk.js +39 -0
  16. package/dist/utils/aligned-values-on-disk.js.map +1 -0
  17. package/dist/utils/alignment-candidates.js +75 -0
  18. package/dist/utils/alignment-candidates.js.map +1 -0
  19. package/dist/utils/ci-context.js +3 -0
  20. package/dist/utils/ci-context.js.map +1 -1
  21. package/dist/utils/git-changes.js +32 -5
  22. package/dist/utils/git-changes.js.map +1 -1
  23. package/dist/utils/git.js +21 -0
  24. package/dist/utils/git.js.map +1 -1
  25. package/dist/utils/github-graphql.js +31 -14
  26. package/dist/utils/github-graphql.js.map +1 -1
  27. package/dist/utils/github.js +220 -50
  28. package/dist/utils/github.js.map +1 -1
  29. package/dist/utils/project-detection.js +75 -3
  30. package/dist/utils/project-detection.js.map +1 -1
  31. package/dist/utils/source-alignment.js +166 -0
  32. package/dist/utils/source-alignment.js.map +1 -0
  33. package/dist/utils/target-changes.js +12 -7
  34. package/dist/utils/target-changes.js.map +1 -1
  35. package/dist/utils/unreadable-files.js +24 -0
  36. package/dist/utils/unreadable-files.js.map +1 -0
  37. package/package.json +1 -1
@@ -3,7 +3,22 @@ import { promises as fs, existsSync } from 'fs';
3
3
  import path from 'path';
4
4
  import { fetchGitHubInstallationToken } from '../api/github.js';
5
5
  import { configService, PROJECT_CONFIG_FILE } from './config.js';
6
- import { createSignedCommit, fetchBranchHead, StaleHeadError } from './github-graphql.js';
6
+ import { createSignedCommit, fetchBranchHead, fetchChangedPaths, StaleHeadError } from './github-graphql.js';
7
+ export const MISSING_TOKEN_ERROR = 'GITHUB_TOKEN is not set';
8
+ export const MISSING_BRANCH_ERROR = 'Could not determine branch name from GITHUB_HEAD_REF';
9
+ // Only an overlapping push is sure to start a new run: it touched locale files,
10
+ // which every generated `paths:` filter matches.
11
+ const TRANSLATE_SKIP_NOTICES = {
12
+ 'skipped-overlap': 'Branch changed during the run and touched these translation files; skipping commit. The new push triggers a fresh run.',
13
+ 'skipped-uncertain': 'Branch changed during the run; skipping commit to avoid overwriting newer work. Re-run the workflow to commit the translations.'
14
+ };
15
+ // A push never re-runs a sync, whatever it touched.
16
+ const SYNC_SKIP_NOTICES = {
17
+ 'skipped-overlap': 'Branch changed during the sync and touched these translation files; skipping commit. Sync again from Localhero to commit the translations.',
18
+ 'skipped-uncertain': 'Branch changed during the sync; skipping commit to avoid overwriting newer work. Sync again from Localhero to commit the translations.'
19
+ };
20
+ // A tip that keeps moving is a busy branch; stop chasing it and let a later run commit.
21
+ const MAX_COMMITS_ON_NEWER_TIP = 2;
7
22
  const defaultDependencies = {
8
23
  exec: (cmd, options) => execSync(cmd, options),
9
24
  fs: { ...fs, existsSync },
@@ -13,7 +28,8 @@ const defaultDependencies = {
13
28
  fetchGitHubInstallationToken,
14
29
  configService,
15
30
  createSignedCommit,
16
- fetchBranchHead
31
+ fetchBranchHead,
32
+ fetchChangedPaths
17
33
  };
18
34
  export const DJANGO_PYTHON_VERSION = '3.12';
19
35
  // Django expects locale names on disk (pt_BR), while config stores language codes
@@ -67,21 +83,22 @@ export const PHOENIX_OTP_VERSION = '28';
67
83
  // workflow has to extract them first. Without this a PR that only touches source
68
84
  // code runs green and translates nothing. Extraction is skipped on sync and dispatch
69
85
  // runs, where the Action writes reviewed translations back and extraction would
70
- // fight it.
86
+ // fight it, and on our own translation commits, which need none.
87
+ const EXTRACT_CONDITION = "github.event_name == 'pull_request' && github.actor != 'localhero-ai[bot]'";
71
88
  // actions/setup-python provides python and pip, nothing else, so a project using
72
89
  // uv, poetry or pipenv needs that tool installed before the install command runs.
73
90
  const PYTHON_TOOL_SETUP = {
74
91
  uv: ` - uses: astral-sh/setup-uv@v5
75
- if: github.event_name == 'pull_request'
92
+ if: ${EXTRACT_CONDITION}
76
93
 
77
94
  `,
78
95
  poetry: ` - name: Install poetry
79
- if: github.event_name == 'pull_request'
96
+ if: ${EXTRACT_CONDITION}
80
97
  run: pipx install poetry
81
98
 
82
99
  `,
83
100
  pipenv: ` - name: Install pipenv
84
- if: github.event_name == 'pull_request'
101
+ if: ${EXTRACT_CONDITION}
85
102
  run: pipx install pipenv
86
103
 
87
104
  `
@@ -92,12 +109,12 @@ function buildPythonToolSetup(pythonInstall) {
92
109
  }
93
110
  function buildDjangoExtractStep(locales, pythonInstall = PIP_INSTALL) {
94
111
  return ` - uses: actions/setup-python@v5
95
- if: github.event_name == 'pull_request'
112
+ if: ${EXTRACT_CONDITION}
96
113
  with:
97
114
  python-version: "${DJANGO_PYTHON_VERSION}"
98
115
 
99
116
  ${buildPythonToolSetup(pythonInstall)} - name: Extract messages
100
- if: github.event_name == 'pull_request'
117
+ if: ${EXTRACT_CONDITION}
101
118
  run: |
102
119
  sudo apt-get install -y -qq gettext
103
120
  ${pythonInstall}
@@ -116,13 +133,13 @@ function buildPhoenixExtractStep(workingDirectory) {
116
133
  ? `\n working-directory: ${workingDirectory}`
117
134
  : '';
118
135
  return ` - uses: erlef/setup-beam@v1
119
- if: github.event_name == 'pull_request'
136
+ if: ${EXTRACT_CONDITION}
120
137
  with:
121
138
  elixir-version: "${PHOENIX_ELIXIR_VERSION}"
122
139
  otp-version: "${PHOENIX_OTP_VERSION}"
123
140
 
124
141
  - name: Extract messages
125
- if: github.event_name == 'pull_request'${workingDirectoryLine}
142
+ if: ${EXTRACT_CONDITION}${workingDirectoryLine}
126
143
  run: |
127
144
  mix deps.get
128
145
  mix gettext.extract --merge
@@ -223,6 +240,7 @@ jobs:
223
240
  with:
224
241
  ref: \${{ github.event.client_payload.branch || github.head_ref || github.ref_name }}
225
242
  fetch-depth: 0
243
+ persist-credentials: false
226
244
 
227
245
  ${buildExtractStep(options)} - name: Translate
228
246
  uses: localheroai/localhero-action@v1
@@ -259,7 +277,7 @@ ${buildExtractStep(options)} - name: Translate
259
277
  getBranchName() {
260
278
  const branchName = this.deps.env.GITHUB_HEAD_REF;
261
279
  if (!branchName) {
262
- throw new Error('Could not determine branch name from GITHUB_HEAD_REF');
280
+ throw new Error(MISSING_BRANCH_ERROR);
263
281
  }
264
282
  return branchName;
265
283
  },
@@ -363,7 +381,7 @@ ${buildExtractStep(options)} - name: Translate
363
381
  const { token: appToken, errorCode } = await this.fetchActionToken();
364
382
  const finalToken = appToken || env.GITHUB_TOKEN;
365
383
  if (!finalToken) {
366
- throw new Error('GITHUB_TOKEN is not set');
384
+ throw new Error(MISSING_TOKEN_ERROR);
367
385
  }
368
386
  if (appToken) {
369
387
  log.log('✓ Using GitHub App token');
@@ -403,7 +421,7 @@ ${buildExtractStep(options)} - name: Translate
403
421
  async autoCommitSyncChanges(modifiedFiles, syncSummary, options) {
404
422
  const { exec, console: log } = this.deps;
405
423
  if (!this.isGitHubAction())
406
- return;
424
+ return 'no-changes';
407
425
  log.log('\nCommitting sync changes...');
408
426
  try {
409
427
  const branchName = options?.branchName || this.getBranchName();
@@ -417,11 +435,14 @@ ${buildExtractStep(options)} - name: Translate
417
435
  });
418
436
  if (result === 'no-changes') {
419
437
  log.log('No changes to commit - translations already up to date.');
438
+ return result;
420
439
  }
421
- else {
440
+ if (result === 'new') {
422
441
  log.log('✓ Signed commit created and pushed to GitHub\n');
442
+ return result;
423
443
  }
424
- return;
444
+ log.log(`::warning::${SYNC_SKIP_NOTICES[result]}`);
445
+ return 'skipped';
425
446
  }
426
447
  this.configureGitUser();
427
448
  for (const filePath of modifiedFiles) {
@@ -430,7 +451,7 @@ ${buildExtractStep(options)} - name: Translate
430
451
  exec(`git add ${PROJECT_CONFIG_FILE}`, { stdio: 'inherit' });
431
452
  if (!this.hasStagedChanges()) {
432
453
  log.log('No changes to commit - translations already up to date.');
433
- return;
454
+ return 'no-changes';
434
455
  }
435
456
  const canAmend = this.canAmendLastCommit(true);
436
457
  this.commit(commitMessage, canAmend);
@@ -442,6 +463,7 @@ ${buildExtractStep(options)} - name: Translate
442
463
  else {
443
464
  log.log('✓ New commit created and pushed to GitHub\n');
444
465
  }
466
+ return 'new';
445
467
  }
446
468
  catch (error) {
447
469
  const errorMessage = error instanceof Error ? error.message : String(error);
@@ -455,12 +477,20 @@ ${buildExtractStep(options)} - name: Translate
455
477
  */
456
478
  buildTranslateCommitMessage(translationSummary) {
457
479
  let commitMessage = 'Update translations';
480
+ const summaryLines = [];
458
481
  if (translationSummary && translationSummary.keysTranslated > 0) {
459
- const { keysTranslated, languages, viewUrl } = translationSummary;
460
- const languageList = languages.join(', ');
461
- commitMessage += `\n\n${keysTranslated} ${keysTranslated > 1 ? 'keys' : 'key'} in ${languageList}`;
462
- if (viewUrl) {
463
- commitMessage += `\n\n${viewUrl}`;
482
+ const { keysTranslated, languages } = translationSummary;
483
+ summaryLines.push(`${keysTranslated} ${keysTranslated > 1 ? 'keys' : 'key'} in ${languages.join(', ')}`);
484
+ }
485
+ const keysAligned = translationSummary?.keysAligned ?? 0;
486
+ if (keysAligned > 0) {
487
+ const alignedLanguages = (translationSummary?.alignedLanguages ?? []).join(', ');
488
+ summaryLines.push(`Aligned ${keysAligned} ${keysAligned > 1 ? 'keys' : 'key'} in ${alignedLanguages} to reworded source texts`);
489
+ }
490
+ if (summaryLines.length > 0) {
491
+ commitMessage += `\n\n${summaryLines.join('\n')}`;
492
+ if (translationSummary?.viewUrl) {
493
+ commitMessage += `\n\n${translationSummary.viewUrl}`;
464
494
  }
465
495
  }
466
496
  const actor = this.deps.env.GITHUB_ACTOR;
@@ -472,7 +502,10 @@ ${buildExtractStep(options)} - name: Translate
472
502
  /**
473
503
  * Enumerate files in the working tree that differ from HEAD. Used by the
474
504
  * signed-commits path to know which files to send to the GraphQL API.
475
- * Returns repo-relative paths.
505
+ *
506
+ * Returns paths relative to the WORKING DIRECTORY, not the repository root:
507
+ * `git ls-files` prints them that way unless --full-name is passed. The
508
+ * commit API wants repository paths, which is readFilesAsAdditions's job.
476
509
  */
477
510
  listChangedFiles(filesPath) {
478
511
  const { exec } = this.deps;
@@ -494,7 +527,7 @@ ${buildExtractStep(options)} - name: Translate
494
527
  async autoCommitChanges(filesPath, translationSummary) {
495
528
  const { exec, console: log } = this.deps;
496
529
  if (!this.isGitHubAction())
497
- return;
530
+ return 'no-changes';
498
531
  log.log('Running in GitHub Actions. Committing changes...');
499
532
  try {
500
533
  const branchName = this.getBranchName();
@@ -508,22 +541,26 @@ ${buildExtractStep(options)} - name: Translate
508
541
  });
509
542
  if (result === 'no-changes') {
510
543
  log.log('No changes to commit.');
544
+ return result;
511
545
  }
512
- else {
546
+ if (result === 'new') {
513
547
  log.log('Signed commit pushed to GitHub.');
548
+ return result;
514
549
  }
515
- return;
550
+ log.log(`::warning::${TRANSLATE_SKIP_NOTICES[result]}`);
551
+ return 'skipped';
516
552
  }
517
553
  this.configureGitUser();
518
554
  exec(`git add ${filesPath}`, { stdio: 'inherit' });
519
555
  if (!this.hasStagedChanges()) {
520
556
  log.log('No changes to commit.');
521
- return;
557
+ return 'no-changes';
522
558
  }
523
559
  this.commit(commitMessage);
524
560
  const token = await this.getTokenForPush();
525
561
  await this.pushWithRetry(branchName, token);
526
562
  log.log('Changes committed and pushed successfully.');
563
+ return 'new';
527
564
  }
528
565
  catch (error) {
529
566
  const errorMessage = error instanceof Error ? error.message : String(error);
@@ -536,16 +573,21 @@ ${buildExtractStep(options)} - name: Translate
536
573
  * mutation. Produces signed commits attributed to the LocalHero App. Works
537
574
  * with repos that enforce `required_signatures` rulesets.
538
575
  *
539
- * The new commit is stacked on top of the current branch HEAD. The mutation
540
- * has no amend primitive — `expectedHeadOid` is a strict precondition, so
541
- * sync PRs end up with two commits (the bot's initial sync trigger commit
542
- * plus the CLI's translation commit), squashed at merge.
576
+ * The new commit is stacked on the checkout's HEAD, which is what the files
577
+ * were generated from. The mutation sends whole-file contents, so if the
578
+ * branch moved during the run and the newer commits changed any of our files,
579
+ * committing on the newer tip would revert them. GitHub rejects the stale
580
+ * `expectedHeadOid`; we then commit on the newer tip only when the newer
581
+ * commits left all of our files alone, and otherwise skip and let a later run
582
+ * redo the work. The mutation has no amend primitive, so sync PRs keep the
583
+ * bot's sync trigger commit as well.
543
584
  *
544
- * Returns 'no-changes' if all files match what's already on the branch,
545
- * otherwise 'new'.
585
+ * Returns 'no-changes' if there are no files to commit, 'skipped-overlap'
586
+ * if a newer commit touched our files, 'skipped-uncertain' if that couldn't
587
+ * be ruled out, otherwise 'new'.
546
588
  */
547
589
  async apiCommitAndPush(params) {
548
- const { console: log, env } = this.deps;
590
+ const { exec, env } = this.deps;
549
591
  const repository = env.GITHUB_REPOSITORY;
550
592
  if (!repository) {
551
593
  throw new Error('GITHUB_REPOSITORY is not set');
@@ -555,46 +597,174 @@ ${buildExtractStep(options)} - name: Translate
555
597
  return 'no-changes';
556
598
  }
557
599
  const token = await this.getTokenForPush();
558
- const maxRetries = 3;
559
- let lastError;
560
- for (let attempt = 1; attempt <= maxRetries; attempt++) {
600
+ const checkoutHead = exec('git rev-parse HEAD', { stdio: 'pipe' }).toString().trim();
601
+ await this.warnIfCheckoutIsNotPullRequestHead(checkoutHead);
602
+ let expectedHeadOid = checkoutHead;
603
+ for (let commitsOnNewerTip = 0;; commitsOnNewerTip++) {
561
604
  try {
562
- const head = await this.deps.fetchBranchHead(repository, params.branchName, token);
563
- const headlineAndBody = this.splitCommitMessage(params.message);
564
605
  await this.deps.createSignedCommit({
565
606
  repositoryNameWithOwner: repository,
566
607
  branchName: params.branchName,
567
- expectedHeadOid: head.sha,
568
- message: headlineAndBody,
608
+ expectedHeadOid,
609
+ message: this.splitCommitMessage(params.message),
569
610
  fileChanges: { additions },
570
611
  token
571
612
  });
572
613
  return 'new';
573
614
  }
574
615
  catch (error) {
575
- lastError = error;
576
- if (error instanceof StaleHeadError && attempt < maxRetries) {
577
- log.log(`Branch advanced under us, retrying (${attempt}/${maxRetries})...`);
578
- continue;
579
- }
580
- throw error;
616
+ if (!(error instanceof StaleHeadError))
617
+ throw error;
581
618
  }
619
+ if (commitsOnNewerTip === MAX_COMMITS_ON_NEWER_TIP)
620
+ return 'skipped-uncertain';
621
+ const check = await this.findTipSafeToCommitOn({
622
+ repository,
623
+ branchName: params.branchName,
624
+ checkoutHead,
625
+ paths: additions.map(addition => addition.path),
626
+ token
627
+ });
628
+ if ('skipped' in check)
629
+ return check.skipped;
630
+ expectedHeadOid = check.tip;
631
+ }
632
+ },
633
+ /**
634
+ * The branch's current tip if every commit since the checkout left `paths`
635
+ * untouched, so our whole-file contents are still right on top of it.
636
+ * Otherwise why it isn't safe: a newer commit touched one of them, or that
637
+ * can't be ruled out.
638
+ */
639
+ async findTipSafeToCommitOn(params) {
640
+ const { console: log } = this.deps;
641
+ const { repository, checkoutHead, token } = params;
642
+ try {
643
+ const tip = await this.deps.fetchBranchHead(repository, params.branchName, token);
644
+ const changedPaths = await this.deps.fetchChangedPaths(repository, checkoutHead, tip, token);
645
+ if (!changedPaths) {
646
+ log.log(`Could not get a complete list of the files changed since ${checkoutHead.slice(0, 7)}.`);
647
+ return { skipped: 'skipped-uncertain' };
648
+ }
649
+ const changed = new Set(changedPaths);
650
+ const overlap = params.paths.find(filePath => changed.has(filePath));
651
+ if (overlap) {
652
+ log.log(`Newer commits on the branch changed ${overlap}.`);
653
+ return { skipped: 'skipped-overlap' };
654
+ }
655
+ return { tip };
656
+ }
657
+ catch (error) {
658
+ const message = error instanceof Error ? error.message : String(error);
659
+ log.log(`Could not check the newer commits on the branch: ${message}`);
660
+ return { skipped: 'skipped-uncertain' };
661
+ }
662
+ },
663
+ /**
664
+ * The default actions/checkout on pull_request checks out a merge commit,
665
+ * which is never the branch tip, so every signed commit would be skipped.
666
+ */
667
+ async warnIfCheckoutIsNotPullRequestHead(checkoutHead) {
668
+ const { fs, env, console: log } = this.deps;
669
+ const eventPath = env.GITHUB_EVENT_PATH;
670
+ if (!eventPath || !fs.existsSync(eventPath))
671
+ return;
672
+ let pullRequestHead;
673
+ try {
674
+ const event = JSON.parse((await fs.readFile(eventPath, 'utf8')).toString());
675
+ pullRequestHead = event?.pull_request?.head?.sha;
676
+ }
677
+ catch {
678
+ return;
679
+ }
680
+ if (typeof pullRequestHead !== 'string' || pullRequestHead === checkoutHead)
681
+ return;
682
+ log.log(`::warning::Signed commits need the pull request branch checked out. This run checked out ${checkoutHead.slice(0, 7)}, ` +
683
+ `not the pull request head ${pullRequestHead.slice(0, 7)}, which is likely why the commit gets skipped. ` +
684
+ 'Set `ref: ${{ github.head_ref }}` on actions/checkout.');
685
+ },
686
+ /**
687
+ * Where the working directory sits inside the repository, "" at the root and
688
+ * "apps/portal/" below it. --show-prefix rather than --show-toplevel plus a
689
+ * relative(): it is already forward-slashed on every platform and immune to
690
+ * the symlinked-cwd question.
691
+ *
692
+ * A git failure propagates. Falling back to "" would send a subdirectory's
693
+ * files to the repository root, which is the bug this exists to prevent.
694
+ */
695
+ repositoryPrefix() {
696
+ const { exec } = this.deps;
697
+ // Only the trailing newline (\r\n on a Windows runner): a directory name may
698
+ // legitimately begin with whitespace, and trim() would corrupt it.
699
+ return exec('git rev-parse --show-prefix', { stdio: 'pipe' })
700
+ .toString()
701
+ .replace(/\r?\n$/, '');
702
+ },
703
+ /**
704
+ * A path as GitHub's commit API wants it: relative to the repository root.
705
+ *
706
+ * Everything else in the CLI speaks working-directory paths, because that is
707
+ * what localhero.json's paths are relative to. createCommitOnBranch resolves
708
+ * additions[].path from the repository root instead, so a run from a
709
+ * subdirectory wrote its files to the wrong place and reported success (#791).
710
+ *
711
+ * Absolutes are resolved before prefixing, never after: "apps/portal/" plus
712
+ * "/tmp/x" normalises to "apps/portal/tmp/x", which is neither absolute nor
713
+ * escaping, so a check that ran afterwards would pass it and upload one
714
+ * file's bytes to an unrelated path.
715
+ */
716
+ toRepositoryPath(filePath, prefix) {
717
+ // The real path module, not this.deps.path: these are pure string
718
+ // operations with nothing to stub, and injecting them would make every
719
+ // caller's test mock responsible for knowing about posix normalisation.
720
+ // An absolute path under the working directory is legitimate: the sync path
721
+ // produces them (commands/ci.ts resolves each file and keeps the ones that
722
+ // do not escape cwd). Relativise rather than reject, so the error below is
723
+ // reserved for paths that genuinely escape.
724
+ let local = filePath;
725
+ if (path.isAbsolute(filePath)) {
726
+ local = path.relative(process.cwd(), filePath);
727
+ // relative() can hand back another absolute path, so the result is not
728
+ // relative just because the input was.
729
+ if (path.isAbsolute(local)) {
730
+ throw new Error(`${filePath} is outside the repository`);
731
+ }
732
+ }
733
+ const repoPath = path.posix.normalize(`${prefix}${local.split(path.sep).join('/')}`);
734
+ if (repoPath === '..' || repoPath.startsWith('../')) {
735
+ throw new Error(`${filePath} is outside the repository`);
736
+ }
737
+ // '', '.', './' and anything ending in '..' all resolve to the directory
738
+ // itself rather than naming a file. node's normalize keeps a trailing slash,
739
+ // so both spellings have to be checked; left alone they pass existsSync and
740
+ // die in readFile with a bare EISDIR.
741
+ const directory = prefix === '' ? '.' : prefix.replace(/\/$/, '');
742
+ if (repoPath === directory || repoPath === `${directory}/` || repoPath.endsWith('/')) {
743
+ throw new Error(`${filePath} is a directory, not a file to commit`);
582
744
  }
583
- throw lastError;
745
+ return repoPath;
584
746
  },
585
747
  async readFilesAsAdditions(filePaths) {
586
748
  const { fs } = this.deps;
749
+ const prefix = this.repositoryPrefix();
750
+ // Keyed on the destination: "x" and "./x" are different strings that name
751
+ // the same file, and would otherwise be sent as two additions for one path.
587
752
  const seen = new Set();
588
753
  const additions = [];
589
754
  for (const filePath of filePaths) {
590
- if (seen.has(filePath))
755
+ const repoPath = this.toRepositoryPath(filePath, prefix);
756
+ if (seen.has(repoPath))
591
757
  continue;
592
- seen.add(filePath);
758
+ // Read from where the file actually is; send where the API expects it.
759
+ // The destination is claimed only once a file has really been read: a
760
+ // path that does not exist must not reserve a destination and crowd out
761
+ // the file that does, which silently drops it from the commit.
593
762
  if (!fs.existsSync(filePath))
594
763
  continue;
595
764
  const buffer = await fs.readFile(filePath);
765
+ seen.add(repoPath);
596
766
  additions.push({
597
- path: filePath,
767
+ path: repoPath,
598
768
  contents: Buffer.from(buffer).toString('base64')
599
769
  });
600
770
  }
@@ -1 +1 @@
1
- {"version":3,"file":"github.js","sourceRoot":"","sources":["../../src/utils/github.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"github.js","sourceRoot":"","sources":["../../src/utils/github.ts"],"names":[],"mappings":"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"}