designpaca/research/canvas/_raw/secpriv.md
Yun Chan 8808c672dc designpaca 초기 구현 — 스킬 · 설치 CLI · 배포 파이프라인
웹 디자인 파이프라인 스킬과 이를 5개 에이전트에 설치하는 CLI 를 담은 모노레포.

스킬 (packages/skill)
- SKILL.md 261줄 + 참조 문서 16개 3,349줄. progressive disclosure 로
  본문은 절차와 인덱스만, 지식은 references/ 로 분리
- 0~6단계 파이프라인. 규모에 따라 전체·연장·국소 세 경로로 분기
- 하드 게이트 12개는 grep·카운트로 검증 가능한 것만. 취향 판단은 제외
- 미학 프리셋 5종, AI 슬롭 지문 목록, 한글 조판 규칙,
  SVG 필터·three.js·인터랙티브 모션·HTML-in-Canvas 실전 지침

설치 CLI (packages/cli, packages/core)
- npx designpaca 온보딩 TUI. Claude Code · Codex · Cursor · Windsurf · AGENTS.md
- 매니페스트에 설치 시점 해시를 기록해 사용자가 고친 파일은 update 가 건너뛴다
- 타깃별로 본문의 references/ 경로를 실제 설치 위치로 재작성
- AGENTS.md 는 항상 로드되므로 본문 대신 303자 포인터만 주입
- Windsurf 는 12,000자 상한 초과 시 설치를 차단

배포 (build/ci, .forgejo/workflows)
- 태그 v* → 검사·테스트·빌드 → npmjs 배포 + Forgejo 레지스트리 미러
  → draft 릴리스 → Cloudflare Pages. 재실행 멱등

근거 (research/)
- 약 250개 웹 소스 조사 결과와 도그푸딩 검증 2건. 스킬의 모든 수치는 여기서 나온다

테스트 22개 통과 (core 16 · cli 6)
2026-08-20 10:48:00 +09:00

3.8 KiB
Raw Permalink Blame History

  1. What information might this feature expose to Web sites or other parties, and for what purposes is that exposure necessary?

    A design requirement is to not expose any new security information, and to limit the amount of new privacy information (see: Privacy-preserving painting). For the purpose of enabling interactivity, this API will reveal form control rendering, scrollbar rendering, text selection, find-in-page selection, and the caret blink rate (all without revealing OS theme colors).

  2. Do features in your specification expose the minimum amount of information necessary to enable their intended uses?

    Yes.

  3. How do the features in your specification deal with personal information, personally-identifiable information (PII), or information derived from them?

    Since the feature renders pixels from DOM elements into canvas, those pixels can now be accessed by script, so it is important that no PII is present in those pixels. Cross-origin information, visited link information, spellcheck information, and autofill previews must not be painted. Disabling painting of this information also prevents revealing invalidation information via the paint event. See privacy-preserving-painting for additional details.

  4. How do the features in your specification deal with sensitive information?

    See answer above, the feature ensures no new security information is revealed, and limits new privacy information.

  5. Do the features in your specification introduce new state for an origin that persists across browsing sessions?

    No.

  6. Do the features in your specification expose information about the underlying platform to origins?

    Similar to #1, the painting of information revealing information about the underlying platform (e.g., form autofill) is disabled, but some new platform information is revealed for interactivity, such as the caret blink rate. See privacy-preserving-painting for additional details.

  7. Does this specification allow an origin to send data to the underlying platform?

    No.

  8. Do features in this specification enable access to device sensors?

    No.

  9. Do features in this specification enable new script execution/loading mechanisms?

    No.

  10. Do features in this specification allow an origin to access other devices?

    No.

  11. Do features in this specification allow an origin some measure of control over a user agent's native UI?

    No.

  12. What temporary identifiers do the features in this specification create or expose to the web?

    None.

  13. How does this specification distinguish between behavior in first-party and third-party contexts?

    There is no difference in behaviour.

  14. How do the features in this specification work in the context of a browsers Private Browsing or Incognito mode?

    There is no difference in behaviour for these modes.

  15. Does this specification have both "Security Considerations" and "Privacy Considerations" sections?

    The specification is still in progress. The privacy issues have been highlighted in the explainer.

  16. Do features in your specification enable origins to downgrade default security protections?

    No.

  17. How does your feature handle non-"fully active" documents?

    It only works in fully active documents.

  18. What should this questionnaire have asked?

    No suggestions.