Skip to content

[베타테스트] 워크플로 노트의 Related Unit Operations 목차 링크를 눌러도 해당 단위 공정으로 이동하지 않음 #27

Closed

Description

@greendaygh

요약

계대배양처럼 단위 공정이 길게 쌓인 워크플로 노트에서 목차(Related Unit Operations)의 링크로 원하는 단계에 가려고 했는데, 링크를 눌러도 그 단위 공정 블록으로 이동하지 않는다. 같은 단위 공정을 여러 번 넣으면 링크가 모두 같은 주소라 구분도 되지 않는다.

전제 조건

  • labnoteo 0.90.2 기본 설정
  • 실험 1개와 워크플로 노트 1개 존재

재현 절차

  1. 워크플로 노트를 연 상태에서 명령 팔레트로 Labnote Assistant: Insert unit operation 실행 → UHW380 Microplate Reading 선택
  2. 명령 팔레트로 편집/미리보기 화면 전환(Ctrl+E)해 읽기 보기로 바꿈
  3. Related Unit Operations 목록의 UHW380 Microplate Reading 링크 클릭
  4. 비교: 노트 끝에 [[#[UHW380 Microplate Reading]]] 를 직접 입력하고 읽기 보기에서 클릭

기대 결과

목차 링크를 누르면 해당 단위 공정 제목(### [UHW380 Microplate Reading])으로 이동한다. 같은 단위 공정을 여러 번 넣었으면 각 링크가 자기 블록으로 이동한다.

실제 결과

목차 링크를 눌러도 단위 공정 블록으로 이동하지 않는다(문서 맨 위로 가거나 거의 움직이지 않음). 같은 노트에서 직접 입력한 [[#[UHW380 Microplate Reading]]] 링크는 제목으로 이동하고 제목을 강조 표시한다. 단위 공정 12개(UHW180·UHW380 6번씩 번갈아)를 넣은 노트에서는 목차 링크가 UHW180은 모두 (#uhw180-incubation), UHW380은 모두 (#uhw380-microplate-reading)이라 몇 번째 블록인지 가리킬 방법이 없다.

증거

  • 목차 항목 형식: - [UHW380 Microplate Reading](#uhw380-microplate-reading) (GitHub식 슬러그 앵커). 제목은 ### [UHW380 Microplate Reading]이라 Obsidian의 제목 링크(제목 텍스트로 찾음)와 맞지 않는 것으로 보인다(추정).
  • upstream 0.90.2: packages/labnoteo-core/src/__tests__/workflowToc.test.ts가 - [UHW010 Centrifugation](#uhw010-centrifugation) 형식을 기대한다(src/lib/workflowStructure.ts의 목차 생성).
  • 재현 2회: WB140 노트(단위 공정 12개, 첫 번째와 네 번째 UHW180 링크 클릭 → 블록으로 이동하지 않음), WD020 노트(단위 공정 1개, 링크 클릭 → 이동하지 않음). 직접 입력한 Obsidian 제목 링크는 같은 노트에서 이동함.
  • 장기 볼트, labnoteo 0.90.2(BRAT로 0.90.0에서 업데이트 직후), Obsidian 1.14.4, 읽기 보기.
  • 정정: 위 첫 증거의 목차 생성 위치는 workflowStructure.ts가 아니라 workflowSectionParser.ts의 buildUnitOpTocLine이다.

스크린샷 2장 보유(요청 시 제공)

  • 제목에 이름을 붙이면(### [UHW180 Incubation] 계대 1일차) 목차가 자동으로 - [UHW180 Incubation | 계대 1일차](#uhw180-incubation-1)로 바뀐다. 이름은 목차에 잘 반영되지만 앵커에서는 한글이 빠져 #uhw180-incubation-1이 된다(GitHub식으로도 #uhw180-incubation-계대-1일차가 아님). 한국어 이름으로 블록을 구분해도 링크로는 구분되지 않는다.
  • 원인(0.90.2 소스 확인): packages/labnoteo-core/src/sections/workflowSectionParser.ts의 buildUnitOpTocLine이 목차 링크를 의도적으로 GitHub식 슬러그로 만든다(소문자화, [^\w\s-] 제거, 공백→-). Obsidian은 링크의 # 뒤를 제목 텍스트로 찾기 때문에 이 슬러그가 제목 ### [UHW380 Microplate Reading]과 맞지 않는 것으로 보인다(추정). \w가 ASCII만 포함해 한글 이름이 지워지고, 같은 제목에 번호를 붙이지 않아 반복 블록이 같은 앵커를 갖는다.
  • 관련 이슈: feat(workflow): Outline 드래그 시 유닛오퍼레이션 목차·구분선 즉시 정리 (0.89.0) #16(Outline 드래그 시 목차 정리), fix(workflow): Outline 드래그 후 초점이 밀리던 문제 — 정리를 파일 단계로 이동 (0.89.1) #17, #22는 목차 순서·블록 이동 문제로, 링크 이동과는 다른 문제다.
  • 같은 노트에서 Obsidian 제목 링크([[#[UHW380 Microplate Reading]]])는 제목으로 이동한다(장기 볼트에서 확인). 목차를 GitHub에서도 읽히게 하려는 의도라면 Obsidian에서 동작하는 형식과 함께 고려가 필요해 보인다.

환경

항목 값
labnoteo 0.90.2
Obsidian 1.14.4
OS win32 x64
UI 언어 ko

테스터 정보

  • 이 이슈는 LLM 베타테스터가 CDP로 앱을 조작하며 발견했습니다.
  • 모델: claude-opus-5-5 · 하네스: claude-code-cli · 재현: 2/2회
  • 심각도(테스터 판단): minor · 영역: workflow

수정하실 때 커밋 메시지에 (#이슈번호)를 넣고 릴리스하시면, 테스터가 해당 버전을 설치해 자동으로 재테스트하고 결과를 댓글로 남깁니다.

Activity

  1. greendaygh commented on Oct 10, 2026

    @greendaygh
    ContributorAuthor

    분석 결과와 처리 방향을 공유드립니다. 0.90.3에 반영됩니다.

    원인

    • 목차 링크는 GitHub식 앵커(#uhw380-microplate-reading)로 만들어집니다. Obsidian은 링크의 # 뒤를 제목 텍스트와 비교합니다(기호는 공백으로 바꾸고 대소문자는 무시하지만, 하이픈은 그대로 둠). 그래서 uhw380-microplate-reading이 제목 [UHW380 Microplate Reading]과 같아지지 않습니다(Obsidian 1.14.4의 heading 링크 해석 코드에서 확인).
    • GitHub(공백 → -)와 Obsidian(공백 유지)의 규칙이 서로 맞지 않아, 두 곳에서 모두 동작하는 앵커 형식은 없습니다. 또 Obsidian의 제목 링크는 같은 이름이면 첫 번째 제목으로만 가므로, 반복 블록은 어떤 형식으로도 구분되지 않습니다.

    결정

    • 목차 링크는 GitHub에서 노트를 볼 때 해당 블록으로 이동하는 용도로 유지합니다.
    • Obsidian에서는 Outline(개요) 보기로 이동합니다. Outline은 제목의 줄 위치로 이동하므로 같은 단위 공정이 반복돼도 각각 구분됩니다. QUICKSTART·README에 안내를 추가했습니다.
    • 보고해 주신 앵커 오류(한글 누락, 반복 블록 번호 없음)는 GitHub 기준으로도 틀린 것이어서 바로잡았습니다.
      • 한글 유지: ### [UHW180 Incubation] 계대 1일차 → #uhw180-incubation-계대-1일차
      • 반복 번호: 반복된 ### [UHW180 Incubation] → #uhw180-incubation, #uhw180-incubation-1, #uhw180-incubation-2 (GitHub처럼 문서의 모든 제목을 순서대로 세어 매김)
      • 기존 노트는 다음 편집 때 자동 정렬이 해당 목차 줄의 앵커만 고칩니다.

    0.90.3 재테스트 판정 기준

    • 기대 결과
      • 목차 앵커가 GitHub에서 렌더링된 제목 앵커와 일치합니다(한글 유지, 반복 블록 -1, -2).
      • Obsidian Outline(개요)에서 반복된 단위 공정 제목을 클릭하면 각각 자기 블록으로 이동합니다.
    • Obsidian 안에서 목차 링크를 클릭해도 블록으로 이동하지 않는 것은 의도된 동작이므로 실패로 판정하지 않습니다.
  2. greendaygh commented on Oct 10, 2026

    @greendaygh
    ContributorAuthor

    재테스트 결과: ✅ 수정 확인

    • 테스트 버전: labnoteo 0.90.3 (수정 버전 추정: 0.90.3, 근거: release containing commit 9fffa23)
    • 테스터: claude-opus-5-5 · 하네스: claude-code-cli

    관찰 내용

    labnoteo 0.90.3(깨끗한 볼트, 기본 설정)에서 WB140 워크플로에 UHW180, UHW180, UHW380, UHW180을 넣고 메인테이너가 적은 판정 기준대로 확인했다. (1) 앵커: 목차가 #uhw180-incubation, #uhw180-incubation-1, #uhw380-microplate-reading, #uhw180-incubation-2로 반복 블록에 번호가 붙는다. 첫 블록 제목에 "계대 1일차"를 붙이자 자동 정렬로 목차가 UHW180 Incubation | 계대 1일차로 바뀌고(한글 유지) 나머지는 #uhw180-incubation, #uhw180-incubation-1로 다시 매겨졌다. 문서 전체 제목에 GitHub 슬러그 규칙(github-slugger: 소문자, 기호 제거, 공백→-, 같은 슬러그는 -1, -2)을 적용한 결과와 목차 앵커 4개가 순서대로 모두 일치했다. 참고: GitHub markdown API 출력에는 제목 id가 없어 실제 github.com 페이지가 아닌 규칙으로 비교했다. (2) Obsidian 개요(Outline) 보기에서 같은 이름의 "UHW180 Incubation" 두 개를 클릭하면 각각 61행, 131행(두 번째, 네 번째 블록 제목)으로, "UHW180 Incubation 계대 1일차"는 26행으로 이동했다. (3) 읽기 보기에서 목차 링크를 클릭하면 이동하지 않는다(메인테이너 설명대로 의도된 동작). README와 QUICKSTART(0.90.3)에 Obsidian에서는 개요 보기로 이동하라는 안내가 추가된 것도 확인했다.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions