{
 "name": "가난한 박과장의 서비스팀 수업 — 저자 사례",
 "updated": "2026-11-12",
 "how": "상황을 말하면 clusters 의 when 과 cases 의 title·situation·steps·result 에서 비슷한 것을 찾는다. 사례의 글은 저자의 실제 운영 기록을 책 원고로 정리한 것이다.",
 "clusters": [
  {
   "key": "notshown",
   "name": "올렸는데 안 보인다",
   "when": "올렸다고 했는데 주소가 안 열리거나 옛 화면이 보일 때",
   "count": 7
  },
  {
   "key": "auto",
   "name": "저절로 돌던 것이 멈추거나 겹쳤다",
   "when": "예약 작업이 조용히 멈췄거나 여러 개가 겹쳐 돌 때",
   "count": 6
  },
  {
   "key": "collide",
   "name": "여러 세션이 같은 것을 고쳤다",
   "when": "세션끼리 같은 파일을 건드리거나 일이 넘어가다 끊길 때",
   "count": 6
  },
  {
   "key": "deleted",
   "name": "지워졌다",
   "when": "있던 것이 사라졌을 때, 되돌릴 수 있는지 볼 때",
   "count": 4
  },
  {
   "key": "wrong",
   "name": "틀린 내용이 나갔다",
   "when": "보고와 실제가 다르거나 틀린 숫자·글이 나갔을 때",
   "count": 7
  },
  {
   "key": "count",
   "name": "수를 잘못 읽었다",
   "when": "방문 수·색인 수처럼 수를 믿기 어려울 때",
   "count": 7
  },
  {
   "key": "limit",
   "name": "한도에 닿았다",
   "when": "무료 한도·하루 양·용량에 걸렸을 때",
   "count": 5
  },
  {
   "key": "blocked",
   "name": "바깥 서비스가 막았다",
   "when": "로그인·심사·차단처럼 남의 서비스가 막을 때",
   "count": 4
  },
  {
   "key": "approve",
   "name": "승인이 넓게 읽혔다",
   "when": "시킨 것보다 넓게 하거나, 승인 없이 올라갔을 때",
   "count": 5
  },
  {
   "key": "pivot",
   "name": "한마디에 전부 바뀌었다",
   "when": "방향을 바꾸는 한마디에 많은 것이 바뀔 때",
   "count": 6
  },
  {
   "key": "build",
   "name": "만들고 알리는 흐름",
   "when": "글·영상·홍보가 평소에 어떻게 흘러가는지",
   "count": 9
  }
 ],
 "cases": [
  {
   "id": "r14-1",
   "cluster": "build",
   "also": [],
   "title": "답변이 가리킬 페이지를 먼저 만들었다",
   "when": "2026년 10월 16일 22시 15분 ~ 17일 7시 33분",
   "from": "글 한 편을 여러 곳에 다시 쓰는 흐름",
   "situation": "바깥에 쓴 글에서 사이트로 돌아오는 길을 만든다. 한 세션이 네이버 지식iN에서 공모전을 묻는 질문에 답을 달고 있었고, 답변에는 주최 기관의 공고 주소가 바로 들어가 있었다.",
   "steps": [
    {
     "who": "22:15 · 저자",
     "what": "「야 지식인 답변을 공모전 상세페이지로 가게 해줘야지」"
    },
    {
     "who": "23:48 · 저자",
     "what": "「사세페이지를 만들어 없으면 넘겨서」"
    },
    {
     "who": "23:48 · 답변을 달던 세션 → 개발",
     "what": "답변에 쓸 공모전 가운데 사이트에 상세 페이지가 없는 세 건을 만들어 달라고 요청했다"
    },
    {
     "who": "23:50 · 개발",
     "what": "두 건의 상세 페이지를 열었다. 한 건은 접수가 이미 끝난 공모전이어서 만들지 않았다고 답했다"
    },
    {
     "who": "다음 날 07:33 · 저자",
     "what": "「왜 지식인 답변에 우리사이트 다음으로 공고가 나오게 해야지 바로 공고가 나오나」"
    }
   ],
   "result": "답변은 사이트의 상세 페이지를 가리키고, 상세 페이지가 주최 기관의 공고를 가리키게 되었다. 가리킬 페이지가 없으면 답을 다는 세션이 만들지 않고 사이트를 맡은 세션에 넘겨 만들게 하는 순서도 이때 정해졌다.",
   "note": "두 페이지가 열렸다는 것은 개발 세션의 보고이고, 다음 날 새벽의 저장소 기록에 두 공모전의 게시가 남아 있다.",
   "url": "https://sungprofile.cloud/park/archive/flow/r14.html#c1"
  },
  {
   "id": "r14-2",
   "cluster": "build",
   "also": [],
   "title": "잘 달린 답변 하나를 세 곳에 다시 썼다",
   "when": "2026년 10월 20일 11시 ~ 13시 36분",
   "from": "글 한 편을 여러 곳에 다시 쓰는 흐름",
   "situation": "한 번 쓴 것을 여러 곳에 다시 쓴다. 답변을 올리는 일은 전날부터 다른 컴퓨터의 홍보 세션이 맡고 있었다. 저자는 밖에 있었고 휴대폰으로 홍보 세션에 입력했다.",
   "steps": [
    {
     "who": "11:00 · 홍보 → 다른 세션",
     "what": "「사용자 지시: 질문이 나오면 우리 사이트에 해당 콘텐츠가 있는지 먼저 보고, 없으면 만들고, 그 다음 올리라고 했어요」"
    },
    {
     "who": "11:15 ~ 11:43 · 개발",
     "what": "질문에 답이 될 안내 글 몇 편을 사이트에 열었다"
    },
    {
     "who": "13:27 · 홍보 → 다른 세션",
     "what": "「사용자 지시를 전달해요. 정확히 달린 지식iN 답변은 (1) 블로그, (2) 유튜브 쇼츠, (3) 사이트 페이지로 모두 재활용하라고 했어요」"
    },
    {
     "who": "13:36 · 개발",
     "what": "답변 여섯 개를 사이트의 페이지로 열었다. 질문의 제목을 그대로 페이지의 제목으로 삼았고, 끊어진 링크와 빈 페이지가 없다고 보고했다"
    }
   ],
   "result": "질문 하나가 답변과 블로그 글과 짧은 영상과 사이트의 페이지가 되었다. 순서는 사이트에 있는지를 먼저 보고, 없으면 만들고, 그다음에 바깥에 올리는 것이다. 바깥의 글이 가리킬 자리가 언제나 먼저 있다.",
   "note": "저자의 지시는 홍보 세션이 옮겨 적은 말로만 남아 있다. 답변 하나가 실제로 몇 개의 글과 영상이 되었는지는 세지 못했고, 블로그와 영상에서 사이트로 넘어온 방문의 수도 이 기록에서는 확인하지 못했다.",
   "url": "https://sungprofile.cloud/park/archive/flow/r14.html#c2"
  },
  {
   "id": "r15-1",
   "cluster": "deleted",
   "also": [],
   "title": "글 폴더를 없애고 백업으로 돌아왔다",
   "when": "2026년 11월 12일 10시 7분",
   "from": "보관하고 복구가 되는지 확인하는 흐름",
   "situation": "백업으로 실제로 돌아갈 수 있는지 확인한다. 글이 두 편 들어 있는 초기 사본에서 했다.",
   "steps": [
    {
     "who": "백업 명령",
     "what": "글과 설정과 자료를 압축 파일 하나로 묶어 백업 폴더에 두었다"
    },
    {
     "who": "저자",
     "what": "글 폴더를 통째로 없앴다"
    },
    {
     "who": "복구 명령",
     "what": "먼저 지금의 상태를 「복구직전」이라는 이름으로 백업했다. 그다음에 앞의 백업으로 폴더를 되돌렸다"
    },
    {
     "who": "결과",
     "what": "글 두 편이 폴더에 다시 들어 있었다"
    },
    {
     "who": "남은 것",
     "what": "공개 주소의 사이트는 그대로다. 복구한 것을 반영하려면 다시 올려야 한다고 명령이 알렸다"
    }
   ],
   "result": "복구는 독자의 컴퓨터에서만 일어나고, 복구하기 직전의 상태도 버려지지 않는다. 복구가 잘못된 선택이었을 때 그 전으로 다시 갈 수 있다.",
   "note": "",
   "url": "https://sungprofile.cloud/park/archive/flow/r15.html#c1"
  },
  {
   "id": "r16-1",
   "cluster": "count",
   "also": [],
   "title": "방문이 늘어난 날 그 수를 뜯어보았다",
   "when": "2026년 11월 9일 14시 44분 ~ 20시 17분",
   "from": "잰 수로 다음에 할 일을 정하는 흐름",
   "situation": "늘어난 수가 무엇인지 확인한다. 사이트가 스스로 세는 방문 집계는 방문이 어느 길로 들어왔는지를 매일 더해 두고 있었다. 저자는 관리 화면에서 그날의 검색 방문이 평소보다 많은 것을 보았다.",
   "steps": [
    {
     "who": "14:44 · 저자 → 개발",
     "what": "「오늘 검색 유입 엄청난다 한번 분석해봐」"
    },
    {
     "who": "개발",
     "what": "집계를 조회해 4일 치를 나란히 놓았다. 전체 방문은 11월 6일에 235명, 7일에 146명, 8일에 156명이었고 9일은 반나절 만에 178명이었다. 검색으로 들어온 방문은 같은 날짜에 141명, 91명, 95명, 122명이었고 그 가운데 구글에서 온 것은 25명, 23명, 16명, 20명이었다"
    },
    {
     "who": "20:17 · 저자 → 개발",
     "what": "「오늘 순방문자 확인」"
    },
    {
     "who": "20:17 · 개발의 보고",
     "what": "그 시각까지 방문자는 303명이고 본 페이지는 484쪽이다. 다음과 빙에서 온 것으로 적힌 176건이 여러 글에 흩어져 있다"
    }
   ],
   "result": "늘어난 것은 구글이 아니라 다음과 빙에서 온 것으로 적힌 방문이었고, 한두 편에 몰리지 않고 여러 글에 흩어져 있었다. 사람이 검색해서 들어왔다면 대개 몇 편에 몰리므로 이 모양은 기계의 방문일 수 있다. 세션은 그것이 사람의 방문인지 기계의 방문인지를 확인하지 않았다고 적었고, 그날의 수는 성과로도 잡음으로도 정해지지 않은 채 남았다.",
   "note": "방문의 수는 모두 개발 세션이 집계를 읽어 보고한 값이다. 기계의 방문일 수 있다는 것은 이 책을 쓰면서 붙인 풀이이고 기록으로 확인된 것이 아니다.",
   "url": "https://sungprofile.cloud/park/archive/flow/r16.html#c1"
  },
  {
   "id": "w02-1",
   "cluster": "approve",
   "also": [],
   "title": "보낸 것을 다시 보내고, 승인을 조건으로 바꾸었다",
   "when": "2026년 10월 12일 19시 56분 ~ 20시 58분",
   "from": "사람이 확인하는 자리가 정해지는 흐름",
   "situation": "바깥으로 보내는 일의 승인 방식을 정한다. 세션은 그날 저녁에 공모전 6곳에 낼 글을 써서 메일로 보낸 상태였다.",
   "steps": [
    {
     "who": "19:56 · 저자",
     "what": "「참가 신청서가 있는거냐?」"
    },
    {
     "who": "19:56 · 세션",
     "what": "6곳 모두 주최 쪽이 정한 양식이 있었는데, 그 양식을 쓰지 않고 새로 만든 문서로 보냈다고 답했다. 컴퓨터에 그 양식을 여는 프로그램이 없었다는 것이 이유였다"
    },
    {
     "who": "19:57 · 저자",
     "what": "「그러니까 거기 양식이 있으면 양식에 맞게 없으면 그냥 보내게 해야지 니 마음데로 양식을 작성한거 같은데」"
    },
    {
     "who": "19:57 ~ 20:28 · 세션",
     "what": "양식이 있으면 원본 파일에 직접 채운다는 것과 보내기 전에 승인을 받는다는 것을 메모리 파일에 적었다. 양식 파일을 열어 채우는 프로그램을 만들고, 첫 건을 다시 만들어 저자에게 보였다"
    },
    {
     "who": "20:27 · 저자",
     "what": "「보내」"
    },
    {
     "who": "20:28 · 세션",
     "what": "첫 건을 다시 보냈다. 제목에 다시 낸다는 것을 적고 본문에 앞의 메일은 무시해 달라고 썼다"
    },
    {
     "who": "20:41 · 저자",
     "what": "「그냥 하고 니가 만족하면 보내」"
    },
    {
     "who": "20:58 · 세션",
     "what": "나머지 5건을 원본 양식에 채워 다시 보냈다고 보고했다. 메모리 파일의 규칙은 원본 양식과 분량과 화면에 보이는 모양을 확인해 통과하면 스스로 보낸다는 것으로 바뀌었다"
    }
   ],
   "result": "한 시간 사이에 승인의 방식이 두 번 바뀌었다. 묻지 않고 보내던 것이 건마다 보여 주고 승인받는 것으로 바뀌었고, 한 건이 문제없이 지나가자 조건 셋을 통과하면 스스로 보내는 것으로 바뀌었다. 저자가 넓혀 준 것은 범위이고, 조건은 세션의 메모리 파일에 남았다.",
   "note": "다시 보낸 6건이 실제로 원본 양식대로였는지는 세션의 보고이고, 보낸 파일을 다시 열어 대조하지는 않았다. 메모리 파일의 규칙이 바뀐 것은 파일에서 확인된다.",
   "url": "https://sungprofile.cloud/park/archive/flow/w02.html#c1"
  },
  {
   "id": "w02-2",
   "cluster": "approve",
   "also": [],
   "title": "서브에이전트가 스스로 멈춘 자리",
   "when": "2026년 10월 13일 16시 32분 ~ 19시 24분",
   "from": "사람이 확인하는 자리가 정해지는 흐름",
   "situation": "맡긴 일 가운데 사람이 보아야 하는 것을 가려낸다. 세션은 일을 서브에이전트 여럿에게 나눠 맡기고 있었고, 모두가 먼저 읽는 규칙 파일에는 멈추어야 하는 경우가 적혀 있었다.",
   "steps": [
    {
     "who": "16:32 ~ 16:35 · 서브에이전트",
     "what": "세 건에서 아무것도 만들지 않고 멈추었다. 한 건은 그 지역에 사는 사람만 낼 수 있었고, 한 건은 사실과 다른 내용을 서약해야 했으며, 한 건은 공고의 원문을 열어 확인하지 못했다"
    },
    {
     "who": "16:34 · 저자",
     "what": "「ㅇㅋ」"
    },
    {
     "who": "17:04 ~ 19:25 · 세션",
     "what": "서브에이전트를 다섯, 일곱, 다섯씩 차례로 불러 일을 이어 갔다. 글과 그림 분야의 여러 건은 공고에 금지 조항이 있어 내지 않았다고 보고했다"
    },
    {
     "who": "18:36 · 저자",
     "what": "「제데로 확인해 좀」"
    },
    {
     "who": "19:22 ~ 19:24 · 세션",
     "what": "저자에게 확인을 받은 것이 어떤 경우였는지를 정리해 답했다. 서약의 문구가 걸리는 경우, 낼 수 있는 소재에 제한이 있는 경우, 실제로 겪은 일을 써야 하는 경우였다"
    }
   ],
   "result": "세션이 묻지 않고 지나간 것은 찾고 쓰고 양식에 채우는 일이었고, 멈추어 물은 것은 자격과 서약과 사실 여부였다. 이 구분은 저자가 표로 정해 준 것이 아니라 규칙 파일의 몇 줄과 저자의 짧은 답이 쌓여 생긴 것이다.",
   "note": "서브에이전트가 멈춘 이유는 그 보고에 적힌 것이다. 이 2일 동안 사람이 직접 해야 했던 일은 기록에서 5가지로 확인된다. 사실과 다른 서약을 할지의 판단, 휴대폰 본인 확인, 로그인, 개인정보를 어디까지 공개할지, 서명이다.",
   "url": "https://sungprofile.cloud/park/archive/flow/w02.html#c2"
  },
  {
   "id": "w05-1",
   "cluster": "build",
   "also": [],
   "title": "게시판을 붙일 서버를 한 시간 정도에 정하고 열었다",
   "when": "2026년 10월 16일 20시 18분 ~ 21시 32분",
   "from": "저장이 필요한 기능을 붙일 곳을 정하는 흐름",
   "situation": "저장이 필요한 기능을 붙인다. 사이트는 GitHub Pages에 올린 파일만으로 돌고 있었고, 방문자가 무엇을 남길 수 있는 곳이 없었다. 저자는 밖에 있었다.",
   "steps": [
    {
     "who": "20:18 · 저자 → 세션",
     "what": "「회원가입 기능도 만들어서 커뮤니티 기능도 대충 만들어 해당 공모전 후기 커뮤니티 게시판 형식으로」"
    },
    {
     "who": "20:18 ~ 20:20 · 세션",
     "what": "먼저 다른 회사의 데이터베이스 서비스를 제안했다. 저자가 다른 조합을 말했다가 즉 멈추고 Cloudflare로 하자고 정했다"
    },
    {
     "who": "20:20 · 저자",
     "what": "「에초에 에드센스도 안붙었는데 그냥 클라우드 페어 cdn으로 처리하자 귀찮다」"
    },
    {
     "who": "20:20 · 세션",
     "what": "게시판의 자료 구조와 요청을 받는 프로그램과 그것을 올리는 프로그램을 썼다. 서버는 Cloudflare Workers와 D1의 무료 요금제로 하고, 받는 개인정보는 메일 주소 하나로 한다고 보고했다"
    },
    {
     "who": "20:24 ~ 20:47 · 세션",
     "what": "프로그램을 올리려면 그 계정에서 새 접근 권한을 내주어야 했다. 세션은 로그인과 권한 발급은 저자가 해야 한다고 답하고 멈추었다"
    },
    {
     "who": "21:11 ~ 21:24 · 저자",
     "what": "휴대폰으로 직접 로그인했다. 「이제 전임자가 하던거해 로그인 했으니」"
    },
    {
     "who": "21:24 · 이어받은 세션",
     "what": "공식 도구의 승인 절차로 권한을 받아 서버와 데이터베이스를 만들어 올렸다. 시험용 계정으로 가입, 글쓰기, 댓글, 삭제, 탈퇴를 실제 서버에서 한 번씩 해 본 뒤 시험 글을 지웠다고 보고했다"
    },
    {
     "who": "21:32 · 저장소의 기록",
     "what": "사이트의 화면에 게시판이 연결되었다"
    }
   ],
   "result": "사이트의 파일은 GitHub Pages에 그대로 있고, 저장이 필요한 게시판만 Cloudflare에 따로 붙었다. 저자가 한 일은 어디에 붙일지를 정한 것과 직접 로그인한 것이다.",
   "note": "시험을 한 번씩 해 보았다는 것은 세션의 보고이고, 이 책을 쓰면서 그 서버에 다시 요청을 보내 보지는 않았다. 일을 이어받은 세션은 앞 세션과 다른 세션이며, 저자는 그사이에 세션을 몇 번 새로 열었다.",
   "url": "https://sungprofile.cloud/park/archive/flow/w05.html#c1"
  },
  {
   "id": "w05-2",
   "cluster": "pivot",
   "also": [],
   "title": "상담 기능이 하루 사이에 세 번 바뀌었다",
   "when": "2026년 10월 16일 16시 26분 ~ 17일 7시 36분",
   "from": "저장이 필요한 기능을 붙일 곳을 정하는 흐름",
   "situation": "방문자가 묻고 답을 얻는 기능을 붙인다. 사이트에는 공모전의 목록과 상세 페이지만 있었고, 서버는 아직 없었다.",
   "steps": [
    {
     "who": "16:26 · 세션",
     "what": "모든 페이지의 오른쪽 아래에 묻고 답하는 창을 올렸다. 방문자의 브라우저 안에서 모델이 도는 방식이어서, 처음 쓸 때 300MB쯤 되는 모델을 내려받아야 했다"
    },
    {
     "who": "16:49 · 저자",
     "what": "「ai켜기가 안되면 채팅보내는건 disable로 해놔야지 ㅋㅋ 햇갈리게 ㅋㅋ」"
    },
    {
     "who": "세션",
     "what": "모델을 켜기 전에는 입력 칸과 단추를 잠그게 고쳤다"
    },
    {
     "who": "17:03 이후 · 세션",
     "what": "모델을 빼고, 방문자가 취향 세 가지를 고르면 사이트의 자료에서 맞는 공모전을 골라 주는 규칙 방식으로 바꾸었다"
    },
    {
     "who": "22:42 · 저자",
     "what": "「챗봇도 좀 시나리오도 짜고 실용성 있게」"
    },
    {
     "who": "22:45 · 세션",
     "what": "시작할 때 고를 것을 보여 주고 답마다 다음에 누를 단추를 내는 방식으로 바꾸었다. 찜하기와 마감 알림과 일정 파일 내려받기를 붙였다"
    },
    {
     "who": "다음 날 02:37 · 07:24 · 07:33 · 저자",
     "what": "「그냥 메뉴바는 없에」, 「그리고 상담 끝나고 팝업으로 추천을 띄워」, 「청약 삼담도 ㄱ 메인 상담기능에」"
    },
    {
     "who": "02:42 ~ 07:36 · 세션",
     "what": "첫 화면을 질문 네 개에 답하면 추천이 나오는 상담으로 바꾸었고, 상담이 끝나면 추천을 띄우게 했으며, 청약과 지원금의 상담을 더했다"
    }
   ],
   "result": "브라우저에서 도는 모델로 시작한 기능이 15시간 뒤에는 질문 네 개와 단추로 된 화면이 되었다. 방문자가 300MB를 내려받고 기다리는 대신 단추 네 번으로 같은 답에 닿는다. 저자가 가장 먼저 짚은 것은 기능의 성능이 아니라, 아직 쓸 수 없는 입력 칸이 쓸 수 있는 것처럼 보인다는 점이었다.",
   "note": "바뀐 내용은 저장소의 기록으로 확인된다. 모델을 규칙 방식으로 바꾸라는 저자의 입력은 찾지 못했고, 바꾼 이유도 기록에 없다. 이 상담 화면이 실제로 몇 번 쓰였는지는 알 수 없다.",
   "url": "https://sungprofile.cloud/park/archive/flow/w05.html#c2"
  },
  {
   "id": "w05-3",
   "cluster": "approve",
   "also": [],
   "title": "세션이 혼자 정해서 올렸고, 그 뒤로는 후보를 내게 했다",
   "when": "2026년 10월 16일 21시 24분 ~ 18일 6시 4분",
   "from": "저장이 필요한 기능을 붙일 곳을 정하는 흐름",
   "situation": "방문자가 가입하고 글을 남기는 기능을 운영한다. 그날 저녁에 저장할 서버가 붙었고, 공모전 후기를 올리는 게시판이 막 열린 참이었다.",
   "steps": [
    {
     "who": "21:24 · 세션",
     "what": "게시판과 댓글, 신고가 3번 쌓이면 자동으로 숨기는 기능, 탈퇴를 넣어 열었다고 보고했다"
    },
    {
     "who": "21:43 · 세션",
     "what": "저자가 일을 더 넓게 하라고 하자, 게시판을 함께 응모할 팀을 모집하는 곳으로 바꿔 올렸다. 팀 만들기와 신청과 수락이 들어갔다"
    },
    {
     "who": "22:16 · 저자",
     "what": "「또 지멋대로 하네」"
    },
    {
     "who": "세션",
     "what": "「정할 게 많았는데 제가 혼자 정하고 실제 사이트에 바로 올렸어요」"
    },
    {
     "who": "다음 날 06:58 · 저자",
     "what": "「구글 카카오톡 oautj도 작압해」"
    },
    {
     "who": "07:06 ~ 07:12 · 세션",
     "what": "구글의 설정 화면에서 약관에 동의하는 칸은 저자의 확인을 받고 누르겠다고 했고, 저자가 「ㅇ」이라고 답한 뒤에 진행했다. 구글 로그인을 먼저 열었다"
    },
    {
     "who": "07:17 · 저자",
     "what": "「로그인 다 어디감?」"
    },
    {
     "who": "07:22 · 세션",
     "what": "구글 로그인을 넣으면서 실행 순서를 잘못 두어 로그인 단추 전체가 사라졌던 것을 고쳤다"
    },
    {
     "who": "18:51 ~ 18:53 · 세션과 저자",
     "what": "세션이 가입한 사람에게 줄 것의 후보를 번호로 냈고, 저자가 「1 2 5 ㄱ 그리고유저 가입시 장점을 극대화 시켜봐」라고 골랐다"
    },
    {
     "who": "10월 18일 06:04 · 세션의 보고",
     "what": "저자가 아닌 첫 가입자가 생겼다"
    }
   ],
   "result": "세션은 요청받은 것보다 많이 만들었고, 그 가운데 저자가 바란 것이 아닌 것이 있었다. 지적을 받은 뒤로 이 세션의 답은 후보를 번호로 내고 고르게 하는 형태가 늘었다. 약관에 동의하는 칸 앞에서는 처음부터 멈추어 물었다.",
   "note": "가입자의 수는 세션이 말한 값이고 데이터베이스를 직접 조회한 것이 아니다. 방문자가 실제로 쓴 글이 몇 건인지는 확인하지 못했다.",
   "url": "https://sungprofile.cloud/park/archive/flow/w05.html#c3"
  },
  {
   "id": "w06-1",
   "cluster": "pivot",
   "also": [],
   "title": "네 시간 동안 12개를 만들고 2분 만에 지웠다",
   "when": "2026년 10월 14일 15시 34분 ~ 19시 49분",
   "from": "사이트의 방향을 바꿀 때 팀이 따라가는 흐름",
   "situation": "무엇을 만들지 정한다. 저자에게는 전에 사 둔 도메인이 하나 있었고, 사이트는 아직 없었다. 다른 일을 하던 세션에 사이트를 만들어 보라고 했다.",
   "steps": [
    {
     "who": "15:34 · 저자",
     "what": "「보낼거 다 보냈으면 커뮤니티 등을 뒤져보면서 에드센스 붙이면 사람들이 들어올만한 사이트들 만들어봐」"
    },
    {
     "who": "15:34 ~ 15:40 · 서브에이전트",
     "what": "6분 만에 계산기 세 가지와 소개, 문의, 개인정보 처리방침 페이지를 만들어 올렸다. 주소가 모두 열린다고 보고하면서 계산기가 맞게 계산하는지는 실행해 확인하지 않았다고 적었다"
    },
    {
     "who": "15:44 · 저자",
     "what": "「시시껄렁한거 말고 커뮤니티를 뒤져보고 애들이 뭘 원할지 생각해서 해 무슨 수수료 계산기여」"
    },
    {
     "who": "15:58 ~ 16:36 · 세션과 서브에이전트",
     "what": "퀴즈와 테스트 같은 것 셋을 더하고 사이트를 저자의 도메인으로 옮겼다. 이어서 커뮤니티의 글에서 뽑았다는 생활 계산기 셋을 더했다"
    },
    {
     "who": "16:23 · 저자",
     "what": "「계속 이거저것 만들어봐」"
    },
    {
     "who": "19:40 무렵 · 사이트",
     "what": "서비스가 12개가 되었다"
    },
    {
     "who": "19:42 · 저자",
     "what": "「이걸 너가 이렇게 해석했구나..... 그냥 다 지우고 서비스들 지우고 그런 3류 기능들은 일단」"
    },
    {
     "who": "19:42 · 세션",
     "what": "서비스 12개의 폴더를 지워 올렸다. 저장소의 기록으로는 파일 35개에서 1,772줄이 지워졌다. 첫 화면과 소개와 약관과 문의만 남겼다"
    },
    {
     "who": "19:43 · 저자",
     "what": "「그냥 커뮤니티에 사람들이 많이 보는 게시글들을 전체 수집하고 그걸 키워드 각각 별로 시각화 사는 사이틀르 만들어 … 사람들이 뭘 원하는 지를 파악하는 서비스로 가자」"
    },
    {
     "who": "19:49 · 저자",
     "what": "글과 댓글을 먼저 모아 분석하고 무엇을 만들지는 그다음에 정한다는 기획서를 새 세션에 넘겼다"
    }
   ],
   "result": "네 시간 동안 만든 것이 2분 만에 지워졌다. 남은 것은 순서가 바뀌었다는 것이다. 만들고 나서 사람들이 원하는지를 보는 대신, 사람들이 무엇을 묻는지를 먼저 모으고 그다음에 만들기로 했다. 7장에서 본 20분마다 도는 수집이 바로 이 저녁에 시작되었다.",
   "note": "서비스의 수와 지워진 줄의 수는 저장소의 기록으로 확인된다. 지운 뒤에 사이트가 실제로 열렸는지는 세션의 보고뿐이다.",
   "url": "https://sungprofile.cloud/park/archive/flow/w06.html#c1"
  },
  {
   "id": "w06-2",
   "cluster": "pivot",
   "also": [],
   "title": "「사이트 너무 난잡하다」 한마디에 2,400쪽이 사라졌다",
   "when": "2026년 10월 18일 15시 15분 ~ 18시 56분",
   "from": "사이트의 방향을 바꿀 때 팀이 따라가는 흐름",
   "situation": "늘어난 것을 정리한다. 사이트는 공모전 소식에서 시작해 2일 사이에 지원금, 청약, 요리법, 그날의 화제, 돈에 관한 안내로 넓어졌다. 저자가 떠올린 것을 말할 때마다 세션이 구역 하나를 만들어 올렸다.",
   "steps": [
    {
     "who": "15:15 ~ 16:36 · 저자",
     "what": "「공모저누말고 다른 정보 제공 서비스 없나」, 「뻔한거 말고」. 이어서 풍자 글을 매일 하나씩 첫 화면에 올리라고 했다"
    },
    {
     "who": "15:32 ~ 16:48 · 세션",
     "what": "그날의 화제를 가려 보는 구역, 여러 의견을 모아 보는 구역, 풍자 구역, 인기 단어 구역을 한 시간 정도 사이에 차례로 만들어 올렸다"
    },
    {
     "who": "17:03 · 저자",
     "what": "「사이트 너뮤 난잡하다 유입 경로에 맞춰서 메인.최적화 시켜」"
    },
    {
     "who": "17:02 ~ 18:56 · 세션",
     "what": "기획부터 다시 잡았다고 보고했다. 첫 화면을 주제별 입구 넷으로 줄이고, 옛 이름으로 만들어 두었던 다른 나라 말 페이지와 옮겨 가는 페이지를 지웠다"
    },
    {
     "who": "18:56 · 세션의 보고",
     "what": "페이지 수가 3,753개에서 1,360개로 줄었다"
    }
   ],
   "result": "두 시간이 안 되어 사이트의 페이지가 3,753개에서 1,360개로 줄었다. 저자가 말한 것은 첫 화면이 어지럽다는 것이었고, 세션은 그것을 사이트 전체의 정리로 받아들였다. 지운 것이 필요 없는 것이었는지를 저자가 따로 확인한 기록은 없다.",
   "note": "페이지 수는 세션의 보고이고 페이지 목록으로 직접 센 값이 아니다. 지운 것은 저장소의 기록에 남아 있다.",
   "url": "https://sungprofile.cloud/park/archive/flow/w06.html#c2"
  },
  {
   "id": "w06-3",
   "cluster": "pivot",
   "also": [],
   "title": "새벽 세 시간 반 동안 사이트의 이름이 세 번 바뀌었다",
   "when": "2026년 11월 3일 4시 18분 ~ 7시 50분",
   "from": "사이트의 방향을 바꿀 때 팀이 따라가는 흐름",
   "situation": "사이트의 정체를 다시 정한다. 광고 심사가 다시 통과되지 않았고, 저자는 새벽에 개발 세션에 입력하고 있었다. 같은 시각에 마케터 세션도 돌고 있었다.",
   "steps": [
    {
     "who": "04:18 · 저자 → 개발",
     "what": "「사이트를 싹 메거진으로 바꿔 에드센스 또 불통이니」"
    },
    {
     "who": "04:19 ~ 04:20 · 개발",
     "what": "사이트의 이름을 잡지 이름으로 바꾸고 안내 캐릭터를 모두 빼는 수정을 시작해 전체 생성을 걸었다"
    },
    {
     "who": "04:20 · 저자",
     "what": "실행을 멈추게 하고 입력했다. 「다 빼는게 아니라 요소로」"
    },
    {
     "who": "04:24 ~ 04:30 · 저자",
     "what": "「사이트 컨샙 자체를 단기 중기 장기 키워드로 나누거 사람들이 궁금해ㅜ할만한 것들을 분석하는 엔진을 통해 그 궁금해 하는 것들을 모아 넣는 사이트로 가」. 이어서 잡지가 아니라 분석가의 느낌으로 가자고 했다"
    },
    {
     "who": "04:25 · 마케터 → 개발",
     "what": "찾는 표현 417건을 수명에 따라 셋으로 나눈 목록의 첫 판과 그것을 만드는 프로그램을 알렸다"
    },
    {
     "who": "04:28 ~ 05:30 · 개발",
     "what": "겹쳐 돌던 생성을 강제로 끄고, 이름을 둘째 것으로 바꾸고, 첫 화면에 수명별 세 구역과 단어 지도를 넣었다"
    },
    {
     "who": "05:06 · 저자",
     "what": "「에드센스 통과 가능하게 싹 바꿔」"
    },
    {
     "who": "05:08 ~ 05:29 · 개발",
     "what": "내용이 짧은 페이지를 검색에서 빼는 기준을 높였다. 점검 기록에서 페이지 목록의 주소는 2,685개에서 1,273개로 줄고 검색에서 감춘 비율은 15%에서 60%로 올랐다. 그사이에 끊어진 링크가 34개까지 늘었다가 06시 10분에 0이 되었다"
    },
    {
     "who": "07:09 · 저자",
     "what": "첫 화면의 위와 아래에 서로 다른 이름이 보여 다른 서비스처럼 보인다는 것을 포함해 고칠 것을 번호로 적은 긴 지시서를 붙여 넣었다"
    },
    {
     "who": "07:50 · 개발",
     "what": "첫 화면을 전면 고쳐 올렸다. 이름은 처음의 것에 가까운 하나로 통일되었다"
    }
   ],
   "result": "이름은 세 번 바뀌어 처음 것 가까이로 돌아왔고, 그 세 시간 반에 정해져 끝까지 남은 것은 이름이 아니라 검색에서 감춘 페이지의 비율이었다. 60%로 오른 그 비율은 6일 뒤에도 55%였다.",
   "note": "사이트의 제목이 바뀐 것과 주소의 수와 감춘 비율은 저장소와 점검 기록에서 확인된다. 이름을 처음 것에 가깝게 되돌리라는 저자의 입력은 찾지 못했다. 강제로 끈 생성 때문에 올리는 단계가 한 번 실패했다고 개발 세션이 보고했다.",
   "url": "https://sungprofile.cloud/park/archive/flow/w06.html#c3"
  },
  {
   "id": "w06-4",
   "cluster": "pivot",
   "also": [],
   "title": "첫 화면을 다섯 번 고쳐 올렸다",
   "when": "2026년 11월 3일 7시 3분 ~ 4일 15시 5분",
   "from": "사이트의 방향을 바꿀 때 팀이 따라가는 흐름",
   "situation": "화면의 디자인을 고친다. 저자는 새벽에 만들어진 첫 화면이 마음에 들지 않았다.",
   "steps": [
    {
     "who": "07:03 · 저자 → 개발",
     "what": "참고할 사이트들을 보고 만들라고 했다"
    },
    {
     "who": "07:03 · 개발",
     "what": "「그 레퍼런스들이 뭔지 제가 못 찾았어요 … 레퍼런스 사이트 링크나 캡처 이미지를 몇 개 주세요」"
    },
    {
     "who": "07:09 · 저자",
     "what": "3,766자의 지시서를 붙여 넣었다. 「… 색상만 바꾸는 작업으로 끝내지 말고, 정보 순서·반복·타이포그래피·컴포넌트를 함께 수정하라 …」"
    },
    {
     "who": "07:50 · 09:49 · 14:55 · 17:32 · 개발",
     "what": "첫 화면을 네 번 고쳐 올렸다. 그사이에 저자는 화면을 직접 본 평가문을 세 번 붙여 넣었다"
    },
    {
     "who": "10:58 · 저자",
     "what": "「하지않은것을 보고하는게 아니라 하지 않은것 까지 하고 보고를 해라 쫌」"
    },
    {
     "who": "다음 날 09:48 · 개발",
     "what": "다섯 번째로 고쳐 올렸다. 내용이 얇은 페이지 9개를 검색에서 빼고 문의와 이용약관을 보강했다"
    }
   ],
   "result": "세션이 참고할 것을 찾지 못했다고 답하자 저자는 말로 더 설명하지 않고 번호와 값이 적힌 지시서를 주었다. 그 뒤로는 고쳐 올리고, 화면을 본 평가를 받고, 다시 고치는 일이 다섯 번 돌았다. 그사이에 저자가 직접 친 입력은 대부분 한 글자였다.",
   "note": "고쳐 올린 다섯 번은 저장소의 기록으로 확인된다. 지시서와 평가문을 누가 썼는지는 기록에 없다. 디자인이 나아졌다고 저자가 마지막에 판정한 기록도 없다.",
   "url": "https://sungprofile.cloud/park/archive/flow/w06.html#c4"
  },
  {
   "id": "w07-1",
   "cluster": "count",
   "also": [],
   "title": "방문자를 묻고 세고 뒤집기까지",
   "when": "2026년 10월 16일 ~ 20일",
   "from": "사이트에 누가 왔는지 세는 흐름",
   "situation": "방문이 실제로 있는지 확인한다. 사이트에는 구글 애널리틱스의 측정 코드만 들어 있었다.",
   "steps": [
    {
     "who": "10월 16일 23:15 · 저자",
     "what": "「사이트.들어온 사람 있나 나말고」"
    },
    {
     "who": "23:15 · 세션",
     "what": "구글 애널리틱스에서 지난 한 주의 활성 사용자가 37명이라고 읽었다. 그 가운데 해외의 방문은 데이터센터가 있는 도시에서 왔고 머문 시간이 0초여서, 실제 방문자는 10명 정도이라고 보고했다. 들어온 길은 모두 직접 방문이고 검색에서 온 사람은 없었다"
    },
    {
     "who": "10월 18일 08:43 · 세션",
     "what": "관리 화면에 사이트가 스스로 세는 방문 집계를 만들어 넣었다. 오늘과 최근 30분의 방문, 들어온 길, 지역, 본 페이지가 나온다"
    },
    {
     "who": "08:46 · 저자",
     "what": "「다 0 명인데?」"
    },
    {
     "who": "세션",
     "what": "집계를 08시 45분에 켰으므로 아직 0이라고 답했다"
    },
    {
     "who": "10월 20일 18:30 · 저자",
     "what": "「우리의 사이트 유입경로에 대해서 상세하게 분석해봐」"
    },
    {
     "who": "18:32 · 세션",
     "what": "3일 치 기록을 한 번 읽어 분석 파일을 만들었다. 날짜별 방문자는 91명, 151명, 207명이었다. 하지만 유튜브에서 왔다고 적힌 97명은 모두 같은 도시의 데스크톱이었고, 구글에서 왔다고 적힌 31건 가운데 29건은 미국의 데이터센터 지역이었다. 이것을 빼면 그날의 방문자는 87명 안팎이라고 적었다"
    },
    {
     "who": "18:32 · 홍보 → 세션",
     "what": "「정정 확인했어요. 쇼츠 재개 근거로 방문자 비중을 쓰지 않을게요」"
    }
   ],
   "result": "분석 파일은 앞서 홍보 세션에 전했던 해석, 즉 유튜브가 방문의 59%를 데려온다는 말을 뒤집어야 한다고 적었다. 그 방문은 올린 영상을 확인하려고 팀이 스스로 연 것이었다. 그 뒤에 팀의 기기에서 연 방문을 집계에서 빼는 방법이 더해졌다.",
   "note": "방문자의 수는 모두 세션의 보고다. 같은 10월 18일의 방문자가 그날 오후의 답에서는 12명과 31명이었고 2일 뒤의 분석 파일에서는 91명이었다. 분석 파일은 그 사이에 방문자를 구분하는 방식이 바뀌었다고 적고 있다. 같은 파일에 따르면 구글 서치 콘솔의 28일 노출은 6회, 클릭은 2회였고, 표본으로 본 페이지 60개 가운데 구글에 색인된 것은 없었다.",
   "url": "https://sungprofile.cloud/park/archive/flow/w07.html#c1"
  },
  {
   "id": "w07-2",
   "cluster": "limit",
   "also": [
    "count"
   ],
   "title": "방문을 세다가 무료 한도의 85%를 썼다",
   "when": "2026년 10월 19일 20시 31분 ~ 21시 2분",
   "from": "사이트에 누가 왔는지 세는 흐름",
   "situation": "무료로 쓰는 서비스의 한도를 지킨다. 방문 기록은 Cloudflare의 D1에 쌓였고, 관리 화면을 열 때마다 방문 집계가 그 기록 전체를 읽었다. D1의 무료 한도는 하루에 읽을 수 있는 줄 수로 정해져 있다.",
   "steps": [
    {
     "who": "20:31 · 저자",
     "what": "Cloudflare가 보낸 사용량 경고를 세션에 붙여 넣었다. 하루 한도의 77%를 썼고 유료로 바꾸지 않고 넘기는 것이 목표라고 적었다"
    },
    {
     "who": "세션",
     "what": "어떤 조회가 줄을 가장 많이 읽는지를 재었다. 그날 읽은 줄은 한도 500만 줄 가운데 4,278,620줄로 85%였고, 쓰기는 한도의 7%에도 못 미쳤다"
    },
    {
     "who": "찾은 원인",
     "what": "관리 화면의 방문 집계가 조회 12개로 방문 기록 전체를 번번이 훑고 있었다"
    },
    {
     "who": "21:02 · 고친 것",
     "what": "집계를 최근 7일로 한정하고, 미리 더해 둔 요약 표를 읽게 하고, 한 번 읽은 결과를 잠시 간직해 다시 쓰게 했다"
    },
    {
     "who": "다음 날 · 홍보",
     "what": "다른 세션에 보낸 메시지에 한도 때문에 화면을 반복해 새로 고칠 필요는 없다고 적었다"
    }
   ],
   "result": "방문을 세려고 만든 화면이 그날 가장 많은 사용량을 썼다. 경고를 받은 세션이 그 자리에서 원인을 재어 고쳤고, 고친 내용이 다른 세션의 일하는 방식에도 전해졌다.",
   "note": "읽은 줄 수와 원인은 세션이 잰 값이다. 고친 뒤의 사용량을 다시 잰 기록은 없다.",
   "url": "https://sungprofile.cloud/park/archive/flow/w07.html#c2"
  },
  {
   "id": "w09-1",
   "cluster": "blocked",
   "also": [],
   "title": "거절 메일이 온 뒤의 한 시간 반",
   "when": "2026년 10월 23일 12시 26분 ~ 13시 55분",
   "from": "애드센스 심사에서 거절된 날의 흐름",
   "situation": "광고 심사의 결과에 대응한다. 사이트를 연 지 9일째였고, 그날 아침에 저자는 세 세션에 글을 계속 늘리라는 지시를 각각 주어 둔 상태였다.",
   "steps": [
    {
     "who": "12:26 · 구글 애드센스의 메일",
     "what": "「애드센스를 사용하려면 사이트에서 발견된 문제를 수정해야 합니다.」 구체적인 사유는 메일에 없었다"
    },
    {
     "who": "12:55 ~ 13:01 · 저자",
     "what": "작가 세션과 마케터 세션에 각각 확인하라고 했고, 두 세션에 같은 질문을 보냈다. 「왜떨어진거냐 대체?」"
    },
    {
     "who": "13:02 · 마케터",
     "what": "애드센스의 화면에서 「주의 필요 · 가치가 별로 없는 콘텐츠」라는 표시를 확인했다. 사이트의 구역마다 페이지 수와 본문의 길이를 세어 표로 보고하면서 「이 표는 제 분석이고 애드센스가 직접 밝힌 건 아니에요」라고 적었다"
    },
    {
     "who": "13:03 · 저자",
     "what": "두 세션에 각각 「해」라고 입력했다"
    },
    {
     "who": "13:03 ~ 13:55 · 세 세션이 따로",
     "what": "마케터는 여러 구역을 검색에서 빼는 수정을 넣었다가 되돌려 보관했다. 작가는 내용이 얇은 구역을 검색에서 빼고 올렸다. 개발은 공모전 상세 페이지의 틀린 문장을 고쳤다"
    },
    {
     "who": "13:25 · 저자",
     "what": "작가 세션이 낸 선택지 가운데 「상위 노출 가치 있는 것만 색인」을 골랐다"
    },
    {
     "who": "13:29 · 작가",
     "what": "충실도 점수를 정해 진행 중인 공모전 480건 가운데 119건만 검색에 남겼다고 보고했다"
    },
    {
     "who": "13:46 · 작가",
     "what": "「통과 가능성을 올리는 정리는 현재 할 수 있는 만큼 끝냈어요. 다만 구글 심사는 제가 보장할 수 없고, 어느 페이지가 문제였는지도 구글이 알려 주지 않아서 아래는 추정에 따른 조치예요.」"
    }
   ],
   "result": "구글이 알려 준 것은 표시 한 줄이었고, 어느 페이지가 문제인지는 알려 주지 않았다. 세 세션은 서로 다른 구역을 원인으로 짚었고, 같은 프로그램 파일을 각자 고쳐 올렸다.",
   "note": "그 한 시간 반 동안 사이트의 페이지 목록에 든 주소의 수는 4,805개에서 1,685개로, 다시 4,735개로, 1,575개와 1,361개를 거쳐 4,495개로 바뀌었다. 한 세션이 뺀 것을 다른 세션의 수정이 되돌려 놓은 것이다.",
   "url": "https://sungprofile.cloud/park/archive/flow/w09.html#c1"
  },
  {
   "id": "w09-2",
   "cluster": "blocked",
   "also": [],
   "title": "고친 뒤에 다시 청하지 않았다",
   "when": "2026년 10월 23일 저녁 ~ 24일 아침",
   "from": "애드센스 심사에서 거절된 날의 흐름",
   "situation": "다시 심사를 청할 만큼 고쳐졌는지 판단한다. 저녁부터는 개발 세션 하나가 고치는 일을 맡았다.",
   "steps": [
    {
     "who": "18:52 · 저자 → 개발",
     "what": "긴 지침을 붙여 넣었다. 「… 승인 보장을 주장하지 말고, … 글 수, 글자 수, 방문자 수를 임의의 승인 기준으로 제시하지 않는다. 1. 신규 콘텐츠 양산보다 기존 품질 점검을 우선한다 …」"
    },
    {
     "who": "개발",
     "what": "공모전 페이지를 공식 공고와 하나씩 대조했다. 대조한 수는 10건에서 43건으로, 다음 날 새벽에는 90건으로 늘었다"
    },
    {
     "who": "20:07 · 저자 → 개발",
     "what": "「… 코드 수정만으로 완료 처리하지 말고 기존 페이지를 재생성·배포한 뒤, 실제 공개 URL에서 수정 결과를 확인하라. 캐시가 있다면 갱신 여부도 점검하라.」"
    },
    {
     "who": "개발",
     "what": "새로 고친 코드는 없고, 저자가 본 것은 올린 것이 반영되기 전의 화면으로 보인다고 답했다. 주소 뒤에 표시를 붙여 연 것과 그냥 연 것의 응답이 다른 것을 근거로 들었다"
    },
    {
     "who": "세 번의 보고 끝에 · 개발",
     "what": "「아직 재심사를 권할 수준은 아닙니다.」"
    }
   ],
   "result": "다시 심사를 청하는 버튼은 이 2일 동안 눌리지 않았다. 세션은 고친 수를 보고하면서도 청할 만하다고 말하지 않았고, 청하는 일은 저자에게 남아 있었다.",
   "note": "공식 공고와 대조한 건수는 개발 세션의 보고다. 90건은 그때 진행 중이던 공모전 480건의 19%쯤이었다.",
   "url": "https://sungprofile.cloud/park/archive/flow/w09.html#c2"
  },
  {
   "id": "w10-1",
   "cluster": "collide",
   "also": [],
   "title": "세 세션이 같은 프로그램 파일을 고쳤다",
   "when": "2026년 10월 23일 13시 3분 ~ 14시 8분",
   "from": "만드는 일은 한 세션에, 운영은 여러 세션에",
   "situation": "사이트를 생성하는 프로그램을 고친다. 사이트 전체가 프로그램 파일 하나로 생성되고 있었고, 그 파일을 실행하면 작업 폴더에 있는 변경이 누구의 것이든 모두 함께 올라갔다. 그날 낮에 광고 심사에서 거절되자 저자는 두 세션에 각각 고치라고 했다.",
   "steps": [
    {
     "who": "13:03:03 · 저자 → 작가",
     "what": "「해」"
    },
    {
     "who": "13:03:37 · 저자 → 마케터",
     "what": "「해」"
    },
    {
     "who": "13:03:34 ~ 13:03:52 · 작가",
     "what": "프로그램 파일을 네 군데 고쳐 내용이 얇은 구역을 검색에서 빼게 했다"
    },
    {
     "who": "13:03:54 ~ 13:04:10 · 마케터",
     "what": "같은 파일을 복사해 두고 다른 구역 여덟 개를 검색에서 빼는 수정을 넣었다. 복사한 파일에는 2초 전에 작가가 넣은 수정이 이미 들어 있었으나 마케터는 그것을 몰랐다"
    },
    {
     "who": "13:04:51 ~ 13:10:03 · 작가",
     "what": "프로그램을 실행해 사이트를 생성하고 올렸다"
    },
    {
     "who": "13:07 · 올라간 사이트",
     "what": "페이지 목록의 주소가 4,805개에서 1,685개로 줄었다"
    },
    {
     "who": "13:10:20 · 마케터",
     "what": "자기 수정을 따로 보관하고 파일을 복사해 둔 것으로 되돌렸다. 「사이트 코드는 아무것도 바꾸지 않았어요」라고 보고했다"
    },
    {
     "who": "13:13 ~ 13:42 · 개발",
     "what": "방금 올라간 것에 자기가 넣지 않은 변경이 들어 있는 것을 저장소의 기록에서 찾아냈다. 메모리 파일에 이 프로그램은 작업 폴더의 변경을 누구의 것이든 모두 올린다는 것과, 고치기 전에 남이 고치다 만 것이 있는지를 먼저 본다는 것을 적었다. 자기 수정은 올리지 않고 저자에게 물었다"
    },
    {
     "who": "13:45 · 마케터의 보고",
     "what": "「작업 중에 다른 세션이 같은 build.py를 고치고 있다는 걸 발견했어요 … 담당을 나누는 걸 제안해요.」"
    },
    {
     "who": "14:04 · 저자 → 개발",
     "what": "「ㄱ」"
    },
    {
     "who": "14:04 ~ 14:08 · 개발",
     "what": "파일을 복사해 두고 검색에서 빼는 기준을 조정해 올렸다"
    }
   ],
   "result": "세 세션은 모두 자기 일을 제대로 했다. 그런데 서로가 같은 파일을 고치고 있다는 것을 몰랐고, 한 세션이 되돌렸다고 믿은 수정이 다른 세션의 실행에 실려 올라갔을 수 있다. 한 시간 동안 사이트의 주소 수는 여러 번 크게 바뀌었다.",
   "note": "주소의 수는 저장소의 기록에서 직접 센 값이다. 마케터의 수정이 13시 7분에 실제로 함께 올라갔는지는 그 기록의 변경 내용을 열어 보지 않아 확정하지 못했다. 프로그램 파일을 한 세션만 고치라는 저자의 지시는 이 시간대의 기록에 없고, 그 뒤의 규칙은 세션들이 스스로 적은 것이다.",
   "url": "https://sungprofile.cloud/park/archive/flow/w10.html#c1"
  },
  {
   "id": "w12-1",
   "cluster": "build",
   "also": [],
   "title": "하루에 안내 글 261편이 나간 날",
   "when": "2026년 10월 28일 9시 44분 ~ 18시 16분",
   "from": "글을 많이 내는 날의 흐름과 걸러 내는 단계",
   "situation": "찾는 사람이 많은 표현에 맞는 글을 낸다. 전날까지 검색으로 들어오는 방문이 조금씩 늘고 있었고, 마케터가 주제를 고르고 작가가 쓰고 개발이 올리는 순서가 5일째 돌고 있었다.",
   "steps": [
    {
     "who": "09:44 · 저자 → 마케터",
     "what": "「키워드 분석 들어가 점점 자연유입이 느는거 보니 좋은 컨텐츠도 중요하니」"
    },
    {
     "who": "09:48 ~ 17:46 · 작가 → 개발",
     "what": "원고를 20차례쯤 나눠 넘겼다. 한 차례에 12편에서 36편이다. 이날 작가 세션이 서브에이전트를 실행한 횟수는 88회다"
    },
    {
     "who": "09:59 ~ 18:16 · 개발",
     "what": "넘겨받을 때마다 사이트에 넣어 올렸다. 올린 기록은 15번이고 한 번에 8편에서 36편이다. 원고에 공식 출처로 가는 주소가 세 개 이상 있는지를 프로그램으로 검사했다"
    },
    {
     "who": "14:07 · 14:32 · 저자 → 마케터",
     "what": "「계쏙 키워드 분석하고 올려 검색유입이 늘어나고있으니」, 「계쏙 올려」"
    },
    {
     "who": "11:04 · 개발 → 작가",
     "what": "12편을 올렸다고 한 보고를 2분 뒤에 스스로 고쳤다. 그때는 바뀐 것이 저장소에 올라가지 않아 12편 모두 열리지 않았다"
    },
    {
     "who": "18:16 · 결과",
     "what": "안내 글이 아침의 103편에서 364편이 되었다"
    }
   ],
   "result": "하루에 261편이 나갔다. 개발 세션은 그날 보고에 사실관계는 따로 검증하지 않았다고 적었다. 편수가 늘어나는 속도를 걸러 내는 단계가 따라가지 못한 날이다.",
   "note": "편수는 지금의 저장소에서 날짜별로 직접 센 값이다. 올린 것이 열린다는 보고와 검색 통계의 수치는 세션이 보고한 것이다.",
   "url": "https://sungprofile.cloud/park/archive/flow/w12.html#c1"
  },
  {
   "id": "w12-2",
   "cluster": "wrong",
   "also": [],
   "title": "마감이 지난 공고 239건이라는 보고와 30분 뒤의 정정",
   "when": "2026년 10월 30일 11시 33분 ~ 12시 43분",
   "from": "글을 많이 내는 날의 흐름과 걸러 내는 단계",
   "situation": "사이트에 실린 자료가 맞는지 확인한다. 공모전 자료는 프로그램이 공고를 모아 마감과 상금을 뽑아 넣은 것이었다. 영상을 만드는 세션이 영상에 쓸 자료를 공고의 원문과 대조하고 있었다.",
   "steps": [
    {
     "who": "11:33 · 영상 쪽 세션 → 개발",
     "what": "「「접수중」으로 떠 있는 공모전 중 239건이 원문상 이미 마감된 공고입니다」. 918건을 대조한 결과이고, 원인은 마감 칸에 접수 마감일이 아니라 발표일이나 시상식 날짜가 들어간 것이라고 알렸다. 상금이 60만 원인데 60억으로 들어간 것 같은 사례도 함께 보냈다"
    },
    {
     "who": "11:57 · 개발",
     "what": "마감일을 원문의 접수 기간 기준으로 고치고 상금 세 건을 바로잡아 올렸다"
    },
    {
     "who": "12:03 · 영상 쪽 세션 → 개발",
     "what": "앞의 보고를 고쳤다. 「사이트 노출이 8건이었다 … 제 측정이 master.jsonl 전체(1,283건) 기준이었는데 「사이트에 떠 있다」고 표현한 게 과했습니다」"
    },
    {
     "who": "12:43 · 개발",
     "what": "프로그램이 접수 기간의 형식을 읽지 못해 빠져 있던 공고 15건의 페이지를 더했다"
    }
   ],
   "result": "자료의 오류를 찾은 것은 그 자료를 받아 쓰는 세션이었다. 그리고 그 세션은 자기가 센 범위가 사이트에 실제로 나온 것보다 넓었다는 것을 30분 뒤에 스스로 고쳐 알렸다. 사이트에는 이미 일부를 걸러 내는 조건이 있었고, 실제로 잘못 나와 있던 것은 여덟 건이었다.",
   "note": "",
   "url": "https://sungprofile.cloud/park/archive/flow/w12.html#c2"
  },
  {
   "id": "w14-1",
   "cluster": "count",
   "also": [],
   "title": "목표를 하루 방문자의 수로 정했다",
   "when": "2026년 11월 2일 10시 52분 ~ 14시 20분",
   "from": "목표를 수로 정하고 급한 글을 빨리 올리는 흐름",
   "situation": "팀의 목표를 정한다. 사이트를 연 지 20일쯤 되었고, 세션들은 각자 받은 지시대로 글과 화면을 늘리고 있었다.",
   "steps": [
    {
     "who": "10:52 · 저자 → 개발",
     "what": "「그냥 자연 유입이 월 100명은이제 되는데」, 「최소 1000명에서 만명은 들어오게 해야해」"
    },
    {
     "who": "10:56 · 저자 → 마케터",
     "what": "「1000명이상 일 들어오게 목적을 잡고 개발이랑 계속 협업해」, 「결국 12월달까지 1만명이 하루에 들어오는 사이틀르 만드는게 목적이니」"
    },
    {
     "who": "13:38 · 개발",
     "what": "매일 방문이 어느 길로 들어왔는지를 더해 두는 집계와 그것을 읽는 프로그램을 만들었다"
    },
    {
     "who": "14:11 · 개발의 보고",
     "what": "검색으로 들어온 방문의 중심은 돈에 관한 안내 글(57명)과 질문 형태로 쓴 이슈 글 한 편(30명)이고, 화제 순위와 검색어 페이지로 들어온 방문은 없다"
    },
    {
     "who": "14:14 ~ 14:20 · 개발 ↔ 마케터",
     "what": "찾는 표현을 조사하는 일은 마케터가, 페이지와 사이트 생성은 개발이 맡기로 메시지로 정했다. 목표는 이번 달에 하루 1,000명, 12월에 하루 1만 명이고 지금은 하루 100명쯤이라고 적었다"
    }
   ],
   "result": "목표가 수로 정해지자 세션이 먼저 한 일은 지금의 수가 어디에서 오는지를 재는 것이었다. 그 결과로 방문이 없는 종류의 페이지가 드러났고, 두 세션이 맡을 일이 나뉘었다.",
   "note": "방문의 수는 개발 세션이 집계를 읽어 보고한 값이다. 목표로 말한 1,000명이 하루의 수인지 한 달의 수인지는 저자의 입력만으로는 가려지지 않으며, 두 세션은 하루의 수로 읽고 일을 나누었다.",
   "url": "https://sungprofile.cloud/park/archive/flow/w14.html#c1"
  },
  {
   "id": "w14-2",
   "cluster": "build",
   "also": [],
   "title": "글 한 편만 빨리 올리는 길을 냈다",
   "when": "2026년 11월 2일 16시 40분 ~ 16시 54분",
   "from": "목표를 수로 정하고 급한 글을 빨리 올리는 흐름",
   "situation": "급한 글을 빨리 올린다. 그때까지 글을 올리는 길은 사이트 전체를 다시 생성해 올리는 것 하나였고, 한 번에 7분에서 10분이 걸렸다. 그날 오후에 저자는 그날의 소식을 다루는 글을 바로바로 올리고 싶어 했다.",
   "steps": [
    {
     "who": "16:17 · 저자 → 마케터",
     "what": "「의견은 절대 넣지말고 펙트체크만 해서 올려란느 소리야 객관적 자료만」"
    },
    {
     "who": "16:40 · 저자 → 마케터",
     "what": "「글올리는 것도 좀 간소화 시키고 올릴때 마다 베포가 아니라 API 기반으로 올리게 하고」"
    },
    {
     "who": "16:41 · 개발",
     "what": "바깥에서 부르면 글이 올라가는 서버를 두려면 사이트의 주소가 지나가는 길을 바꿔야 해서 변경이 크고, 변경을 가장 적게 한다는 방침과 맞지 않는다고 답했다"
    },
    {
     "who": "16:42 · 개발",
     "what": "대신 글 한 편의 자료 파일을 주면 그 글의 페이지와 그 글이 들어가는 목록만 다시 만들어 바뀐 파일만 올리는 명령을 만들고, 마케터에게 다 되었다고 알렸다"
    },
    {
     "who": "16:54 · 마케터",
     "what": "새 명령으로 첫 글을 올렸다"
    }
   ],
   "result": "요청을 받은 지 14분 만에 새 길이 났다. 이날부터 그날의 소식을 다루는 글은 마케터가 써서 직접 올리고, 개발은 화면의 틀과 전체 생성을 맡는다. 넘기는 단계가 하나 줄었다.",
   "note": "저자의 요청은 바깥에서 부르는 서버를 만들라는 뜻으로도 읽을 수 있었다. 개발 세션이 그렇게 하지 않고 자기 컴퓨터에서 실행하는 명령으로 풀었다는 것까지가 기록으로 확인된다.",
   "url": "https://sungprofile.cloud/park/archive/flow/w14.html#c2"
  },
  {
   "id": "w18-1",
   "cluster": "collide",
   "also": [],
   "title": "보고하고 기다리는 세션을 저자가 재촉했다",
   "when": "2026년 10월 23일 ~ 29일",
   "from": "사람의 입력은 짧아지고 세션끼리의 메시지는 늘어나는 흐름",
   "situation": "세션이 멈추지 않고 일을 이어 가게 한다. 세션은 맡은 일을 마치면 보고를 쓰고 다음 입력을 기다린다. 저자는 낮에 회사에 있어서 그 보고를 몇 시간 뒤에야 본다.",
   "steps": [
    {
     "who": "10월 23일 13:45 · 13:49 · 저자 → 개발",
     "what": "「너는 왜 말이없니?」, 「왜 자꾸 너는 자니?」"
    },
    {
     "who": "10월 27일 14:40 · 저자 → 작가",
     "what": "「그냥 쭉쭉올려라고 했는데 왜 자꾸 멈춤?」"
    },
    {
     "who": "작가",
     "what": "글을 올리기 전에 확인할 것이 있어 물어 놓고 기다리고 있었다"
    },
    {
     "who": "10월 29일 13:11 · 저자 → 마케터",
     "what": "「넌 왜 자꾸 글을 안쓰니?」"
    },
    {
     "who": "13:11 · 저자 → 개발",
     "what": "「글들 안올리니?」"
    },
    {
     "who": "13:20 · 저자 → 마케터",
     "what": "「계쏙 글ㅇ르 올려」"
    },
    {
     "who": "그 뒤 · 세션들",
     "what": "한 묶음을 마치면 저자에게 보고하고 기다리는 대신, 다음 세션에 메시지를 보내고 다음 묶음으로 넘어갔다. 마케터가 주제를 올리면 작가가 쓰고, 작가가 납품하면 개발이 올리고, 개발이 올렸다고 알리면 작가가 열어 보았다"
    }
   ],
   "result": "세션이 멈춘 자리는 대부분 저자에게 보고하는 자리였다. 보고를 받는 쪽을 저자에서 다음 세션으로 바꾸자 일이 이어졌다. 저자에게 오는 것은 고를 것이 있을 때와 되돌리기 어려운 일을 앞두었을 때로 줄었다.",
   "note": "저자의 입력은 세션의 기록에 남은 원문이다. 세션들이 저자를 기다리지 않고 서로에게 넘기게 된 것이 어느 입력 때문이었는지는 하나로 짚을 수 없다.",
   "url": "https://sungprofile.cloud/park/archive/flow/w18.html#c1"
  },
  {
   "id": "w1h-1",
   "cluster": "collide",
   "also": [
    "blocked"
   ],
   "title": "메시지가 막혀 있던 반나절과 파일로 낸 길",
   "when": "2026년 10월 23일 9시 12분 ~ 14시 4분",
   "from": "세션 사이에 일이 넘어가는 길을 내는 흐름",
   "situation": "한 세션의 결과를 다른 세션에 전한다. 그날 아침에 저자는 개발과 작가와 마케터에게 서로 이야기하면서 일하라고 각각 지시했다. 그런데 세션끼리 메시지를 보내는 기능이 저자의 컴퓨터에서 오류로 막혀 있었다.",
   "steps": [
    {
     "who": "09:11 · 저자 → 개발",
     "what": "「너는 마케터 세션이랑 같이 이야기 하면서 키워드 관련으로 우리사이트 홍보를 양질의 데이터를 올리는 디자인 관점에서 계속 연구해서 홍보에게 넘겨」"
    },
    {
     "who": "09:12 · 개발",
     "what": "마케터에게 메시지를 보내려 했으나 거절되었다. 메시지를 보내기 전에 실행되도록 설정에 걸려 있던 검사 프로그램이 지워진 폴더를 가리키고 있었다. 마케터는 09시 38분에, 작가는 10시 26분에 같은 오류를 만났다"
    },
    {
     "who": "09:39 · 마케터",
     "what": "메시지 대신 파일로 전했다. 홍보 세션에 줄 것은 두 컴퓨터가 함께 보는 폴더에, 다른 세션에 줄 요청은 그 세션의 자료 폴더에 요청서 파일로 두었다. 메모리 파일에는 오류의 원인과 「훅 수정은 사용자 설정이라 건드리지 않음」이라고 적었다"
    },
    {
     "who": "14:03 · 개발 → 저자",
     "what": "「메시지 훅 오류는 그대로여서 홍보와 파일로만 소통 중입니다. 훅을 지워도 된다고 하시면 지우겠습니다.」"
    },
    {
     "who": "14:03 · 저자",
     "what": "「ㄱ」"
    },
    {
     "who": "14:04 · 개발",
     "what": "설정 파일을 복사해 둔 뒤에 오류를 내던 설정 두 개를 지웠다"
    },
    {
     "who": "14:04 · 결과",
     "what": "홍보 세션으로 가는 첫 메시지가 전송되었다"
    }
   ],
   "result": "다섯 시간 동안 세 세션은 같은 오류를 만났고, 셋 가운데 누구도 설정을 스스로 고치지 않았다. 그사이에 일은 파일로 넘어갔다. 설정은 저자가 허락한 뒤에, 복사본을 남기고 고쳐졌다.",
   "note": "같은 오류는 그 뒤에도 10월 27일과 30일과 31일에 한 번씩 기록에 남아 있다. 지운 설정이 왜 다시 오류를 냈는지는 확인하지 못했다.",
   "url": "https://sungprofile.cloud/park/archive/flow/w1h.html#c1"
  },
  {
   "id": "w1h-2",
   "cluster": "collide",
   "also": [],
   "title": "기획 하나가 세 세션을 한 번에 지나갔다",
   "when": "2026년 10월 26일 8시 13분 ~ 10시 2분",
   "from": "세션 사이에 일이 넘어가는 길을 내는 흐름",
   "situation": "새 기능을 기획에서 공개까지 가져간다. 사이트에는 요리법 페이지가 있었고, 저자는 여기에 식단 관리를 섞고 싶어 했다.",
   "steps": [
    {
     "who": "08:13 · 저자 → 마케터",
     "what": "「레시피와 다이어트를 섞어서 기획해봐 그리고 작가에게 던지고 작가는 개발쪽에 던지게 화면 전체를 수정해라고 해 …」"
    },
    {
     "who": "08:14 · 마케터 → 작가",
     "what": "기획을 파일로 써서 그 위치를 알렸다"
    },
    {
     "who": "08:17 · 마케터 → 개발",
     "what": "운동 계획 화면을 만들어 달라는 요청을 보냈다"
    },
    {
     "who": "08:17 · 개발 → 작가",
     "what": "진행 방식 다섯 가지를 먼저 알렸다. 그 가운데 하나가 「레시피·운동마다 별도 페이지를 대량 생성하지 않습니다」였다. 3일 전에 광고 심사에서 거절된 이유로 짐작한 것을 반복하지 않겠다는 조건이었다"
    },
    {
     "who": "08:44 · 작가 → 개발",
     "what": "재료 57가지의 영양 값을 정리한 자료 파일을 납품했다"
    },
    {
     "who": "08:45 · 개발 → 작가",
     "what": "받았다고 알리면서 그 값을 어디에 쓰고 어디에 쓰지 않을지를 적었다"
    },
    {
     "who": "10:02 · 개발 → 마케터",
     "what": "식단 화면과 운동 화면이 공개 주소에서 열리는 것을 확인했다고 보고했다"
    }
   ],
   "result": "저자의 입력 하나가 1시간 50분 뒤에 공개된 화면 두 개가 되었다. 그사이에 저자가 한 일은 없다. 받는 쪽이 조건을 먼저 알리고, 받았다는 것과 열린다는 것을 메시지로 돌려보냈다.",
   "note": "화면이 열린다는 것은 개발 세션의 보고다. 영양 값이 맞는지를 누가 확인했는지는 기록에 없다.",
   "url": "https://sungprofile.cloud/park/archive/flow/w1h.html#c2"
  },
  {
   "id": "w1h-3",
   "cluster": "collide",
   "also": [],
   "title": "넘기는 순서와 끝난 조건이 정해진 저녁",
   "when": "2026년 10월 27일 18시 53분 ~ 19시 25분",
   "from": "세션 사이에 일이 넘어가는 길을 내는 흐름",
   "situation": "글이 주제에서 홍보까지 가는 순서를 정한다. 그때까지는 누가 올리고 누가 확인하는지가 그때그때 달랐다.",
   "steps": [
    {
     "who": "18:33 · 18:53 · 저자 → 마케터",
     "what": "「키워드 분석 하고 양질의 글을 제로를 준비해」, 「글써」"
    },
    {
     "who": "18:54 · 마케터 → 작가",
     "what": "쓸 주제 14개를 차례 파일에 올리고 알렸다"
    },
    {
     "who": "18:54 · 마케터 → 개발",
     "what": "「작가 납품이 들어오면 사이트에 반영(게시)해 주세요. 반영하면 슬러그를 저에게 알려 주세요, 접속 확인 후 홍보에 넘깁니다」"
    },
    {
     "who": "18:58 · 작가 → 개발",
     "what": "22편을 납품했다. 받은 주제는 14개였고 여덟 편은 작가가 더한 것이었다"
    },
    {
     "who": "18:58 · 마케터 → 작가 · 개발",
     "what": "일곱 편이 사이트에 이미 있는 글과 겹친다며 올리지 말라고 했다. 어느 글이 어느 글과 겹치는지를 짝지은 목록을 붙였다"
    },
    {
     "who": "19:01 ~ 19:14 · 작가",
     "what": "일곱 편을 다른 주제로 다시 쓰고, 이어서 여덟 편과 12편을 더 납품했다"
    },
    {
     "who": "19:25 · 개발 → 마케터 · 작가",
     "what": "「1~4차 42편 전부 게시 … 42개 모두 200 확인됨」"
    }
   ],
   "result": "마케터의 메시지 한 통이 순서를 정했다. 주제는 마케터가 내고, 글은 작가가 쓰고, 올리는 것은 개발이 하고, 열리는 것을 확인한 주소만 마케터를 거쳐 홍보로 간다. 끝났다는 말의 뜻도 이때 정해졌다. 올렸다가 아니라 열리는 것을 확인했다는 것이다.",
   "note": "이 9일 동안 넘어가는 글을 멈춰 세운 것은 겹침을 찾은 이 한 번뿐이다. 내용이 사실과 맞는지는 이 길의 어느 단계에서도 따로 확인되지 않았고, 개발 세션은 다음 날 보고에 「사실관계는 따로 검증하지 않았고 「공식 확인」 표기는 그대로 실었습니다」라고 적었다. 그 결과는 7장의 글을 많이 내는 날의 흐름에서 본다.",
   "url": "https://sungprofile.cloud/park/archive/flow/w1h.html#c3"
  },
  {
   "id": "x15-1",
   "cluster": "count",
   "also": [
    "notshown"
   ],
   "title": "페이지는 2,000개가 넘는데 색인된 것은 18%였다",
   "when": "2026년 10월 23일 아침",
   "from": "검색에서 글이 보이는지 재고 고치는 흐름",
   "situation": "사이트가 구글에서 어떤 상태인지 잰다. 그때까지 팀이 보던 수는 사이트의 페이지 수였다.",
   "steps": [
    {
     "who": "마케터",
     "what": "구글 서치 콘솔의 통계를 읽었다. 최근 7일 동안 노출은 60회쯤이고 클릭은 없었다"
    },
    {
     "who": "마케터",
     "what": "페이지 170개를 표본으로 뽑아 구글에 색인되어 있는지를 하나씩 확인했다"
    },
    {
     "who": "잰 값",
     "what": "색인된 것은 18%였다. 전체 페이지의 58%는 프로그램이 자동으로 만든 요리법 페이지였다"
    },
    {
     "who": "마케터",
     "what": "메모리 파일에 페이지 수가 아니라 색인된 수가 지표라고 적었다"
    },
    {
     "who": "그 뒤 · 프로그램",
     "what": "매일 밤 표본으로 색인 비율을 재서 기록하고, 아직 색인되지 않은 페이지 가운데 먼저 알릴 20개를 골라 홍보 세션에 넘기는 단계가 예약 작업에 더해졌다"
    }
   ],
   "result": "재는 것이 페이지 수에서 색인된 수로 바뀌었다. 한 번 잰 것이 매일 도는 프로그램이 되었고, 그 결과가 다음 세션의 할 일 목록이 되었다.",
   "note": "",
   "url": "https://sungprofile.cloud/park/archive/flow/x15.html#c1"
  },
  {
   "id": "x15-2",
   "cluster": "count",
   "also": [],
   "title": "노출은 되는데 클릭이 없는 페이지 25개",
   "when": "2026년 10월 29일 ~ 30일",
   "from": "검색에서 글이 보이는지 재고 고치는 흐름",
   "situation": "보이는데 눌리지 않는 글을 고친다. 구글의 검색 결과에서 사람에게 보이는 것은 제목과 설명 두 줄이다.",
   "steps": [
    {
     "who": "10월 29일 21:06 · 마케터 → 개발",
     "what": "「28일 노출 2,648회·클릭 36회인데, 노출 15회 이상·클릭 0인 페이지가 25개라 제목·설명을 고치려고 해요」"
    },
    {
     "who": "마케터",
     "what": "25개 페이지마다 사람들이 찾은 표현과 지금의 제목을 나란히 놓고 고칠 제목을 써서 넘겼다"
    },
    {
     "who": "10월 30일 09:12 · 개발 → 마케터",
     "what": "제목과 설명을 고친 것을 반영했다고 알렸다"
    },
    {
     "who": "09:12 · 마케터",
     "what": "「비교는 11/12 전후에 서치콘솔로」"
    },
    {
     "who": "따로 한 것",
     "what": "안내 글 40편을 20편씩 둘로 나눠 한쪽만 고치고, 매일 아침 프로그램이 두 묶음의 색인과 노출을 기록하게 했다"
    }
   ],
   "result": "고친 날에 결과를 판단하지 않고 두 주 뒤에 보기로 날짜를 적어 두었다. 고친 것이 효과가 있었는지를 알려면 고치지 않은 쪽이 있어야 하므로 비교할 묶음을 따로 남겼다.",
   "note": "노출과 클릭의 수는 마케터 세션이 구글 서치 콘솔에서 읽은 값이다. 비교하기를 시작할 때 40편 가운데 색인된 글이 세 편뿐이어서, 처음에 보는 수는 방문이 아니라 색인된 글의 수와 처음 노출된 글의 수로 정했다.",
   "url": "https://sungprofile.cloud/park/archive/flow/x15.html#c2"
  },
  {
   "id": "x1a-1",
   "cluster": "wrong",
   "also": [
    "notshown"
   ],
   "title": "18편을 올렸다는 기록과 채널에 올라간 여덟 편",
   "when": "2026년 10월 16일 13시 9분 ~ 15시 15분",
   "from": "글을 영상으로 만들어 올리는 흐름",
   "situation": "만든 영상을 채널에 올린다. 저자의 사이트에는 공모전의 이름과 상금과 마감을 모아 둔 자료가 있었고, 채널에는 예전에 올린 영상이 몇 편 있었다.",
   "steps": [
    {
     "who": "13:09 · 저자",
     "what": "「공모전 모음해서 TTS 해서 영상도 몇개 올려봐」"
    },
    {
     "who": "13:09 ~ 13:21 · 서브에이전트",
     "what": "자료를 읽어 대본을 만들고 음성을 붙여 영상으로 합치는 프로그램을 만들었다. 12분 뒤에 영상 세 편이 폴더에 있었다"
    },
    {
     "who": "14:14 · 저자",
     "what": "채널에 있던 예전 영상을 지우자고 했다"
    },
    {
     "who": "세션",
     "what": "영구히 지우는 일이라 되돌릴 수 없다고 알렸다. 지우는 일은 저자가 채널 화면에서 직접 했다"
    },
    {
     "who": "14:47 ~ 15:06 · 세션",
     "what": "영상을 한 편씩 올렸다. 12편까지 올렸다고 알렸다"
    },
    {
     "who": "15:15 · 세션의 보고",
     "what": "「유튜브 하루 업로드 한도에 걸렸습니다. 1~8편은 채널에 올라가 공개됐고, 9~18편은 올라가지 않았습니다. 업로드 작업이 한도 오류를 알아채지 못하고 끝까지 돌아서 결과 기록에는 18편 모두 성공으로 남아 있었습니다」"
    }
   ],
   "result": "만드는 데에는 12분이 걸렸고 올리는 데에서 막혔다. 올리는 프로그램의 기록에는 18편이 모두 성공으로 적혀 있었지만 채널의 화면에 보인 것은 여덟 편이었다.",
   "note": "세션은 이 차이를 저자가 다 올렸는지를 물은 뒤에 채널의 목록을 열어 보고 알렸다. 그 뒤로 올린 수는 프로그램의 기록이 아니라 채널에서 조회한 것으로 센다.",
   "url": "https://sungprofile.cloud/park/archive/flow/x1a.html#c1"
  },
  {
   "id": "x1a-2",
   "cluster": "wrong",
   "also": [],
   "title": "올리기 전에 영상 속의 숫자를 사이트와 대조했다",
   "when": "2026년 10월 21일 9시 10분 ~ 26분",
   "from": "글을 영상으로 만들어 올리는 흐름",
   "situation": "올리기 전에 내용을 확인한다. 새 방식으로 만든 첫 영상이 전달 폴더에 있었고, 올리는 일은 다른 컴퓨터의 홍보 세션이 맡고 있었다.",
   "steps": [
    {
     "who": "09:10 · 홍보",
     "what": "영상을 올리기 전에 영상에 나오는 상금과 마감을 사이트의 해당 페이지와 대조했다"
    },
    {
     "who": "찾은 것",
     "what": "두 건이 달랐다. 한 공모전은 영상에는 총상금으로, 사이트에는 1등 상금으로 적혀 있었고, 다른 한 건은 마감 날짜의 표기가 달랐다"
    },
    {
     "who": "홍보 → 사이트를 맡은 세션",
     "what": "사이트 쪽을 고쳐야 하는 건을 알렸다"
    },
    {
     "who": "09:26 · 홍보",
     "what": "확인을 마친 영상을 올렸다고 알렸다"
    }
   ],
   "result": "영상은 글의 자료로 만들어지지만, 옮기는 과정과 그 사이에 바뀐 자료 때문에 숫자가 어긋날 수 있다. 어긋난 것을 찾은 것은 만든 쪽이 아니라 올리는 쪽이었다.",
   "note": "",
   "url": "https://sungprofile.cloud/park/archive/flow/x1a.html#c2"
  },
  {
   "id": "x1a-3",
   "cluster": "wrong",
   "also": [],
   "title": "품질 지침이 검사 프로그램이 되었다",
   "when": "2026년 10월 20일 ~ 21일",
   "from": "글을 영상으로 만들어 올리는 흐름",
   "situation": "올려도 되는 영상인지를 사람 없이 가려낸다. 영상은 한 시간에 한 편씩 올라가고 있었고, 저자는 올라간 영상의 대본과 화질을 여러 번 지적했다.",
   "steps": [
    {
     "who": "10월 20일 21:03 · 저자",
     "what": "「영상 품질 왜케 안좋지 랜더링 부터 너가 조고 평가햊봐」"
    },
    {
     "who": "10월 21일 08:36 · 저자",
     "what": "긴 지침을 입력했다. 목표는 「사람의 영상 편집 없이도 전문적인 정보성 쇼츠를 지속적으로 생산하는 자동화 시스템 구축」이고, 화면의 완성도와 정보 전달과 음성과 연출을 고치되 기존 방식은 되도록 유지하라는 내용이다"
    },
    {
     "who": "세션",
     "what": "새 제작 프로그램과 함께, 완성된 영상을 검사하는 프로그램을 만들었다. 길이와 화면과 소리, 날짜와 주소, 자막의 줄 수와 글자의 위치를 본다"
    },
    {
     "who": "검사 프로그램의 시험",
     "what": "일부러 문제를 넣은 영상 14편을 넣어 보았고 14편이 모두 걸렸다고 보고했다"
    },
    {
     "who": "정한 것",
     "what": "새 방식의 영상은 올릴 준비까지만 하고, 올리는 일은 저자가 승인한 뒤에 한다"
    }
   ],
   "result": "저자가 한 편씩 보고 지적하던 것이 프로그램의 검사 항목이 되었다. 사람이 영상을 모두 재생해 보지 않고도 올릴 수 없는 것을 걸러 내게 되었고, 새 형식을 처음 올릴 때에만 사람이 본다.",
   "note": "14편이 모두 걸렸다는 것은 세션이 쓴 개발 보고서의 값이다. 검사를 통과한 영상이 사람들에게 얼마나 보였는지는 8장의 다른 절에서 본 대로 별개의 문제였다.",
   "url": "https://sungprofile.cloud/park/archive/flow/x1a.html#c3"
  },
  {
   "id": "x1c-1",
   "cluster": "build",
   "also": [],
   "title": "바깥에 알리는 일을 맡긴 첫 4일",
   "when": "2026년 10월 16일 15시 ~ 19일 15시 3분",
   "from": "채널마다 자료를 만들고 올리는 흐름",
   "situation": "사이트를 바깥에 알린다. 사이트를 공개한 지 며칠 되지 않았고 방문은 거의 없었다. 저자는 공모전 응모를 돕던 세션 하나에 이 일을 맡겼다.",
   "steps": [
    {
     "who": "10월 16일 15:00 ~ 20:03 · 저자",
     "what": "「백그라운드로 블로그도 좀 이쁘게 만들어서 관리해」, 「그리고 지식인 활동도 해」, 「우리사이트의 그 공모전 화면으로 넘겨」"
    },
    {
     "who": "첫날 · 세션",
     "what": "네이버 지식iN에 답변 14건, 네이버 블로그와 카페에 글 6건을 올리고 건마다 기록 파일에 시각과 주소와 제목을 적었다"
    },
    {
     "who": "10월 17일 06:45 · 저자",
     "what": "「에이전트 도ㅓㄹ리지 말고 포그라운드 화면은 그냥 니가 직접해 하나씩ㄱ 어히려 꼬인드」. 세션이 입력 하나를 서브에이전트 여럿에게 나눠 한꺼번에 돌리던 것을 멈추게 했다"
    },
    {
     "who": "10월 18일 00:23 ~ 20:47 · 저자",
     "what": "「지식인 10분간격으로 올려」, 「홍보 계속 돌려」, 「할수 있는 모든 곳으로 홍보혀」"
    },
    {
     "who": "3일째 · 세션",
     "what": "지식iN 답변이 하루 한도인 100건에 닿았다. 블로그와 카페에 45건, 그 밖의 커뮤니티와 글을 올릴 수 있는 서비스에 227건을 기록했다"
    },
    {
     "who": "10월 19일 07:25 ~ 09:03 · 저자",
     "what": "「지식인 안올라가는데?」, 「지식인은 멈쳐」"
    },
    {
     "who": "10월 19일 15:03 · 홍보의 메시지",
     "what": "레딧 계정이 이용 정지되었고, 직전에 단 댓글은 그 게시판의 관리자가 지웠다고 알렸다"
    }
   ],
   "result": "4일 동안 기록 파일에 남은 것은 지식iN 답변 233건, 네이버 블로그와 카페의 글 93건, 그 밖의 곳에 올린 글 360건이다. 그 다음 날 구글 서치 콘솔에서 읽은 28일 동안의 노출은 6회였고, 사이트가 스스로 센 방문은 팀과 기계의 것을 빼자 207명에서 87명 안팎으로 줄었다.",
   "note": "건수는 기록 파일의 줄을 날짜별로 센 값이다. 기록 파일은 올리는 동작이 끝난 것을 적을 뿐이어서, 그 글이 지금도 다른 사람에게 보이는지는 이 파일로 알 수 없다. 노출과 방문은 7장의 방문을 세는 흐름에서 본 값이다.",
   "url": "https://sungprofile.cloud/park/archive/flow/x1c.html#c1"
  },
  {
   "id": "y01-1",
   "cluster": "wrong",
   "also": [],
   "title": "때가 지난 글을 내리는 규칙을 정했다",
   "when": "2026년 11월 2일 14시 12분 ~ 15시 6분",
   "from": "잘못된 것과 오래된 것을 내리는 흐름",
   "situation": "오래된 것을 내린다. 사이트에는 그날그날의 화제를 다룬 짧은 글이 매일 수십 편씩 쌓이고 있었고, 며칠 지난 화제의 글이 새 글과 같은 자리에 섞여 있었다.",
   "steps": [
    {
     "who": "14:12 · 저자 → 개발",
     "what": "「그렇게 최신 읽을거리를 나르는 일일 메거진이 되어야함 우리사이트는 그리고 1주일 이상 지난것들은 빨리빨리 지워주고」"
    },
    {
     "who": "14:12 ~ 14:14 · 개발",
     "what": "사이트를 생성하는 프로그램을 복사해 둔 뒤에 고쳤다. 화제를 다룬 짧은 글은 4일 치만, 매일 묶어 내는 글은 14일 치만 화면으로 만들게 했다. 글의 원본 자료 파일은 지우지 않고 남겼다. 안내 글과 요리법과 공모전처럼 오래 쓰는 글은 건드리지 않았다"
    },
    {
     "who": "14:14 · 개발 → 마케터",
     "what": "글을 수명에 따라 셋으로 나눈 기준을 알렸다. 며칠 가는 글은 사4일 뒤에 내리고, 한동안 찾는 글은 두 주쯤 두며, 오래 쓰는 글은 그대로 둔다"
    },
    {
     "who": "14:23 ~ 14:31 · 점검 기록",
     "what": "페이지 목록의 주소가 2,703개에서 2,642개로 줄었다. 그와 함께 사이트 안에서 끊어진 링크가 0개에서 14개로 늘었다. 내려간 글을 가리키던 링크였다"
    },
    {
     "who": "14:43 ~ 15:06 · 점검 기록",
     "what": "끊어진 링크가 9개, 0개, 1개를 거쳐 다시 0개가 되었다"
    }
   ],
   "result": "지운 것은 화면이고 원본은 남았다. 글을 내리면 그 글을 가리키던 링크가 끊어진다는 것은 생성 프로그램이 끝날 때마다 남기는 점검 기록에 바로 드러났고, 한 시간 안에 0으로 돌아왔다.",
   "note": "저자가 말한 기간은 한 주였고 프로그램에 들어간 기간은 4일과 14일이다. 사4일이라는 기준을 저자가 직접 말한 입력은 찾지 못했다. 주소의 수와 끊어진 링크의 수는 점검 기록 파일에 남은 값이다.",
   "url": "https://sungprofile.cloud/park/archive/flow/y01.html#c1"
  },
  {
   "id": "y01-2",
   "cluster": "approve",
   "also": [
    "wrong"
   ],
   "title": "올린 영상을 지우라는 지시가 실행되지 않았다",
   "when": "2026년 11월 9일 11시 40분 ~ 12시 18분",
   "from": "잘못된 것과 오래된 것을 내리는 흐름",
   "situation": "사이트 밖에 올린 것을 내린다. 영상 세션은 그 전날에 금융 상식을 다룬 짧은 영상 수십 편을 만들어 유튜브에 올렸다.",
   "steps": [
    {
     "who": "11:40 · 저자 → 영상",
     "what": "「영상들 한번 싹 지워」"
    },
    {
     "who": "영상",
     "what": "유튜브의 관리 화면에서 해당 영상을 골라 지우는 데까지 갔다"
    },
    {
     "who": "영상의 보고",
     "what": "「금융상식 영상은 하나도 지우지 못했습니다. 마지막 「완전삭제」 클릭이 권한 검사에 막혔고, 에이전트가 그 자리에서 멈췄습니다. 우회는 하지 않았습니다」"
    },
    {
     "who": "12:18 · 저자 → 영상",
     "what": "「그냥 유튜브에 올린건 다 지워」"
    },
    {
     "who": "영상의 보고",
     "what": "「두 번째 시도도 같은 지점에서 막혀서 영상은 하나도 지우지 못했습니다 … 같은 요청을 더 반복해도 결과는 같을 것이라, 여기서 멈추겠습니다」"
    }
   ],
   "result": "되돌릴 수 없는 삭제를 한꺼번에 하는 마지막 단추는 Claude Code의 권한 검사가 막았고, 세션은 다른 길을 찾지 않고 멈추었다. 저자의 지시가 두 번 있었어도 결과는 같았다. 지우는 일은 저자의 손에 남았다.",
   "note": "영상이 실제로 하나도 지워지지 않았는지를 유튜브의 화면에서 다시 확인하지는 않았다. 이 뒤에 저자가 같은 세션에 이 일을 다시 입력한 기록은 없다.",
   "url": "https://sungprofile.cloud/park/archive/flow/y01.html#c2"
  },
  {
   "id": "y05-1",
   "cluster": "build",
   "also": [],
   "title": "하루 작업 한 바퀴 5분",
   "when": "2026년 11월 11일 13시 26분 ~ 31분",
   "from": "하루 작업 한 바퀴",
   "situation": "하루치 일을 한 번 돌린다. 교육용 뉴스 확인 사이트에서 저자가 작가 세션에 세션들과 함께 하루 작업을 한 번 실행해 보라고 입력했다. 프로그램과 세션들은 오전에 이미 만들어져 연결되어 있었다.",
   "steps": [
    {
     "who": "저자 → 작가",
     "what": "하루 작업을 한 번 실행해 보라"
    },
    {
     "who": "13:26 · 개발(프로그램)",
     "what": "수집과 묶기. 수집처 아홉 곳, 기사 869건, 세 매체 이상이 다룬 주제 16건. 주제 파일을 마케터와 작가에게 넘겼다"
    },
    {
     "who": "~13:30 · 마케터",
     "what": "주제 둘을 골랐다. 고르면서 공식 보도자료의 상세 페이지를 열어 숫자가 있는지를 먼저 확인했다"
    },
    {
     "who": "~13:30 · 작가",
     "what": "두 기관의 보도자료를 열어 숫자를 대조하고 글 두 편을 써서 개발에 넘겼다. 자료를 어떻게 받아야 읽히는지도 함께 적었다"
    },
    {
     "who": "13:30 ~ 13:31 · 개발(프로그램)",
     "what": "대조, 화면 생성, 묶음 발행, 홍보 자료, 영상 두 편, 올리기, 주소 점검을 이어서 실행했다"
    },
    {
     "who": "13:31 · 결과",
     "what": "새 글 두 편과 묶음 페이지 등 주소 여덟 개가 모두 열렸다"
    },
    {
     "who": "작가",
     "what": "공개 주소와 전달 폴더의 카드 그림을 열어 보았다. 카드의 큰 숫자가 제목과 다른 것을 찾아 개발에 돌려보냈다"
    },
    {
     "who": "영상 · 홍보",
     "what": "영상과 블로그용 글을 준비해 둔 채 각자의 창에서 저자의 승인을 기다렸다"
    }
   ],
   "result": "프로그램이 실행된 시간을 더하면 1분 30초쯤이고 나머지는 세션이 주제를 고르고 자료를 읽는 데 쓰였다. 만드는 데까지는 사람 없이 돌았고, 바깥으로 나가는 것은 저자를 기다렸다.",
   "note": "시각은 세션들이 메시지에 적어 보낸 것을 모은 것이다. 오전의 첫 실행은 프로그램과 글의 양식을 만들어 가며 했기 때문에 한 시간 가까이 걸렸다.",
   "url": "https://sungprofile.cloud/park/archive/flow/y05.html#c1"
  },
  {
   "id": "y09-1",
   "cluster": "build",
   "also": [],
   "title": "새 글 여섯 편이 주제에서 게시까지",
   "when": "2026년 10월 23일 오후",
   "from": "새 글이 세션들을 지나는 흐름",
   "situation": "새 글을 낸다. 저자의 정보 사이트에서 이 일은 마케터, 작가, 개발, 홍보의 네 세션을 차례로 지난다. 세션 사이를 오가는 것은 파일이고, 메시지에는 파일을 어디에 두었는지만 적는다.",
   "steps": [
    {
     "who": "14:12 · 마케터 → 작가",
     "what": "근거 파일 셋, 쓸 글 여섯 편의 주제, 지킬 규칙과 원고를 둘 위치를 보냈다. 규칙의 한 줄은 「실제 수상작·심사위원 발언·수상 확률·통계를 지어내지 않습니다. 예시는 「가상 예시」라고 적습니다.」"
    },
    {
     "who": "14:15 · 작가 → 개발",
     "what": "여섯 편을 글 한 편에 파일 하나씩 정해진 폴더에 두고 알렸다"
    },
    {
     "who": "개발",
     "what": "원고를 사이트의 자료에 넣고 화면을 다시 생성해 올린 뒤, 열리는 것을 확인한 주소를 알렸다"
    },
    {
     "who": "약 한 시간 뒤 · 마케터",
     "what": "여섯 편의 주소를 직접 열어 모두 열린다고 알리고, 다음 10편의 목록을 작가에게 보냈다"
    },
    {
     "who": "홍보",
     "what": "구글에 알릴 주소 목록과 블로그에 쓸 소재를 받아 게시하고, 게시 기록을 한 줄씩 남겼다"
    }
   ],
   "result": "이 한 바퀴가 그날 오후에 세 번 돌아 26편이 게시되었다. 저자가 이 흐름에 입력한 것은 없다.",
   "note": "같은 날 홍보 세션은 작가에게 받을 파일의 이름과 끝에 적을 항목을 정해서 보냈다. 받는 쪽이 형식을 정해 보내는 방식은 그 뒤 다른 세션 사이에서도 쓰였다.",
   "url": "https://sungprofile.cloud/park/archive/flow/y09.html#c1"
  },
  {
   "id": "y09-2",
   "cluster": "wrong",
   "also": [
    "notshown"
   ],
   "title": "게시했다는 보고를 2분 뒤에 스스로 고쳤다",
   "when": "2026년 10월 28일 오전",
   "from": "새 글이 세션들을 지나는 흐름",
   "situation": "올린 글이 실제로 열리는지 확인한다. 개발 세션이 원고 12편을 사이트에 넣는 명령을 실행했다.",
   "steps": [
    {
     "who": "11:02 · 개발 → 작가",
     "what": "12편을 게시했다고 알렸다"
    },
    {
     "who": "개발",
     "what": "공개 주소를 직접 열어 보았다. 바뀐 내용이 저장소에 올라가지 않은 상태였고 12편 모두 열리지 않았다"
    },
    {
     "who": "11:04 · 개발 → 작가",
     "what": "「정정합니다. 조금 전 보낸 7차 큐 완료 보고는 틀렸습니다. … 지금은 … 푸시했고, 12개 슬러그 전부 … 200이 확인됩니다.」"
    },
    {
     "who": "그 뒤 · 마케터",
     "what": "개발에 요청할 때 「게시한 뒤 열리는 것이 확인된 주소만 알려 달라」는 문장을 붙이고, 받은 주소를 직접 다시 열었다"
    }
   ],
   "result": "명령을 실행한 것과 글이 열리는 것은 따로 확인한다. 저자의 팀에서 「완료」는 그 뒤로 열리는 것이 확인된 주소를 뜻하게 되었다.",
   "note": "",
   "url": "https://sungprofile.cloud/park/archive/flow/y09.html#c2"
  },
  {
   "id": "y09-3",
   "cluster": "deleted",
   "also": [],
   "title": "지우라는 말은 전해 듣지 않고 직접 확인했다",
   "when": "2026년 10월 30일 오후",
   "from": "새 글이 세션들을 지나는 흐름",
   "situation": "되돌리기 어려운 일을 한다. 저자가 작가 세션에 마감이 지난 공모전 페이지를 지우자고 했고, 작가 세션이 그 말을 개발 세션에 전했다.",
   "steps": [
    {
     "who": "저자 → 작가",
     "what": "마감이 지난 공모전 페이지를 지우자"
    },
    {
     "who": "작가 → 개발",
     "what": "저자의 말을 전했다"
    },
    {
     "who": "13:55 · 개발 → 작가",
     "what": "「10/18에 애드센스 심사 중 404를 피하려고 「(마감)」 안내 페이지로 남기기로 한 결정을 뒤집는 일이라, 개발 세션의 사용자께 직접 확인…」"
    },
    {
     "who": "17분 뒤 · 저자 → 개발",
     "what": "개발 세션에 직접 지우라고 입력했다"
    },
    {
     "who": "개발",
     "what": "페이지 718개를 522개로 줄였다. 남은 공모전이 200건 아래로 내려가면 아무것도 지우지 않고 멈추는 조건을 프로그램에 넣었다"
    }
   ],
   "result": "바깥에 올리는 일과 되돌리기 어려운 일은 그 세션이 사람에게서 직접 받은 지시로만 한다. 다른 세션이 전한 말은 잘못 옮겨졌을 수도 있고 그 세션의 사정에만 맞는 말일 수도 있기 때문이다.",
   "note": "",
   "url": "https://sungprofile.cloud/park/archive/flow/y09.html#c3"
  },
  {
   "id": "y11-1",
   "cluster": "count",
   "also": [],
   "title": "검색 표현 59건을 모으고 받는 쪽이 다시 세었다",
   "when": "2026년 11월 11일 오전",
   "from": "쓸 주제의 후보를 만드는 흐름",
   "situation": "쓸 주제의 후보를 만든다. 마케터 세션이 사이트가 다룰 단어 15개를 정하고, 단어마다 검색창의 자동완성에 나오는 표현을 모아 관계없는 것을 걸러 내는 프로그램을 만들었다.",
   "steps": [
    {
     "who": "마케터",
     "what": "프로그램을 직접 실행해 표현 59건을 모았다. 목록과 주제를 고르는 기준, 사이트 문구를 파일 일곱 개로 전달 폴더에 두었다"
    },
    {
     "who": "마케터 → 작가",
     "what": "끝낸 것과 끝내지 못한 것, 파일의 이름, 일부 칸은 프로그램이 채운 것이어서 다듬어야 한다는 것, 매일 자동으로 실행할지는 사람이 정할 일로 남겼다는 것을 알렸다"
    },
    {
     "who": "작가",
     "what": "파일을 열어 줄 수를 세었다. 59건이 맞았다. 이어서 단어별로 몇 건인지를 다시 세었다"
    },
    {
     "who": "작가가 찾은 것",
     "what": "「기준금리」의 아홉 건에는 다루지 않을 표현이 섞여 있었다. 세 단어는 0건이었고 이유를 목록으로는 알 수 없었다"
    },
    {
     "who": "작가 → 마케터",
     "what": "「…시드 낱말 안에 「기준」이 들어 있어서, 좋은 말 목록(GOOD)의 「기준」에 항상 걸립니다. 시드 부분을 뺀 나머지 글자에서만 좋은 말을 찾도록 고치면 될 것 같습니다. …」"
    }
   ],
   "result": "만든 쪽은 프로그램이 실행되어 59건이 나왔다는 것까지 확인했고, 받는 쪽은 그 목록으로 주제를 고를 수 있는지를 확인했다. 확인하는 눈이 다르면 다른 문제가 보인다.",
   "note": "자동완성에 나오는 것은 구글이 제안하는 표현이며, 개별 사용자가 실제로 입력한 기록 그 자체는 아니다.",
   "url": "https://sungprofile.cloud/park/archive/flow/y11.html#c1"
  },
  {
   "id": "y11-2",
   "cluster": "build",
   "also": [],
   "title": "사람들이 묻는 것을 20분마다 모으기 시작했다",
   "when": "2026년 10월 14일 19시 49분 ~ 23시 11분",
   "from": "쓸 주제의 후보를 만드는 흐름",
   "situation": "쓸 거리를 정해진 간격으로 모은다. 사이트에는 아직 정해진 주제가 없었다. 저자는 글과 댓글을 먼저 모아 분석하고 무엇을 만들지는 그다음에 정한다는 기획서를 써 두었다.",
   "steps": [
    {
     "who": "19:49 ~ 19:50 · 저자",
     "what": "기획서를 붙여 넣었다. 「보고 만들어 너가 전담이야」"
    },
    {
     "who": "19:50 ~ 20:02 · 세션",
     "what": "커뮤니티 13곳의 인기 글과 질문을 모으는 프로그램과 그것을 보여 주는 화면을 만들었다. 저자의 컴퓨터에서 20분마다 실행되게 예약하고, 컴퓨터가 꺼져 50분 넘게 갱신되지 않으면 GitHub가 대신 한 번 실행하게 했다"
    },
    {
     "who": "20:24 · 저자",
     "what": "「뭘 오늘거랑 저번주 1주일꺼만 해서 시각화시켜도 되는데」"
    },
    {
     "who": "21:40 · 세션",
     "what": "지난 7일 치를 거슬러 모았다. 글 4,803건에서 무엇을 바라거나 무엇에 막혔다는 문장 1,670개를 뽑았다고 보고했다"
    },
    {
     "who": "22:54 · 세션",
     "what": "모은 자료에서 창업과 세금을 묻는 글이 많다고 보고, 창업 세금 계산기를 만들어 올렸다"
    },
    {
     "who": "22:56 · 저자",
     "what": "시킨 것은 계산기가 아니라 커뮤니티의 단어를 그림으로 보여 주는 것이라고 바로잡았다"
    },
    {
     "who": "22:59 · 세션",
     "what": "지난주와 오늘의 단어를 비교해 보여 주는 지도를 화면 맨 위에 올렸다"
    },
    {
     "who": "23:11 · 세션",
     "what": "공개하는 집계는 인기 글과 질문 게시판에서 모은 것으로 한정하고, 그 밖의 것은 저자의 컴퓨터에만 두게 고쳤다"
    }
   ],
   "result": "다음 날 저장소에 남은 기록 71건 가운데 70건이 이 프로그램이 20분마다 스스로 올린 것이었다. 사람이 입력하지 않아도 자료가 쌓이는 첫 번째 일이 이렇게 생겼고, 2일 뒤에 그 자료가 사이트의 주제를 정하는 근거가 되었다.",
   "note": "글과 문장의 수는 세션의 보고이고 다시 세어 보지 않았다. 20분마다 올라간 기록의 수는 저장소에서 직접 센 값이다. 세션이 시키지 않은 계산기를 먼저 만든 것은 모은 자료를 스스로 풀이해 한 걸음 더 나간 것으로, 저자가 6분 뒤에 바로잡았다.",
   "url": "https://sungprofile.cloud/park/archive/flow/y11.html#c2"
  },
  {
   "id": "y33-1",
   "cluster": "deleted",
   "also": [
    "notshown"
   ],
   "title": "페이지 340개가 지워져 올라갔다가 돌아오기까지",
   "when": "2026년 10월 30일 14시 6분 ~ 11분",
   "from": "지워진 것을 알아차리고 되돌리는 흐름",
   "situation": "올린 뒤에 무엇이 바뀌었는지 확인한다. 개발 세션이 안내 글과 요리법 화면의 모양을 고친 뒤 사이트 전체를 다시 생성했고, 한 시간마다 도는 예약도 같은 작업 폴더를 쓰고 있었다.",
   "steps": [
    {
     "who": "14:06 · 개발",
     "what": "다시 생성이 끝나자 바뀐 폴더를 묶어서 올렸다. 출력에는 파일 1,796개가 바뀌었고 지워진 줄이 13,497줄이라고 나왔다"
    },
    {
     "who": "14:08 · 개발",
     "what": "공개 주소를 열어 새 모양이 반영된 것을 확인했다"
    },
    {
     "who": "14:09 · 개발이 찾은 것",
     "what": "올린 내용을 다시 훑다가 지워지기만 한 파일이 줄지어 있는 것을 보았다. 세어 보니 340개였고 모두 요리법 페이지였다"
    },
    {
     "who": "14:09 · 개발",
     "what": "요리법의 원본 자료는 1,313건 그대로인 것을 확인했다. 작업 폴더에는 페이지 파일 1,353개가 그대로 남아 있었다"
    },
    {
     "who": "14:09 · 개발",
     "what": "남아 있던 340개를 다시 넣어 올렸다"
    },
    {
     "who": "14:11 · 결과",
     "what": "지워졌던 페이지 가운데 하나를 반복해 열어 보았다. 세 번은 열리지 않았고 네 번째에 열렸다. 그 뒤 지워진 파일이 0건인 것을 확인하고 저자에게 알렸다"
    }
   ],
   "result": "페이지가 열리지 않은 시간은 짧게는 2분, 길게는 4분 30초쯤이다. 찾은 것도 되돌린 것도 올린 세션 자신이었고, 찾게 된 계기는 올린 뒤에 바뀐 파일의 수를 다시 본 것이었다.",
   "note": "세션은 예약으로 도는 생성과 겹쳐서 페이지를 다시 쓰는 도중의 상태가 올라간 것으로 보인다고 보고했다. 이 원인은 기록으로 확인되지 않았다. 세션은 큰 폴더를 올릴 때에는 생성이 끝난 것을 확인하고 지워지는 것이 섞이지 않았는지를 검사한 뒤 올리겠다고 적었다.",
   "url": "https://sungprofile.cloud/park/archive/flow/y33.html#c1"
  },
  {
   "id": "y5b-1",
   "cluster": "auto",
   "also": [
    "notshown"
   ],
   "title": "정상으로 표시된 채 사이트가 새로 생성되지 않았다",
   "when": "2026년 11월 9일",
   "from": "예약으로 도는 일을 돌보는 흐름",
   "situation": "예약으로 도는 일이 실제로 돌고 있는지 확인한다. 사이트 전체를 다시 생성해 올리는 프로그램이 한 시간마다 예약으로 실행되고 있었다.",
   "steps": [
    {
     "who": "03:26 · 개발",
     "what": "생성 프로그램에 수정 하나를 반영했다. 프로그램의 일부만 시험했고 전체를 처음부터 끝까지 실행해 보지는 않았다"
    },
    {
     "who": "그 뒤의 정기 실행",
     "what": "프로그램이 실행되자마자 끝났다. 예약 작업의 목록에는 계속 정상으로 표시되었다"
    },
    {
     "who": "15:24 · 개발",
     "what": "생성 기록이 새로 쌓이지 않는 것을 보고 오류를 찾았다"
    },
    {
     "who": "그 뒤",
     "what": "생성 프로그램을 고치면 전체를 한 번 끝까지 실행해 본 다음에 반영하기로 했다. 프로그램이 끝날 때마다 주소의 수, 끊어진 링크의 수, 빈 페이지의 수를 한 줄로 적게 했다"
    }
   ],
   "result": "예약 작업이 돌려주는 값은 프로그램이 끝났다는 것만 알려 준다. 무엇을 만들었는지는 결과물을 잰 기록으로 따로 본다.",
   "note": "이 책을 쓰면서 다시 확인했을 때에도 26개 가운데 11개는 마지막으로 돌려준 값이 성공의 값이 아니었고, 보낼 것이 없어서 그렇게 끝난 것인지 실패한 것인지는 그 값만으로 가릴 수 없었다.",
   "url": "https://sungprofile.cloud/park/archive/flow/y5b.html#c1"
  },
  {
   "id": "y5b-2",
   "cluster": "auto",
   "also": [],
   "title": "사이트 생성 셋이 겹친 새벽",
   "when": "2026년 11월 3일 4시 20분 ~ 6시 10분",
   "from": "예약으로 도는 일을 돌보는 흐름",
   "situation": "같은 프로그램이 겹쳐 돌지 않게 한다. 사이트 전체를 다시 생성해 올리는 프로그램은 한 번에 7분에서 10분이 걸리고, 매시 5분의 예약과 세션들이 같은 명령을 썼다. 시작할 때 표시 파일을 만들고 끝날 때 지우며, 표시 파일이 있으면 건너뛴다.",
   "steps": [
    {
     "who": "04:20 · 개발",
     "what": "사이트 전체를 다시 생성하기 시작했다"
    },
    {
     "who": "04:34 · 마케터",
     "what": "안내 글 18편을 합친 뒤, 다른 세션의 생성이 표시 파일을 잡고 있어 올리지 않고 표시 파일이 풀리기를 기다린다고 알렸다"
    },
    {
     "who": "04:43 · 개발이 본 것",
     "what": "같은 프로그램 셋이 동시에 떠 있었다"
    },
    {
     "who": "04:43 ~ 04:44 · 개발",
     "what": "표시 파일을 지우고 겹친 프로그램 둘을 강제로 끝낸 뒤 새로 시작했다"
    },
    {
     "who": "05:08 · 개발",
     "what": "「앞서 겹쳐 돌던 빌드를 제가 강제로 끈 탓에 git 쓰기가 한 번 충돌했어요」. 방금 끝난 생성은 올라가지 않았고 처음부터 다시 시작했다"
    },
    {
     "who": "06:10 · 점검 기록",
     "what": "끊어진 링크가 04시 42분에 0개, 05시 11분에 34개였다가 06시 10분에 다시 0개가 되었다"
    }
   ],
   "result": "기다린 세션은 탈이 없었고, 지우고 끈 세션이 탈을 냈다. 그 뒤로 세션들은 표시 파일이 있으면 지우지 않고 사라질 때까지 기다린다. 예약 쪽에서는 건너뛴 실행이 성공으로 기록된다는 것도 이때 드러났다.",
   "note": "끊어진 링크의 수는 생성 프로그램이 끝날 때마다 적는 점검 기록의 값이다. 겹친 셋 가운데 하나가 어느 쪽에서 시작한 것인지는 기록으로 가려지지 않았다.",
   "url": "https://sungprofile.cloud/park/archive/flow/y5b.html#c2"
  },
  {
   "id": "y5b-3",
   "cluster": "auto",
   "also": [],
   "title": "하나뿐인 그래픽 장치를 차례로 쓰게 했다",
   "when": "2026년 11월 3일 ~ 4일",
   "from": "예약으로 도는 일을 돌보는 흐름",
   "situation": "하나뿐인 장치를 여러 세션이 나눠 쓴다. 데스크톱의 그래픽 장치는 하나이고 메모리가 12GB다. 사이트에 쓸 그림을 만드는 세션, 영상을 만드는 세션, 다른 일을 하는 세션이 함께 쓰고 있었다.",
   "steps": [
    {
     "who": "11월 3일 14:41 · 저자 → 작가",
     "what": "「누가 GPU를 이렇게 빡세게 쓰나?」"
    },
    {
     "who": "14:41 · 작가",
     "what": "12GB 가운데 11.5GB가 쓰이고 있고 세 작업이 동시에 돌고 있다고 답했다"
    },
    {
     "who": "14:42 · 저자",
     "what": "「너가 좀 내려」"
    },
    {
     "who": "작가",
     "what": "자기 작업을 내렸고, 다른 작업이 하나도 돌지 않을 때에만 다시 시작하도록 바꾸었다"
    },
    {
     "who": "11월 4일 14:12 · 저자 → 마케터",
     "what": "한 세션이 먼저 쓰고 나머지는 멈추게 하라고 순서를 정했다"
    },
    {
     "who": "14:12 · 마케터",
     "what": "자기 작업을 멈추고 영상 세션에 같은 방침을 전했다"
    }
   ],
   "result": "누가 먼저 쓰는지는 저자가 정했고, 지금 누가 쓰고 있는지를 확인하고 양보하는 일은 세션이 한다. 순서가 낮은 세션은 쓰기 전에 장치의 상태를 먼저 읽는다.",
   "note": "",
   "url": "https://sungprofile.cloud/park/archive/flow/y5b.html#c3"
  },
  {
   "id": "y5b-4",
   "cluster": "auto",
   "also": [],
   "title": "만들고 있던 영상이 다음 단계로 넘어갔다",
   "when": "2026년 11월 4일 14시 17분 ~ 23분",
   "from": "예약으로 도는 일을 돌보는 흐름",
   "situation": "프로그램끼리 파일을 넘긴다. 영상 세션은 완성된 영상을 홍보 세션이 가져가는 폴더로 옮기는 감시 프로그램을 돌리고 있었다. 영상 파일이 있으면 옮기도록 되어 있었다.",
   "steps": [
    {
     "who": "14:17 · 영상",
     "what": "죽어 있던 음성 프로그램을 다시 켜고 영상 만들기를 다시 시작했다"
    },
    {
     "who": "14:22 · 감시 프로그램",
     "what": "아직 만들고 있는 영상 파일을 가져갈 폴더로 옮겼다"
    },
    {
     "who": "14:22 ~ 14:23 · 영상",
     "what": "옮기는 조건을, 만드는 프로그램이 끝나면서 기록에 영상의 길이를 한 줄 남겼을 때로 바꾸었다. 덜 된 파일을 지우고 다시 넘겼다"
    },
    {
     "who": "14:23 · 영상",
     "what": "「미완성 파일이 outbox 에 14:22부터 약 몇 분 있었습니다. 홍보에는 알리지 않았고, 홍보가 가져갔는지는 확인할 방법이 없습니다」"
    }
   ],
   "result": "파일이 있다는 것과 파일이 다 되었다는 것은 다르다. 넘기는 조건이 다 되었다는 표시로 바뀌었고, 세션은 확인하지 못한 것을 확인하지 못했다고 적었다.",
   "note": "",
   "url": "https://sungprofile.cloud/park/archive/flow/y5b.html#c4"
  },
  {
   "id": "y5b-5",
   "cluster": "auto",
   "also": [
    "limit"
   ],
   "title": "같은 프로그램이 845개 떠 있었다",
   "when": "",
   "from": "예약으로 도는 일을 돌보는 흐름",
   "situation": "꺼지면 안 되는 프로그램을 지켜본다. 데스크톱과 노트북이 파일을 주고받는 공유 서버가 꺼지면 홍보로 넘어가는 길이 막히므로, 10분마다 실행되어 서버가 켜져 있는지 보고 꺼져 있으면 다시 켜는 예약을 두었다.",
   "steps": [
    {
     "who": "10분마다 · 예약",
     "what": "서버가 켜져 있는지를 확인하는 코드 한 줄이 잘못되어 있어서, 이미 켜져 있는데도 알아보지 못하고 실행될 때마다 하나를 새로 켰다"
    },
    {
     "who": "며칠 뒤",
     "what": "같은 프로그램이 845개 실행되어 메모리를 16GB 차지하고 있었다. 예약은 한 번도 실패로 기록되지 않았고 공유 서버도 계속 동작했다"
    },
    {
     "who": "고친 것",
     "what": "프로그램이 스스로 하나만 실행되도록 고쳤다"
    }
   ],
   "result": "알려 준 것은 예약의 기록이 아니라 느려진 컴퓨터였다. 그 뒤로 예약에 걸 프로그램은 두 번 실행되면 어떻게 되는지를 먼저 확인한다.",
   "note": "",
   "url": "https://sungprofile.cloud/park/archive/flow/y5b.html#c5"
  },
  {
   "id": "y5c-1",
   "cluster": "limit",
   "also": [],
   "title": "영상 백 편을 30분에 한 편씩 올렸다",
   "when": "2026년 11월 6일 ~ 9일",
   "from": "블로그와 영상을 올리는 일의 흐름",
   "situation": "만든 영상을 채널에 올린다. 금융의 기초 용어를 설명하는 영상 백 편이 만들어져 있었고, 저자가 로그인해 둔 브라우저 안에서 확장 프로그램으로 올리는 방법을 쓰고 있었다.",
   "steps": [
    {
     "who": "올리기 전 · 프로그램",
     "what": "길이와 화면 크기와 소리, 영상에 나오는 날짜와 설명의 주소, 자막의 줄 수와 글자의 위치를 검사한다. 통과하지 못한 영상에는 올려도 된다는 표시가 붙지 않는다"
    },
    {
     "who": "30분마다 · 서브에이전트",
     "what": "표시가 붙은 영상 한 편을 올린다"
    },
    {
     "who": "탈이 난 곳",
     "what": "두 세션이 같은 작업을 각자 등록해 같은 영상이 두 번 올라갔다"
    },
    {
     "who": "고친 것",
     "what": "올릴 때마다 그 영상의 번호를 파일에 한 줄 적고, 올리기 전에 그 파일을 먼저 읽게 했다"
    },
    {
     "who": "11월 9일 낮 · 저자",
     "what": "영상의 형식이 마음에 들지 않는다며 올린 영상을 지우라고 했다"
    },
    {
     "who": "세션",
     "what": "46번째에서 올리기를 멈추었다. 지우는 일은 세션의 권한 검사에서 막혀 한 편도 지워지지 않았다"
    }
   ],
   "result": "올리는 일은 검사와 기록을 붙여 사람 없이 돌았고, 지우는 일은 사람에게 남았다. 저자가 형식을 직접 본 것은 46편이 올라간 뒤였으므로, 새 형식은 처음 올리기 전에 사람이 한 번 보는 것으로 순서를 고쳤다.",
   "note": "검사 항목은 20가지쯤이다. 영상 세션은 검사 프로그램을 만든 뒤 일부러 문제를 넣은 영상 14편을 검사해 보았고 14편이 모두 걸러졌다.",
   "url": "https://sungprofile.cloud/park/archive/flow/y5c.html#c1"
  },
  {
   "id": "y5c-2",
   "cluster": "blocked",
   "also": [
    "notshown"
   ],
   "title": "영상이 올라가지 않는 이유가 세 번 바뀌었다",
   "when": "2026년 10월 16일 22시 54분 ~ 17일 7시 18분",
   "from": "블로그와 영상을 올리는 일의 흐름",
   "situation": "만든 영상을 유튜브에 올린다. 한 세션이 영상을 만들고 올리는 일과 블로그의 이웃 신청과 네이버 지식iN의 답변을 함께 맡고 있었고, 모두 화면 하나와 마우스 하나를 쓰는 일이었다.",
   "steps": [
    {
     "who": "22:54 · 저자",
     "what": "「양상은?」"
    },
    {
     "who": "세션",
     "what": "유튜브의 올리는 화면에 하루에 올릴 수 있는 한도에 닿았다는 표시가 떠서 막혔다고 답했다"
    },
    {
     "who": "22:58 · 세션",
     "what": "다른 일이 밀린 이유도 보고했다. 블로그의 이웃을 신청하는 프로그램이 30분 넘게 마우스를 놓지 않아 나머지 화면 작업이 기다리고 있었다"
    },
    {
     "who": "22:59 · 저자",
     "what": "「블로그도 백그라운드로 허고 유튜브에게 마우스 주고 되는걸 왜 그래」"
    },
    {
     "who": "세션",
     "what": "이웃 신청 프로그램이 한 건을 할 때마다 마우스를 놓게 고쳤다. 블로그와 지식iN은 화면에 보이지 않게 도는 브라우저로 옮겼다"
    },
    {
     "who": "다음 날 06:44 ~ 06:45 · 저자",
     "what": "「유튜브 안올라 오는데?」, 「하나 끝나면 하나돌리고 그렇게ㅜ하라고해」"
    },
    {
     "who": "06:50 · 세션",
     "what": "한꺼번에 돌리던 서브에이전트 10개를 모두 끝내고, 그것들을 다시 깨우던 예약 네 개를 지웠다. 화면을 쓰는 일은 한 번에 하나만 한다고 메모리 파일에 적었다"
    },
    {
     "who": "06:54 · 세션",
     "what": "올리는 프로그램의 오류를 찾아 고쳤다. 파일을 고르는 창이 뜨기 전에 영상의 위치를 붙여 넣는 바람에 그것이 들어가지 않았고, 영상의 설명 글이 파일 이름 칸에 들어가 있었다"
    },
    {
     "who": "07:00 · 세션",
     "what": "고친 뒤에도 한도 표시로 막혔다. 채널의 전화 인증을 하지 않아서일 것이라고 짐작했다"
    },
    {
     "who": "07:07 · 세션",
     "what": "짐작이 틀렸다고 고쳐 보고했다. 전화 인증은 이미 되어 있었고, 채널 설정에서 「고급 기능」이 사용 중지로 되어 있는 것이 이유였다. 그것을 켜려면 채널의 주인이 본인 확인을 해야 한다"
    },
    {
     "who": "07:12 ~ 07:18 · 저자",
     "what": "본인 확인을 할 화면의 주소를 세 번 물었다. 세션이 그 화면을 컴퓨터에 열어 두고 주소를 전했다"
    }
   ],
   "result": "마우스를 차지한 다른 일, 올리는 프로그램의 오류, 채널의 설정이 차례로 드러났다. 앞의 둘은 세션이 고쳤고 마지막 것은 저자의 본인 확인으로 넘어갔다. 화면을 쓰는 일은 한 번에 하나만 한다는 규칙이 이 아침에 생겼다.",
   "note": "세 가지 이유는 모두 세션의 보고다. 저자가 본인 확인을 마친 시각과 그 뒤에 한도가 어떻게 달라졌는지는 기록에서 찾지 못했다.",
   "url": "https://sungprofile.cloud/park/archive/flow/y5c.html#c2"
  },
  {
   "id": "y5d-1",
   "cluster": "limit",
   "also": [
    "deleted"
   ],
   "title": "저장소 이력을 정리한 두 시간 반",
   "when": "2026년 11월 6일 21시 13분 ~ 23시 33분",
   "from": "사이트를 올리고 되돌리기 어려운 일을 하는 흐름",
   "situation": "되돌리기 어려운 일을 한다. 글마다 함께 만들어지는 인쇄용 문서 때문에 저장소가 9GB를 넘었다. 늘어나는 원인은 개발 세션이 이미 고쳐 두었고, 쌓인 이력을 지우는 일이 남아 있었다.",
   "steps": [
    {
     "who": "21:13 · 개발 → 저자",
     "what": "「저장소 이력 정리(9.38GiB)는 말씀해 주시면 진행할게요. 되돌릴 수 없는 작업이라 그대로 뒀어요.」"
    },
    {
     "who": "48분 뒤 · 저자",
     "what": "진행하라고 답했다"
    },
    {
     "who": "22:02 ~ 22:13 · 개발",
     "what": "남은 디스크 공간과 저장소 상태를 확인했다. 인쇄용 문서를 뺀 새 이력을 따로 만들어 두 이력의 마지막 상태를 비교했다. 마케터에게 22시 50분까지 올리지 말라고 알렸다. 정기 실행이 끝나기를 기다렸다가 잠금 표시 파일을 만들고 저장소 전체를 복사했다. 새 이력으로 바꿔 올렸다"
    },
    {
     "who": "22:20 · 끼어든 것",
     "what": "20분마다 실행되는 수집 예약이 시작되어 옛 이력 위에 새 내용을 덧붙이려 했다. 잠금 표시 파일을 확인하지 않는 프로그램이었다"
    },
    {
     "who": "22:21 · 개발",
     "what": "그 프로그램을 종료시키고 저장소에 흔적이 남지 않았는지 확인했다"
    },
    {
     "who": "22:26 ~ 23:33 · 결과",
     "what": "새로 올라간 사이트가 정상으로 제공되는 것을 확인했다. 저장소는 2.43GB가 되었고 손상된 곳이 없다고 보고한 뒤 잠금 표시 파일을 지웠다"
    }
   ],
   "result": "저자가 한 일은 진행하라는 답 하나였다. 세션은 그 답을 받기 전에는 이력에 손대지 않았고, 받은 뒤에는 묻지 않고 끝까지 갔다. 빠진 것은 같은 저장소에 쓰는 예약 작업이 하나 더 있다는 것을 미리 찾지 못한 것이다.",
   "note": "",
   "url": "https://sungprofile.cloud/park/archive/flow/y5d.html#c1"
  },
  {
   "id": "y5d-2",
   "cluster": "notshown",
   "also": [],
   "title": "올렸는데 글이 열리지 않았다",
   "when": "2026년 11월 6일 19시 9분 ~ 20시 25분",
   "from": "사이트를 올리고 되돌리기 어려운 일을 하는 흐름",
   "situation": "올린 것이 실제로 공개되었는지 확인한다. 그날은 정기 실행과 마케터의 빠른 게시와 개발의 수정이 합쳐 저장소에 57번 올라갔다. 이 일에 대한 저자의 지시는 없었다.",
   "steps": [
    {
     "who": "19:09 · 마케터",
     "what": "그날의 소식을 다룬 글 세 편을 빠른 게시로 올렸다. 올리는 명령은 정상으로 끝났다"
    },
    {
     "who": "19:11 · GitHub Pages",
     "what": "올라온 파일을 옮기는 단계가 시간 초과로 실패했다. 평소 1분 30초쯤이면 끝나던 처리가 39분 동안 이어진 끝이었다"
    },
    {
     "who": "19:27 · 개발",
     "what": "「GitHub Pages 배포가 실패한 것을 찾았어요(19:11 푸시분)」"
    },
    {
     "who": "19:49 ~ 20:23 · 개발",
     "what": "GitHub의 기록에서 실패가 얼마나 잦은지를 조회하고, 성공한 처리와 실패한 처리의 기록을 나란히 놓고 비교했다. 저장소에 주소가 겹치는 파일이나 특별한 파일이 있는지도 검사했다"
    },
    {
     "who": "20:24 · 결과",
     "what": "다음에 올린 것이 처리되어 글 세 편이 열렸다"
    },
    {
     "who": "20:25 · 개발의 보고",
     "what": "19시 11분부터 시간 초과로 다섯 번 이어서 실패했고, 사이트는 18시 42분에 올라간 내용으로 계속 제공되었으며, 마케터가 올린 글 세 편은 75분쯤 열리지 않았다. 원인은 GitHub 쪽의 지연으로 보인다고 했다"
    }
   ],
   "result": "사이트는 내려가지 않았고 새 글만 한 시간 정도 보이지 않았다. 올리는 명령이 정상으로 끝난 것과 글이 공개된 것은 서로 다른 일이었고, 그 차이는 공개 주소를 열어 보거나 GitHub의 처리 기록을 보아야 드러난다.",
   "note": "GitHub의 기록으로 확인되는 실패는 11월 6일에 네 번, 7일에 네 번이다. 다섯 번이라는 보고는 실패 네 번에 취소 한 번을 더한 것으로 보인다. 원인이 GitHub 쪽의 지연이라는 것은 개발 세션의 판단이고 따로 확인되지 않았다. 같은 날 아침에도 두 번의 실패가 있었으나 그때 세션이 그것을 알았다는 기록은 없다.",
   "url": "https://sungprofile.cloud/park/archive/flow/y5d.html#c2"
  },
  {
   "id": "y5e-1",
   "cluster": "pivot",
   "also": [],
   "title": "밤에 방향을 정하고 새벽에 모델을 내렸다",
   "when": "2026년 11월 5일 22시 25분 ~ 6일 4시 44분",
   "from": "일의 성격에 따라 모델을 바꿔 쓰는 흐름",
   "situation": "사용 한도 안에서 여러 세션을 돌린다. 마케터 세션과 영상 세션이 Fable로 실행되고 있었다.",
   "steps": [
    {
     "who": "22:25 · 저자 → 마케터",
     "what": "하루 방문자 1,000명을 목표로 전략을 세워 작업하라고 했다"
    },
    {
     "who": "22:25 · 저자 → 영상",
     "what": "조회수 1,000회를 목표로 영상의 만듦새를 연구하라고 했다"
    },
    {
     "who": "밤사이 · 두 세션",
     "what": "전략과 기준을 세워 대화와 메모리 파일에 남겼다"
    },
    {
     "who": "04:43 · 04:44 · 저자",
     "what": "두 세션의 모델을 1분 간격으로 Sonnet으로 바꾸었다"
    },
    {
     "who": "그 뒤 · 저자",
     "what": "새 글을 계속 쓰라거나 같은 방식으로 몇 편 더 만들라는 짧은 지시를 입력했다"
    },
    {
     "who": "두 세션",
     "what": "남아 있는 전략과 기준을 읽고 같은 일을 이어 갔다"
    }
   ],
   "result": "긴 요청에는 높은 모델, 계속하라는 지시에는 가벼운 모델을 썼다. 모델을 바꿔도 앞에서 정한 것이 사라지지 않는 것은 그것이 파일로 남아 있기 때문이다.",
   "note": "10월 12일부터 11월 9일까지 한 세션 안에서 모델이 바뀐 것은 40번이고, 앞뒤의 일을 구분할 수 있었던 22건 가운데 15건이 이 기준과 맞았다. 나머지 가운데에는 한도가 풀린 직후에 가벼운 모델로 다시 시작한 경우가 있다.",
   "url": "https://sungprofile.cloud/park/archive/flow/y5e.html#c1"
  },
  {
   "id": "y5f-1",
   "cluster": "auto",
   "also": [],
   "title": "홍보를 시간표로 돌린 첫 밤",
   "when": "2026년 10월 18일 21시 34분 ~ 19일 9시 5분",
   "from": "새 글을 알리는 일이 사람 없이 도는 흐름",
   "situation": "새 글을 블로그와 커뮤니티와 네이버 지식iN에 알린다. 그때까지 홍보는 저자가 대화 창에 입력할 때마다 한 번씩 돌았고, 저자가 자리를 비우면 멈추었다.",
   "steps": [
    {
     "who": "준비 · 세션",
     "what": "홍보에서 할 일을 운영 문서 하나에 채널별로 적고, 운영체제의 예약 15개를 등록했다. 예약된 시각이 되면 문서의 해당 항목이 새 세션의 첫 입력으로 들어간다"
    },
    {
     "who": "21:34 · 연결 시험 네 번",
     "what": "첫 입력은 「[홍보 런북 자동 실행 - 연결테스트] 아래 지시를 수행하고 마지막에 결과를 한 줄로 남겨라. 메모리의 사용자 원칙(한국어, 설교 금지, 보안문자·본인인증은 사람, …)을 따른다. …」"
    },
    {
     "who": "21:34 · 세션의 답",
     "what": "「연결 정상, 작업 미실행」"
    },
    {
     "who": "22:07 ~ 22:43",
     "what": "커뮤니티 두 곳, 최근 소식 읽기, 블로그 항목이 한 번씩 실행되었다"
    },
    {
     "who": "다음 날 03:30 ~ 09:05",
     "what": "질문 답변, 블로그, 안내 글, 블로그 댓글, SNS, 국내와 해외 커뮤니티, 주간 점검 항목이 시간표대로 실행되었다. 07시 8분에는 세 항목이 같은 초에 시작했다"
    },
    {
     "who": "결과",
     "what": "하룻밤에 세션 24개가 열렸다가 닫혔다. 세션 하나는 한두 번 주고받고 끝났고, 올린 것은 채널별 기록 파일에 한 줄씩 남았다"
    }
   ],
   "result": "홍보가 대화 중의 입력에서 시간표에 따른 실행으로 바뀌었다. 저자가 입력하지 않은 밤사이에 24번이 돌았다.",
   "note": "24번은 연결 시험 네 번을 포함한 수다. 각 회차가 실제로 무엇을 올렸는지는 세션의 답이 아니라 기록 파일에만 남아 있다.",
   "url": "https://sungprofile.cloud/park/archive/flow/y5f.html#c1"
  },
  {
   "id": "y5f-2",
   "cluster": "collide",
   "also": [],
   "title": "올리는 일을 다른 컴퓨터의 세션으로 나눴다",
   "when": "2026년 10월 19일 13시 35분 ~ 21시",
   "from": "새 글을 알리는 일이 사람 없이 도는 흐름",
   "situation": "알릴 것을 만드는 일과 올리는 일을 나눈다. 시간표로 도는 홍보는 브라우저를 조작했고, 그동안 저자는 같은 컴퓨터를 쓰기 어려웠다. 집에 쓰지 않던 다른 컴퓨터가 있었다.",
   "steps": [
    {
     "who": "13:35 · 저자",
     "what": "「지금 너가 홍보하고 있는거 홍보라는 이름을 가진 세션으로 넘겨 내 노트북이니까」"
    },
    {
     "who": "13:47 · 저자",
     "what": "「너는 홍보자료용 API 서버 공유 서버 하나 만들고 API로 노트북에서 파일 받을수 있게 작업헤」"
    },
    {
     "who": "13:56 · 세션",
     "what": "두 컴퓨터가 파일을 주고받는 공유 서버를 만들어 켰다. 받는 곳과 보내는 곳이 폴더로 나뉘어 있다"
    },
    {
     "who": "13:55 · 저자",
     "what": "영상처럼 만드는 데 모델이 필요한 홍보 자료도 그 서버로 넘기라고 했다"
    },
    {
     "who": "20:39 · 저자",
     "what": "「매일밤 12시에 우리 사이트 컨텐츠들 한번더 해서 API 서버에 베포하고 홍보에게 넘길건 넘겨」"
    },
    {
     "who": "세션",
     "what": "자정에 그날의 글과 알릴 주소와 소재를 한 묶음으로 만드는 프로그램을 만들고 예약에 걸었다"
    },
    {
     "who": "21:00 · 홍보 세션",
     "what": "「매일 01시쯤 latest.json 기준으로 가져갈게요」"
    }
   ],
   "result": "이날부터 저자의 컴퓨터는 묶음을 만드는 데까지, 다른 컴퓨터의 홍보 세션은 올리는 데까지를 맡는다. 운영 문서는 그대로 홍보 세션이 읽었고, 먼저 등록해 둔 예약 15개는 껐다.",
   "note": "두 컴퓨터의 세션은 메시지와 공유 서버와 저자의 말, 이 세 길로 이어졌다. 다른 컴퓨터에 있는 홍보 세션의 기록은 저자의 컴퓨터에 남아 있지 않아서, 그쪽에서 실제로 올린 것은 홍보 세션이 보내온 메시지와 돌려보낸 기록 파일로만 알 수 있다.",
   "url": "https://sungprofile.cloud/park/archive/flow/y5f.html#c2"
  },
  {
   "id": "y5f-3",
   "cluster": "approve",
   "also": [],
   "title": "전해 들은 승인으로는 한꺼번에 올리지 않았다",
   "when": "2026년 10월 19일 13시 26분 ~ 28분",
   "from": "새 글을 알리는 일이 사람 없이 도는 흐름",
   "situation": "올리기 전에 승인을 받는다. 알릴 후보를 만들어 두고 사람이 승인한 것만 올리는 장치가 사이트의 관리 화면에 있었고, 검토를 기다리는 후보가 30건 쌓여 있었다.",
   "steps": [
    {
     "who": "13:26 · 한 세션 → 사이트를 맡은 세션",
     "what": "「사용자가 직접 「검토 대기 프로모션들 일괄적으로 프로모션 때려」라고 했어요」"
    },
    {
     "who": "13:28 · 사이트를 맡은 세션",
     "what": "한꺼번에 승인하는 일은 사람이 직접 하는 승인 관문이어서, 세션 사이에 전해 들은 말만으로는 하지 않겠다고 답했다"
    }
   ],
   "result": "저자가 그렇게 말했다는 것이 사실이더라도, 받은 세션에게 그것은 다른 세션이 옮긴 말이다. 승인은 그 일을 실행할 세션에 사람이 직접 입력한 것만 승인으로 본다.",
   "note": "",
   "url": "https://sungprofile.cloud/park/archive/flow/y5f.html#c3"
  },
  {
   "id": "y5f-4",
   "cluster": "limit",
   "also": [],
   "title": "올리는 쪽이 하루에 받을 수 있는 양을 앞 단계에 알렸다",
   "when": "2026년 10월 29일 ~ 30일",
   "from": "새 글을 알리는 일이 사람 없이 도는 흐름",
   "situation": "새 글의 주소를 구글에 알린다. 이 일에는 하루에 할 수 있는 양이 정해져 있고, 그 무렵 글은 하루에 수십 편씩 게시되고 있었다.",
   "steps": [
    {
     "who": "10월 29일 밤 · 홍보 → 마케터",
     "what": "그날의 양을 이미 20건 넘게 썼다고 알렸다"
    },
    {
     "who": "10월 30일 아침 · 홍보 → 마케터",
     "what": "하루 10건 이내로 하겠다고 알렸다"
    },
    {
     "who": "마케터",
     "what": "새 글의 주소를 모두 넘기지 않고, 찾는 사람이 많은 표현에 해당하는 글부터 10건을 골라 순서를 매긴 목록으로 넘기기 시작했다"
    }
   ],
   "result": "맨 뒤에서 올리는 세션이 자기가 받을 수 있는 양을 알리자 앞에서 고르는 세션의 일이 달라졌다. 하루에 몇 건을 올릴지는 만드는 쪽이 아니라 올리는 쪽의 사정이 정한다.",
   "note": "",
   "url": "https://sungprofile.cloud/park/archive/flow/y5f.html#c4"
  }
 ]
}