Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
roninforge-angularjs-migration — AngularJS 1.x -> Angular 18 migration guidance for GitHub Copilot. Source-of-truth repo for github/awesome-copilot/instructions/angularjs-to-angular-18.instructions.md. 62 LLM regressions across 3 modes. AngularJS EOL since Dec 31 2021; CVE-2024-21490 unpatched. | Kitploit
도구/GitHubGitHub/roninforge/roninforge-angularjs-migration
Vulnerability AnalysisCode AnalysisLearning & EducationCurated ResourcesLearning Paths & CoursesAI Security
GitHubroninforge/roninforge-angularjs-migration

roninforge-angularjs-migration

AngularJS 1.x -> Angular 18 migration guidance for GitHub Copilot. Source-of-truth repo for github/awesome-copilot/instructions/angularjs-to-angular-18.instructions.md. 62 LLM regressions across 3 modes. AngularJS EOL since Dec 31 2021; CVE-2024-21490 unpatched.

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
저장소 보기웹사이트
2개월 전아직 검토되지 않음

roninforge-angularjs-migration

License: MIT

AngularJS에서 Angular 18로의 GitHub Copilot 지침 패키지의 진실 공급원 저장소로, github/awesome-copilot의 instructions/angularjs-to-angular-18.instructions.md에 제공됩니다. RoninForge에서 계획된 엔터프라이즈 대상 Copilot 제품 시리즈 중 첫 번째입니다 (계획: .NET Framework에서 .NET 9 마이그레이션, HIPAA PHI 편집, T-SQL 안티패턴, 레거시 코드 특성 테스트).

문제

  • AngularJS 1.x는 2021년 12월 31일에 장기 지원(LTS)이 종료되었습니다. 2022년 1월 이후 Google은 보안, 브라우저 호환성 및 jQuery 호환성 수정을 중단했습니다.
  • 최종 릴리스는 v1.8.3(2022년 4월 7일) – README 전용 "최종 작별" 태그입니다. 실질적인 코드 동결은 v1.8.2(2020년 10월)입니다.
  • CVE-2024-21490 (ng-srcset의 정규 표현식 서비스 거부, 모든 버전 1.3.0~1.8.3)에 대한 업스트림 패치가 없습니다. 상용 확장 지원 포크(HeroDevs NES, OpenLogic)만이 유일한 패치된 빌드입니다.
  • 은행, 의료 시스템 및 정부 기관은 여전히 1.x를 사용 중입니다: 규정 준수 동결, 인력 격차, ngUpgrade 복잡성, 그리고 XLTS 마이그레이션 수학 공식 (TTM = (LOC/LPW) * 1.4)으로 인해 일정 비용이 명확해집니다.
  • GitHub Copilot 자체 이슈 트래커(#1019, #1128)는 Angular 17+ 구문 인식 부족을 기록하고 있습니다; HeroDevs는 AI 지원 AngularJS 마이그레이션의 73%가 LLM이 2025년 이전 패턴을 생성하기 때문에 일정에 뒤처진다고 보고합니다.

이 패키지가 Copilot에 가르치는 내용

하나의 큰 .instructions.md 파일(1,971줄)이 다음을 다룹니다:

  • AngularJS EOL 상태 + CVE-2024-21490 증거(상용 지원을 받지 않는 한 마이그레이션이 필수인 이유)
  • 17가지 Angular 18 정규 패턴(standalone 기본값, signals, 제어 흐름 @if/@for/@switch, 지연 가능한 뷰 @defer, 함수 기반 인터셉터/가드/리졸버, provideHttpClient, provideRouter + withComponentInputBinding, inject(), 타입화된 반응형 폼, OnPush + zoneless 개발자 프리뷰, DestroyRef + takeUntilDestroyed, toSignal/toObservable, signal 기반 viewChild/viewChildren, , Vitest, application builder)

저장소 구조

root@kitploit:~
~/development/roninforge-angularjs-migration/
.
.cm  README.md                       이 파일
.cm  LICENSE                         MIT
.cm  CHANGELOG.md                    semver 항목
.cm  META.yml                        제출 스크립트가 사용하는 slug / type / version / target_paths
.cm  .editorconfig / .gitattributes  LF 전용 정규화 (awesome-copilot은 CRLF 차단)
.cm  .codespellrc                    업스트림 허용 목록 미러링
.cm  scripts/
.cm    validate-awesome-copilot-submission.sh   모든 차단 CI 게이트를 미러링하는 재사용 가능한 검증기
.cm    submit-to-awesome-copilot.sh             재사용 가능한 제출기 (포크, staged에서 브랜치 생성, 복사, 재생성, PR)
.cm  src/                            (향후 패키지가 소스를 분할할 때 부분 작성용 자리 표시자)
.cm  dist/
.cm    angularjs-to-angular-18.instructions.md  업스트림 `instructions/`에 rsync되는 정확한 파일
.cm  tests/golden/                   (고정 출력과 차이 테스트용 자리 표시자)
.cm  .github/workflows/validate.yml  모든 푸시 시 검증기 실행

research/는 gitignore에 포함되어 있습니다; 지침 내용에 정보를 제공했지만 공개 아티팩트의 일부가 아닌 내부 노트가 포함되어 있습니다.

파이프라인 스크립트 (모든 RoninForge awesome-copilot 패키지에서 재사용 가능)

scripts/validate-awesome-copilot-submission.sh

github/awesome-copilot의 클론 내에서 실행합니다. 모든 차단 CI 게이트를 미러링합니다:

  1. 사전 점검 (node 20+, npm, jq, git, codespell)
  2. 필요시 npm ci
  3. 경로에서 아티팩트 유형 감지
  4. 명명 규칙 확인 (소문자-케밥; 유형별 파일명 정규식)
  5. 머리말 스키마 확인 (유형별 필수 필드, 작은따옴표 문자열)
  6. 본문 내용 확인 (instructions는 # 로 시작해야 함)
  7. CRLF 줄 끝 확인 (발견 시 차단)
  8. codespell --check-filenames --config .codespellrc
  9. skills에 대한 5MB 자산 제한
  10. 워크플로우에 대해 gh aw compile --validate
  11. 플러그인에 대해 npm run plugin:validate
  12. skills/agents에 대해 npm run skill:validate (경고 전용)
  13. npm start + git diff --exit-code (1위 기계적 바운스 - validate-readme.yml은 README/마켓플레이스가 오래된 경우 실패)

scripts/submit-to-awesome-copilot.sh

종단간 파이프라인:

  1. META.yml 읽기 (slug, type, version)
  2. gh auth status
  3. github/awesome-copilot를 RoninForge로 포크 (아직 하지 않은 경우)
  4. 포크를 .upstream-clone/에 클론
  5. upstream/staged로 가져오기 + 리셋 (절대 main 아님)
  6. upstream/staged에서 기능 브랜치 생성
  7. dist/ 아티팩트를 유형별 올바른 경로에 업스트림 트리로 복사
  8. 검증기 실행 (위) - 실패 시 중단
  9. npm start로 README + 마켓플레이스 재생성
  10. 🤖🤖🤖 AI 작성 패스트트랙 표시와 함께 커밋
  11. 포크로 푸시
  12. **베이스: staged**로 PR 열기 (절대 main 아님) - 작업이 main에 대한 PR을 자동 거부

--dry-run (푸시 전 중단) 및 --no-pr (브랜치 푸시하지만 PR 생성 생략)를 지원합니다.

버전 고정

바닥 고정:

  • AngularJS 최종 안정: 1.8.2 (2020년 10월, 마지막 코드 릴리스); 1.8.3 (2022년 4월, README 전용 작별). LTS는 2021년 12월 31일 종료.
  • Angular 18: 2024년 5월 22일. 최신 18.x 패치가 ng update 스키마틱 안정성을 위해 권장됨.
  • Node 20 LTS 이상 Angular 18 개발 서버에 필요.
  • RxJS 7.5+ 이상 Angular 18 피어에 필요.
  • TypeScript 5.4+ 이상 Angular 18 피어에 필요.

피해야 할 것: 더 이상 유지되지 않는 AngularJS 시대 패키지 (angular-ui-bootstrap, ng-storage, ng-flow, angular-translate-loader-static-files); 새 테스트 파일에 Karma + Jasmine (ng add @analogjs/vitest-angular를 통해 Vitest 사용)

라이선스

MIT - LICENSE 참조.

링크

  • Angular 18 릴리스 포스트
  • AI 지원 개발을 위한 Angular llms.txt
  • ngUpgrade 문서
  • HeroDevs CVE-2024-21490 권고
  • endoflife.date / AngularJS
  • github/awesome-copilot
  • RoninForge

RoninForge 더 보기

RoninForge는 AI 코딩 어시스턴트로 작업하는 개발자를 위한 무료 도구를 제공합니다:

  • LLM API 가격 비교 - Claude, GPT, Gemini, DeepSeek, Mistral, Grok 토큰 가격을 나란히, 공식 가격 페이지와 대조 검증
  • GitHub Copilot AI 크레딧 계산기 - 사용량 기반 청구 하에서 월별 크레딧 소모량 추정
  • 모든 Cursor 플러그인
도구 다운로드
NgOptimizedImage
  • 노력 규모와 사례 연구가 포함된 세 가지 마이그레이션 경로: 빅뱅(39개월), ngUpgrade 하이브리드(618개월, 권장), 스트랭글러 무화과(6~24개월)
  • 62가지 안티패턴과 BAD/CORRECT 쌍 및 출처 인용, 세 가지 실패 모드:
    • 모드 A (15): 단순 "Angular" 요청에 대해 AngularJS 1.x 패턴이 생성됨 ($scope.$apply, ng-controller, $compile, $http, $q, ng-app, ng-bind-html, ng-click, angular.module, | filter, $resource, $cookies, $location, IIFE 'use strict' 래핑)
    • 모드 B (35): Angular 18 대신 Angular 2-17 레거시 관용구가 생성됨 (*ngIf / *ngFor / *ngSwitch, NgModules, @Input() / @Output() 데코레이터, 생성자 DI, 클래스 기반 인터셉터/가드/리졸버, HttpClientModule, RouterModule.forRoot, Promise.all vs forkJoin, subscribe 누수, BehaviorSubject 상태, 기본 변경 감지, @ViewChild static, 타입화되지 않은 폼, rxjs/operators 비권장 임포트, browser builder)
    • 모드 C (12): 마이그레이션 특화 실수 (ngUpgrade 없는 빅뱅 권장, 유지되지 않는 패키지, 혼합된 임포트, 누락된 downgradeInjectable / downgradeComponent, 잘못된 부트스트랩 순서, ng update를 프레임워크 마이그레이션으로 취급, 문자 그대로의 $rootScope.$broadcast 포팅, standalone에서의 BrowserAnimationsModule, zoneless + zone.js 폴리필 누수)
  • 의사 결정 트리(LoC 버킷 → 일정 매핑; 조건 → 경로)
  • 8가지 ngUpgrade 함정과 수정 스니펫
  • 참고 자료 (Angular 18 공식 문서, EOL + CVE 권고, 상용 지원, 사례 연구, 비권장 사항)
  • check-pr-target.yml