690522:2125 ADR-028-228 #02
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
# NAP-DMS Project Context & Rules
|
||||
|
||||
- For: Windsurf Cascade (and compatible: Codex CLI, opencode, Amp, Antigravity, AGENTS.md tools)
|
||||
- Version: 1.9.5 | Last synced from repo: 2026-05-18
|
||||
- Version: 1.9.6 | Last synced from repo: 2026-05-22
|
||||
- Repo: [https://git.np-dms.work/np-dms/lcbp3](https://git.np-dms.work/np-dms/lcbp3)
|
||||
- Skill pack: `.agents/skills/` (v1.9.0, 21 skills) — see [`skills/README.md`](./.agents/skills/README.md) + [`skills/_LCBP3-CONTEXT.md`](./.agents/skills/_LCBP3-CONTEXT.md)
|
||||
|
||||
@@ -89,7 +89,9 @@ Must fix ก่อน merge:
|
||||
Requires domain-specific knowledge:
|
||||
|
||||
- **ADR-021 Integration:** Workflow Engine & Context implementation
|
||||
- **AI Integration:** ADR-023/023A boundary enforcement and pipeline usage
|
||||
- **AI Infrastructure:** ADR-023/023A boundary enforcement and pipeline usage
|
||||
- **AI Runtime Layer:** ADR-024 Intent Classification, ADR-025 Tool Layer, ADR-026 Chat UI, ADR-027 Admin Console
|
||||
- **Migration Pipeline:** ADR-028 Staging Queue & post-migration cleanup
|
||||
- **Complex Business Logic:** Multi-step workflows with state management
|
||||
- **Performance Optimization:** Database queries, caching strategies, bulk operations
|
||||
|
||||
@@ -107,32 +109,37 @@ Best practice — follow when possible:
|
||||
|
||||
Spec priority: **`06-Decision-Records`** > **`05-Engineering-Guidelines`** > others
|
||||
|
||||
| Document | Path | Status | Use When |
|
||||
| ---------------------------- | -------------------------------------------------------------------- | --------- | --------------------------------------------------------------------------------- |
|
||||
| **Glossary** | `specs/00-overview/00-02-glossary.md` | — | Verify domain terminology |
|
||||
| **Schema Tables** | `specs/03-Data-and-Storage/lcbp3-v1.9.0-schema-02-tables.sql` | — | Before writing any query |
|
||||
| **Data Dictionary** | `specs/03-Data-and-Storage/03-01-data-dictionary.md` | — | Field meanings + business rules |
|
||||
| **RBAC Matrix** | `specs/01-requirements/01-02-business-rules/01-02-01-rbac-matrix.md` | — | Permission levels + roles |
|
||||
| **Edge Cases** | `specs/01-Requirements/01-06-edge-cases-and-rules.md` | — | Prevent bugs in flows |
|
||||
| **ADR-001 Workflow Engine** | `specs/06-Decision-Records/ADR-001-unified-workflow-engine.md` | ✅ Active | DSL-based workflow implementation |
|
||||
| **ADR-002 Doc Numbering** | `specs/06-Decision-Records/ADR-002-document-numbering-strategy.md` | ✅ Active | Document number generation + locking |
|
||||
| **ADR-007 Error Handling** | `specs/06-Decision-Records/ADR-007-error-handling-strategy.md` | ✅ Active | Error patterns & recovery |
|
||||
| **ADR-008 Notifications** | `specs/06-Decision-Records/ADR-008-email-notification-strategy.md` | ✅ Active | BullMQ + multi-channel notification |
|
||||
| **ADR-009 DB Migration** | `specs/06-Decision-Records/ADR-009-database-migration-strategy.md` | ✅ Active | Schema changes — edit SQL directly |
|
||||
| **ADR-016 Security** | `specs/06-Decision-Records/ADR-016-security-authentication.md` | ✅ Active | Auth, RBAC, file upload security |
|
||||
| **ADR-015 Release Strategy** | `specs/06-Decision-Records/ADR-015-deployment-infrastructure.md` | ✅ Active | Blue-Green deployment + release gates |
|
||||
| **ADR-019 UUID** | `specs/06-Decision-Records/ADR-019-hybrid-identifier-strategy.md` | ✅ Active | UUID-related work |
|
||||
| **ADR-021 Workflow Context** | `specs/06-Decision-Records/ADR-021-workflow-context.md` | ✅ Active | Integrated workflow & step attachments |
|
||||
| **ADR-023 AI Architecture** | `specs/06-Decision-Records/ADR-023-unified-ai-architecture.md` | ✅ Active | Unified AI boundaries and pipeline (base architecture) |
|
||||
| **ADR-023A AI Model Rev.** | `specs/06-Decision-Records/ADR-023A-unified-ai-architecture.md` | ✅ Active | 2-Model stack (gemma4:e4b Q8_0), BullMQ 2-queue, RAG embed scope, OCR auto-detect |
|
||||
| **Backend Guidelines** | `specs/05-Engineering-Guidelines/05-02-backend-guidelines.md` | — | NestJS patterns |
|
||||
| **Frontend Guidelines** | `specs/05-Engineering-Guidelines/05-03-frontend-guidelines.md` | — | Next.js patterns |
|
||||
| **Testing Strategy** | `specs/05-Engineering-Guidelines/05-04-testing-strategy.md` | — | Coverage goals |
|
||||
| **Git Conventions** | `specs/05-Engineering-Guidelines/05-05-git-conventions.md` | — | Commit/branch naming |
|
||||
| **Code Snippets** | `specs/05-Engineering-Guidelines/05-06-code-snippets.md` | — | Reusable patterns |
|
||||
| **i18n Guidelines** | `specs/05-Engineering-Guidelines/05-08-i18n-guidelines.md` | — | Localization rules |
|
||||
| **Release Policy** | `specs/04-Infrastructure-OPS/04-08-release-management-policy.md` | — | Before deploy/hotfix |
|
||||
| **UAT Criteria** | `specs/01-Requirements/01-05-acceptance-criteria.md` | — | Feature completeness |
|
||||
| Document | Path | Status | Use When |
|
||||
| ------------------------------ | --------------------------------------------------------------------------- | --------- | --------------------------------------------------------------------------------- |
|
||||
| **Glossary** | `specs/00-overview/00-02-glossary.md` | — | Verify domain terminology |
|
||||
| **Schema Tables** | `specs/03-Data-and-Storage/lcbp3-v1.9.0-schema-02-tables.sql` | — | Before writing any query |
|
||||
| **Data Dictionary** | `specs/03-Data-and-Storage/03-01-data-dictionary.md` | — | Field meanings + business rules |
|
||||
| **RBAC Matrix** | `specs/01-requirements/01-02-business-rules/01-02-01-rbac-matrix.md` | — | Permission levels + roles |
|
||||
| **Edge Cases** | `specs/01-Requirements/01-06-edge-cases-and-rules.md` | — | Prevent bugs in flows |
|
||||
| **ADR-001 Workflow Engine** | `specs/06-Decision-Records/ADR-001-unified-workflow-engine.md` | ✅ Active | DSL-based workflow implementation |
|
||||
| **ADR-002 Doc Numbering** | `specs/06-Decision-Records/ADR-002-document-numbering-strategy.md` | ✅ Active | Document number generation + locking |
|
||||
| **ADR-007 Error Handling** | `specs/06-Decision-Records/ADR-007-error-handling-strategy.md` | ✅ Active | Error patterns & recovery |
|
||||
| **ADR-008 Notifications** | `specs/06-Decision-Records/ADR-008-email-notification-strategy.md` | ✅ Active | BullMQ + multi-channel notification |
|
||||
| **ADR-009 DB Migration** | `specs/06-Decision-Records/ADR-009-database-migration-strategy.md` | ✅ Active | Schema changes — edit SQL directly |
|
||||
| **ADR-016 Security** | `specs/06-Decision-Records/ADR-016-security-authentication.md` | ✅ Active | Auth, RBAC, file upload security |
|
||||
| **ADR-015 Release Strategy** | `specs/06-Decision-Records/ADR-015-deployment-infrastructure.md` | ✅ Active | Blue-Green deployment + release gates |
|
||||
| **ADR-019 UUID** | `specs/06-Decision-Records/ADR-019-hybrid-identifier-strategy.md` | ✅ Active | UUID-related work |
|
||||
| **ADR-021 Workflow Context** | `specs/06-Decision-Records/ADR-021-workflow-context.md` | ✅ Active | Integrated workflow & step attachments |
|
||||
| **ADR-023 AI Architecture** | `specs/06-Decision-Records/ADR-023-unified-ai-architecture.md` | ✅ Active | Unified AI boundaries and pipeline (base architecture) |
|
||||
| **ADR-023A AI Model Rev.** | `specs/06-Decision-Records/ADR-023A-unified-ai-architecture.md` | ✅ Active | 2-Model stack (gemma4:e4b Q8_0), BullMQ 2-queue, RAG embed scope, OCR auto-detect |
|
||||
| **ADR-024 Intent Class.** | `specs/06-Decision-Records/ADR-024-intent-classification-strategy.md` | ✅ Active | Hybrid Pattern→LLM Fallback; ai_intent_patterns DB; Redis cache 5 min |
|
||||
| **ADR-025 AI Tool Layer** | `specs/06-Decision-Records/ADR-025-ai-tool-layer-architecture.md` | ✅ Active | Server-side Tool dispatch; CASL-guarded bridge; ToolResult uses publicId only |
|
||||
| **ADR-026 Chat UI** | `specs/06-Decision-Records/ADR-026-document-chat-ui-pattern.md` | ✅ Active | Side-panel Document Chat UI; useAiChat() hook; streaming response support |
|
||||
| **ADR-027 AI Admin Console** | `specs/06-Decision-Records/ADR-027-ai-admin-console-and-dynamic-control.md` | ✅ Active | Admin Panel + dynamic model/prompt/intent control without redeploy |
|
||||
| **ADR-028 Migration Refactor** | `specs/06-Decision-Records/ADR-028-migration-architecture-refactor.md` | ✅ Active | Staging Queue & post-migration cleanup |
|
||||
| **Backend Guidelines** | `specs/05-Engineering-Guidelines/05-02-backend-guidelines.md` | — | NestJS patterns |
|
||||
| **Frontend Guidelines** | `specs/05-Engineering-Guidelines/05-03-frontend-guidelines.md` | — | Next.js patterns |
|
||||
| **Testing Strategy** | `specs/05-Engineering-Guidelines/05-04-testing-strategy.md` | — | Coverage goals |
|
||||
| **Git Conventions** | `specs/05-Engineering-Guidelines/05-05-git-conventions.md` | — | Commit/branch naming |
|
||||
| **Code Snippets** | `specs/05-Engineering-Guidelines/05-06-code-snippets.md` | — | Reusable patterns |
|
||||
| **i18n Guidelines** | `specs/05-Engineering-Guidelines/05-08-i18n-guidelines.md` | — | Localization rules |
|
||||
| **Release Policy** | `specs/04-Infrastructure-OPS/04-08-release-management-policy.md` | — | Before deploy/hotfix |
|
||||
| **UAT Criteria** | `specs/01-Requirements/01-05-acceptance-criteria.md` | — | Feature completeness |
|
||||
|
||||
---
|
||||
|
||||
@@ -380,11 +387,11 @@ Full glossary: `specs/00-overview/00-02-glossary.md`
|
||||
- All existing tests still pass (no regressions)
|
||||
- If logic changed: at least 1 regression test added
|
||||
|
||||
### � Specialized Work — ADR-021, AI Integration, Complex Logic
|
||||
### 🟢 Specialized Work — ADR-021, AI Runtime Layer, Complex Logic
|
||||
|
||||
**MUST complete:**
|
||||
|
||||
1. **Domain Knowledge Check** - Read relevant ADRs (ADR-021, ADR-023/023A)
|
||||
1. **Domain Knowledge Check** - Read relevant ADRs (ADR-021, ADR-023/023A, ADR-024~028)
|
||||
2. **Pattern Verification** - Check existing implementations in codebase
|
||||
3. **Specialized Requirements** - Follow domain-specific patterns
|
||||
4. **Complex Logic Testing** - Multi-scenario test coverage
|
||||
@@ -399,13 +406,26 @@ Full glossary: `specs/00-overview/00-02-glossary.md`
|
||||
- Include IntegratedBanner - Frontend workflow lifecycle display
|
||||
- Test workflow transitions - State changes and action validation
|
||||
|
||||
**For AI Integration (ADR-023/023A):**
|
||||
**For AI Infrastructure (ADR-023/023A):**
|
||||
|
||||
- Verify AI boundary enforcement - No direct DB/storage access
|
||||
- Check BullMQ 2-queue setup - ai-realtime + ai-batch
|
||||
- Validate Qdrant multi-tenancy - projectPublicId filter required
|
||||
- Test human-in-the-loop validation workflows
|
||||
- Audit AI interaction logging
|
||||
- Audit AI interaction logging to ai_audit_logs
|
||||
|
||||
**For AI Runtime Layer (ADR-024/025/026/027):**
|
||||
|
||||
- ADR-024: Pattern Layer first (ai_intent_patterns DB + Redis cache 5 min) → LLM Fallback (gemma4:e4b, semaphore max=3)
|
||||
- ADR-025: Tool Registry dispatch — AI Gateway → Tool → Business Service; ToolResult DTO must use publicId only
|
||||
- ADR-026: useAiChat() hook + side-panel UI; streaming response via SSE; TanStack Query cache
|
||||
- ADR-027: Admin Console — dynamic model/prompt/intent control; CASL-guarded admin-only endpoints
|
||||
|
||||
**For Migration Pipeline (ADR-028):**
|
||||
|
||||
- Use Staging Queue pattern — never write directly to production tables
|
||||
- Post-migration cleanup process required after each batch
|
||||
- Migration Validation Gates must pass before promoting to production
|
||||
|
||||
**Expected output:**
|
||||
|
||||
@@ -431,7 +451,7 @@ When user asks about... check these files:
|
||||
| "ตรวจสอบ permission" | ✅ | `lcbp3-v1.9.0-seed-permissions.sql`, `ADR-016` | CASL 4-Level RBAC matrix |
|
||||
| "deploy production" | ✅ | `04-08-release-management-policy.md`, `ADR-015` | Release Gates + Blue-Green strategy |
|
||||
| "เพิ่ม test" | ✅ | `05-04-testing-strategy.md` | Coverage goals + test patterns |
|
||||
| "AI integration" | ✅ | `ADR-023`, `ADR-023A` | AI boundary + 2-model stack + BullMQ queue policy |
|
||||
| "AI integration" | ✅ | `ADR-023`, `ADR-023A`, `ADR-024`, `ADR-025` | AI boundary + 2-model stack + BullMQ queue policy + Intent/Tool Layer |
|
||||
| "Error handling" | ✅ | `ADR-007` | Layered error classification + recovery |
|
||||
| "File upload" | ✅ | `ADR-016`, `05-02-backend-guidelines.md`, `03-Data-and-Storage/03-03-file-storage.md` | Two-phase upload → temp → commit; ClamAV + whitelist |
|
||||
| "Notifications / Queue" | ✅ | `ADR-008`, `05-02-backend-guidelines.md` | BullMQ job — never inline; check retry + dead-letter |
|
||||
@@ -443,6 +463,11 @@ When user asks about... check these files:
|
||||
| "Circulation reassign" | 📋 | `ADR-021`, `specs/200-fullstacks/201-transmittals-circulation/` | reassignRouting() with EC-CIRC-001 |
|
||||
| "สร้าง workflow ใหม่" | 📋 | `ADR-001`, `ADR-021`, `specs/200-fullstacks/203-unified-workflow-engine/` | DSL workflow definition + WorkflowEngineService setup |
|
||||
| "ตรวจสอบ AI boundary" | ✅ | `ADR-023`, `ADR-023A` | Verify Ollama isolation + BullMQ queues + Qdrant projectPublicId filter |
|
||||
| "Intent classification" | ✅ | `ADR-024`, `specs/200-fullstacks/224-intent-classification/` | Pattern Layer → LLM Fallback; ai_intent_patterns; Redis cache 5 min |
|
||||
| "AI Tool Layer" | ✅ | `ADR-025`, `specs/200-fullstacks/225-ai-tool-layer-architecture/` | Tool Registry; CASL-guarded dispatch; ToolResult publicId only |
|
||||
| "Document Chat UI" | ✅ | `ADR-026`, `specs/200-fullstacks/226-document-chat-ui-pattern/` | Side-panel; useAiChat() hook; streaming SSE; TanStack Query cache |
|
||||
| "AI Admin Console" | ✅ | `ADR-027`, `specs/200-fullstacks/227-ai-admin-console/` | Dynamic model/prompt/intent control; admin-only CASL endpoints |
|
||||
| "Migration refactor" | ✅ | `ADR-028`, `specs/200-fullstacks/228-migration-arch-refactor/` | Staging Queue; post-migration cleanup; validation gates |
|
||||
| "จัดการ document numbering" | ✅ | `ADR-002`, `specs/03-Data-and-Storage/03-04-document-numbering.md` | Redis Redlock + template system + preview/override workflows |
|
||||
| "Audit ความปลอดภัย" | ✅ | `ADR-016`, `ADR-019`, `ADR-023`, `ADR-023A` | ตรวจสอบ UUID pattern, CASL Guard, AI Boundary และ Qdrant multi-tenancy |
|
||||
| "แก้ bug / bugfix" | ✅ | `.agents/workflows/bugfix.md`, `error-catalog.md` | ใช้ bugfix workflow สำหรับเคสที่สาเหตุชัดเจน |
|
||||
@@ -565,25 +590,26 @@ This file is a **quick reference**. For detailed information:
|
||||
|
||||
## 🔄 Change Log
|
||||
|
||||
| Version | Date | Changes | Updated By |
|
||||
| ------- | ---------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------- |
|
||||
| 1.9.5 | 2026-05-18 | **Grill-with-Docs Session:** Domain terminology clarified (Correspondence = all doc types), Tier 3: SPECIALIZED WORK added, Context-Aware Triggers with Status column, Tier-specific Final Checklists | Windsurf AI |
|
||||
| 1.9.4 | 2026-05-16 | Added ADR-015 Release Strategy to Key Spec Files table (Blue-Green deployment + release gates) | Human Dev |
|
||||
| 1.9.3 | 2026-05-15 | ADR-023A: Model revision — gemma4:9b+Typhoon→gemma4:e4b Q8_0 (2-model stack), BullMQ 2-queue split, RAG full-doc embed, OCR auto-detect, n8n→DMS API boundary, QdrantService multi-tenancy contract | Windsurf AI |
|
||||
| 1.9.2 | 2026-05-14 | Consolidated legacy AI ADRs (017, 017B, 018, 020, 022) into master ADR-023: Unified AI Architecture | Antigravity AI |
|
||||
| 1.9.1 | 2026-05-13 | Added `bugfix` workflow and skill (migrated and improved from `docs/bugfix.md`) | Windsurf AI |
|
||||
| 1.9.0 | 2026-05-03 | Integrated Global TypeScript Coding Standards (Headers, JSDoc, Thai comments, Single Export, No blank lines) | Windsurf AI |
|
||||
| 1.8.9 | 2026-04-22 | `.agents/skills/` LCBP3-native rebuild (20 skills @ v1.8.9) + `_LCBP3-CONTEXT.md` appendix + `specs/03-Data-and-Storage/deltas/` + AGENTS.md sync | Windsurf AI |
|
||||
| 1.8.8 | 2026-04-14 | Workflow attachments (ADR-021) + step-attachment envelope fields | Windsurf AI |
|
||||
| 1.8.7 | 2026-04-14 | + ADR-021 Workflow Context integration, + ADR-021 Integration Work tier, + Transmittal/Circulation context triggers, updated ADR-020 status | Windsurf AI |
|
||||
| 1.8.6 | 2026-04-10 | + DMS Workflow Engine Protocol, + Security & Integrity Audit Protocol, + 2 Context-Aware Triggers, ADR Status column, Forbidden Why column | Human Dev |
|
||||
| 1.8.5 | 2026-04-04 | Added ADR-007 error handling, ADR-020 AI integration, updated security rules | Windsurf AI |
|
||||
| 1.8.4 | 2026-03-24 | Phase 5.4→✅ DONE, Tailwind 3.4.3, ADR count(16), MariaDB UUID note | Windsurf AI |
|
||||
| 1.8.3 | 2026-03-21 | + Rule Enforcement Tiers (🔴🟡🟢), + Tiered Development Flow | Human Dev + AI |
|
||||
| 1.8.2 | 2026-03-21 | + Context Triggers, + Code Snippets, + Error Handling, + i18n | Human Dev + AI |
|
||||
| 1.8.1 | 2026-03-21 | + ADR-019 UUID patterns, + Phase 5.4 pending files | Claude Sonnet |
|
||||
| 1.8.0 | 2026-03-19 | + Security overrides, + UAT criteria reference | Human Dev |
|
||||
| 1.7.2 | 2026-03-15 | + AI Boundary rules (ADR-018) | Gemini Pro |
|
||||
| Version | Date | Changes | Updated By |
|
||||
| ------- | ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------------- |
|
||||
| 1.9.6 | 2026-05-22 | Added ADR-024/025/026/027/028 to Key Spec Files table; Tier 3 expanded with AI Runtime Layer + Migration Pipeline tiers; Specialized Work section updated with ADR-024~028 patterns; 6 new Context-Aware Triggers; bumped Last synced date | Windsurf AI |
|
||||
| 1.9.5 | 2026-05-18 | **Grill-with-Docs Session:** Domain terminology clarified (Correspondence = all doc types), Tier 3: SPECIALIZED WORK added, Context-Aware Triggers with Status column, Tier-specific Final Checklists | Windsurf AI |
|
||||
| 1.9.4 | 2026-05-16 | Added ADR-015 Release Strategy to Key Spec Files table (Blue-Green deployment + release gates) | Human Dev |
|
||||
| 1.9.3 | 2026-05-15 | ADR-023A: Model revision — gemma4:9b+Typhoon→gemma4:e4b Q8_0 (2-model stack), BullMQ 2-queue split, RAG full-doc embed, OCR auto-detect, n8n→DMS API boundary, QdrantService multi-tenancy contract | Windsurf AI |
|
||||
| 1.9.2 | 2026-05-14 | Consolidated legacy AI ADRs (017, 017B, 018, 020, 022) into master ADR-023: Unified AI Architecture | Antigravity AI |
|
||||
| 1.9.1 | 2026-05-13 | Added `bugfix` workflow and skill (migrated and improved from `docs/bugfix.md`) | Windsurf AI |
|
||||
| 1.9.0 | 2026-05-03 | Integrated Global TypeScript Coding Standards (Headers, JSDoc, Thai comments, Single Export, No blank lines) | Windsurf AI |
|
||||
| 1.8.9 | 2026-04-22 | `.agents/skills/` LCBP3-native rebuild (20 skills @ v1.8.9) + `_LCBP3-CONTEXT.md` appendix + `specs/03-Data-and-Storage/deltas/` + AGENTS.md sync | Windsurf AI |
|
||||
| 1.8.8 | 2026-04-14 | Workflow attachments (ADR-021) + step-attachment envelope fields | Windsurf AI |
|
||||
| 1.8.7 | 2026-04-14 | + ADR-021 Workflow Context integration, + ADR-021 Integration Work tier, + Transmittal/Circulation context triggers, updated ADR-020 status | Windsurf AI |
|
||||
| 1.8.6 | 2026-04-10 | + DMS Workflow Engine Protocol, + Security & Integrity Audit Protocol, + 2 Context-Aware Triggers, ADR Status column, Forbidden Why column | Human Dev |
|
||||
| 1.8.5 | 2026-04-04 | Added ADR-007 error handling, ADR-020 AI integration, updated security rules | Windsurf AI |
|
||||
| 1.8.4 | 2026-03-24 | Phase 5.4→✅ DONE, Tailwind 3.4.3, ADR count(16), MariaDB UUID note | Windsurf AI |
|
||||
| 1.8.3 | 2026-03-21 | + Rule Enforcement Tiers (🔴🟡🟢), + Tiered Development Flow | Human Dev + AI |
|
||||
| 1.8.2 | 2026-03-21 | + Context Triggers, + Code Snippets, + Error Handling, + i18n | Human Dev + AI |
|
||||
| 1.8.1 | 2026-03-21 | + ADR-019 UUID patterns, + Phase 5.4 pending files | Claude Sonnet |
|
||||
| 1.8.0 | 2026-03-19 | + Security overrides, + UAT criteria reference | Human Dev |
|
||||
| 1.7.2 | 2026-03-15 | + AI Boundary rules (ADR-018) | Gemini Pro |
|
||||
|
||||
---
|
||||
|
||||
|
||||
+28
-22
@@ -3,10 +3,10 @@
|
||||
---
|
||||
|
||||
**title:** 'LCBP3-DMS Architecture Documentation'
|
||||
**version:** 1.9.2
|
||||
**version:** 1.9.5
|
||||
**status:** active
|
||||
**owner:** Nattanin Peancharoen
|
||||
**last_updated:** 2026-05-18
|
||||
**last_updated:** 2026-05-22
|
||||
**related:**
|
||||
|
||||
- specs/02-Architecture/02-01-system-context.md
|
||||
@@ -23,7 +23,7 @@
|
||||
2. [Software Architecture & Design](#2-software-architecture--design)
|
||||
3. [Network Design & Security](#3-network-design--security)
|
||||
4. [API Design & Error Handling](#4-api-design--error-handling)
|
||||
5. [AI Architecture (ADR-023/023A)](#5-ai-architecture-adr-023023a)
|
||||
5. [AI Architecture (ADR-023/023A/024/025)](#5-ai-architecture-adr-023023a)
|
||||
6. [Architecture Decision Records (ADRs)](#6-architecture-decision-records-adrs)
|
||||
|
||||
---
|
||||
@@ -455,7 +455,7 @@ throw new BusinessException('Cannot approve correspondence in current status', '
|
||||
|
||||
---
|
||||
|
||||
## 5. AI Architecture (ADR-023/023A)
|
||||
## 5. AI Architecture (ADR-023/023A/024/025)
|
||||
|
||||
### 5.1 AI Integration Architecture
|
||||
|
||||
@@ -519,18 +519,23 @@ graph TB
|
||||
|
||||
### 6.1 Key ADRs Implemented
|
||||
|
||||
| ADR | Title | Status | Description |
|
||||
| ------------ | --------------------------- | --------- | -------------------------------------- |
|
||||
| **ADR-001** | Unified Workflow Engine | ✅ Active | DSL-based workflow implementation |
|
||||
| **ADR-002** | Document Numbering Strategy | ✅ Active | Document number generation + locking |
|
||||
| **ADR-007** | Error Handling Strategy | ✅ Active | Layered error classification |
|
||||
| **ADR-008** | Email Notification Strategy | ✅ Active | BullMQ + multi-channel notification |
|
||||
| **ADR-009** | Database Migration Strategy | ✅ Active | Schema changes — edit SQL directly |
|
||||
| **ADR-016** | Security Authentication | ✅ Active | Auth, RBAC, file upload security |
|
||||
| **ADR-019** | Hybrid Identifier Strategy | ✅ Active | INT PK + UUIDv7 Public API |
|
||||
| **ADR-021** | Workflow Context | ✅ Active | Integrated workflow & step attachments |
|
||||
| **ADR-023** | Unified AI Architecture | ✅ Active | AI boundaries and pipeline |
|
||||
| **ADR-023A** | AI Model Revision | ✅ Active | 2-Model stack with BullMQ queues |
|
||||
| ADR | Title | Status | Description |
|
||||
| ------------ | ------------------------------- | --------- | ---------------------------------------------- |
|
||||
| **ADR-001** | Unified Workflow Engine | ✅ Active | DSL-based workflow implementation |
|
||||
| **ADR-002** | Document Numbering Strategy | ✅ Active | Document number generation + locking |
|
||||
| **ADR-007** | Error Handling Strategy | ✅ Active | Layered error classification |
|
||||
| **ADR-008** | Email Notification Strategy | ✅ Active | BullMQ + multi-channel notification |
|
||||
| **ADR-009** | Database Migration Strategy | ✅ Active | Schema changes — edit SQL directly |
|
||||
| **ADR-016** | Security Authentication | ✅ Active | Auth, RBAC, file upload security |
|
||||
| **ADR-019** | Hybrid Identifier Strategy | ✅ Active | INT PK + UUIDv7 Public API |
|
||||
| **ADR-021** | Workflow Context | ✅ Active | Integrated workflow & step attachments |
|
||||
| **ADR-023** | Unified AI Architecture | ✅ Active | AI boundaries and pipeline |
|
||||
| **ADR-023A** | AI Model Revision | ✅ Active | 2-Model stack with BullMQ queues |
|
||||
| **ADR-024** | Intent Classification Strategy | ✅ Active | Hybrid Pattern → LLM Fallback intent routing |
|
||||
| **ADR-025** | AI Tool Layer Architecture | ✅ Active | Server-side Tool dispatch, CASL-guarded bridge |
|
||||
| **ADR-026** | Document Chat UI Pattern | ✅ Active | Side-panel document chat UI |
|
||||
| **ADR-027** | AI Admin Console & Dynamic Ctrl | ✅ Active | AI Admin Panel + dynamic model/prompt control |
|
||||
| **ADR-028** | Migration Architecture Refactor | ✅ Active | Staging Queue & post-migration cleanup |
|
||||
|
||||
### 6.2 ADR References
|
||||
|
||||
@@ -548,18 +553,19 @@ For detailed architectural decisions, please refer to:
|
||||
- **Network Design:** `specs/02-Architecture/02-03-network-design.md`
|
||||
- **API Design:** `specs/02-Architecture/02-04-api-design.md`
|
||||
- **Decision Records:** `specs/06-Decision-Records/`
|
||||
- **Data Schema:** `specs/03-Data-and-Storage/lcbp3-v1.8.0-schema-*.sql`
|
||||
- **Data Schema:** `specs/03-Data-and-Storage/lcbp3-v1.9.0-schema-*.sql`
|
||||
- **Engineering Guidelines:** `specs/05-Engineering-Guidelines/`
|
||||
|
||||
---
|
||||
|
||||
## 🔄 Version History
|
||||
|
||||
| Version | Date | Changes |
|
||||
| --------- | ---------- | --------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| **1.9.2** | 2026-05-18 | Complete restructure following specs/02-Architecture format, added comprehensive diagrams, updated AI Architecture (ADR-023/023A) |
|
||||
| **1.9.0** | 2026-05-13 | AI Architecture consolidation, Agent Infrastructure standardization |
|
||||
| **1.8.0** | 2026-02-23 | Initial architecture documentation |
|
||||
| Version | Date | Changes |
|
||||
| --------- | ---------- | ----------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| **1.9.5** | 2026-05-22 | Added ADR-024/025/026/027/028 to ADR reference table; updated AI Architecture section heading; schema reference corrected to v1.9.0 |
|
||||
| **1.9.2** | 2026-05-18 | Complete restructure following specs/02-Architecture format, added comprehensive diagrams, updated AI Architecture (ADR-023/023A) |
|
||||
| **1.9.0** | 2026-05-13 | AI Architecture consolidation, Agent Infrastructure standardization |
|
||||
| **1.8.0** | 2026-02-23 | Initial architecture documentation |
|
||||
|
||||
---
|
||||
|
||||
|
||||
@@ -1,5 +1,61 @@
|
||||
# Version History
|
||||
|
||||
## 1.9.5 (2026-05-22)
|
||||
|
||||
### docs(adr): ADR-028 Migration Architecture Refactor + Root Docs Update
|
||||
|
||||
#### Summary
|
||||
|
||||
เพิ่ม ADR-028 (Migration Architecture Refactor — Staging Queue & Post-Migration Cleanup) และอัปเดตเอกสาร Root ทั้งหมดให้สะท้อนสถานะ v1.9.5
|
||||
|
||||
#### Changes
|
||||
|
||||
- **ADR-028**: สร้างเอกสาร `ADR-028-migration-architecture-refactor.md` ครอบคลุม Staging Queue, Post-Migration Cleanup Process และ Migration Validation Gates
|
||||
- **specs/README.md**: อัปเดต version 1.9.2 → 1.9.5, เพิ่ม ADR-024 ถึง ADR-028 ในตาราง ADR Reference, อัปเดต Directory Structure ให้ครบ (200-fullstacks 9 folders, 300-others 2 folders, 100-Infrastructures 2 folders, 05-Engineering-Guidelines ครบ 8 ไฟล์)
|
||||
- **ARCHITECTURE.md**: อัปเดต version 1.9.2 → 1.9.5, เพิ่ม ADR-024/025/026/027/028 ในตาราง, แก้ schema reference v1.8.0 → v1.9.0
|
||||
- **CHANGELOG.md**: เพิ่ม entries 1.9.3, 1.9.4, 1.9.5
|
||||
- **CONTEXT.md**: อัปเดต ADR table — ADR-024/025/026 เปลี่ยนสถานะเป็น ✅ Accepted
|
||||
- **CONTRIBUTING.md**: อัปเดต version history table, ADR count 23 → 28, document history entries
|
||||
- **README.md**: อัปเดต version badge 1.9.2 → 1.9.5, status date, ADR count ในเอกสาร
|
||||
|
||||
---
|
||||
|
||||
## 1.9.4 (2026-05-21)
|
||||
|
||||
### feat(ai): AI Admin Console & Dynamic Control (ADR-027)
|
||||
|
||||
#### Summary
|
||||
|
||||
สร้าง AI Admin Console สำหรับควบคุมระบบ AI แบบ Dynamic — จัดการ Model, Prompt Template, Intent Definitions, และ System Health โดยไม่ต้อง Redeploy
|
||||
|
||||
#### Changes
|
||||
|
||||
- **ADR-027**: สร้างเอกสาร `ADR-027-ai-admin-console-and-dynamic-control.md` ครอบคลุม Admin Panel Architecture, Dynamic Control Mechanism และ Access Control
|
||||
- **CONTEXT-ADR-027.md**: เอกสาร Context สำหรับ AI Admin Console implementation
|
||||
- **specs/200-fullstacks/227-ai-admin-console/**: Feature spec folder สำหรับ AI Admin Console
|
||||
|
||||
---
|
||||
|
||||
## 1.9.3 (2026-05-19)
|
||||
|
||||
### feat(ai): Intent Classification + Tool Layer + Document Chat (ADR-024/025/026)
|
||||
|
||||
#### Summary
|
||||
|
||||
สร้าง AI Runtime Layer ครบชุด — Intent Classifier (Hybrid Pattern→LLM), AI Tool Layer (Server-side dispatch), และ Document Chat UI (Side-panel) ตามลำดับ dependency ที่วางไว้ใน CONTEXT.md
|
||||
|
||||
#### Changes
|
||||
|
||||
- **ADR-024**: `ADR-024-intent-classification-strategy.md` — Hybrid strategy: Pattern Layer (keyword/regex จาก `ai_intent_patterns` DB, cache Redis 5 min) → LLM Fallback (Ollama gemma4:e4b, semaphore max=3 sync)
|
||||
- **ADR-025**: `ADR-025-ai-tool-layer-architecture.md` — Server-side Tool dispatch: AI Gateway → Tool Registry → Business Service ภายใต้ CASL scope; ToolResult DTO มีเฉพาะ `publicId` + business codes
|
||||
- **ADR-026**: `ADR-026-document-chat-ui-pattern.md` — Side-panel Document Chat UI พร้อม `useAiChat()` hook, streaming response support, TanStack Query cache
|
||||
- **CONTEXT.md**: อัปเดต Intent Classification terminology, AI Tool Layer glossary, Relationships, และ ADR status table (ADR-024/025/026 → ✅ Accepted)
|
||||
- **specs/200-fullstacks/**: เพิ่ม 224-intent-classification/, 225-ai-tool-layer-architecture/, 226-document-chat-ui-pattern/
|
||||
- **specs/300-others/**: เพิ่ม 301-unified-ai-arch/, 302-ai-model-revision/
|
||||
- **AGENTS.md**: Bump to v1.9.5
|
||||
|
||||
---
|
||||
|
||||
## 1.9.2 (2026-05-15)
|
||||
|
||||
### feat(ai): AI Model Revision & Hybrid Staging (ADR-023A)
|
||||
|
||||
+19
-15
@@ -198,14 +198,16 @@ User Chat → Intent Router (ยังไม่มี) → Server-side Intent
|
||||
|
||||
## System readiness summary (resolved)
|
||||
|
||||
| Component | สถานะ | หมายเหตุ |
|
||||
| ------------------- | ----------- | ---------------------------------------------------- |
|
||||
| **Infrastructure** | ✅ พร้อม | NestJS + Next.js + MariaDB + Redis + Elasticsearch |
|
||||
| **Workflow Engine** | ✅ พร้อม | DSL-based, ADR-001/021 |
|
||||
| **AI Boundary** | ✅ พร้อม | ADR-023A — Ollama isolation, no direct DB access |
|
||||
| **RAG Pipeline** | 🟡 บางส่วน | Qdrant service มีใน code, ต้องตรวจสอบ deployment |
|
||||
| **Intent Router** | ❌ ยังไม่มี | AI ยังไม่สามารถตัดสินใจเรียก service เองได้ |
|
||||
| **AI Tool Layer** | ❌ ยังไม่มี | ไม่มี bridge ระหว่าง AI Gateway กับ business modules |
|
||||
| Component | สถานะ | หมายเหตุ |
|
||||
| -------------------- | --------------- | ----------------------------------------------------------------------------- |
|
||||
| **Infrastructure** | ✅ พร้อม | NestJS + Next.js + MariaDB + Redis + Elasticsearch |
|
||||
| **Workflow Engine** | ✅ พร้อม | DSL-based, ADR-001/021 |
|
||||
| **AI Boundary** | ✅ พร้อม | ADR-023A — Ollama isolation, no direct DB access |
|
||||
| **RAG Pipeline** | 🟡 บางส่วน | Qdrant service มีใน code, ต้องตรวจสอบ deployment |
|
||||
| **Intent Router** | 🟡 ADR Accepted | ADR-024 Accepted — Intent Classifier (Pattern→LLM Fallback) รอ implementation |
|
||||
| **AI Tool Layer** | 🟡 ADR Accepted | ADR-025 Accepted — Tool Layer Architecture รอ implementation |
|
||||
| **Document Chat UI** | 🟡 ADR Accepted | ADR-026 Accepted — Side-panel Chat UI รอ implementation |
|
||||
| **AI Admin Console** | 🟡 ADR Accepted | ADR-027 Accepted — Dynamic Control Panel รอ implementation |
|
||||
|
||||
## Flagged ambiguities
|
||||
|
||||
@@ -285,12 +287,14 @@ User Chat → Intent Router (ยังไม่มี) → Server-side Intent
|
||||
|
||||
---
|
||||
|
||||
## ADRs ที่ต้องสร้าง
|
||||
## ADRs ที่เกี่ยวข้องกับ AI Runtime Layer
|
||||
|
||||
| ADR | หัวข้อ | ตัดสินใจอะไร | สถานะ |
|
||||
| ------- | ------------------------------ | ------------------------------------------------ | ----------- |
|
||||
| ADR-024 | Intent Classification Strategy | Hybrid: Pattern First → LLM Fallback (ADR-024) | ✅ Accepted |
|
||||
| ADR-025 | AI Tool Layer Architecture | Bridge pattern, CASL enforcement, response shape | ✅ Accepted |
|
||||
| ADR-026 | Document Chat UI Pattern | Side-panel vs modal vs separate page | ✅ Accepted |
|
||||
| ADR | หัวข้อ | ตัดสินใจอะไร | สถานะ |
|
||||
| ------- | ---------------------------------- | ------------------------------------------------- | ----------- |
|
||||
| ADR-024 | Intent Classification Strategy | Hybrid: Pattern First → LLM Fallback | ✅ Accepted |
|
||||
| ADR-025 | AI Tool Layer Architecture | Bridge pattern, CASL enforcement, response shape | ✅ Accepted |
|
||||
| ADR-026 | Document Chat UI Pattern | Side-panel vs modal vs separate page | ✅ Accepted |
|
||||
| ADR-027 | AI Admin Console & Dynamic Control | Admin Panel + dynamic model/prompt/intent control | ✅ Accepted |
|
||||
| ADR-028 | Migration Architecture Refactor | Staging Queue & post-migration cleanup | ✅ Active |
|
||||
|
||||
**หมายเหตุ**: ADR-023A ยังคงเป็น canonical สำหรับ infrastructure — ADR-024/025/026 เพิ่ม runtime layer เท่านั้น
|
||||
**หมายเหตุ**: ADR-023A ยังคงเป็น canonical สำหรับ infrastructure — ADR-024/025/026/027 เพิ่ม runtime layer; ADR-028 ปรับ Migration Pipeline
|
||||
|
||||
+35
-28
@@ -79,7 +79,7 @@ specs/
|
||||
│ ├── 05-03-frontend-guidelines.md
|
||||
│ └── 05-04-testing-strategy.md
|
||||
│
|
||||
├── 06-Decision-Records/ # Architecture Decision Records (23 ADRs)
|
||||
├── 06-Decision-Records/ # Architecture Decision Records (28 ADRs)
|
||||
│ ├── README.md
|
||||
│ ├── ADR-001-unified-workflow-engine.md
|
||||
│ └── ...
|
||||
@@ -96,19 +96,19 @@ specs/
|
||||
|
||||
### 📋 หมวดหมู่เอกสาร
|
||||
|
||||
| หมวด | วัตถุประสงค์ | ไฟล์สำคัญ | ผู้ดูแล |
|
||||
| ----------------------------- | -------------------------------------- | ---------------- | ----------------------- |
|
||||
| **00-Overview** | ภาพรวม, Product Vision, KPI, Training | Gap 1/5/6/9 | Project Manager / PO |
|
||||
| **01-Requirements** | User Stories, UAT, UI, Edge Cases | Gap 2/3/4/10 | Business Analyst + PO |
|
||||
| **02-Architecture** | สถาปัตยกรรมและการออกแบบ | — | Tech Lead + Architects |
|
||||
| **03-Data-and-Storage** | Schema v1.8.0, Migration Scope | Gap 7 | Backend Lead + DBA |
|
||||
| **04-Infrastructure-OPS** | Deployment, Operations, Release Policy | Gap 8 | DevOps Team |
|
||||
| **05-Engineering-Guidelines** | แผนการพัฒนาและ Implementation | — | Development Team Leads |
|
||||
| **06-Decision-Records** | Architecture Decision Records (23) | ADR-019/021/023 | Tech Lead + Senior Devs |
|
||||
| **100-Infrastructures** | Infrastructure Operations & Ops | — | DevOps / SRE Team |
|
||||
| **200-fullstacks** | Feature Implementation (Fullstack) | spec.md, plan.md | Development Team |
|
||||
| **300-others** | Documentation & Research | — | All Team Members |
|
||||
| **99-archives** | Archived / Tasks | — | All Team Members |
|
||||
| หมวด | วัตถุประสงค์ | ไฟล์สำคัญ | ผู้ดูแล |
|
||||
| ----------------------------- | -------------------------------------- | ----------------------- | ----------------------- |
|
||||
| **00-Overview** | ภาพรวม, Product Vision, KPI, Training | Gap 1/5/6/9 | Project Manager / PO |
|
||||
| **01-Requirements** | User Stories, UAT, UI, Edge Cases | Gap 2/3/4/10 | Business Analyst + PO |
|
||||
| **02-Architecture** | สถาปัตยกรรมและการออกแบบ | — | Tech Lead + Architects |
|
||||
| **03-Data-and-Storage** | Schema v1.8.0, Migration Scope | Gap 7 | Backend Lead + DBA |
|
||||
| **04-Infrastructure-OPS** | Deployment, Operations, Release Policy | Gap 8 | DevOps Team |
|
||||
| **05-Engineering-Guidelines** | แผนการพัฒนาและ Implementation | — | Development Team Leads |
|
||||
| **06-Decision-Records** | Architecture Decision Records (28) | ADR-019/021/023/024-028 | Tech Lead + Senior Devs |
|
||||
| **100-Infrastructures** | Infrastructure Operations & Ops | — | DevOps / SRE Team |
|
||||
| **200-fullstacks** | Feature Implementation (Fullstack) | spec.md, plan.md | Development Team |
|
||||
| **300-others** | Documentation & Research | — | All Team Members |
|
||||
| **99-archives** | Archived / Tasks | — | All Team Members |
|
||||
|
||||
---
|
||||
|
||||
@@ -546,23 +546,28 @@ graph LR
|
||||
|
||||
**Document History**:
|
||||
|
||||
| Version | Date | Author | Changes |
|
||||
| ------- | ---------- | ---------- | ----------------------------------------------------------------- |
|
||||
| 1.0.0 | 2025-01-15 | John Doe | Initial version |
|
||||
| 1.1.0 | 2025-02-20 | Jane Smith | Add CC support |
|
||||
| 1.8.1 | 2026-03-21 | Tech Lead | Security hardening, numbering fixes, dependency updates |
|
||||
| 1.8.5 | 2026-04-10 | Tech Lead | ADR registry complete (21 ADRs), spec documentation updates |
|
||||
| 1.8.7 | 2026-04-14 | Tech Lead | ADR-021 integration complete (22 ADRs), workflow context features |
|
||||
| 1.8.8 | 2026-04-14 | Tech Lead | Step-specific attachments, IntegratedBanner, WorkflowLifecycle |
|
||||
| 1.8.9 | 2026-04-18 | Tech Lead | Docker Compose hardening — 27 findings (C1–S4) addressed |
|
||||
| 1.9.0 | 2026-05-13 | Tech Lead | Agent Infrastructure standard & RFA System migration finalized |
|
||||
| 1.9.1 | 2026-05-14 | Tech Lead | Consolidated AI master architecture into ADR-023 |
|
||||
| Version | Date | Author | Changes |
|
||||
| ------- | ---------- | ---------- | --------------------------------------------------------------------------------- |
|
||||
| 1.0.0 | 2025-01-15 | John Doe | Initial version |
|
||||
| 1.1.0 | 2025-02-20 | Jane Smith | Add CC support |
|
||||
| 1.8.1 | 2026-03-21 | Tech Lead | Security hardening, numbering fixes, dependency updates |
|
||||
| 1.8.5 | 2026-04-10 | Tech Lead | ADR registry complete (21 ADRs), spec documentation updates |
|
||||
| 1.8.7 | 2026-04-14 | Tech Lead | ADR-021 integration complete (22 ADRs), workflow context features |
|
||||
| 1.8.8 | 2026-04-14 | Tech Lead | Step-specific attachments, IntegratedBanner, WorkflowLifecycle |
|
||||
| 1.8.9 | 2026-04-18 | Tech Lead | Docker Compose hardening — 27 findings (C1–S4) addressed |
|
||||
| 1.9.0 | 2026-05-13 | Tech Lead | Agent Infrastructure standard & RFA System migration finalized |
|
||||
| 1.9.1 | 2026-05-14 | Tech Lead | Consolidated AI master architecture into ADR-023 |
|
||||
| 1.9.2 | 2026-05-15 | Tech Lead | AI Model Revision ADR-023A: 2-Model Stack + BullMQ 2-Queue (23 ADRs) |
|
||||
| 1.9.3 | 2026-05-19 | Tech Lead | ADR-024 Intent Classification + ADR-025 AI Tool Layer + ADR-026 Chat UI (26 ADRs) |
|
||||
| 1.9.4 | 2026-05-21 | Tech Lead | ADR-027 AI Admin Console & Dynamic Control (27 ADRs) |
|
||||
| 1.9.5 | 2026-05-22 | Tech Lead | ADR-028 Migration Architecture Refactor + Root Docs Update (28 ADRs) |
|
||||
|
||||
**Current Version**: 1.9.0
|
||||
**Current Version**: 1.9.5
|
||||
**Status**: Approved
|
||||
**Last Updated**: 2026-05-13
|
||||
**Last Updated**: 2026-05-22
|
||||
**Security**: 0 vulnerabilities (backend) + Compose stack hardened (27 findings → 0)
|
||||
**Workflow Engine**: ADR-021 Integrated Context complete + RFA v1.9.0 finalized
|
||||
**AI Runtime Layer**: ADR-024/025/026/027 Accepted — Intent Classification, Tool Layer, Chat UI, Admin Console
|
||||
```
|
||||
|
||||
### 5. UUID Conventions (ADR-019)
|
||||
@@ -756,7 +761,9 @@ bash ./.agents/scripts/bash/audit-skills.sh
|
||||
- **ADR-019 UUID** — `publicId` exposed directly; ห้าม `parseInt`/`Number`/`+` บน UUID; ห้าม `id ?? ''` fallback; ห้ามใช้ `@Expose({ name: 'id' })` rename
|
||||
- **ADR-009 Schema** — แก้ `lcbp3-v1.9.0-schema-02-tables.sql` โดยตรง + เพิ่ม delta ที่ `specs/03-Data-and-Storage/deltas/`; ห้าม TypeORM migrations
|
||||
- **ADR-016 Security** — CASL + `Idempotency-Key` + ClamAV two-phase upload
|
||||
- **ADR-023 AI Architecture** — Ollama on Admin Desktop only; human-in-the-loop validation
|
||||
- **ADR-023/023A AI Architecture** — Ollama on Admin Desktop only; 2-Model Stack (gemma4:e4b Q8_0 + nomic-embed-text); BullMQ 2-Queue; human-in-the-loop validation
|
||||
- **ADR-024 Intent Classification** — Hybrid Pattern→LLM Fallback; Redis cache 5 min; ห้าม LLM Fallback โดยไม่มี Pattern Layer
|
||||
- **ADR-025 AI Tool Layer** — Server-side Tool dispatch; CASL-guarded; ToolResult DTO ใช้ `publicId` เท่านั้น
|
||||
|
||||
---
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
# NAP-DMS Gemini Rules & Standards
|
||||
|
||||
- For: Gemini (Google AI Studio, Vertex AI, Antigravity, Gemini CLI)
|
||||
- Version: 1.9.5 | Last synced from AGENTS.md: 2026-05-18
|
||||
- Version: 1.9.6 | Last synced from AGENTS.md: 2026-05-22
|
||||
- Repo: [https://git.np-dms.work/np-dms/lcbp3](https://git.np-dms.work/np-dms/lcbp3)
|
||||
- Skill pack: `.agents/skills/` (v1.9.0, 21 skills) — see [`skills/README.md`](../.agents/skills/README.md) + [`skills/_LCBP3-CONTEXT.md`](../.agents/skills/_LCBP3-CONTEXT.md)
|
||||
|
||||
@@ -89,7 +89,9 @@ Must fix before merge:
|
||||
Requires domain-specific knowledge:
|
||||
|
||||
- **ADR-021 Integration:** Workflow Engine & Context implementation
|
||||
- **AI Integration:** ADR-023/023A boundary enforcement and pipeline usage
|
||||
- **AI Infrastructure:** ADR-023/023A boundary enforcement and pipeline usage
|
||||
- **AI Runtime Layer:** ADR-024 Intent Classification, ADR-025 Tool Layer, ADR-026 Chat UI, ADR-027 Admin Console
|
||||
- **Migration Pipeline:** ADR-028 Staging Queue & post-migration cleanup
|
||||
- **Complex Business Logic:** Multi-step workflows with state management
|
||||
- **Performance Optimization:** Database queries, caching strategies, bulk operations
|
||||
|
||||
@@ -107,32 +109,37 @@ Best practice — follow when possible:
|
||||
|
||||
Spec priority: **`06-Decision-Records`** > **`05-Engineering-Guidelines`** > others
|
||||
|
||||
| Document | Path | Status | Use When |
|
||||
| ---------------------------- | -------------------------------------------------------------------- | --------- | --------------------------------------------------------------------------------- |
|
||||
| **Glossary** | `specs/00-overview/00-02-glossary.md` | — | Verify domain terminology |
|
||||
| **Schema Tables** | `specs/03-Data-and-Storage/lcbp3-v1.9.0-schema-02-tables.sql` | — | Before writing any query |
|
||||
| **Data Dictionary** | `specs/03-Data-and-Storage/03-01-data-dictionary.md` | — | Field meanings + business rules |
|
||||
| **RBAC Matrix** | `specs/01-requirements/01-02-business-rules/01-02-01-rbac-matrix.md` | — | Permission levels + roles |
|
||||
| **Edge Cases** | `specs/01-Requirements/01-06-edge-cases-and-rules.md` | — | Prevent bugs in flows |
|
||||
| **ADR-001 Workflow Engine** | `specs/06-Decision-Records/ADR-001-unified-workflow-engine.md` | ✅ Active | DSL-based workflow implementation |
|
||||
| **ADR-002 Doc Numbering** | `specs/06-Decision-Records/ADR-002-document-numbering-strategy.md` | ✅ Active | Document number generation + locking |
|
||||
| **ADR-007 Error Handling** | `specs/06-Decision-Records/ADR-007-error-handling-strategy.md` | ✅ Active | Error patterns & recovery |
|
||||
| **ADR-008 Notifications** | `specs/06-Decision-Records/ADR-008-email-notification-strategy.md` | ✅ Active | BullMQ + multi-channel notification |
|
||||
| **ADR-009 DB Migration** | `specs/06-Decision-Records/ADR-009-database-migration-strategy.md` | ✅ Active | Schema changes — edit SQL directly |
|
||||
| **ADR-016 Security** | `specs/06-Decision-Records/ADR-016-security-authentication.md` | ✅ Active | Auth, RBAC, file upload security |
|
||||
| **ADR-015 Release Strategy** | `specs/06-Decision-Records/ADR-015-deployment-infrastructure.md` | ✅ Active | Blue-Green deployment + release gates |
|
||||
| **ADR-019 UUID** | `specs/06-Decision-Records/ADR-019-hybrid-identifier-strategy.md` | ✅ Active | UUID-related work |
|
||||
| **ADR-021 Workflow Context** | `specs/06-Decision-Records/ADR-021-workflow-context.md` | ✅ Active | Integrated workflow & step attachments |
|
||||
| **ADR-023 AI Architecture** | `specs/06-Decision-Records/ADR-023-unified-ai-architecture.md` | ✅ Active | Unified AI boundaries and pipeline (base architecture) |
|
||||
| **ADR-023A AI Model Rev.** | `specs/06-Decision-Records/ADR-023A-unified-ai-architecture.md` | ✅ Active | 2-Model stack (gemma4:e4b Q8_0), BullMQ 2-queue, RAG embed scope, OCR auto-detect |
|
||||
| **Backend Guidelines** | `specs/05-Engineering-Guidelines/05-02-backend-guidelines.md` | — | NestJS patterns |
|
||||
| **Frontend Guidelines** | `specs/05-Engineering-Guidelines/05-03-frontend-guidelines.md` | — | Next.js patterns |
|
||||
| **Testing Strategy** | `specs/05-Engineering-Guidelines/05-04-testing-strategy.md` | — | Coverage goals |
|
||||
| **Git Conventions** | `specs/05-Engineering-Guidelines/05-05-git-conventions.md` | — | Commit/branch naming |
|
||||
| **Code Snippets** | `specs/05-Engineering-Guidelines/05-06-code-snippets.md` | — | Reusable patterns |
|
||||
| **i18n Guidelines** | `specs/05-Engineering-Guidelines/05-08-i18n-guidelines.md` | — | Localization rules |
|
||||
| **Release Policy** | `specs/04-Infrastructure-OPS/04-08-release-management-policy.md` | — | Before deploy/hotfix |
|
||||
| **UAT Criteria** | `specs/01-Requirements/01-05-acceptance-criteria.md` | — | Feature completeness |
|
||||
| Document | Path | Status | Use When |
|
||||
| ------------------------------ | --------------------------------------------------------------------------- | --------- | --------------------------------------------------------------------------------- |
|
||||
| **Glossary** | `specs/00-overview/00-02-glossary.md` | — | Verify domain terminology |
|
||||
| **Schema Tables** | `specs/03-Data-and-Storage/lcbp3-v1.9.0-schema-02-tables.sql` | — | Before writing any query |
|
||||
| **Data Dictionary** | `specs/03-Data-and-Storage/03-01-data-dictionary.md` | — | Field meanings + business rules |
|
||||
| **RBAC Matrix** | `specs/01-requirements/01-02-business-rules/01-02-01-rbac-matrix.md` | — | Permission levels + roles |
|
||||
| **Edge Cases** | `specs/01-Requirements/01-06-edge-cases-and-rules.md` | — | Prevent bugs in flows |
|
||||
| **ADR-001 Workflow Engine** | `specs/06-Decision-Records/ADR-001-unified-workflow-engine.md` | ✅ Active | DSL-based workflow implementation |
|
||||
| **ADR-002 Doc Numbering** | `specs/06-Decision-Records/ADR-002-document-numbering-strategy.md` | ✅ Active | Document number generation + locking |
|
||||
| **ADR-007 Error Handling** | `specs/06-Decision-Records/ADR-007-error-handling-strategy.md` | ✅ Active | Error patterns & recovery |
|
||||
| **ADR-008 Notifications** | `specs/06-Decision-Records/ADR-008-email-notification-strategy.md` | ✅ Active | BullMQ + multi-channel notification |
|
||||
| **ADR-009 DB Migration** | `specs/06-Decision-Records/ADR-009-database-migration-strategy.md` | ✅ Active | Schema changes — edit SQL directly |
|
||||
| **ADR-016 Security** | `specs/06-Decision-Records/ADR-016-security-authentication.md` | ✅ Active | Auth, RBAC, file upload security |
|
||||
| **ADR-015 Release Strategy** | `specs/06-Decision-Records/ADR-015-deployment-infrastructure.md` | ✅ Active | Blue-Green deployment + release gates |
|
||||
| **ADR-019 UUID** | `specs/06-Decision-Records/ADR-019-hybrid-identifier-strategy.md` | ✅ Active | UUID-related work |
|
||||
| **ADR-021 Workflow Context** | `specs/06-Decision-Records/ADR-021-workflow-context.md` | ✅ Active | Integrated workflow & step attachments |
|
||||
| **ADR-023 AI Architecture** | `specs/06-Decision-Records/ADR-023-unified-ai-architecture.md` | ✅ Active | Unified AI boundaries and pipeline (base architecture) |
|
||||
| **ADR-023A AI Model Rev.** | `specs/06-Decision-Records/ADR-023A-unified-ai-architecture.md` | ✅ Active | 2-Model stack (gemma4:e4b Q8_0), BullMQ 2-queue, RAG embed scope, OCR auto-detect |
|
||||
| **ADR-024 Intent Class.** | `specs/06-Decision-Records/ADR-024-intent-classification-strategy.md` | ✅ Active | Hybrid Pattern→LLM Fallback; ai_intent_patterns DB; Redis cache 5 min |
|
||||
| **ADR-025 AI Tool Layer** | `specs/06-Decision-Records/ADR-025-ai-tool-layer-architecture.md` | ✅ Active | Server-side Tool dispatch; CASL-guarded bridge; ToolResult uses publicId only |
|
||||
| **ADR-026 Chat UI** | `specs/06-Decision-Records/ADR-026-document-chat-ui-pattern.md` | ✅ Active | Side-panel Document Chat UI; useAiChat() hook; streaming response support |
|
||||
| **ADR-027 AI Admin Console** | `specs/06-Decision-Records/ADR-027-ai-admin-console-and-dynamic-control.md` | ✅ Active | Admin Panel + dynamic model/prompt/intent control without redeploy |
|
||||
| **ADR-028 Migration Refactor** | `specs/06-Decision-Records/ADR-028-migration-architecture-refactor.md` | ✅ Active | Staging Queue & post-migration cleanup |
|
||||
| **Backend Guidelines** | `specs/05-Engineering-Guidelines/05-02-backend-guidelines.md` | — | NestJS patterns |
|
||||
| **Frontend Guidelines** | `specs/05-Engineering-Guidelines/05-03-frontend-guidelines.md` | — | Next.js patterns |
|
||||
| **Testing Strategy** | `specs/05-Engineering-Guidelines/05-04-testing-strategy.md` | — | Coverage goals |
|
||||
| **Git Conventions** | `specs/05-Engineering-Guidelines/05-05-git-conventions.md` | — | Commit/branch naming |
|
||||
| **Code Snippets** | `specs/05-Engineering-Guidelines/05-06-code-snippets.md` | — | Reusable patterns |
|
||||
| **i18n Guidelines** | `specs/05-Engineering-Guidelines/05-08-i18n-guidelines.md` | — | Localization rules |
|
||||
| **Release Policy** | `specs/04-Infrastructure-OPS/04-08-release-management-policy.md` | — | Before deploy/hotfix |
|
||||
| **UAT Criteria** | `specs/01-Requirements/01-05-acceptance-criteria.md` | — | Feature completeness |
|
||||
|
||||
---
|
||||
|
||||
@@ -280,41 +287,41 @@ Full details: `specs/06-Decision-Records/ADR-016-security-authentication.md`
|
||||
|
||||
## 🏷️ Domain Terminology
|
||||
|
||||
| ✅ Use | ❌ Don't Use |
|
||||
| ------------------ | ------------------------------------- |
|
||||
| Correspondence | Letter, Communication, Document |
|
||||
| RFA | Approval Request, Submit for Approval |
|
||||
| Transmittal | Delivery Note, Cover Letter |
|
||||
| Circulation | Distribution, Routing |
|
||||
| Shop Drawing | Construction Drawing |
|
||||
| Contract Drawing | Design Drawing, Blueprint |
|
||||
| Workflow Engine | Approval Flow, Process Engine |
|
||||
| Document Numbering | Document ID, Auto Number |
|
||||
| RBAC | Permission System (generic) |
|
||||
| ✅ Use | ❌ Don't Use | คำอธิบายเพิ่มเติม |
|
||||
| ------------------ | ------------------------------------- | ------------------------------------------------ |
|
||||
| Correspondence | Letter, Communication, Document | ครอบคลุมทุกประเภท: Letter, RFA, Memo, ฯลฯ |
|
||||
| RFA | Approval Request, Submit for Approval | เอกสารขออนุมัติ (ชนิดหนึ่งของ Correspondence) |
|
||||
| Transmittal | Delivery Note, Cover Letter | เอกสารนำส่ง (ชนิดหนึ่งของ Correspondence) |
|
||||
| Circulation | Distribution, Routing | ใบเวียนเอกสารภายใน (ชนิดหนึ่งของ Correspondence) |
|
||||
| Shop Drawing | Construction Drawing | แบบก่อสร้าง |
|
||||
| Contract Drawing | Design Drawing, Blueprint | แบบคู่สัญญา |
|
||||
| Workflow Engine | Approval Flow, Process Engine | เครื่องมือจัดการลำดับงาน |
|
||||
| Document Numbering | Document ID, Auto Number | ระบบจัดการเลขที่เอกสาร |
|
||||
| RBAC | Permission System (generic) | การควบคุมสิทธิ์ตามบทบาท |
|
||||
|
||||
---
|
||||
|
||||
## 🚫 Forbidden Actions
|
||||
|
||||
| ❌ Forbidden | ✅ Correct Approach |
|
||||
| ----------------------------------------------- | ------------------------------------------------------- |
|
||||
| SQL Triggers for business logic | NestJS Service methods |
|
||||
| `.env` files in production | `docker-compose.yml` environment section |
|
||||
| TypeORM migration files | Edit schema SQL directly (ADR-009) |
|
||||
| Inventing table/column names | Verify against `lcbp3-v1.9.0-schema-02-tables.sql` |
|
||||
| `any` TypeScript type | Proper types / generics |
|
||||
| `console.log` in committed code | NestJS Logger (backend) / remove (frontend) |
|
||||
| `req: any` in controllers | `RequestWithUser` typed interface |
|
||||
| `parseInt()` on UUID values | Use UUID string directly (ADR-019) |
|
||||
| Exposing INT PK in API responses | UUIDv7 `publicId` (ADR-019) |
|
||||
| AI accessing DB/storage directly | AI → DMS API → DB (ADR-023/023A) |
|
||||
| Direct file operations bypassing StorageService | `StorageService` for all file moves |
|
||||
| Inline email/notification sending | BullMQ queue job (ADR-008) |
|
||||
| Deploying without Release Gates | Complete `04-08-release-management-policy.md` |
|
||||
| AI direct cloud API calls | On-premises Ollama only (ADR-023/023A) |
|
||||
| AI outputs without human validation | Human-in-the-loop validation required (ADR-023/023A) |
|
||||
| n8n calling Ollama/Qdrant directly | n8n → DMS API → BullMQ → Ollama (ADR-023A) |
|
||||
| Qdrant query without `projectPublicId` filter | `QdrantService.search(projectPublicId, ...)` (ADR-023A) |
|
||||
| ❌ Forbidden | ✅ Correct Approach | ⚠️ Why |
|
||||
| ----------------------------------------------- | ------------------------------------------------------- | ---------------------------------------------------- |
|
||||
| SQL Triggers for business logic | NestJS Service methods | Untestable; bypasses audit log |
|
||||
| `.env` files in production | `docker-compose.yml` environment section | Secrets exposed in version control |
|
||||
| TypeORM migration files | Edit schema SQL directly (ADR-009) | Migration drift risk; schema managed via SQL delta |
|
||||
| Inventing table/column names | Verify against `schema-02-tables.sql` | Schema mismatch causes silent runtime errors |
|
||||
| `any` TypeScript type | Proper types / generics | Defeats strict mode; hides runtime type errors |
|
||||
| `console.log` in committed code | NestJS Logger (backend) / remove (frontend) | Log flooding in production; risk of data leakage |
|
||||
| `req: any` in controllers | `RequestWithUser` typed interface | Type safety lost; auth context unreachable |
|
||||
| `parseInt()` on UUID values | Use UUID string directly (ADR-019) | `"0195…"` parsed to integer `19` — silently wrong |
|
||||
| Exposing INT PK in API responses | UUIDv7 `publicId` (ADR-019) | Leaks row count; enables DB enumeration attacks |
|
||||
| AI accessing DB/storage directly | AI → DMS API → DB (ADR-023/023A) | Bypasses RBAC, audit trail, and validation layer |
|
||||
| Direct file operations bypassing StorageService | `StorageService` for all file moves | Orphaned files; broken ClamAV scan; no audit trail |
|
||||
| Inline email/notification sending | BullMQ queue job (ADR-008) | Blocks request thread; no retry on transient failure |
|
||||
| Deploying without Release Gates | Complete `04-08-release-management-policy.md` | Unverified deploy risks data loss in production |
|
||||
| AI direct cloud API calls | On-premises Ollama only (ADR-023/023A) | Data privacy violation; no audit control |
|
||||
| AI outputs without human validation | Human-in-the-loop validation required (ADR-023/023A) | Unvalidated AI metadata corrupts document records |
|
||||
| n8n calling Ollama/Qdrant directly | n8n → DMS API → BullMQ → Ollama (ADR-023A) | Bypasses audit log, RBAC, and error handling layer |
|
||||
| Qdrant query without `projectPublicId` filter | `QdrantService.search(projectPublicId, ...)` (ADR-023A) | Cross-project data leak via vector search |
|
||||
|
||||
---
|
||||
|
||||
@@ -350,11 +357,11 @@ Full details: `specs/06-Decision-Records/ADR-016-security-authentication.md`
|
||||
3. Add regression test if logic changed
|
||||
4. Verify no forbidden patterns introduced
|
||||
|
||||
### 🟣 Specialized Work — ADR-021, AI Integration, Complex Logic
|
||||
### � Specialized Work — ADR-021, AI Runtime Layer, Complex Logic
|
||||
|
||||
**MUST complete:**
|
||||
|
||||
1. **Domain Knowledge Check** - Read relevant ADRs (ADR-021, ADR-023/023A)
|
||||
1. **Domain Knowledge Check** - Read relevant ADRs (ADR-021, ADR-023/023A, ADR-024~028)
|
||||
2. **Pattern Verification** - Check existing implementations in codebase
|
||||
3. **Specialized Requirements** - Follow domain-specific patterns
|
||||
4. **Complex Logic Testing** - Multi-scenario test coverage
|
||||
@@ -369,13 +376,26 @@ Full details: `specs/06-Decision-Records/ADR-016-security-authentication.md`
|
||||
- Include IntegratedBanner - Frontend workflow lifecycle display
|
||||
- Test workflow transitions - State changes and action validation
|
||||
|
||||
**For AI Integration (ADR-023/023A):**
|
||||
**For AI Infrastructure (ADR-023/023A):**
|
||||
|
||||
- Verify AI boundary enforcement - No direct DB/storage access
|
||||
- Check BullMQ 2-queue setup - ai-realtime + ai-batch
|
||||
- Validate Qdrant multi-tenancy - projectPublicId filter required
|
||||
- Test human-in-the-loop validation workflows
|
||||
- Audit AI interaction logging
|
||||
- Audit AI interaction logging to ai_audit_logs
|
||||
|
||||
**For AI Runtime Layer (ADR-024/025/026/027):**
|
||||
|
||||
- ADR-024: Pattern Layer first (ai_intent_patterns DB + Redis cache 5 min) → LLM Fallback (gemma4:e4b, semaphore max=3)
|
||||
- ADR-025: Tool Registry dispatch — AI Gateway → Tool → Business Service; ToolResult DTO must use publicId only
|
||||
- ADR-026: useAiChat() hook + side-panel UI; streaming response via SSE; TanStack Query cache
|
||||
- ADR-027: Admin Console — dynamic model/prompt/intent control; CASL-guarded admin-only endpoints
|
||||
|
||||
**For Migration Pipeline (ADR-028):**
|
||||
|
||||
- Use Staging Queue pattern — never write directly to production tables
|
||||
- Post-migration cleanup process required after each batch
|
||||
- Migration Validation Gates must pass before promoting to production
|
||||
|
||||
**Expected output:**
|
||||
|
||||
@@ -401,7 +421,7 @@ When user asks about... check these files:
|
||||
| "ตรวจสอบ permission" | ✅ | `lcbp3-v1.9.0-seed-permissions.sql`, `ADR-016` | CASL 4-Level RBAC matrix |
|
||||
| "deploy production" | ✅ | `04-08-release-management-policy.md`, `ADR-015` | Release Gates + Blue-Green strategy |
|
||||
| "เพิ่ม test" | ✅ | `05-04-testing-strategy.md` | Coverage goals + test patterns |
|
||||
| "AI integration" | ✅ | `ADR-023`, `ADR-023A` | AI boundary + 2-model stack + BullMQ queue policy |
|
||||
| "AI integration" | ✅ | `ADR-023`, `ADR-023A`, `ADR-024`, `ADR-025` | AI boundary + 2-model stack + BullMQ queue policy + Intent/Tool Layer |
|
||||
| "Error handling" | ✅ | `ADR-007` | Layered error classification + recovery |
|
||||
| "File upload" | ✅ | `ADR-016`, `05-02-backend-guidelines.md`, `03-Data-and-Storage/03-03-file-storage.md` | Two-phase upload → temp → commit; ClamAV + whitelist |
|
||||
| "Notifications / Queue" | ✅ | `ADR-008`, `05-02-backend-guidelines.md` | BullMQ job — never inline; check retry + dead-letter |
|
||||
@@ -413,6 +433,11 @@ When user asks about... check these files:
|
||||
| "Circulation reassign" | 📋 | `ADR-021`, `specs/200-fullstacks/201-transmittals-circulation/` | reassignRouting() with EC-CIRC-001 |
|
||||
| "สร้าง workflow ใหม่" | 📋 | `ADR-001`, `ADR-021`, `specs/200-fullstacks/203-unified-workflow-engine/` | DSL workflow definition + WorkflowEngineService setup |
|
||||
| "ตรวจสอบ AI boundary" | ✅ | `ADR-023`, `ADR-023A` | Verify Ollama isolation + BullMQ queues + Qdrant projectPublicId filter |
|
||||
| "Intent classification" | ✅ | `ADR-024`, `specs/200-fullstacks/224-intent-classification/` | Pattern Layer → LLM Fallback; ai_intent_patterns; Redis cache 5 min |
|
||||
| "AI Tool Layer" | ✅ | `ADR-025`, `specs/200-fullstacks/225-ai-tool-layer-architecture/` | Tool Registry; CASL-guarded dispatch; ToolResult publicId only |
|
||||
| "Document Chat UI" | ✅ | `ADR-026`, `specs/200-fullstacks/226-document-chat-ui-pattern/` | Side-panel; useAiChat() hook; streaming SSE; TanStack Query cache |
|
||||
| "AI Admin Console" | ✅ | `ADR-027`, `specs/200-fullstacks/227-ai-admin-console/` | Dynamic model/prompt/intent control; admin-only CASL endpoints |
|
||||
| "Migration refactor" | ✅ | `ADR-028`, `specs/200-fullstacks/228-migration-arch-refactor/` | Staging Queue; post-migration cleanup; validation gates |
|
||||
| "จัดการ document numbering" | ✅ | `ADR-002`, `specs/03-Data-and-Storage/03-04-document-numbering.md` | Redis Redlock + template system + preview/override workflows |
|
||||
| "Audit ความปลอดภัย" | ✅ | `ADR-016`, `ADR-019`, `ADR-023`, `ADR-023A` | ตรวจสอบ UUID pattern, CASL Guard, AI Boundary และ Qdrant multi-tenancy |
|
||||
| "แก้ bug / bugfix" | ✅ | `.agents/workflows/bugfix.md`, `error-catalog.md` | ใช้ bugfix workflow สำหรับเคสที่สาเหตุชัดเจน |
|
||||
@@ -535,12 +560,13 @@ This file is a **quick reference**. For detailed information:
|
||||
|
||||
## 🔄 Change Log
|
||||
|
||||
| Version | Date | Changes | Updated By |
|
||||
| ------- | ---------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------- |
|
||||
| 1.9.5 | 2026-05-18 | **Grill-with-Docs Session:** Domain terminology clarified (Correspondence = all doc types), Tier 3: SPECIALIZED WORK added, Context-Aware Triggers with Status column, Tier-specific Final Checklists | Windsurf AI |
|
||||
| 1.9.4 | 2026-05-16 | Added ADR-015 Release Strategy to Key Spec Files table (Blue-Green deployment + release gates) | Human Dev |
|
||||
| 1.9.3 | 2026-05-15 | ADR-023A: Model revision — gemma4:9b+Typhoon→gemma4:e4b Q8_0 (2-model stack), BullMQ 2-queue split, RAG full-doc embed, OCR auto-detect, n8n→DMS API boundary, QdrantService multi-tenancy contract | Windsurf AI |
|
||||
| 1.9.2 | 2026-05-14 | Consolidated legacy AI ADRs (017, 017B, 018, 020, 022) into master ADR-023: Unified AI Architecture | Antigravity AI |
|
||||
| 1.9.1 | 2026-05-13 | Added `bugfix` workflow and skill (migrated and improved from `docs/bugfix.md`) | Windsurf AI |
|
||||
| 1.9.0 | 2026-05-03 | Integrated Global TypeScript Coding Standards (Headers, JSDoc, Thai comments, Single Export, No blank lines) | Windsurf AI |
|
||||
| 1.8.5 | 2026-04-22 | Legacy version | Human Dev |
|
||||
| Version | Date | Changes | Updated By |
|
||||
| ------- | ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------- |
|
||||
| 1.9.6 | 2026-05-22 | Added ADR-024/025/026/027/028 to Key Spec Files; Tier 3 expanded (AI Runtime Layer + Migration Pipeline); Specialized Work updated; 6 new Context-Aware Triggers; Forbidden Actions + Domain Terminology synced from AGENTS.md v1.9.6 | Windsurf AI |
|
||||
| 1.9.5 | 2026-05-18 | **Grill-with-Docs Session:** Domain terminology clarified (Correspondence = all doc types), Tier 3: SPECIALIZED WORK added, Context-Aware Triggers with Status column, Tier-specific Final Checklists | Windsurf AI |
|
||||
| 1.9.4 | 2026-05-16 | Added ADR-015 Release Strategy to Key Spec Files table (Blue-Green deployment + release gates) | Human Dev |
|
||||
| 1.9.3 | 2026-05-15 | ADR-023A: Model revision — gemma4:9b+Typhoon→gemma4:e4b Q8_0 (2-model stack), BullMQ 2-queue split, RAG full-doc embed, OCR auto-detect, n8n→DMS API boundary, QdrantService multi-tenancy contract | Windsurf AI |
|
||||
| 1.9.2 | 2026-05-14 | Consolidated legacy AI ADRs (017, 017B, 018, 020, 022) into master ADR-023: Unified AI Architecture | Antigravity AI |
|
||||
| 1.9.1 | 2026-05-13 | Added `bugfix` workflow and skill (migrated and improved from `docs/bugfix.md`) | Windsurf AI |
|
||||
| 1.9.0 | 2026-05-03 | Integrated Global TypeScript Coding Standards (Headers, JSDoc, Thai comments, Single Export, No blank lines) | Windsurf AI |
|
||||
| 1.8.5 | 2026-04-22 | Legacy version | Human Dev |
|
||||
@@ -3,26 +3,26 @@
|
||||
> **Laem Chabang Port Phase 3 - Document Management System**
|
||||
> ระบบบริหารจัดการเอกสารโครงการแบบครบวงจร สำหรับโครงการก่อสร้างท่าเรือแหลมฉบังระยะที่ 3
|
||||
|
||||
[](./CHANGELOG.md)
|
||||
[](./CHANGELOG.md)
|
||||
[]()
|
||||
[]()
|
||||
[](./specs/00-Overview/README.md)
|
||||
|
||||
---
|
||||
|
||||
## 📈 Current Status (As of 2026-05-18)
|
||||
## 📈 Current Status (As of 2026-05-22)
|
||||
|
||||
**Version 1.9.2 — AI Model Revision & Hybrid Staging (ADR-023A)**
|
||||
**Version 1.9.5 — AI Intent/Tool Layer/Chat/Admin Console ADRs + Migration Arch Refactor (ADR-024~028)**
|
||||
|
||||
> v1.8.11 shipped May 5; v1.9.0 (RFA Migration & Agent-Agnostic Infra) shipped May 13.
|
||||
> v1.9.0 shipped May 13; v1.9.2 (ADR-023A) May 15; v1.9.3~1.9.5 (ADR-024~028) May 19–22.
|
||||
|
||||
| Area | Status | หมายเหตุ |
|
||||
| ---------------------- | ------------------------ | ------------------------------------------------------------------ |
|
||||
| 🔧 **Backend** | ✅ Production Ready | NestJS 11, Express v5, 0 Vulnerabilities |
|
||||
| 🎨 **Frontend** | ✅ 100% Complete | Next.js 16.2.0, React 19.2.4, ESLint 9 |
|
||||
| 💾 **Database** | ✅ Schema v1.8.0 Stable | MariaDB 11.8, No-migration Policy |
|
||||
| 📘 **Documentation** | ✅ **10/10 Gaps Closed** | Product Vision → Release Policy (Categorized Feature Specs) |
|
||||
| 🤖 **AI Migration** | ✅ Production Ready | n8n + Ollama (ADR-023) |
|
||||
| 💾 **Database** | ✅ Schema v1.9.0 Stable | MariaDB 11.8, No-migration Policy |
|
||||
| 📘 **Documentation** | ✅ **10/10 Gaps Closed** | Product Vision → Release Policy (28 ADRs — v1.9.5) |
|
||||
| 🤖 **AI Architecture** | ✅ 28 ADRs Accepted | ADR-023A infra + ADR-024/025/026/027/028 runtime layer |
|
||||
| 🔄 **Workflow Engine** | ✅ ADR-021 Integrated | Transmittals & Circulation with Integrated Context |
|
||||
| 🧪 **Testing** | ✅ UAT Ready | E2E + Acceptance Criteria ready |
|
||||
| 🚀 **Deployment** | ✅ Production Ready | Blue-Green on QNAP Container Station |
|
||||
@@ -49,7 +49,9 @@ LCBP3-DMS เป็นระบบบริหารจัดการเอก
|
||||
- 🔐 **RBAC 4-Level** - ควบคุมสิทธิ์แบบละเอียด (Global, Organization, Project, Contract)
|
||||
- 📁 **Two-Phase File Storage** - จัดการไฟล์แบบ Transactional พร้อม Virus Scanning
|
||||
- 🔢 **Document Numbering** - สร้างเลขที่เอกสารอัตโนมัติ ป้องกัน Race Condition
|
||||
- 🤖 **AI-Assisted Migration** - Ollama + n8n นำเข้าเอกสารเก่า ~20,000 ไฟล์ (ADR-023)
|
||||
- 🤖 **AI-Assisted Migration** - Ollama + n8n นำเข้าเอกสารเก่า ~20,000 ไฟล์ (ADR-023/028)
|
||||
- 💬 **AI Document Assistant** - Intent Classification + Tool Layer + Document Chat UI (ADR-024/025/026)
|
||||
- ⚙️ **AI Admin Console** - Dynamic model/prompt/intent control (ADR-027)
|
||||
|
||||
---
|
||||
|
||||
@@ -273,10 +275,10 @@ lcbp3-dms/
|
||||
│ ├── 00-Overview/ # ภาพรวม: Product Vision, KPI Baseline, Training
|
||||
│ ├── 01-Requirements/ # Requirements: User Stories, UAT, UI Wireframes
|
||||
│ ├── 02-Architecture/ # สถาปัตยกรรมระบบ
|
||||
│ ├── 03-Data-and-Storage/ # Schema v1.8.0 + Data Dictionary
|
||||
│ ├── 03-Data-and-Storage/ # Schema v1.9.0 + Data Dictionary
|
||||
│ ├── 04-Infrastructure-OPS/ # Ops: Deploy, Monitoring, Security
|
||||
│ ├── 05-Engineering-Guidelines/ # มาตรฐานการพัฒนา Backend/Frontend
|
||||
│ ├── 06-Decision-Records/ # Architecture Decision Records (22 ADRs)
|
||||
│ ├── 06-Decision-Records/ # Architecture Decision Records (28 ADRs)
|
||||
│ ├── 100-Infrastructures/ # งาน Infrastructure Operations (v1.9.0)
|
||||
│ ├── 200-fullstacks/ # งาน Feature Implementation (v1.9.0)
|
||||
│ ├── 300-others/ # งานเอกสารและการวิจัยทั่วไป (v1.9.0)
|
||||
@@ -310,21 +312,21 @@ lcbp3-dms/
|
||||
|
||||
### เอกสารหลัก (specs/ folder)
|
||||
|
||||
| เอกสาร | คำอธิบาย | Gap | ไฟล์หลัก |
|
||||
| ----------------------- | ------------------------------------------------------------ | --------- | --------------------------------------- |
|
||||
| **Product Vision** | Vision, Strategic Pillars, Guardrails | Gap 1 ✅ | `00-03-product-vision.md` |
|
||||
| **User Stories** | 27 Stories, 8 Epics, MoSCoW | Gap 2 ✅ | `01-04-user-stories.md` |
|
||||
| **Acceptance Criteria** | UAT Criteria, Sign-off Process | Gap 3 ✅ | `01-05-acceptance-criteria.md` |
|
||||
| **UI/UX Wireframes** | 26 Screens, ASCII Wireframes, Design System | Gap 4 ✅ | `01-07-ui-wireframes.md` |
|
||||
| **Stakeholder & Risk** | Sign-off, Risk Register, Change Control | Gap 5 ✅ | `00-04-stakeholder-signoff-and-risk.md` |
|
||||
| **KPI Baseline** | 14 KPIs, SQL Queries, Grafana Specs | Gap 6 ✅ | `00-05-kpi-baseline.md` |
|
||||
| **Migration Scope** | 20K Docs, 3 Tiers, Go/No-Go Gates | Gap 7 ✅ | `03-06-migration-business-scope.md` |
|
||||
| **Release Policy** | SemVer, 5 Gates, Hotfix, Rollback | Gap 8 ✅ | `04-08-release-management-policy.md` |
|
||||
| **Training Plan** | Curriculum per Role, UAT Training | Gap 9 ✅ | `00-06-training-plan.md` |
|
||||
| **Edge Cases & Rules** | 37 Edge Cases, Business Logic Guards | Gap 10 ✅ | `01-06-edge-cases-and-rules.md` |
|
||||
| **Schema v1.8.0** | Tables, Views, Indexes (3-file split) | — | `lcbp3-v1.8.0-schema-*.sql` |
|
||||
| **Data Dictionary** | Field Meanings, Business Rules | — | `03-01-data-dictionary.md` |
|
||||
| **ADRs (23)** | All Architecture Decisions incl. ADR-003/004/007/019/021/023 | - | `06-Decision-Records/` |
|
||||
| เอกสาร | คำอธิบาย | Gap | ไฟล์หลัก |
|
||||
| ----------------------- | -------------------------------------------------------- | --------- | --------------------------------------- |
|
||||
| **Product Vision** | Vision, Strategic Pillars, Guardrails | Gap 1 ✅ | `00-03-product-vision.md` |
|
||||
| **User Stories** | 27 Stories, 8 Epics, MoSCoW | Gap 2 ✅ | `01-04-user-stories.md` |
|
||||
| **Acceptance Criteria** | UAT Criteria, Sign-off Process | Gap 3 ✅ | `01-05-acceptance-criteria.md` |
|
||||
| **UI/UX Wireframes** | 26 Screens, ASCII Wireframes, Design System | Gap 4 ✅ | `01-07-ui-wireframes.md` |
|
||||
| **Stakeholder & Risk** | Sign-off, Risk Register, Change Control | Gap 5 ✅ | `00-04-stakeholder-signoff-and-risk.md` |
|
||||
| **KPI Baseline** | 14 KPIs, SQL Queries, Grafana Specs | Gap 6 ✅ | `00-05-kpi-baseline.md` |
|
||||
| **Migration Scope** | 20K Docs, 3 Tiers, Go/No-Go Gates | Gap 7 ✅ | `03-06-migration-business-scope.md` |
|
||||
| **Release Policy** | SemVer, 5 Gates, Hotfix, Rollback | Gap 8 ✅ | `04-08-release-management-policy.md` |
|
||||
| **Training Plan** | Curriculum per Role, UAT Training | Gap 9 ✅ | `00-06-training-plan.md` |
|
||||
| **Edge Cases & Rules** | 37 Edge Cases, Business Logic Guards | Gap 10 ✅ | `01-06-edge-cases-and-rules.md` |
|
||||
| **Schema v1.9.0** | Tables, Views, Indexes (3-file split) | — | `lcbp3-v1.9.0-schema-*.sql` |
|
||||
| **Data Dictionary** | Field Meanings, Business Rules | — | `03-01-data-dictionary.md` |
|
||||
| **ADRs (28)** | All Architecture Decisions incl. ADR-019/021/023/024-028 | - | `06-Decision-Records/` |
|
||||
|
||||
---
|
||||
|
||||
@@ -373,7 +375,7 @@ lcbp3-dms/
|
||||
| 1 | [`AGENTS.md`](./AGENTS.md) | Quick-reference rules (Tier 1/2/3 enforcement, ADR-019 March 2026 pattern, forbidden actions) |
|
||||
| 2 | [`.agents/skills/_LCBP3-CONTEXT.md`](./.agents/skills/_LCBP3-CONTEXT.md) | Shared context appendix injected into every speckit-\* skill |
|
||||
| 3 | [`.agents/skills/README.md`](./.agents/skills/README.md) | Skill-pack layout + slash-command invocation guide |
|
||||
| 4 | `specs/06-Decision-Records/` | 23 ADRs (architectural decisions) |
|
||||
| 4 | `specs/06-Decision-Records/` | 28 ADRs (architectural decisions) |
|
||||
|
||||
**Unified workflows (v1.9.0):** `/00-speckit.all` → `/102-speckit.specify` → `/104-speckit.plan` → `/107-speckit.implement` → `/110-speckit.reviewer`
|
||||
|
||||
@@ -381,6 +383,23 @@ lcbp3-dms/
|
||||
|
||||
## 🗺️ Roadmap
|
||||
|
||||
### ✅ Version 1.9.5 (May 2026) — AI Runtime Layer ADRs + Migration Architecture Refactor
|
||||
|
||||
- ✅ **ADR-024**: Intent Classification Strategy — Hybrid Pattern→LLM Fallback (ai_intent_patterns + Redis cache 5 min)
|
||||
- ✅ **ADR-025**: AI Tool Layer Architecture — Server-side Tool dispatch, CASL-guarded, ToolResult DTO
|
||||
- ✅ **ADR-026**: Document Chat UI Pattern — Side-panel chat + `useAiChat()` hook, streaming response
|
||||
- ✅ **ADR-027**: AI Admin Console & Dynamic Control — Admin Panel + dynamic model/prompt/intent control
|
||||
- ✅ **ADR-028**: Migration Architecture Refactor — Staging Queue, Post-Migration Cleanup, Migration Validation Gates
|
||||
- ✅ **Root Docs Updated**: ARCHITECTURE.md, CHANGELOG.md, CONTEXT.md, CONTRIBUTING.md, README.md, specs/README.md
|
||||
- ✅ **Total: 28 ADRs** ครอบคลุมทุก Architectural Decision
|
||||
|
||||
### ✅ Version 1.9.2 (May 2026) — AI Model Revision & Hybrid Staging (ADR-023A)
|
||||
|
||||
- ✅ **ADR-023A**: 2-Model Stack (gemma4:e4b Q8_0 + nomic-embed-text), BullMQ 2-Queue (ai-realtime/ai-batch)
|
||||
- ✅ Legacy Migration Pipeline พร้อม Human-in-the-loop Staging Queue review
|
||||
- ✅ RAG Multi-tenancy: Qdrant project isolation enforced at compile-time
|
||||
- ✅ Node.js v24.15.0 LTS upgrade
|
||||
|
||||
### ✅ Version 1.9.0 (May 2026) — RFA System & Agent Infrastructure Standardization
|
||||
|
||||
**RFA System Migration & Agent Infrastructure standardized (`.agents/` @ v1.9.0) — 2026-05-13:**
|
||||
@@ -484,15 +503,16 @@ lcbp3-dms/
|
||||
- 🔄 **Phase 5.4 (Pending)**: FK reference UUID migration — `correspondences/form.tsx`, `user-dialog.tsx`, `numbering/template-tester.tsx`, `rfas/page.tsx` still use `parseInt()` on UUID values (see `specs/05-Engineering-Guidelines/05-07-hybrid-uuid-implementation-plan.md`)
|
||||
- 📋 **Phase 6**: Unit + integration tests for UUID-based routes
|
||||
|
||||
### 🔄 Next: Go-Live Preparation
|
||||
### 🔄 Next: v2.0 — Implementation Phase (AI Runtime + Go-Live)
|
||||
|
||||
- 🔄 **AI Runtime Implementation**: Implement ADR-024 (Intent Classifier), ADR-025 (Tool Layer), ADR-026 (Chat UI)
|
||||
- 🔄 **AI Admin Console**: Implement ADR-027 (Admin Panel)
|
||||
- 🔄 **Migration Execution**: ADR-028 Staging Queue — Tier 1 (2,000 docs Critical)
|
||||
- 🔄 **UAT**: ทำ User Acceptance Testing ตาม `01-05-acceptance-criteria.md`
|
||||
- 🔄 **KPI Baseline Collection**: เก็บ As-Is Metrics ก่อน Go-Live
|
||||
- 🔄 **Legacy Migration**: เริ่ม Tier 1 (2,000 เอกสาร Critical) T-3 สัปดาห์
|
||||
- 🔄 **Security Audit**: ตาม `04-06-security-operations.md`
|
||||
- 📋 **Go-Live**: Blue-Green Deploy บน QNAP Container Station
|
||||
|
||||
### 📅 Version 1.9.0+ (Planned — Post Go-Live)
|
||||
### 📅 Post Go-Live
|
||||
|
||||
- 📊 Advanced Reporting & Grafana KPI Dashboards (ตาม `00-05-kpi-baseline.md`)
|
||||
- 🔔 Real-time Notifications (WebSocket)
|
||||
|
||||
Binary file not shown.
@@ -1,511 +0,0 @@
|
||||
2026-03-23T07:52:09.6729022Z asustor-runner(version:v0.2.13) received task 184 of job deploy, be triggered by event: push
|
||||
2026-03-23T07:52:09.6734932Z workflow prepared
|
||||
2026-03-23T07:52:09.6735943Z evaluating expression 'success()'
|
||||
2026-03-23T07:52:09.6737120Z expression 'success()' evaluated to 'true'
|
||||
2026-03-23T07:52:09.6737308Z 'runs-on' key not defined in CI / CD Pipeline/build
|
||||
2026-03-23T07:52:09.6737475Z No steps found
|
||||
2026-03-23T07:52:09.6738309Z evaluating expression 'github.ref == 'refs/heads/main''
|
||||
2026-03-23T07:52:09.6739020Z expression 'github.ref == 'refs/heads/main'' evaluated to 'true'
|
||||
2026-03-23T07:52:09.6739342Z 🚀 Start image=node:18-bullseye
|
||||
2026-03-23T07:52:09.6888454Z 🐳 docker pull image=node:18-bullseye platform= username= forcePull=false
|
||||
2026-03-23T07:52:09.6888929Z 🐳 docker pull node:18-bullseye
|
||||
2026-03-23T07:52:09.6917647Z Image exists? true
|
||||
2026-03-23T07:52:09.7015548Z Cleaning up network for job deploy, and network name is: GITEA-ACTIONS-TASK-184_WORKFLOW-CI-CD-Pipeline_JOB-deploy-deploy-network
|
||||
2026-03-23T07:52:10.0769502Z 🐳 docker create image=node:18-bullseye platform= entrypoint=["/bin/sleep" "10800"] cmd=[] network="GITEA-ACTIONS-TASK-184_WORKFLOW-CI-CD-Pipeline_JOB-deploy-deploy-network"
|
||||
2026-03-23T07:52:15.2994950Z Created container name=GITEA-ACTIONS-TASK-184_WORKFLOW-CI-CD-Pipeline_JOB-deploy id=d1f9cc6073a553d2494abc612d9c1e872e757a40ea8a6ffbae034e715b6650b1 from image node:18-bullseye (platform: )
|
||||
2026-03-23T07:52:15.2995575Z ENV ==> [RUNNER_TOOL_CACHE=/opt/hostedtoolcache RUNNER_OS=Linux RUNNER_ARCH=X64 RUNNER_TEMP=/tmp LANG=C.UTF-8]
|
||||
2026-03-23T07:52:15.2995938Z 🐳 docker run image=node:18-bullseye platform= entrypoint=["/bin/sleep" "10800"] cmd=[] network="GITEA-ACTIONS-TASK-184_WORKFLOW-CI-CD-Pipeline_JOB-deploy-deploy-network"
|
||||
2026-03-23T07:52:15.2996259Z Starting container: d1f9cc6073a553d2494abc612d9c1e872e757a40ea8a6ffbae034e715b6650b1
|
||||
2026-03-23T07:52:17.1165681Z Started container: d1f9cc6073a553d2494abc612d9c1e872e757a40ea8a6ffbae034e715b6650b1
|
||||
2026-03-23T07:52:17.2844781Z Writing entry to tarball workflow/event.json len:4629
|
||||
2026-03-23T07:52:17.2845445Z Writing entry to tarball workflow/envs.txt len:0
|
||||
2026-03-23T07:52:17.2845808Z Extracting content to '/var/run/act/'
|
||||
2026-03-23T07:52:17.3125114Z ☁ git clone 'https://github.com/appleboy/ssh-action' # ref=v1.0.3
|
||||
2026-03-23T07:52:17.3125696Z cloning https://github.com/appleboy/ssh-action to /root/.cache/act/dff214aaee240b4d48725836d98fb9f1de8c99b36f2a9ba82946d844ba27a96d
|
||||
2026-03-23T07:52:18.0550957Z Cloned https://github.com/appleboy/ssh-action to /root/.cache/act/dff214aaee240b4d48725836d98fb9f1de8c99b36f2a9ba82946d844ba27a96d
|
||||
2026-03-23T07:52:18.0767672Z Checked out v1.0.3
|
||||
2026-03-23T07:52:18.0995025Z expression '${{ secrets.PASSWORD }}' rewritten to 'format('{0}', secrets.PASSWORD)'
|
||||
2026-03-23T07:52:18.0995592Z evaluating expression 'format('{0}', secrets.PASSWORD)'
|
||||
2026-03-23T07:52:18.0996115Z expression 'format('{0}', secrets.PASSWORD)' evaluated to '%!t(string=***)'
|
||||
2026-03-23T07:52:18.0996472Z expression '${{ secrets.USERNAME }}' rewritten to 'format('{0}', secrets.USERNAME)'
|
||||
2026-03-23T07:52:18.0996679Z evaluating expression 'format('{0}', secrets.USERNAME)'
|
||||
2026-03-23T07:52:18.0997058Z expression 'format('{0}', secrets.USERNAME)' evaluated to '%!t(string=***)'
|
||||
2026-03-23T07:52:18.0997397Z expression '${{ secrets.HOST }}' rewritten to 'format('{0}', secrets.HOST)'
|
||||
2026-03-23T07:52:18.0997621Z evaluating expression 'format('{0}', secrets.HOST)'
|
||||
2026-03-23T07:52:18.0997966Z expression 'format('{0}', secrets.HOST)' evaluated to '%!t(string=***)'
|
||||
2026-03-23T07:52:18.0998281Z expression '${{ secrets.PORT }}' rewritten to 'format('{0}', secrets.PORT)'
|
||||
2026-03-23T07:52:18.0998481Z evaluating expression 'format('{0}', secrets.PORT)'
|
||||
2026-03-23T07:52:18.0998827Z expression 'format('{0}', secrets.PORT)' evaluated to '%!t(string=***)'
|
||||
2026-03-23T07:52:18.0999240Z expression 'set -e\nexport PATH="/share/CACHEDEV1_DATA/.qpkg/container-station/bin:/opt/bin:/usr/local/bin:/usr/bin:/bin:$PATH"\n\n# Sync scripts first\necho "📂 Syncing deployment scripts..."\ncd /share/np-dms/app/source/lcbp3\ngit fetch origin main\ngit reset --hard origin/main\n\n# Ensure scripts are executable\nchmod +x scripts/deploy.sh scripts/rollback.sh\n\necho "🚀 Executing Blue-Green deployment..."\n# Pass registry credentials if needed by the pull command in deploy.sh\nexport DB_PASSWORD="${{ secrets.DB_PASSWORD }}"\n./scripts/deploy.sh\n' rewritten to 'format('set -e\nexport PATH="/share/CACHEDEV1_DATA/.qpkg/container-station/bin:/opt/bin:/usr/local/bin:/usr/bin:/bin:$PATH"\n\n# Sync scripts first\necho "📂 Syncing deployment scripts..."\ncd /share/np-dms/app/source/lcbp3\ngit fetch origin main\ngit reset --hard origin/main\n\n# Ensure scripts are executable\nchmod +x scripts/deploy.sh scripts/rollback.sh\n\necho "🚀 Executing Blue-Green deployment..."\n# Pass registry credentials if needed by the pull command in deploy.sh\nexport DB_PASSWORD="{0}"\n./scripts/deploy.sh\n', secrets.DB_PASSWORD)'
|
||||
2026-03-23T07:52:18.1000215Z evaluating expression 'format('set -e\nexport PATH="/share/CACHEDEV1_DATA/.qpkg/container-station/bin:/opt/bin:/usr/local/bin:/usr/bin:/bin:$PATH"\n\n# Sync scripts first\necho "📂 Syncing deployment scripts..."\ncd /share/np-dms/app/source/lcbp3\ngit fetch origin main\ngit reset --hard origin/main\n\n# Ensure scripts are executable\nchmod +x scripts/deploy.sh scripts/rollback.sh\n\necho "🚀 Executing Blue-Green deployment..."\n# Pass registry credentials if needed by the pull command in deploy.sh\nexport DB_PASSWORD="{0}"\n./scripts/deploy.sh\n', secrets.DB_PASSWORD)'
|
||||
2026-03-23T07:52:18.1001873Z expression 'format('set -e\nexport PATH="/share/CACHEDEV1_DATA/.qpkg/container-station/bin:/opt/bin:/usr/local/bin:/usr/bin:/bin:$PATH"\n\n# Sync scripts first\necho "📂 Syncing deployment scripts..."\ncd /share/np-dms/app/source/lcbp3\ngit fetch origin main\ngit reset --hard origin/main\n\n# Ensure scripts are executable\nchmod +x scripts/deploy.sh scripts/rollback.sh\n\necho "🚀 Executing Blue-Green deployment..."\n# Pass registry credentials if needed by the pull command in deploy.sh\nexport DB_PASSWORD="{0}"\n./scripts/deploy.sh\n', secrets.DB_PASSWORD)' evaluated to '%!t(string=set -e\nexport PATH="/share/CACHEDEV1_DATA/.qpkg/container-station/bin:/opt/bin:/usr/local/bin:/usr/bin:/bin:$PATH"\n\n# Sync scripts first\necho "📂 Syncing deployment scripts..."\ncd /share/np-dms/app/source/lcbp3\ngit fetch origin main\ngit reset --hard origin/main\n\n# Ensure scripts are executable\nchmod +x scripts/deploy.sh scripts/rollback.sh\n\necho "🚀 Executing Blue-Green deployment..."\n# Pass registry credentials if needed by the pull command in deploy.sh\nexport DB_PASSWORD=""\n./scripts/deploy.sh\n)'
|
||||
2026-03-23T07:52:18.1111383Z evaluating expression ''
|
||||
2026-03-23T07:52:18.1112688Z expression '' evaluated to 'true'
|
||||
2026-03-23T07:52:18.1112946Z ⭐ Run Main 🚀 Trigger Deployment on QNAP
|
||||
2026-03-23T07:52:18.1113325Z Writing entry to tarball workflow/outputcmd.txt len:0
|
||||
2026-03-23T07:52:18.1113625Z Writing entry to tarball workflow/statecmd.txt len:0
|
||||
2026-03-23T07:52:18.1113854Z Writing entry to tarball workflow/pathcmd.txt len:0
|
||||
2026-03-23T07:52:18.1114123Z Writing entry to tarball workflow/envs.txt len:0
|
||||
2026-03-23T07:52:18.1114361Z Writing entry to tarball workflow/SUMMARY.md len:0
|
||||
2026-03-23T07:52:18.1114588Z Extracting content to '/var/run/act'
|
||||
2026-03-23T07:52:18.1254953Z type=remote-action actionDir=/root/.cache/act/dff214aaee240b4d48725836d98fb9f1de8c99b36f2a9ba82946d844ba27a96d actionPath= workdir=/workspace/np-dms/lcbp3 actionCacheDir=/root/.cache/act actionName=dff214aaee240b4d48725836d98fb9f1de8c99b36f2a9ba82946d844ba27a96d containerActionDir=/var/run/act/actions/dff214aaee240b4d48725836d98fb9f1de8c99b36f2a9ba82946d844ba27a96d
|
||||
2026-03-23T07:52:18.1324367Z image 'act-dff214aaee240b4d48725836d98fb9f1de8c99b36f2a9ba82946d844ba27a96d-dockeraction:latest' for architecture '' already exists
|
||||
2026-03-23T07:52:18.1568914Z expression '${{ secrets.HOST }}' rewritten to 'format('{0}', secrets.HOST)'
|
||||
2026-03-23T07:52:18.1569426Z evaluating expression 'format('{0}', secrets.HOST)'
|
||||
2026-03-23T07:52:18.1570773Z expression 'format('{0}', secrets.HOST)' evaluated to '%!t(string=***)'
|
||||
2026-03-23T07:52:18.1571181Z expression '${{ secrets.PASSWORD }}' rewritten to 'format('{0}', secrets.PASSWORD)'
|
||||
2026-03-23T07:52:18.1571391Z evaluating expression 'format('{0}', secrets.PASSWORD)'
|
||||
2026-03-23T07:52:18.1571722Z expression 'format('{0}', secrets.PASSWORD)' evaluated to '%!t(string=***)'
|
||||
2026-03-23T07:52:18.1572109Z expression '${{ secrets.PORT }}' rewritten to 'format('{0}', secrets.PORT)'
|
||||
2026-03-23T07:52:18.1572303Z evaluating expression 'format('{0}', secrets.PORT)'
|
||||
2026-03-23T07:52:18.1572620Z expression 'format('{0}', secrets.PORT)' evaluated to '%!t(string=***)'
|
||||
2026-03-23T07:52:18.1572985Z expression 'set -e\nexport PATH="/share/CACHEDEV1_DATA/.qpkg/container-station/bin:/opt/bin:/usr/local/bin:/usr/bin:/bin:$PATH"\n\n# Sync scripts first\necho "📂 Syncing deployment scripts..."\ncd /share/np-dms/app/source/lcbp3\ngit fetch origin main\ngit reset --hard origin/main\n\n# Ensure scripts are executable\nchmod +x scripts/deploy.sh scripts/rollback.sh\n\necho "🚀 Executing Blue-Green deployment..."\n# Pass registry credentials if needed by the pull command in deploy.sh\nexport DB_PASSWORD="${{ secrets.DB_PASSWORD }}"\n./scripts/deploy.sh\n' rewritten to 'format('set -e\nexport PATH="/share/CACHEDEV1_DATA/.qpkg/container-station/bin:/opt/bin:/usr/local/bin:/usr/bin:/bin:$PATH"\n\n# Sync scripts first\necho "📂 Syncing deployment scripts..."\ncd /share/np-dms/app/source/lcbp3\ngit fetch origin main\ngit reset --hard origin/main\n\n# Ensure scripts are executable\nchmod +x scripts/deploy.sh scripts/rollback.sh\n\necho "🚀 Executing Blue-Green deployment..."\n# Pass registry credentials if needed by the pull command in deploy.sh\nexport DB_PASSWORD="{0}"\n./scripts/deploy.sh\n', secrets.DB_PASSWORD)'
|
||||
2026-03-23T07:52:18.1573749Z evaluating expression 'format('set -e\nexport PATH="/share/CACHEDEV1_DATA/.qpkg/container-station/bin:/opt/bin:/usr/local/bin:/usr/bin:/bin:$PATH"\n\n# Sync scripts first\necho "📂 Syncing deployment scripts..."\ncd /share/np-dms/app/source/lcbp3\ngit fetch origin main\ngit reset --hard origin/main\n\n# Ensure scripts are executable\nchmod +x scripts/deploy.sh scripts/rollback.sh\n\necho "🚀 Executing Blue-Green deployment..."\n# Pass registry credentials if needed by the pull command in deploy.sh\nexport DB_PASSWORD="{0}"\n./scripts/deploy.sh\n', secrets.DB_PASSWORD)'
|
||||
2026-03-23T07:52:18.1575342Z expression 'format('set -e\nexport PATH="/share/CACHEDEV1_DATA/.qpkg/container-station/bin:/opt/bin:/usr/local/bin:/usr/bin:/bin:$PATH"\n\n# Sync scripts first\necho "📂 Syncing deployment scripts..."\ncd /share/np-dms/app/source/lcbp3\ngit fetch origin main\ngit reset --hard origin/main\n\n# Ensure scripts are executable\nchmod +x scripts/deploy.sh scripts/rollback.sh\n\necho "🚀 Executing Blue-Green deployment..."\n# Pass registry credentials if needed by the pull command in deploy.sh\nexport DB_PASSWORD="{0}"\n./scripts/deploy.sh\n', secrets.DB_PASSWORD)' evaluated to '%!t(string=set -e\nexport PATH="/share/CACHEDEV1_DATA/.qpkg/container-station/bin:/opt/bin:/usr/local/bin:/usr/bin:/bin:$PATH"\n\n# Sync scripts first\necho "📂 Syncing deployment scripts..."\ncd /share/np-dms/app/source/lcbp3\ngit fetch origin main\ngit reset --hard origin/main\n\n# Ensure scripts are executable\nchmod +x scripts/deploy.sh scripts/rollback.sh\n\necho "🚀 Executing Blue-Green deployment..."\n# Pass registry credentials if needed by the pull command in deploy.sh\nexport DB_PASSWORD=""\n./scripts/deploy.sh\n)'
|
||||
2026-03-23T07:52:18.1576006Z expression '${{ secrets.USERNAME }}' rewritten to 'format('{0}', secrets.USERNAME)'
|
||||
2026-03-23T07:52:18.1576201Z evaluating expression 'format('{0}', secrets.USERNAME)'
|
||||
2026-03-23T07:52:18.1576570Z expression 'format('{0}', secrets.USERNAME)' evaluated to '%!t(string=***)'
|
||||
2026-03-23T07:52:18.1904147Z 🐳 docker pull image=act-dff214aaee240b4d48725836d98fb9f1de8c99b36f2a9ba82946d844ba27a96d-dockeraction:latest platform= username= forcePull=false
|
||||
2026-03-23T07:52:18.1904744Z 🐳 docker pull act-dff214aaee240b4d48725836d98fb9f1de8c99b36f2a9ba82946d844ba27a96d-dockeraction:latest
|
||||
2026-03-23T07:52:18.1927087Z Image exists? true
|
||||
2026-03-23T07:52:18.1981477Z 🐳 docker create image=act-dff214aaee240b4d48725836d98fb9f1de8c99b36f2a9ba82946d844ba27a96d-dockeraction:latest platform= entrypoint=[] cmd=[] network="container:GITEA-ACTIONS-TASK-184_WORKFLOW-CI-CD-Pipeline_JOB-deploy"
|
||||
2026-03-23T07:52:19.9166772Z Created container name=GITEA-ACTIONS-TASK-184-WORKFLOW-CI-CD-Pipeline-JOB-deploy_STEP-0 id=e18712f813a56b2e2d4b147cb74c1c45195a7abba29b3494ce30f36bfa33ab3c from image act-dff214aaee240b4d48725836d98fb9f1de8c99b36f2a9ba82946d844ba27a96d-dockeraction:latest (platform: )
|
||||
2026-03-23T07:52:19.9168161Z ENV ==> [GITHUB_PATH=/var/run/act/workflow/pathcmd.txt GITEA_STATE=/var/run/act/workflow/statecmd.txt INPUT_PROXY_USE_INSECURE_CIPHER= INPUT_PROXY_PORT=*** proxy_password= key= debug= RUNNER_TRACKING_ID= INPUT_COMMAND_TIMEOUT=900s INPUT_PROXY_KEY= proxy_fingerprint= INPUT_SCRIPT=set -e\nexport PATH="/share/CACHEDEV1_DATA/.qpkg/container-station/bin:/opt/bin:/usr/local/bin:/usr/bin:/bin:$PATH"\n\n# Sync scripts first\necho "📂 Syncing deployment scripts..."\ncd /share/np-dms/app/source/lcbp3\ngit fetch origin main\ngit reset --hard origin/main\n\n# Ensure scripts are executable\nchmod +x scripts/deploy.sh scripts/rollback.sh\n\necho "🚀 Executing Blue-Green deployment..."\n# Pass registry credentials if needed by the pull command in deploy.sh\nexport DB_PASSWORD=""\n./scripts/deploy.sh\n INPUT_SCRIPT_STOP_SIGNAL=true GITHUB_STATE=/var/run/act/workflow/statecmd.txt INPUT_ENVS= proxy_passphrase= use_insecure_cipher= username=*** proxy_key= ACTIONS_RUNTIME_URL=https://git.np-dms.work/api/actions_pipeline/ ACTIONS_CACHE_URL=http://172.19.0.2:33669/ GITHUB_ACTION=0 GITHUB_ENV=/var/run/act/workflow/envs.txt script=set -e\nexport PATH="/share/CACHEDEV1_DATA/.qpkg/container-station/bin:/opt/bin:/usr/local/bin:/usr/bin:/bin:$PATH"\n\n# Sync scripts first\necho "📂 Syncing deployment scripts..."\ncd /share/np-dms/app/source/lcbp3\ngit fetch origin main\ngit reset --hard origin/main\n\n# Ensure scripts are executable\nchmod +x scripts/deploy.sh scripts/rollback.sh\n\necho "🚀 Executing Blue-Green deployment..."\n# Pass registry credentials if needed by the pull command in deploy.sh\nexport DB_PASSWORD=""\n./scripts/deploy.sh\n script_stop= envs= command_timeout=900s GITHUB_REF_TYPE=branch ImageOS=ubuntu20 GITHUB_STEP_SUMMARY=/var/run/act/workflow/SUMMARY.md INPUT_KEY= INPUT_USE_INSECURE_CIPHER= allenvs= RUNNER_PERFLOG=/dev/null INPUT_USERNAME=*** GITEA_STEP_SUMMARY=/var/run/act/workflow/SUMMARY.md INPUT_PROXY_PASSWORD= proxy_username= port=*** GITHUB_BASE_REF= GITHUB_API_URL=https://git.np-dms.work/api/v1 envs_format= request_pty= host=*** proxy_host= key_path= script_stop_signal=true GITHUB_ACTOR=*** INPUT_HOST=*** INPUT_PORT=*** GITHUB_OUTPUT=/var/run/act/workflow/outputcmd.txt INPUT_ALLENVS= INPUT_PROXY_PASSPHRASE= INPUT_PASSPHRASE= proxy_timeout=30s GITHUB_WORKSPACE=/workspace/np-dms/lcbp3 INPUT_ENVS_FORMAT= password=*** ACTIONS_RESULTS_URL=https://git.np-dms.work GITEA_ACTIONS=true GITHUB_REF_NAME=main GITHUB_GRAPHQL_URL= GITEA_OUTPUT=/var/run/act/workflow/outputcmd.txt INPUT_PROXY_HOST= INPUT_KEY_PATH= proxy_port=*** GITHUB_RUN_ID=210 GITHUB_JOB=deploy cipher= sync= proxy_use_insecure_cipher= fingerprint= proxy_cipher= GITHUB_EVENT_PATH=/var/run/act/workflow/event.json GITHUB_HEAD_REF= GITHUB_SERVER_URL=https://git.np-dms.work GITEA_PATH=/var/run/act/workflow/pathcmd.txt GITEA_ENV=/var/run/act/workflow/envs.txt INPUT_PROXY_USERNAME= INPUT_PROXY_KEY_PATH= ACT=true GITHUB_REF=refs/heads/main INPUT_PASSWORD=*** timeout=1200s proxy_key_path= passphrase= CI=true GITHUB_WORKFLOW=CI / CD Pipeline GITHUB_ACTION_REPOSITORY=appleboy/ssh-action GITHUB_REPOSITORY_OWNER=np-dms INPUT_PROXY_TIMEOUT=30s INPUT_FINGERPRINT= INPUT_PROXY_FINGERPRINT= INPUT_SYNC= ACTIONS_RUNTIME_TOKEN=*** JOB_CONTAINER_NAME=GITEA-ACTIONS-TASK-184_WORKFLOW-CI-CD-Pipeline_JOB-deploy GITHUB_REPOSITORY=np-dms/lcbp3 GITHUB_RETENTION_DAYS= INPUT_CIPHER= INPUT_SCRIPT_STOP= INPUT_REQUEST_PTY= INPUT_DEBUG= GITEA_ACTIONS_RUNNER_VERSION=v0.2.13 GITHUB_RUN_NUMBER=210 GITHUB_ACTION_REF=v1.0.3 GITHUB_ACTIONS=true GITHUB_EVENT_NAME=push GITHUB_SHA=8548de9a94ecd486ada4589cdc58c94aabf21f3c INPUT_TIMEOUT=1200s INPUT_PROXY_CIPHER= GITHUB_ACTION_PATH= RUNNER_TOOL_CACHE=/opt/hostedtoolcache RUNNER_OS=Linux RUNNER_ARCH=X64 RUNNER_TEMP=/tmp]
|
||||
2026-03-23T07:52:19.9169975Z 🐳 docker run image=act-dff214aaee240b4d48725836d98fb9f1de8c99b36f2a9ba82946d844ba27a96d-dockeraction:latest platform= entrypoint=[] cmd=[] network="container:GITEA-ACTIONS-TASK-184_WORKFLOW-CI-CD-Pipeline_JOB-deploy"
|
||||
2026-03-23T07:52:19.9179104Z Starting container: e18712f813a56b2e2d4b147cb74c1c45195a7abba29b3494ce30f36bfa33ab3c
|
||||
2026-03-23T07:52:20.4354704Z ======CMD======
|
||||
2026-03-23T07:52:20.4359483Z set -e
|
||||
2026-03-23T07:52:20.4359827Z export PATH="/share/CACHEDEV1_DATA/.qpkg/container-station/bin:/opt/bin:/usr/local/bin:/usr/bin:/bin:$PATH"
|
||||
2026-03-23T07:52:20.4360331Z
|
||||
2026-03-23T07:52:20.4360586Z # Sync scripts first
|
||||
2026-03-23T07:52:20.4360837Z echo "📂 Syncing deployment scripts..."
|
||||
2026-03-23T07:52:20.4361089Z cd /share/np-dms/app/source/lcbp3
|
||||
2026-03-23T07:52:20.4362198Z git fetch origin main
|
||||
2026-03-23T07:52:20.4362462Z git reset --hard origin/main
|
||||
2026-03-23T07:52:20.4362689Z
|
||||
2026-03-23T07:52:20.4362958Z # Ensure scripts are executable
|
||||
2026-03-23T07:52:20.4363180Z chmod +x scripts/deploy.sh scripts/rollback.sh
|
||||
2026-03-23T07:52:20.4363401Z
|
||||
2026-03-23T07:52:20.4363618Z echo "🚀 Executing Blue-Green deployment..."
|
||||
2026-03-23T07:52:20.4364215Z # Pass registry credentials if needed by the pull command in deploy.sh
|
||||
2026-03-23T07:52:20.4364481Z export DB_PASSWORD=""
|
||||
2026-03-23T07:52:20.4364698Z ./scripts/deploy.sh
|
||||
2026-03-23T07:52:20.4364917Z
|
||||
2026-03-23T07:52:20.4365176Z ======END======
|
||||
2026-03-23T07:52:20.7093819Z out: 📂 Syncing deployment scripts...
|
||||
2026-03-23T07:52:20.9359634Z err: From https://git.np-dms.work/np-dms/lcbp3
|
||||
2026-03-23T07:52:20.9360470Z err: * branch main -> FETCH_HEAD
|
||||
2026-03-23T07:52:20.9375389Z err: d20eb94..8548de9 main -> origin/main
|
||||
2026-03-23T07:52:20.9550387Z out: HEAD is now at 8548de9 260323:1443 fix CI : Deploy : Turbopack Build Error #01
|
||||
2026-03-23T07:52:20.9565919Z out: 🚀 Executing Blue-Green deployment...
|
||||
2026-03-23T07:52:20.9599820Z out: =========================================
|
||||
2026-03-23T07:52:20.9600641Z out: LCBP3-DMS Blue-Green Deployment (v1.8.1)
|
||||
2026-03-23T07:52:20.9601017Z out: =========================================
|
||||
2026-03-23T07:52:20.9601262Z out: Current environment: blue
|
||||
2026-03-23T07:52:20.9601688Z out: Target environment: green
|
||||
2026-03-23T07:52:20.9601940Z out: =========================================
|
||||
2026-03-23T07:52:20.9602170Z out: [1/9] Creating database backup...
|
||||
2026-03-23T07:52:20.9621334Z out: Warning: DB_PASSWORD not found in environment. Attempting to source from .env...
|
||||
2026-03-23T07:52:21.2103749Z out: ⚠️ Database backup failed or mariadb container not running. Skipping backup for this deployment...
|
||||
2026-03-23T07:52:21.2113556Z out: [2/9] Building latest Docker images from source...
|
||||
2026-03-23T07:52:21.2113952Z out: Building backend...
|
||||
2026-03-23T07:52:21.6716961Z err: #0 building with "default" instance using docker driver
|
||||
2026-03-23T07:52:21.6717690Z err: #1 [internal] load build definition from Dockerfile
|
||||
2026-03-23T07:52:21.6717974Z err: #1 transferring dockerfile: 3.28kB done
|
||||
2026-03-23T07:52:21.8344715Z err: #1 DONE 0.3s
|
||||
2026-03-23T07:52:22.0316002Z err: #2 [internal] load metadata for docker.io/library/node:***-alpine
|
||||
2026-03-23T07:52:23.7177441Z err: #2 DONE 1.8s
|
||||
2026-03-23T07:52:23.9307422Z err: #3 [internal] load .dockerignore
|
||||
2026-03-23T07:52:23.9308340Z err: #3 transferring context: 1.09kB 0.0s done
|
||||
2026-03-23T07:52:23.9308656Z err: #3 DONE 0.2s
|
||||
2026-03-23T07:52:24.0588905Z err: #4 [deps 1/6] FROM docker.io/library/node:***-alpine@sha256:8094c002d08262dba12645a3b4a15cd6cd627d30bc782f53***9a2ec13ee***a00
|
||||
2026-03-23T07:52:24.0589849Z err: #4 DONE 0.0s
|
||||
2026-03-23T07:52:24.0591129Z err: #5 [internal] load build context
|
||||
2026-03-23T07:52:25.4424469Z err: #5 transferring context: 1.65MB 1.4s done
|
||||
2026-03-23T07:52:25.7194383Z err: #5 DONE 1.7s
|
||||
2026-03-23T07:52:25.8312808Z err: #6 [build 9/10] RUN PNPM_IGNORE_SCRIPTS=none pnpm --filter backend deploy --prod --shamefully-hoist --legacy --no-optional /app/backend-prod
|
||||
2026-03-23T07:52:25.8313586Z err: #6 CACHED
|
||||
2026-03-23T07:52:25.8314039Z err: #7 [deps 6/6] RUN pnpm install --frozen-lockfile --filter backend...
|
||||
2026-03-23T07:52:25.8314368Z err: #7 CACHED
|
||||
2026-03-23T07:52:25.8314609Z err: #8 [production 3/8] WORKDIR /app
|
||||
2026-03-23T07:52:25.8314866Z err: #8 CACHED
|
||||
2026-03-23T07:52:25.8315075Z err: #9 [production 5/8] COPY --from=build --chown=nestjs:nestjs /app/backend/dist ./dist
|
||||
2026-03-23T07:52:25.8315502Z err: #9 CACHED
|
||||
2026-03-23T07:52:25.8315730Z err: #10 [build 6/10] COPY --from=deps /app/backend/node_modules ./backend/node_modules
|
||||
2026-03-23T07:52:25.8316058Z err: #10 CACHED
|
||||
2026-03-23T07:52:25.8316280Z err: #11 [deps 4/6] COPY package.json pnpm-lock.yaml pnpm-workspace.yaml ./
|
||||
2026-03-23T07:52:25.8316503Z err: #11 CACHED
|
||||
2026-03-23T07:52:25.8316795Z err: #12 [deps 5/6] COPY backend/package.json ./backend/
|
||||
2026-03-23T07:52:25.8317043Z err: #12 CACHED
|
||||
2026-03-23T07:52:25.8317459Z err: #13 [build 8/10] RUN cd backend && NODE_OPTIONS="--max-old-space-size=4096" pnpm run build
|
||||
2026-03-23T07:52:25.8317786Z err: #13 CACHED
|
||||
2026-03-23T07:52:25.8318057Z err: #14 [build 7/10] COPY backend/ ./backend/
|
||||
2026-03-23T07:52:25.8318279Z err: #14 CACHED
|
||||
2026-03-23T07:52:25.8318496Z err: #15 [build 10/10] RUN find /app/backend-prod/node_modules -name "*.md" -delete && find /app/backend-prod/node_modules -name "*.txt" -delete && find /app/backend-prod/node_modules -name "LICENSE*" -delete && find /app/backend-prod/node_modules -name "README*" -delete && find /app/backend-prod/node_modules -name "CHANGELOG*" -delete
|
||||
2026-03-23T07:52:25.8318948Z err: #15 CACHED
|
||||
2026-03-23T07:52:25.8319171Z err: #16 [production 6/8] COPY --from=build --chown=nestjs:nestjs /app/backend-prod/package.json ./
|
||||
2026-03-23T07:52:25.8319795Z err: #16 CACHED
|
||||
2026-03-23T07:52:25.8320265Z err: #17 [deps 3/6] WORKDIR /app
|
||||
2026-03-23T07:52:25.8320538Z err: #17 CACHED
|
||||
2026-03-23T07:52:25.8320765Z err: #18 [production 7/8] COPY --from=build --chown=nestjs:nestjs /app/backend-prod/node_modules ./node_modules
|
||||
2026-03-23T07:52:25.8321175Z err: #18 CACHED
|
||||
2026-03-23T07:52:25.8321476Z err: #19 [build 5/10] COPY --from=deps /app/node_modules ./node_modules
|
||||
2026-03-23T07:52:25.8321698Z err: #19 CACHED
|
||||
2026-03-23T07:52:25.8321965Z err: #20 [production 2/8] RUN apk add --no-cache curl
|
||||
2026-03-23T07:52:25.8322336Z err: #20 CACHED
|
||||
2026-03-23T07:52:25.8322622Z err: #21 [production 4/8] RUN addgroup -g 1001 -S nestjs && adduser -S nestjs -u 1001
|
||||
2026-03-23T07:52:25.8322865Z err: #21 CACHED
|
||||
2026-03-23T07:52:25.8323058Z err: #*** [deps 2/6] RUN corepack enable && corepack prepare pnpm@10.32.1 --activate
|
||||
2026-03-23T07:52:25.8323411Z err: #*** CACHED
|
||||
2026-03-23T07:52:25.8323693Z err: #23 [production 8/8] RUN mkdir -p /app/uploads/temp /app/uploads/permanent && chown -R nestjs:nestjs /app/uploads
|
||||
2026-03-23T07:52:25.8324008Z err: #23 CACHED
|
||||
2026-03-23T07:52:28.0249549Z err: #24 exporting to image
|
||||
2026-03-23T07:52:28.0250314Z err: #24 exporting layers done
|
||||
2026-03-23T07:52:28.1761989Z err: #24 writing image sha256:adf35841baf536912418f54f86d91ab72bcdb1bcf90c46e35c1ffe33df34c125
|
||||
2026-03-23T07:52:28.7726399Z err: #24 writing image sha256:adf35841baf536912418f54f86d91ab72bcdb1bcf90c46e35c1ffe33df34c125 0.7s done
|
||||
2026-03-23T07:52:28.7727253Z err: #24 naming to docker.io/library/lcbp3-backend:latest
|
||||
2026-03-23T07:52:29.1238899Z err: #24 naming to docker.io/library/lcbp3-backend:latest 0.4s done
|
||||
2026-03-23T07:52:29.6263967Z err: #24 DONE 1.6s
|
||||
2026-03-23T07:52:30.5392182Z out: Building frontend with API URL: https://lcbp3-dms.example.com/api...
|
||||
2026-03-23T07:52:31.2442694Z err: #0 building with "default" instance using docker driver
|
||||
2026-03-23T07:52:31.2443387Z err: #1 [internal] load build definition from Dockerfile
|
||||
2026-03-23T07:52:31.2443694Z err: #1 transferring dockerfile: 4.21kB done
|
||||
2026-03-23T07:52:31.2443915Z err: #1 DONE 0.2s
|
||||
2026-03-23T07:52:31.4585187Z err: #2 [internal] load metadata for docker.io/library/node:***-slim
|
||||
2026-03-23T07:52:35.5855206Z err: #2 DONE 4.3s
|
||||
2026-03-23T07:52:35.7875990Z err: #3 [internal] load .dockerignore
|
||||
2026-03-23T07:52:35.7876665Z err: #3 transferring context: 1.09kB done
|
||||
2026-03-23T07:52:35.9718162Z err: #3 DONE 0.4s
|
||||
2026-03-23T07:52:36.1711275Z err: #4 [internal] load build context
|
||||
2026-03-23T07:52:36.1712144Z err: #4 DONE 0.0s
|
||||
2026-03-23T07:52:36.1712371Z err: #5 [deps 1/6] FROM docker.io/library/node:***-slim@sha256:4f77a690f2f8946ab16fe1e791a3ac0667ae1c3575c3e4d0d4589e9ed5bfaf3d
|
||||
2026-03-23T07:52:36.1712791Z err: #5 resolve docker.io/library/node:***-slim@sha256:4f77a690f2f8946ab16fe1e791a3ac0667ae1c3575c3e4d0d4589e9ed5bfaf3d
|
||||
2026-03-23T07:52:36.1762999Z err: #5 resolve docker.io/library/node:***-slim@sha256:4f77a690f2f8946ab16fe1e791a3ac0667ae1c3575c3e4d0d4589e9ed5bfaf3d 0.2s done
|
||||
2026-03-23T07:52:36.3427274Z err: #5 sha256:c7d2ba7d15bc2d***b819c4a9bac6b760113ddff2c8450109b06150106bd483e4 6.88kB / 6.88kB done
|
||||
2026-03-23T07:52:36.4452055Z err: #5 sha256:4f77a690f2f8946ab16fe1e791a3ac0667ae1c3575c3e4d0d4589e9ed5bfaf3d 6.49kB / 6.49kB done
|
||||
2026-03-23T07:52:36.4452828Z err: #5 sha256:af5818e10f6294a719b4314f34ec03d8e8ad8f571a8d23742418790e6ebb5c90 1.93kB / 1.93kB done
|
||||
2026-03-23T07:52:36.4453110Z err: #5 sha256:6db0909c4473287ed4d1f950d26b8bc5b7b4206d365a0e7740cb89e46979153e 0B / 28.24MB 0.1s
|
||||
2026-03-23T07:52:36.6429504Z err: #5 sha256:e260c4bd6721aa9cf70355d170f8cad17e2194840a***c0bc9afae1789fb6a731 0B / 3.31kB 0.3s
|
||||
2026-03-23T07:52:37.1427613Z err: #5 ...
|
||||
2026-03-23T07:52:37.1428404Z err: #4 [internal] load build context
|
||||
2026-03-23T07:52:37.1428661Z err: #4 transferring context: 1.10MB 0.2s done
|
||||
2026-03-23T07:52:37.1428911Z err: #4 DONE 0.8s
|
||||
2026-03-23T07:52:37.1429178Z err: #5 [deps 1/6] FROM docker.io/library/node:***-slim@sha256:4f77a690f2f8946ab16fe1e791a3ac0667ae1c3575c3e4d0d4589e9ed5bfaf3d
|
||||
2026-03-23T07:52:37.1429529Z err: #5 sha256:1cb89e70384b59a4860d1f1c56f6f91043d2f8e1394bd9799d7d576f1199fd40 0B / 49.95MB 0.8s
|
||||
2026-03-23T07:52:37.2433534Z err: #5 sha256:6db0909c4473287ed4d1f950d26b8bc5b7b4206d365a0e7740cb89e46979153e 8.39MB / 28.24MB 0.9s
|
||||
2026-03-23T07:52:37.4427966Z err: #5 sha256:6db0909c4473287ed4d1f950d26b8bc5b7b4206d365a0e7740cb89e46979153e 18.87MB / 28.24MB 1.1s
|
||||
2026-03-23T07:52:37.5432284Z err: #5 sha256:6db0909c4473287ed4d1f950d26b8bc5b7b4206d365a0e7740cb89e46979153e 26.21MB / 28.24MB 1.2s
|
||||
2026-03-23T07:52:37.5433465Z err: #5 sha256:e260c4bd6721aa9cf70355d170f8cad17e2194840a***c0bc9afae1789fb6a731 3.31kB / 3.31kB 1.2s
|
||||
2026-03-23T07:52:37.6432906Z err: #5 sha256:6db0909c4473287ed4d1f950d26b8bc5b7b4206d365a0e7740cb89e46979153e 28.24MB / 28.24MB 1.3s
|
||||
2026-03-23T07:52:37.7434065Z err: #5 sha256:e260c4bd6721aa9cf70355d170f8cad17e2194840a***c0bc9afae1789fb6a731 3.31kB / 3.31kB 1.4s done
|
||||
2026-03-23T07:52:38.5424787Z err: #5 sha256:6db0909c4473287ed4d1f950d26b8bc5b7b4206d365a0e7740cb89e46979153e 28.24MB / 28.24MB 2.0s done
|
||||
2026-03-23T07:52:38.9430576Z err: #5 extracting sha256:6db0909c4473287ed4d1f950d26b8bc5b7b4206d365a0e7740cb89e46979153e
|
||||
2026-03-23T07:52:38.9431350Z err: #5 sha256:5b656***f4612343e8373dca1cc9358d43b393ded920a92da897b8a82b5d51139 0B / 1.71MB 2.6s
|
||||
2026-03-23T07:52:39.3442635Z err: #5 sha256:1f07293921e5871b5544e13097dc0c65d28920dc8a5f94216e2af10843f7986e 0B / 447B 3.0s
|
||||
2026-03-23T07:52:39.5941495Z err: #5 sha256:1cb89e70384b59a4860d1f1c56f6f91043d2f8e1394bd9799d7d576f1199fd40 3.15MB / 49.95MB 3.2s
|
||||
2026-03-23T07:52:40.0401721Z err: #5 sha256:5b656***f4612343e8373dca1cc9358d43b393ded920a92da897b8a82b5d51139 1.05MB / 1.71MB 3.6s
|
||||
2026-03-23T07:52:40.1427343Z err: #5 sha256:5b656***f4612343e8373dca1cc9358d43b393ded920a92da897b8a82b5d51139 1.71MB / 1.71MB 3.8s
|
||||
2026-03-23T07:52:40.2546240Z err: #5 sha256:5b656***f4612343e8373dca1cc9358d43b393ded920a92da897b8a82b5d51139 1.71MB / 1.71MB 3.9s done
|
||||
2026-03-23T07:52:40.4780655Z err: #5 sha256:1f07293921e5871b5544e13097dc0c65d28920dc8a5f94216e2af10843f7986e 447B / 447B 4.1s
|
||||
2026-03-23T07:52:40.6427445Z err: #5 sha256:1f07293921e5871b5544e13097dc0c65d28920dc8a5f94216e2af10843f7986e 447B / 447B 4.2s done
|
||||
2026-03-23T07:52:41.3423114Z err: #5 sha256:1cb89e70384b59a4860d1f1c56f6f91043d2f8e1394bd9799d7d576f1199fd40 6.29MB / 49.95MB 5.0s
|
||||
2026-03-23T07:52:41.4427613Z err: #5 extracting sha256:6db0909c4473287ed4d1f950d26b8bc5b7b4206d365a0e7740cb89e46979153e 2.5s done
|
||||
2026-03-23T07:52:41.8046613Z err: #5 extracting sha256:e260c4bd6721aa9cf70355d170f8cad17e2194840a***c0bc9afae1789fb6a731
|
||||
2026-03-23T07:52:41.9428906Z err: #5 extracting sha256:e260c4bd6721aa9cf70355d170f8cad17e2194840a***c0bc9afae1789fb6a731 0.1s done
|
||||
2026-03-23T07:52:43.1428942Z err: #5 sha256:1cb89e70384b59a4860d1f1c56f6f91043d2f8e1394bd9799d7d576f1199fd40 9.44MB / 49.95MB 6.8s
|
||||
2026-03-23T07:52:45.3428178Z err: #5 sha256:1cb89e70384b59a4860d1f1c56f6f91043d2f8e1394bd9799d7d576f1199fd40 12.58MB / 49.95MB 9.0s
|
||||
2026-03-23T07:52:46.6425378Z err: #5 sha256:1cb89e70384b59a4860d1f1c56f6f91043d2f8e1394bd9799d7d576f1199fd40 15.73MB / 49.95MB 10.3s
|
||||
2026-03-23T07:52:48.4435358Z err: #5 sha256:1cb89e70384b59a4860d1f1c56f6f91043d2f8e1394bd9799d7d576f1199fd40 18.87MB / 49.95MB 12.1s
|
||||
2026-03-23T07:52:50.2427153Z err: #5 sha256:1cb89e70384b59a4860d1f1c56f6f91043d2f8e1394bd9799d7d576f1199fd40 ***.02MB / 49.95MB 13.9s
|
||||
2026-03-23T07:52:52.0430776Z err: #5 sha256:1cb89e70384b59a4860d1f1c56f6f91043d2f8e1394bd9799d7d576f1199fd40 25.17MB / 49.95MB 15.7s
|
||||
2026-03-23T07:52:53.9429951Z err: #5 sha256:1cb89e70384b59a4860d1f1c56f6f91043d2f8e1394bd9799d7d576f1199fd40 28.31MB / 49.95MB 17.6s
|
||||
2026-03-23T07:52:55.6431846Z err: #5 sha256:1cb89e70384b59a4860d1f1c56f6f91043d2f8e1394bd9799d7d576f1199fd40 31.46MB / 49.95MB 19.3s
|
||||
2026-03-23T07:52:57.4428476Z err: #5 sha256:1cb89e70384b59a4860d1f1c56f6f91043d2f8e1394bd9799d7d576f1199fd40 34.60MB / 49.95MB 21.1s
|
||||
2026-03-23T07:52:59.2430909Z err: #5 sha256:1cb89e70384b59a4860d1f1c56f6f91043d2f8e1394bd9799d7d576f1199fd40 37.75MB / 49.95MB ***.9s
|
||||
2026-03-23T07:53:00.9431366Z err: #5 sha256:1cb89e70384b59a4860d1f1c56f6f91043d2f8e1394bd9799d7d576f1199fd40 40.89MB / 49.95MB 24.6s
|
||||
2026-03-23T07:53:02.7425997Z err: #5 sha256:1cb89e70384b59a4860d1f1c56f6f91043d2f8e1394bd9799d7d576f1199fd40 44.04MB / 49.95MB 26.4s
|
||||
2026-03-23T07:53:04.6432281Z err: #5 sha256:1cb89e70384b59a4860d1f1c56f6f91043d2f8e1394bd9799d7d576f1199fd40 47.19MB / 49.95MB 28.3s
|
||||
2026-03-23T07:53:06.5432220Z err: #5 sha256:1cb89e70384b59a4860d1f1c56f6f91043d2f8e1394bd9799d7d576f1199fd40 49.95MB / 49.95MB 30.2s
|
||||
2026-03-23T07:53:07.3432172Z err: #5 sha256:1cb89e70384b59a4860d1f1c56f6f91043d2f8e1394bd9799d7d576f1199fd40 49.95MB / 49.95MB 31.0s done
|
||||
2026-03-23T07:53:07.4766405Z err: #5 extracting sha256:1cb89e70384b59a4860d1f1c56f6f91043d2f8e1394bd9799d7d576f1199fd40
|
||||
2026-03-23T07:53:12.3014005Z err: #5 extracting sha256:1cb89e70384b59a4860d1f1c56f6f91043d2f8e1394bd9799d7d576f1199fd40 4.7s done
|
||||
2026-03-23T07:53:15.8076175Z err: #5 extracting sha256:5b656***f4612343e8373dca1cc9358d43b393ded920a92da897b8a82b5d51139
|
||||
2026-03-23T07:53:16.2072298Z err: #5 extracting sha256:5b656***f4612343e8373dca1cc9358d43b393ded920a92da897b8a82b5d51139 0.2s done
|
||||
2026-03-23T07:53:17.0965903Z err: #5 extracting sha256:1f07293921e5871b5544e13097dc0c65d28920dc8a5f94216e2af10843f7986e
|
||||
2026-03-23T07:53:17.3281393Z err: #5 extracting sha256:1f07293921e5871b5544e13097dc0c65d28920dc8a5f94216e2af10843f7986e 0.1s done
|
||||
2026-03-23T07:53:20.8814691Z err: #5 DONE 44.9s
|
||||
2026-03-23T07:53:20.9825388Z err: #6 [production 2/9] WORKDIR /app
|
||||
2026-03-23T07:53:25.0243412Z err: #6 DONE 4.0s
|
||||
2026-03-23T07:53:25.0244057Z err: #7 [deps 2/6] RUN corepack enable && corepack prepare pnpm@10.32.1 --activate
|
||||
2026-03-23T07:53:27.1527098Z err: #7 6.170 Preparing pnpm@10.32.1 for immediate activation...
|
||||
2026-03-23T07:53:35.1404004Z err: #7 DONE 14.2s
|
||||
2026-03-23T07:53:35.1404711Z err: #8 [production 3/9] RUN groupadd -g 1001 nextjs && useradd -u 1001 -g 1001 -m -s /bin/bash nextjs
|
||||
2026-03-23T07:53:35.2562853Z err: #8 ...
|
||||
2026-03-23T07:53:35.2563501Z err: #9 [deps 3/6] WORKDIR /w
|
||||
2026-03-23T07:53:38.2800254Z err: #9 DONE 3.0s
|
||||
2026-03-23T07:53:38.2800933Z err: #8 [production 3/9] RUN groupadd -g 1001 nextjs && useradd -u 1001 -g 1001 -m -s /bin/bash nextjs
|
||||
2026-03-23T07:53:38.5061789Z err: #8 ...
|
||||
2026-03-23T07:53:38.5062493Z err: #10 [deps 4/6] COPY package.json pnpm-lock.yaml pnpm-workspace.yaml ./
|
||||
2026-03-23T07:53:40.5572314Z err: #10 ...
|
||||
2026-03-23T07:53:40.5573057Z err: #8 [production 3/9] RUN groupadd -g 1001 nextjs && useradd -u 1001 -g 1001 -m -s /bin/bash nextjs
|
||||
2026-03-23T07:53:40.5573370Z err: #8 DONE 15.3s
|
||||
2026-03-23T07:53:40.7077197Z err: #10 [deps 4/6] COPY package.json pnpm-lock.yaml pnpm-workspace.yaml ./
|
||||
2026-03-23T07:53:42.8104215Z err: #10 DONE 4.5s
|
||||
2026-03-23T07:53:42.8104905Z err: #11 [production 4/9] RUN apt-get update && apt-get install -y --no-install-recommends curl && rm -rf /var/lib/apt/lists/*
|
||||
2026-03-23T07:53:46.4172359Z err: #11 5.566 Get:1 http://deb.debian.org/debian bookworm InRelease [151 kB]
|
||||
2026-03-23T07:53:46.5204565Z err: #11 5.669 Get:2 http://deb.debian.org/debian bookworm-updates InRelease [55.4 kB]
|
||||
2026-03-23T07:53:46.7084911Z err: #11 5.707 Get:3 http://deb.debian.org/debian-security bookworm-security InRelease [48.0 kB]
|
||||
2026-03-23T07:53:46.7645089Z err: #11 5.913 Get:4 http://deb.debian.org/debian bookworm/main amd64 Packages [8792 kB]
|
||||
2026-03-23T07:53:46.8894358Z err: #11 ...
|
||||
2026-03-23T07:53:46.8895087Z err: #12 [deps 5/6] COPY frontend/package.json ./frontend/
|
||||
2026-03-23T07:53:46.8895332Z err: #12 DONE 4.0s
|
||||
2026-03-23T07:53:47.1005017Z err: #13 [deps 6/6] RUN pnpm install --frozen-lockfile --filter lcbp3-frontend...
|
||||
2026-03-23T07:53:50.2891986Z err: #13 3.339 Lockfile is up to date, resolution step is skipped
|
||||
2026-03-23T07:53:50.4654885Z err: #13 3.515 Progress: resolved 1, reused 0, downloaded 0, added 0
|
||||
2026-03-23T07:53:50.7333802Z err: #13 3.782 . | +701 ++++++++++++++++++++++++++++++++
|
||||
2026-03-23T07:53:51.4694257Z err: #13 4.519 Progress: resolved 701, reused 0, downloaded 7, added 0
|
||||
2026-03-23T07:53:52.4693291Z err: #13 5.519 Progress: resolved 701, reused 0, downloaded 16, added 9
|
||||
2026-03-23T07:53:52.8436829Z err: #13 ...
|
||||
2026-03-23T07:53:52.8437539Z err: #11 [production 4/9] RUN apt-get update && apt-get install -y --no-install-recommends curl && rm -rf /var/lib/apt/lists/*
|
||||
2026-03-23T07:53:52.8437861Z err: #11 11.99 Get:5 http://deb.debian.org/debian bookworm-updates/main amd64 Packages [6924 B]
|
||||
2026-03-23T07:53:53.0760483Z err: #11 12.*** Get:6 http://deb.debian.org/debian-security bookworm-security/main amd64 Packages [294 kB]
|
||||
2026-03-23T07:53:58.8167570Z err: #11 17.97 Fetched 9347 kB in 12s (807 kB/s)
|
||||
2026-03-23T07:53:59.8573978Z err: #11 17.97 Reading package lists...
|
||||
2026-03-23T07:53:59.8574749Z err: #11 ...
|
||||
2026-03-23T07:53:59.8575014Z err: #13 [deps 6/6] RUN pnpm install --frozen-lockfile --filter lcbp3-frontend...
|
||||
2026-03-23T07:53:59.8575287Z err: #13 6.531 Progress: resolved 701, reused 0, downloaded 56, added 26
|
||||
2026-03-23T07:53:59.8575526Z err: #13 7.533 Progress: resolved 701, reused 0, downloaded 82, added 51
|
||||
2026-03-23T07:53:59.8575937Z err: #13 8.533 Progress: resolved 701, reused 0, downloaded 99, added 57
|
||||
2026-03-23T07:53:59.8576192Z err: #13 9.534 Progress: resolved 701, reused 0, downloaded 101, added 59
|
||||
2026-03-23T07:53:59.8576417Z err: #13 10.53 Progress: resolved 701, reused 0, downloaded 104, added 61
|
||||
2026-03-23T07:53:59.8576633Z err: #13 11.61 Progress: resolved 701, reused 0, downloaded 105, added 61
|
||||
2026-03-23T07:53:59.8576865Z err: #13 12.61 Progress: resolved 701, reused 0, downloaded 113, added 61
|
||||
2026-03-23T07:54:00.5569265Z err: #13 13.61 Progress: resolved 701, reused 0, downloaded 129, added 65
|
||||
2026-03-23T07:54:01.2287845Z err: #13 ...
|
||||
2026-03-23T07:54:01.2288691Z err: #11 [production 4/9] RUN apt-get update && apt-get install -y --no-install-recommends curl && rm -rf /var/lib/apt/lists/*
|
||||
2026-03-23T07:54:01.2289015Z err: #11 17.97 Reading package lists...
|
||||
2026-03-23T07:54:02.7198116Z err: #11 20.44 Reading package lists...
|
||||
2026-03-23T07:54:03.1209344Z err: #11 21.93 Building dependency tree...
|
||||
2026-03-23T07:54:03.2731105Z err: #11 ***.27 Reading state information...
|
||||
2026-03-23T07:54:03.7312507Z err: #11 ***.72 The following additional packages will be installed:
|
||||
2026-03-23T07:54:03.7313239Z err: #11 ***.72 libbrotli1 libcurl4 libgssapi-krb5-2 libk5crypto3 libkeyutils1 libkrb5-3
|
||||
2026-03-23T07:54:03.7313491Z err: #11 ***.73 libkrb5support0 libldap-2.5-0 libnghttp2-14 libpsl5 librtmp1 libsasl2-2
|
||||
2026-03-23T07:54:03.7313773Z err: #11 ***.73 libsasl2-modules-db libssh2-1 libssl3
|
||||
2026-03-23T07:54:03.7314068Z err: #11 ***.73 Suggested packages:
|
||||
2026-03-23T07:54:03.7314284Z err: #11 ***.73 krb5-doc krb5-user
|
||||
2026-03-23T07:54:03.7314491Z err: #11 ***.73 Recommended packages:
|
||||
2026-03-23T07:54:03.7314710Z err: #11 ***.73 ca-certificates krb5-locales libldap-common publicsuffix libsasl2-modules
|
||||
2026-03-23T07:54:03.8627259Z err: #11 23.01 The following NEW packages will be installed:
|
||||
2026-03-23T07:54:03.9772984Z err: #11 23.01 curl libbrotli1 libcurl4 libgssapi-krb5-2 libk5crypto3 libkeyutils1
|
||||
2026-03-23T07:54:03.9773855Z err: #11 23.01 libkrb5-3 libkrb5support0 libldap-2.5-0 libnghttp2-14 libpsl5 librtmp1
|
||||
2026-03-23T07:54:03.9774112Z err: #11 23.02 libsasl2-2 libsasl2-modules-db libssh2-1 libssl3
|
||||
2026-03-23T07:54:03.9774338Z err: #11 23.13 0 upgraded, 16 newly installed, 0 to remove and 0 not upgraded.
|
||||
2026-03-23T07:54:03.9774639Z err: #11 23.13 Need to get 4237 kB of archives.
|
||||
2026-03-23T07:54:03.9774885Z err: #11 23.13 After this operation, 12.0 MB of additional disk space will be used.
|
||||
2026-03-23T07:54:03.9775127Z err: #11 23.13 Get:1 http://deb.debian.org/debian bookworm/main amd64 libbrotli1 amd64 1.0.9-2+b6 [275 kB]
|
||||
2026-03-23T07:54:04.1172041Z err: #11 23.15 Get:2 http://deb.debian.org/debian bookworm/main amd64 libkrb5support0 amd64 1.20.1-2+deb12u4 [33.2 kB]
|
||||
2026-03-23T07:54:04.1172815Z err: #11 23.16 Get:3 http://deb.debian.org/debian bookworm/main amd64 libk5crypto3 amd64 1.20.1-2+deb12u4 [79.8 kB]
|
||||
2026-03-23T07:54:04.1173096Z err: #11 23.16 Get:4 http://deb.debian.org/debian bookworm/main amd64 libkeyutils1 amd64 1.6.3-2 [8808 B]
|
||||
2026-03-23T07:54:04.1173451Z err: #11 23.17 Get:5 http://deb.debian.org/debian-security bookworm-security/main amd64 libssl3 amd64 3.0.18-1~deb12u2 [2030 kB]
|
||||
2026-03-23T07:54:04.1173709Z err: #11 23.27 Get:6 http://deb.debian.org/debian bookworm/main amd64 libkrb5-3 amd64 1.20.1-2+deb12u4 [334 kB]
|
||||
2026-03-23T07:54:04.2197925Z err: #11 23.35 Get:7 http://deb.debian.org/debian bookworm/main amd64 libgssapi-krb5-2 amd64 1.20.1-2+deb12u4 [135 kB]
|
||||
2026-03-23T07:54:04.2198717Z err: #11 23.35 Get:8 http://deb.debian.org/debian bookworm/main amd64 libsasl2-modules-db amd64 2.1.28+dfsg-10 [20.3 kB]
|
||||
2026-03-23T07:54:04.2198994Z err: #11 23.35 Get:9 http://deb.debian.org/debian bookworm/main amd64 libsasl2-2 amd64 2.1.28+dfsg-10 [59.7 kB]
|
||||
2026-03-23T07:54:04.2199347Z err: #11 23.35 Get:10 http://deb.debian.org/debian bookworm/main amd64 libldap-2.5-0 amd64 2.5.13+dfsg-5 [183 kB]
|
||||
2026-03-23T07:54:04.2199597Z err: #11 23.36 Get:11 http://deb.debian.org/debian bookworm/main amd64 libnghttp2-14 amd64 1.52.0-1+deb12u2 [73.0 kB]
|
||||
2026-03-23T07:54:04.2199832Z err: #11 23.36 Get:12 http://deb.debian.org/debian bookworm/main amd64 libpsl5 amd64 0.21.2-1 [58.7 kB]
|
||||
2026-03-23T07:54:04.2200284Z err: #11 23.36 Get:13 http://deb.debian.org/debian bookworm/main amd64 librtmp1 amd64 2.4+20151***3.gitfa8646d.1-2+b2 [60.8 kB]
|
||||
2026-03-23T07:54:04.2200600Z err: #11 23.37 Get:14 http://deb.debian.org/debian bookworm/main amd64 libssh2-1 amd64 1.10.0-3+b1 [179 kB]
|
||||
2026-03-23T07:54:04.3995592Z err: #11 23.38 Get:15 http://deb.debian.org/debian bookworm/main amd64 libcurl4 amd64 7.88.1-10+deb12u14 [392 kB]
|
||||
2026-03-23T07:54:04.3996301Z err: #11 23.40 Get:16 http://deb.debian.org/debian bookworm/main amd64 curl amd64 7.88.1-10+deb12u14 [316 kB]
|
||||
2026-03-23T07:54:07.9976184Z err: #11 26.99 debconf: delaying package configuration, since apt-utils is not installed
|
||||
2026-03-23T07:54:09.4164446Z err: #11 28.56 Fetched 4237 kB in 0s (12.6 MB/s)
|
||||
2026-03-23T07:54:10.2268382Z err: #11 29.38 Selecting previously unselected package libbrotli1:amd64.
|
||||
2026-03-23T07:54:10.5757574Z err: #11 29.38 (Reading database ...
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 6096 files and directories currently installed.)
|
||||
2026-03-23T07:54:10.5758677Z err: #11 29.57 Preparing to unpack .../00-libbrotli1_1.0.9-2+b6_amd64.deb ...
|
||||
2026-03-23T07:54:10.6722645Z err: #11 29.82 Unpacking libbrotli1:amd64 (1.0.9-2+b6) ...
|
||||
2026-03-23T07:54:11.3979588Z err: #11 30.55 Selecting previously unselected package libkrb5support0:amd64.
|
||||
2026-03-23T07:54:11.4998923Z err: #11 30.56 Preparing to unpack .../01-libkrb5support0_1.20.1-2+deb12u4_amd64.deb ...
|
||||
2026-03-23T07:54:11.6556715Z err: #11 30.65 Unpacking libkrb5support0:amd64 (1.20.1-2+deb12u4) ...
|
||||
2026-03-23T07:54:11.6557401Z err: #11 ...
|
||||
2026-03-23T07:54:11.6557663Z err: #13 [deps 6/6] RUN pnpm install --frozen-lockfile --filter lcbp3-frontend...
|
||||
2026-03-23T07:54:11.6557962Z err: #13 14.61 Progress: resolved 701, reused 0, downloaded 146, added 73
|
||||
2026-03-23T07:54:11.6558201Z err: #13 15.61 Progress: resolved 701, reused 0, downloaded 149, added 73
|
||||
2026-03-23T07:54:11.6558421Z err: #13 16.61 Progress: resolved 701, reused 0, downloaded 154, added 77
|
||||
2026-03-23T07:54:11.6558670Z err: #13 17.61 Progress: resolved 701, reused 0, downloaded 156, added 77
|
||||
2026-03-23T07:54:11.6558908Z err: #13 18.61 Progress: resolved 701, reused 0, downloaded 166, added 81
|
||||
2026-03-23T07:54:11.6559145Z err: #13 19.61 Progress: resolved 701, reused 0, downloaded 170, added 82
|
||||
2026-03-23T07:54:11.6559359Z err: #13 20.87 Progress: resolved 701, reused 0, downloaded 171, added 82
|
||||
2026-03-23T07:54:11.6559653Z err: #13 21.87 Progress: resolved 701, reused 0, downloaded 189, added 90
|
||||
2026-03-23T07:54:11.6559884Z err: #13 ***.87 Progress: resolved 701, reused 0, downloaded ***4, added 107
|
||||
2026-03-23T07:54:11.6560265Z err: #13 23.87 Progress: resolved 701, reused 0, downloaded 252, added 118
|
||||
2026-03-23T07:54:11.8250329Z err: #13 24.87 Progress: resolved 701, reused 0, downloaded 274, added 130
|
||||
2026-03-23T07:54:12.8248042Z err: #13 25.87 Progress: resolved 701, reused 0, downloaded 292, added 138
|
||||
2026-03-23T07:54:13.8248071Z err: #13 26.87 Progress: resolved 701, reused 0, downloaded 317, added 151
|
||||
2026-03-23T07:54:14.8272774Z err: #13 27.87 Progress: resolved 701, reused 0, downloaded 326, added 155
|
||||
2026-03-23T07:54:15.8255822Z err: #13 28.88 Progress: resolved 701, reused 0, downloaded 340, added 160
|
||||
2026-03-23T07:54:16.8263185Z err: #13 29.88 Progress: resolved 701, reused 0, downloaded 367, added 172
|
||||
2026-03-23T07:54:16.9659888Z err: #13 ...
|
||||
2026-03-23T07:54:16.9660789Z err: #11 [production 4/9] RUN apt-get update && apt-get install -y --no-install-recommends curl && rm -rf /var/lib/apt/lists/*
|
||||
2026-03-23T07:54:16.9661088Z err: #11 36.02 Selecting previously unselected package libk5crypto3:amd64.
|
||||
2026-03-23T07:54:16.9661415Z err: #11 36.02 Preparing to unpack .../02-libk5crypto3_1.20.1-2+deb12u4_amd64.deb ...
|
||||
2026-03-23T07:54:17.1173170Z err: #11 36.11 Unpacking libk5crypto3:amd64 (1.20.1-2+deb12u4) ...
|
||||
2026-03-23T07:54:22.0727545Z err: #11 41.07 Selecting previously unselected package libkeyutils1:amd64.
|
||||
2026-03-23T07:54:22.0728264Z err: #11 41.07 Preparing to unpack .../03-libkeyutils1_1.6.3-2_amd64.deb ...
|
||||
2026-03-23T07:54:23.9994884Z err: #11 43.15 Unpacking libkeyutils1:amd64 (1.6.3-2) ...
|
||||
2026-03-23T07:54:25.9869216Z err: #11 ...
|
||||
2026-03-23T07:54:25.9869953Z err: #13 [deps 6/6] RUN pnpm install --frozen-lockfile --filter lcbp3-frontend...
|
||||
2026-03-23T07:54:25.9870408Z err: #13 30.88 Progress: resolved 701, reused 0, downloaded 432, added 204
|
||||
2026-03-23T07:54:25.9870672Z err: #13 31.88 Progress: resolved 701, reused 0, downloaded 493, added 275
|
||||
2026-03-23T07:54:25.9870957Z err: #13 32.88 Progress: resolved 701, reused 0, downloaded 525, added 298
|
||||
2026-03-23T07:54:25.9871182Z err: #13 33.88 Progress: resolved 701, reused 0, downloaded 527, added 298
|
||||
2026-03-23T07:54:25.9871422Z err: #13 34.88 Progress: resolved 701, reused 0, downloaded 578, added 3***
|
||||
2026-03-23T07:54:25.9871664Z err: #13 35.88 Progress: resolved 701, reused 0, downloaded 593, added 331
|
||||
2026-03-23T07:54:25.9871893Z err: #13 36.88 Progress: resolved 701, reused 0, downloaded 613, added 336
|
||||
2026-03-23T07:54:25.9872121Z err: #13 37.89 Progress: resolved 701, reused 0, downloaded 696, added 426
|
||||
2026-03-23T07:54:25.9872342Z err: #13 38.89 Progress: resolved 701, reused 0, downloaded 700, added 667
|
||||
2026-03-23T07:54:26.8364634Z err: #13 39.89 Progress: resolved 701, reused 0, downloaded 700, added 699
|
||||
2026-03-23T07:54:27.4467036Z err: #13 ...
|
||||
2026-03-23T07:54:27.4467671Z err: #11 [production 4/9] RUN apt-get update && apt-get install -y --no-install-recommends curl && rm -rf /var/lib/apt/lists/*
|
||||
2026-03-23T07:54:27.4467998Z err: #11 46.59 Selecting previously unselected package libssl3:amd64.
|
||||
2026-03-23T07:54:27.6638514Z err: #11 46.60 Preparing to unpack .../04-libssl3_3.0.18-1~deb12u2_amd64.deb ...
|
||||
2026-03-23T07:54:27.6639283Z err: #11 46.66 Unpacking libssl3:amd64 (3.0.18-1~deb12u2) ...
|
||||
2026-03-23T07:54:28.3270460Z err: #11 47.48 Selecting previously unselected package libkrb5-3:amd64.
|
||||
2026-03-23T07:54:28.5214698Z err: #11 47.48 Preparing to unpack .../05-libkrb5-3_1.20.1-2+deb12u4_amd64.deb ...
|
||||
2026-03-23T07:54:28.5215405Z err: #11 47.52 Unpacking libkrb5-3:amd64 (1.20.1-2+deb12u4) ...
|
||||
2026-03-23T07:54:29.2897393Z err: #11 48.44 Selecting previously unselected package libgssapi-krb5-2:amd64.
|
||||
2026-03-23T07:54:29.4936917Z err: #11 48.44 Preparing to unpack .../06-libgssapi-krb5-2_1.20.1-2+deb12u4_amd64.deb ...
|
||||
2026-03-23T07:54:29.4937698Z err: #11 48.49 Unpacking libgssapi-krb5-2:amd64 (1.20.1-2+deb12u4) ...
|
||||
2026-03-23T07:54:29.6412523Z err: #11 48.79 Selecting previously unselected package libsasl2-modules-db:amd64.
|
||||
2026-03-23T07:54:29.8471233Z err: #11 48.79 Preparing to unpack .../07-libsasl2-modules-db_2.1.28+dfsg-10_amd64.deb ...
|
||||
2026-03-23T07:54:29.8472024Z err: #11 48.84 Unpacking libsasl2-modules-db:amd64 (2.1.28+dfsg-10) ...
|
||||
2026-03-23T07:54:30.0606075Z err: #11 49.21 Selecting previously unselected package libsasl2-2:amd64.
|
||||
2026-03-23T07:54:30.2577204Z err: #11 49.21 Preparing to unpack .../08-libsasl2-2_2.1.28+dfsg-10_amd64.deb ...
|
||||
2026-03-23T07:54:30.2577938Z err: #11 49.25 Unpacking libsasl2-2:amd64 (2.1.28+dfsg-10) ...
|
||||
2026-03-23T07:54:34.4729199Z err: #11 53.62 Selecting previously unselected package libldap-2.5-0:amd64.
|
||||
2026-03-23T07:54:34.6709403Z err: #11 53.62 Preparing to unpack .../09-libldap-2.5-0_2.5.13+dfsg-5_amd64.deb ...
|
||||
2026-03-23T07:54:34.6710313Z err: #11 53.67 Unpacking libldap-2.5-0:amd64 (2.5.13+dfsg-5) ...
|
||||
2026-03-23T07:54:35.0041285Z err: #11 54.15 Selecting previously unselected package libnghttp2-14:amd64.
|
||||
2026-03-23T07:54:35.2104004Z err: #11 54.15 Preparing to unpack .../10-libnghttp2-14_1.52.0-1+deb12u2_amd64.deb ...
|
||||
2026-03-23T07:54:35.2104729Z err: #11 54.21 Unpacking libnghttp2-14:amd64 (1.52.0-1+deb12u2) ...
|
||||
2026-03-23T07:54:35.5294772Z err: #11 54.68 Selecting previously unselected package libpsl5:amd64.
|
||||
2026-03-23T07:54:35.7357167Z err: #11 54.68 Preparing to unpack .../11-libpsl5_0.21.2-1_amd64.deb ...
|
||||
2026-03-23T07:54:35.7357946Z err: #11 54.73 Unpacking libpsl5:amd64 (0.21.2-1) ...
|
||||
2026-03-23T07:54:35.9566000Z err: #11 55.10 Selecting previously unselected package librtmp1:amd64.
|
||||
2026-03-23T07:54:35.9568220Z err: #11 55.10 Preparing to unpack .../12-librtmp1_2.4+20151***3.gitfa8646d.1-2+b2_amd64.deb ...
|
||||
2026-03-23T07:54:36.1771841Z err: #11 55.17 Unpacking librtmp1:amd64 (2.4+20151***3.gitfa8646d.1-2+b2) ...
|
||||
2026-03-23T07:54:36.9536027Z err: #11 56.10 Selecting previously unselected package libssh2-1:amd64.
|
||||
2026-03-23T07:54:37.1823811Z err: #11 56.10 Preparing to unpack .../13-libssh2-1_1.10.0-3+b1_amd64.deb ...
|
||||
2026-03-23T07:54:37.1824633Z err: #11 56.18 Unpacking libssh2-1:amd64 (1.10.0-3+b1) ...
|
||||
2026-03-23T07:54:37.3960297Z err: #11 56.54 Selecting previously unselected package libcurl4:amd64.
|
||||
2026-03-23T07:54:37.5485283Z err: #11 56.55 Preparing to unpack .../14-libcurl4_7.88.1-10+deb12u14_amd64.deb ...
|
||||
2026-03-23T07:54:37.8489880Z err: #11 ...
|
||||
2026-03-23T07:54:37.8491059Z err: #13 [deps 6/6] RUN pnpm install --frozen-lockfile --filter lcbp3-frontend...
|
||||
2026-03-23T07:54:37.8491408Z err: #13 40.89 Progress: resolved 701, reused 0, downloaded 700, added 700
|
||||
2026-03-23T07:54:38.1262616Z err: #13 ...
|
||||
2026-03-23T07:54:38.1263280Z err: #11 [production 4/9] RUN apt-get update && apt-get install -y --no-install-recommends curl && rm -rf /var/lib/apt/lists/*
|
||||
2026-03-23T07:54:38.1263607Z err: #11 57.27 Unpacking libcurl4:amd64 (7.88.1-10+deb12u14) ...
|
||||
2026-03-23T07:54:39.3096834Z err: #11 58.46 Selecting previously unselected package curl.
|
||||
2026-03-23T07:54:39.4793539Z err: #11 58.46 Preparing to unpack .../15-curl_7.88.1-10+deb12u14_amd64.deb ...
|
||||
2026-03-23T07:54:39.4794264Z err: #11 58.52 Unpacking curl (7.88.1-10+deb12u14) ...
|
||||
2026-03-23T07:54:40.3273137Z err: #11 59.32 Setting up libkeyutils1:amd64 (1.6.3-2) ...
|
||||
2026-03-23T07:54:40.4986241Z err: #11 59.63 Setting up libpsl5:amd64 (0.21.2-1) ...
|
||||
2026-03-23T07:54:40.6711191Z err: #11 59.82 Setting up libbrotli1:amd64 (1.0.9-2+b6) ...
|
||||
2026-03-23T07:54:44.7541852Z err: #11 63.90 Setting up libssl3:amd64 (3.0.18-1~deb12u2) ...
|
||||
2026-03-23T07:54:44.9223303Z err: #11 ...
|
||||
2026-03-23T07:54:44.9224039Z err: #13 [deps 6/6] RUN pnpm install --frozen-lockfile --filter lcbp3-frontend...
|
||||
2026-03-23T07:54:44.9224330Z err: #13 51.74 Progress: resolved 701, reused 0, downloaded 701, added 700
|
||||
2026-03-23T07:54:44.9224593Z err: #13 51.75 Progress: resolved 701, reused 0, downloaded 701, added 701, done
|
||||
2026-03-23T07:54:44.9224827Z err: #13 52.53 .../sharp@0.34.5/node_modules/sharp install$ node install/check.js || npm run build
|
||||
2026-03-23T07:54:44.9225072Z err: #13 52.81 .../sharp@0.34.5/node_modules/sharp install: Done
|
||||
2026-03-23T07:54:44.9225316Z err: #13 53.44 . prepare$ husky
|
||||
2026-03-23T07:54:44.9225515Z err: #13 53.55 . prepare: .git can't be found
|
||||
2026-03-23T07:54:44.9225725Z err: #13 53.55 . prepare: Done
|
||||
2026-03-23T07:54:44.9226017Z err: #13 53.62 Done in 51.3s using pnpm v10.32.1
|
||||
2026-03-23T07:54:44.9226248Z err: #13 DONE 57.8s
|
||||
2026-03-23T07:54:45.0727266Z err: #11 [production 4/9] RUN apt-get update && apt-get install -y --no-install-recommends curl && rm -rf /var/lib/apt/lists/*
|
||||
2026-03-23T07:54:45.7816406Z err: #11 64.93 Setting up libnghttp2-14:amd64 (1.52.0-1+deb12u2) ...
|
||||
2026-03-23T07:54:45.9935814Z err: #11 65.14 Setting up libkrb5support0:amd64 (1.20.1-2+deb12u4) ...
|
||||
2026-03-23T07:54:46.2271583Z err: #11 65.38 Setting up libsasl2-modules-db:amd64 (2.1.28+dfsg-10) ...
|
||||
2026-03-23T07:54:46.6074491Z err: #11 65.76 Setting up librtmp1:amd64 (2.4+20151***3.gitfa8646d.1-2+b2) ...
|
||||
2026-03-23T07:54:46.8555570Z err: #11 66.00 Setting up libk5crypto3:amd64 (1.20.1-2+deb12u4) ...
|
||||
2026-03-23T07:54:47.0844164Z err: #11 66.23 Setting up libsasl2-2:amd64 (2.1.28+dfsg-10) ...
|
||||
2026-03-23T07:54:47.2172680Z err: #11 66.36 Setting up libssh2-1:amd64 (1.10.0-3+b1) ...
|
||||
2026-03-23T07:54:47.3616642Z err: #11 66.51 Setting up libkrb5-3:amd64 (1.20.1-2+deb12u4) ...
|
||||
2026-03-23T07:54:47.5509772Z err: #11 66.70 Setting up libldap-2.5-0:amd64 (2.5.13+dfsg-5) ...
|
||||
2026-03-23T07:54:47.7476690Z err: #11 66.90 Setting up libgssapi-krb5-2:amd64 (1.20.1-2+deb12u4) ...
|
||||
2026-03-23T07:54:47.9126096Z err: #11 67.06 Setting up libcurl4:amd64 (7.88.1-10+deb12u14) ...
|
||||
2026-03-23T07:54:48.0913315Z err: #11 67.24 Setting up curl (7.88.1-10+deb12u14) ...
|
||||
2026-03-23T07:54:48.2703906Z err: #11 67.42 Processing triggers for libc-bin (2.36-9+deb12u13) ...
|
||||
2026-03-23T07:54:51.2439468Z err: #11 DONE 70.4s
|
||||
2026-03-23T07:55:03.9621255Z err: #14 [build 5/12] COPY --from=deps /w/node_modules ./node_modules
|
||||
2026-03-23T07:55:29.4724877Z err: #14 DONE 25.5s
|
||||
2026-03-23T07:55:29.7022256Z err: #15 [build 6/12] WORKDIR /w/frontend
|
||||
2026-03-23T07:55:32.4635845Z err: #15 DONE 2.9s
|
||||
2026-03-23T07:55:32.6757702Z err: #16 [build 7/12] COPY --from=deps /w/frontend/node_modules ./node_modules
|
||||
2026-03-23T07:55:35.5043584Z err: #16 DONE 3.0s
|
||||
2026-03-23T07:55:35.7176857Z err: #17 [build 8/12] COPY frontend/ ./
|
||||
2026-03-23T07:55:38.0422339Z err: #17 DONE 2.5s
|
||||
2026-03-23T07:55:38.2657517Z err: #18 [build 9/12] RUN mkdir /n && ln -s /n .next && pnpm run build && rm .next && mv /n .next
|
||||
2026-03-23T07:55:41.0698137Z err: #18 2.954
|
||||
2026-03-23T07:55:41.0698854Z err: #18 2.954 > lcbp3-frontend@1.8.1 build /w/frontend
|
||||
2026-03-23T07:55:41.0699130Z err: #18 2.954 > next build
|
||||
2026-03-23T07:55:41.0699347Z err: #18 2.954
|
||||
2026-03-23T07:55:41.9633573Z err: #18 3.848 ▲ Next.js 16.2.0 (Turbopack)
|
||||
2026-03-23T07:55:42.1953798Z err: #18 3.849
|
||||
2026-03-23T07:55:42.1954493Z err: #18 3.930 Creating an optimized production build ...
|
||||
2026-03-23T07:55:42.5316152Z err: #18 4.416 ⨯ ERROR: This build is using Turbopack, with a `webpack` config and no `turbopack` config.
|
||||
2026-03-23T07:55:42.5316943Z err: #18 4.416 This may be a mistake.
|
||||
2026-03-23T07:55:42.5317202Z err: #18 4.416
|
||||
2026-03-23T07:55:42.5317444Z err: #18 4.416 As of Next.js 16 Turbopack is enabled by default and
|
||||
2026-03-23T07:55:42.5317859Z err: #18 4.416 custom webpack configurations may need to be migrated to Turbopack.
|
||||
2026-03-23T07:55:42.5318142Z err: #18 4.416
|
||||
2026-03-23T07:55:42.5318348Z err: #18 4.416 NOTE: your `webpack` config may have been added by a configuration plugin.
|
||||
2026-03-23T07:55:42.5318612Z err: #18 4.416
|
||||
2026-03-23T07:55:42.5318815Z err: #18 4.416 To configure Turbopack, see https://nextjs.org/docs/app/api-reference/next-config-js/turbopack
|
||||
2026-03-23T07:55:42.5319089Z err: #18 4.416
|
||||
2026-03-23T07:55:42.5319285Z err: #18 4.416 TIP: Many applications work fine under Turbopack with no configuration,
|
||||
2026-03-23T07:55:42.5319524Z err: #18 4.416 if that is the case for you, you can silence this error by passing the
|
||||
2026-03-23T07:55:42.5319747Z err: #18 4.416 `--turbopack` or `--webpack` flag explicitly or simply setting an
|
||||
2026-03-23T07:55:42.5319965Z err: #18 4.416 empty turbopack config in your Next config file (e.g. `turbopack: {}`).
|
||||
2026-03-23T07:55:42.6389576Z err: #18 4.433
|
||||
2026-03-23T07:55:42.6390359Z err: #18 4.434 > Build error occurred
|
||||
2026-03-23T07:55:42.6390639Z err: #18 4.439 Error: Call retries were exceeded
|
||||
2026-03-23T07:55:42.6390891Z err: #18 4.439 at ignore-listed frames {
|
||||
2026-03-23T07:55:42.6391160Z err: #18 4.439 type: 'WorkerError'
|
||||
2026-03-23T07:55:42.6391370Z err: #18 4.439 }
|
||||
2026-03-23T07:55:42.6391571Z err: #18 4.524 ELIFECYCLE Command failed with exit code 1.
|
||||
2026-03-23T07:55:45.3266484Z err: #18 ERROR: process "/bin/sh -c mkdir /n && ln -s /n .next && pnpm run build && rm .next && mv /n .next" did not complete successfully: exit code: 1
|
||||
2026-03-23T07:55:46.4920777Z err: ------
|
||||
2026-03-23T07:55:46.4921485Z err: > [build 9/12] RUN mkdir /n && ln -s /n .next && pnpm run build && rm .next && mv /n .next:
|
||||
2026-03-23T07:55:46.4921878Z err: 4.416 if that is the case for you, you can silence this error by passing the
|
||||
2026-03-23T07:55:46.4922180Z err: 4.416 `--turbopack` or `--webpack` flag explicitly or simply setting an
|
||||
2026-03-23T07:55:46.4922406Z err: 4.416 empty turbopack config in your Next config file (e.g. `turbopack: {}`).
|
||||
2026-03-23T07:55:46.4922699Z err: 4.433
|
||||
2026-03-23T07:55:46.4922897Z err: 4.434 > Build error occurred
|
||||
2026-03-23T07:55:46.4923089Z err: 4.439 Error: Call retries were exceeded
|
||||
2026-03-23T07:55:46.4923325Z err: 4.439 at ignore-listed frames {
|
||||
2026-03-23T07:55:46.4923539Z err: 4.439 type: 'WorkerError'
|
||||
2026-03-23T07:55:46.4923793Z err: 4.439 }
|
||||
2026-03-23T07:55:46.4924011Z err: 4.524 ELIFECYCLE Command failed with exit code 1.
|
||||
2026-03-23T07:55:46.4924241Z err: ------
|
||||
2026-03-23T07:55:46.4933022Z err: Dockerfile:63
|
||||
2026-03-23T07:55:46.4933355Z err: --------------------
|
||||
2026-03-23T07:55:46.4933582Z err: 62 | # to minimise overlay nesting depth, then move back after build completes.
|
||||
2026-03-23T07:55:46.4933869Z err: 63 | >>> RUN mkdir /n && ln -s /n .next && \
|
||||
2026-03-23T07:55:46.4934128Z err: 64 | >>> pnpm run build && \
|
||||
2026-03-23T07:55:46.4934345Z err: 65 | >>> rm .next && mv /n .next
|
||||
2026-03-23T07:55:46.4934612Z err: 66 |
|
||||
2026-03-23T07:55:46.4934818Z err: --------------------
|
||||
2026-03-23T07:55:46.4935013Z err: ERROR: failed to solve: process "/bin/sh -c mkdir /n && ln -s /n .next && pnpm run build && rm .next && mv /n .next" did not complete successfully: exit code: 1
|
||||
2026-03-23T07:55:46.4997329Z 2026/03/23 07:55:46 Process exited with status 1
|
||||
2026-03-23T07:55:47.8315806Z failed to remove container: Error response from daemon: removal of container e18712f813a56b2e2d4b147cb74c1c45195a7abba29b3494ce30f36bfa33ab3c is already in progress
|
||||
2026-03-23T07:55:47.8317237Z ❌ Failure - Main 🚀 Trigger Deployment on QNAP
|
||||
2026-03-23T07:55:47.8511365Z exit with `FAILURE`: 1
|
||||
2026-03-23T07:55:47.8512161Z Cleaning up container for job deploy
|
||||
2026-03-23T07:55:50.3552837Z Removed container: d1f9cc6073a553d2494abc612d9c1e872e757a40ea8a6ffbae034e715b6650b1
|
||||
2026-03-23T07:55:50.3568627Z 🐳 docker volume rm GITEA-ACTIONS-TASK-184_WORKFLOW-CI-CD-Pipeline_JOB-deploy
|
||||
2026-03-23T07:55:50.4262867Z 🐳 docker volume rm GITEA-ACTIONS-TASK-184_WORKFLOW-CI-CD-Pipeline_JOB-deploy-env
|
||||
2026-03-23T07:55:50.5070696Z Cleaning up network for job deploy, and network name is: GITEA-ACTIONS-TASK-184_WORKFLOW-CI-CD-Pipeline_JOB-deploy-deploy-network
|
||||
2026-03-23T07:55:50.8990673Z 🏁 Job failed
|
||||
2026-03-23T07:55:50.9101902Z Job 'deploy' failed
|
||||
@@ -1,398 +0,0 @@
|
||||
2026-03-24T02:30:14.4865530Z ==========================================
|
||||
2026-03-24T02:30:14.4866239Z Starting QNAP Deployment Process
|
||||
2026-03-24T02:30:14.4866552Z ==========================================
|
||||
2026-03-24T02:30:14.6896843Z ✓ Docker accessible
|
||||
2026-03-24T02:30:14.6897503Z 📂 Syncing deployment scripts...
|
||||
2026-03-24T02:30:15.2645399Z From https://git.np-dms.work/np-dms/lcbp3
|
||||
2026-03-24T02:30:15.2647563Z * branch main -> FETCH_HEAD
|
||||
2026-03-24T02:30:15.2647867Z fab2f43..837bea4 main -> origin/main
|
||||
2026-03-24T02:30:15.2953638Z HEAD is now at 837bea4 260324:0918 fix ci-deploy : optimize #01
|
||||
2026-03-24T02:30:15.2960215Z ✓ Code synced
|
||||
2026-03-24T02:30:15.2972226Z 🚀 Executing Blue-Green deployment...
|
||||
2026-03-24T02:30:15.2996833Z tee: /share/np-dms/app/logs/deploy-20260324-093013.log: No such file or directory
|
||||
2026-03-24T02:30:15.3019774Z =========================================
|
||||
2026-03-24T02:30:15.3020591Z LCBP3-DMS Blue-Green Deployment (v1.8.2)
|
||||
2026-03-24T02:30:15.3020857Z Current environment: blue
|
||||
2026-03-24T02:30:15.3021154Z Target environment: green
|
||||
2026-03-24T02:30:15.3021357Z =========================================
|
||||
2026-03-24T02:30:15.3021560Z [1/9] Database backup skipped (not required)
|
||||
2026-03-24T02:30:15.3021774Z [2/9] Building latest Docker images from source...
|
||||
2026-03-24T02:30:15.3584663Z Building backend...
|
||||
2026-03-24T02:30:20.5507768Z #0 building with "default" instance using docker driver
|
||||
2026-03-24T02:30:20.5508478Z #1 [internal] load build definition from Dockerfile
|
||||
2026-03-24T02:30:20.8593654Z #1 transferring dockerfile:
|
||||
2026-03-24T02:30:21.0294305Z #1 transferring dockerfile: 3.28kB 0.0s done
|
||||
2026-03-24T02:30:21.3835884Z #1 DONE 1.0s
|
||||
2026-03-24T02:30:21.6306770Z #2 [internal] load metadata for docker.io/library/node:***-alpine
|
||||
2026-03-24T02:30:23.7307078Z #2 DONE 2.2s
|
||||
2026-03-24T02:30:23.8491657Z #3 [internal] load .dockerignore
|
||||
2026-03-24T02:30:23.8492388Z #3 transferring context:
|
||||
2026-03-24T02:30:23.9698747Z #3 transferring context: 1.09kB 0.0s done
|
||||
2026-03-24T02:30:23.9699398Z #3 DONE 0.2s
|
||||
2026-03-24T02:30:24.1081070Z #4 [deps 1/6] FROM docker.io/library/node:***-alpine@sha256:8094c002d08262dba12645a3b4a15cd6cd627d30bc782f53***9a2ec13ee***a00
|
||||
2026-03-24T02:30:24.1081877Z #4 DONE 0.0s
|
||||
2026-03-24T02:30:24.1082134Z #5 [internal] load build context
|
||||
2026-03-24T02:30:24.6190688Z #5 transferring context: 1.65MB 0.2s done
|
||||
2026-03-24T02:30:24.7992782Z #5 DONE 0.7s
|
||||
2026-03-24T02:30:24.9209058Z #6 [build 10/10] RUN find /app/backend-prod/node_modules -name "*.md" -delete && find /app/backend-prod/node_modules -name "*.txt" -delete && find /app/backend-prod/node_modules -name "LICENSE*" -delete && find /app/backend-prod/node_modules -name "README*" -delete && find /app/backend-prod/node_modules -name "CHANGELOG*" -delete
|
||||
2026-03-24T02:30:24.9209881Z #6 CACHED
|
||||
2026-03-24T02:30:24.9210249Z #7 [production 4/8] RUN addgroup -g 1001 -S nestjs && adduser -S nestjs -u 1001
|
||||
2026-03-24T02:30:24.9210507Z #7 CACHED
|
||||
2026-03-24T02:30:24.9210719Z #8 [production 3/8] WORKDIR /app
|
||||
2026-03-24T02:30:24.9210954Z #8 CACHED
|
||||
2026-03-24T02:30:24.9211239Z #9 [build 6/10] COPY --from=deps /app/backend/node_modules ./backend/node_modules
|
||||
2026-03-24T02:30:24.9211494Z #9 CACHED
|
||||
2026-03-24T02:30:24.9211718Z #10 [deps 6/6] RUN pnpm install --frozen-lockfile --filter backend...
|
||||
2026-03-24T02:30:24.9211951Z #10 CACHED
|
||||
2026-03-24T02:30:24.9212176Z #11 [deps 2/6] RUN corepack enable && corepack prepare pnpm@10.32.1 --activate
|
||||
2026-03-24T02:30:24.9212408Z #11 CACHED
|
||||
2026-03-24T02:30:24.9212641Z #12 [build 8/10] RUN cd backend && NODE_OPTIONS="--max-old-space-size=4096" pnpm run build
|
||||
2026-03-24T02:30:24.9212890Z #12 CACHED
|
||||
2026-03-24T02:30:24.9213118Z #13 [production 7/8] COPY --from=build --chown=nestjs:nestjs /app/backend-prod/node_modules ./node_modules
|
||||
2026-03-24T02:30:24.9213360Z #13 CACHED
|
||||
2026-03-24T02:30:24.9213569Z #14 [production 6/8] COPY --from=build --chown=nestjs:nestjs /app/backend-prod/package.json ./
|
||||
2026-03-24T02:30:24.9215301Z #14 CACHED
|
||||
2026-03-24T02:30:24.9215634Z #15 [build 7/10] COPY backend/ ./backend/
|
||||
2026-03-24T02:30:24.9215948Z #15 CACHED
|
||||
2026-03-24T02:30:24.9216165Z #16 [deps 4/6] COPY package.json pnpm-lock.yaml pnpm-workspace.yaml ./
|
||||
2026-03-24T02:30:24.9216410Z #16 CACHED
|
||||
2026-03-24T02:30:24.9216643Z #17 [production 2/8] RUN apk add --no-cache curl
|
||||
2026-03-24T02:30:24.9216918Z #17 CACHED
|
||||
2026-03-24T02:30:24.9217150Z #18 [build 9/10] RUN PNPM_IGNORE_SCRIPTS=none pnpm --filter backend deploy --prod --shamefully-hoist --legacy --no-optional /app/backend-prod
|
||||
2026-03-24T02:30:24.9217420Z #18 CACHED
|
||||
2026-03-24T02:30:24.9217640Z #19 [build 5/10] COPY --from=deps /app/node_modules ./node_modules
|
||||
2026-03-24T02:30:24.9217905Z #19 CACHED
|
||||
2026-03-24T02:30:24.9218163Z #20 [production 5/8] COPY --from=build --chown=nestjs:nestjs /app/backend/dist ./dist
|
||||
2026-03-24T02:30:24.9218398Z #20 CACHED
|
||||
2026-03-24T02:30:24.9218599Z #21 [deps 3/6] WORKDIR /app
|
||||
2026-03-24T02:30:24.9218805Z #21 CACHED
|
||||
2026-03-24T02:30:24.9219005Z #*** [deps 5/6] COPY backend/package.json ./backend/
|
||||
2026-03-24T02:30:24.9219258Z #*** CACHED
|
||||
2026-03-24T02:30:24.9219508Z #23 [production 8/8] RUN mkdir -p /app/uploads/temp /app/uploads/permanent && chown -R nestjs:nestjs /app/uploads
|
||||
2026-03-24T02:30:24.9219758Z #23 CACHED
|
||||
2026-03-24T02:30:24.9219965Z #24 exporting to image
|
||||
2026-03-24T02:30:24.9220252Z #24 exporting layers done
|
||||
2026-03-24T02:30:25.0255383Z #24 writing image sha256:adf35841baf536912418f54f86d91ab72bcdb1bcf90c46e35c1ffe33df34c125 0.1s done
|
||||
2026-03-24T02:30:25.0256137Z #24 naming to docker.io/library/lcbp3-backend:latest 0.0s done
|
||||
2026-03-24T02:30:25.2243124Z #24 DONE 0.2s
|
||||
2026-03-24T02:30:26.3902278Z Building frontend with API URL: https://backend.np-dms.work/api, AUTH_URL: https://lcbp3.np-dms.work...
|
||||
2026-03-24T02:30:27.0081714Z #0 building with "default" instance using docker driver
|
||||
2026-03-24T02:30:27.0082491Z #1 [internal] load build definition from Dockerfile
|
||||
2026-03-24T02:30:27.0082730Z #1 transferring dockerfile: 4.09kB done
|
||||
2026-03-24T02:30:27.0082943Z #1 DONE 0.2s
|
||||
2026-03-24T02:30:27.1973859Z #2 [internal] load metadata for docker.io/library/node:***-alpine
|
||||
2026-03-24T02:30:27.8111236Z #2 DONE 0.8s
|
||||
2026-03-24T02:30:28.0188401Z #3 [internal] load .dockerignore
|
||||
2026-03-24T02:30:28.0189098Z #3 transferring context: 1.09kB done
|
||||
2026-03-24T02:30:28.0212935Z #3 DONE 0.2s
|
||||
2026-03-24T02:30:28.1387449Z #4 [deps 1/6] FROM docker.io/library/node:***-alpine@sha256:8094c002d08262dba12645a3b4a15cd6cd627d30bc782f53***9a2ec13ee***a00
|
||||
2026-03-24T02:30:28.1388270Z #4 DONE 0.0s
|
||||
2026-03-24T02:30:28.1388598Z #5 [internal] load build context
|
||||
2026-03-24T02:30:28.8678203Z #5 transferring context: 1.10MB 0.6s done
|
||||
2026-03-24T02:30:28.9431594Z #5 DONE 0.9s
|
||||
2026-03-24T02:30:29.1846439Z #6 [deps 5/6] COPY frontend/package.json ./frontend/
|
||||
2026-03-24T02:30:29.1847125Z #6 CACHED
|
||||
2026-03-24T02:30:29.1847339Z #7 [build 5/12] COPY --from=deps /w/node_modules ./node_modules
|
||||
2026-03-24T02:30:29.1847577Z #7 CACHED
|
||||
2026-03-24T02:30:29.1847776Z #8 [build 7/12] COPY --from=deps /w/frontend/node_modules ./node_modules
|
||||
2026-03-24T02:30:29.1848037Z #8 CACHED
|
||||
2026-03-24T02:30:29.1848237Z #9 [deps 2/6] RUN corepack enable && corepack prepare pnpm@10.32.1 --activate
|
||||
2026-03-24T02:30:29.1848500Z #9 CACHED
|
||||
2026-03-24T02:30:29.1848759Z #10 [deps 3/6] WORKDIR /w
|
||||
2026-03-24T02:30:29.1849002Z #10 CACHED
|
||||
2026-03-24T02:30:29.1849266Z #11 [build 6/12] WORKDIR /w/frontend
|
||||
2026-03-24T02:30:29.1849474Z #11 CACHED
|
||||
2026-03-24T02:30:29.1849665Z #12 [deps 4/6] COPY package.json pnpm-lock.yaml pnpm-workspace.yaml ./
|
||||
2026-03-24T02:30:29.1849876Z #12 CACHED
|
||||
2026-03-24T02:30:29.1850216Z #13 [deps 6/6] RUN pnpm install --frozen-lockfile --filter lcbp3-frontend...
|
||||
2026-03-24T02:30:29.1850478Z #13 CACHED
|
||||
2026-03-24T02:30:29.1850676Z #14 [build 8/12] COPY frontend/ ./
|
||||
2026-03-24T02:30:29.1851035Z #14 CACHED
|
||||
2026-03-24T02:30:29.1851236Z #15 [build 9/12] RUN mkdir /n && ln -s /n .next && pnpm run build && rm .next && mv /n .next
|
||||
2026-03-24T02:30:35.9557226Z #15 6.921
|
||||
2026-03-24T02:30:35.9557873Z #15 6.921 > lcbp3-frontend@1.8.1 build /w/frontend
|
||||
2026-03-24T02:30:35.9558110Z #15 6.921 > next build
|
||||
2026-03-24T02:30:35.9558389Z #15 6.921
|
||||
2026-03-24T02:30:39.1219014Z #15 10.09 ▲ Next.js 16.2.0 (Turbopack)
|
||||
2026-03-24T02:30:39.2368047Z #15 10.09
|
||||
2026-03-24T02:30:39.2369058Z #15 10.20 Creating an optimized production build ...
|
||||
2026-03-24T02:31:03.3618972Z #15 34.33 ✓ Compiled successfully in 23.4s
|
||||
2026-03-24T02:31:03.5238963Z #15 34.34 Running TypeScript ...
|
||||
2026-03-24T02:31:29.0641655Z #15 60.03 Finished TypeScript in 25.7s ...
|
||||
2026-03-24T02:31:29.2199607Z #15 60.03 Collecting page data using 7 workers ...
|
||||
2026-03-24T02:31:31.1684993Z #15 62.13 Generating static pages using 7 workers (0/39) ...
|
||||
2026-03-24T02:31:31.7549278Z #15 62.72 Generating static pages using 7 workers (9/39)
|
||||
2026-03-24T02:31:31.9010780Z #15 62.87 Generating static pages using 7 workers (19/39)
|
||||
2026-03-24T02:31:32.0238323Z #15 62.99 Generating static pages using 7 workers (29/39)
|
||||
2026-03-24T02:31:32.1535897Z #15 63.12 ✓ Generating static pages using 7 workers (39/39) in 985ms
|
||||
2026-03-24T02:31:32.3733664Z #15 63.15 Finalizing page optimization ...
|
||||
2026-03-24T02:31:32.3734634Z #15 63.18
|
||||
2026-03-24T02:31:32.3735053Z #15 63.19 Route (app)
|
||||
2026-03-24T02:31:32.3735433Z #15 63.19 ┌ ○ /
|
||||
2026-03-24T02:31:32.3735715Z #15 63.19 ├ ○ /_not-found
|
||||
2026-03-24T02:31:32.3735936Z #15 63.19 ├ ƒ /***
|
||||
2026-03-24T02:31:32.3736281Z #15 63.19 ├ ƒ /***/access-control/organizations
|
||||
2026-03-24T02:31:32.3736509Z #15 63.19 ├ ƒ /***/access-control/roles
|
||||
2026-03-24T02:31:32.3736869Z #15 63.19 ├ ƒ /***/access-control/users
|
||||
2026-03-24T02:31:32.3737131Z #15 63.19 ├ ƒ /***/audit-logs
|
||||
2026-03-24T02:31:32.3737478Z #15 63.19 ├ ƒ /***/doc-control/contracts
|
||||
2026-03-24T02:31:32.3737718Z #15 63.19 ├ ƒ /***/doc-control/drawings
|
||||
2026-03-24T02:31:32.3737961Z #15 63.19 ├ ƒ /***/doc-control/drawings/contract/categories
|
||||
2026-03-24T02:31:32.3738270Z #15 63.19 ├ ƒ /***/doc-control/drawings/contract/sub-categories
|
||||
2026-03-24T02:31:32.3738579Z #15 63.19 ├ ƒ /***/doc-control/drawings/contract/volumes
|
||||
2026-03-24T02:31:32.3738895Z #15 63.19 ├ ƒ /***/doc-control/drawings/shop/main-categories
|
||||
2026-03-24T02:31:32.3739140Z #15 63.19 ├ ƒ /***/doc-control/drawings/shop/sub-categories
|
||||
2026-03-24T02:31:32.3739419Z #15 63.19 ├ ƒ /***/doc-control/numbering
|
||||
2026-03-24T02:31:32.3739665Z #15 63.19 ├ ƒ /***/doc-control/numbering/[id]/edit
|
||||
2026-03-24T02:31:32.3739915Z #15 63.19 ├ ƒ /***/doc-control/numbering/new
|
||||
2026-03-24T02:31:32.3740451Z #15 63.19 ├ ƒ /***/doc-control/projects
|
||||
2026-03-24T02:31:32.3740691Z #15 63.19 ├ ƒ /***/doc-control/reference
|
||||
2026-03-24T02:31:32.3741003Z #15 63.19 ├ ƒ /***/doc-control/reference/correspondence-types
|
||||
2026-03-24T02:31:32.3741250Z #15 63.19 ├ ƒ /***/doc-control/reference/disciplines
|
||||
2026-03-24T02:31:32.3741571Z #15 63.19 ├ ƒ /***/doc-control/reference/drawing-categories
|
||||
2026-03-24T02:31:32.3741813Z #15 63.19 ├ ƒ /***/doc-control/reference/rfa-types
|
||||
2026-03-24T02:31:32.3742037Z #15 63.19 ├ ƒ /***/doc-control/reference/tags
|
||||
2026-03-24T02:31:32.3742366Z #15 63.19 ├ ƒ /***/doc-control/workflows
|
||||
2026-03-24T02:31:32.3742608Z #15 63.19 ├ ƒ /***/doc-control/workflows/[id]/edit
|
||||
2026-03-24T02:31:32.3742907Z #15 63.19 ├ ƒ /***/doc-control/workflows/new
|
||||
2026-03-24T02:31:32.3743268Z #15 63.19 ├ ƒ /***/migration
|
||||
2026-03-24T02:31:32.3743544Z #15 63.19 ├ ƒ /***/migration/errors
|
||||
2026-03-24T02:31:32.3743781Z #15 63.19 ├ ƒ /***/migration/review/[id]
|
||||
2026-03-24T02:31:32.3744005Z #15 63.19 ├ ƒ /***/monitoring/audit-logs
|
||||
2026-03-24T02:31:32.3744320Z #15 63.19 ├ ƒ /***/monitoring/sessions
|
||||
2026-03-24T02:31:32.3744565Z #15 63.19 ├ ƒ /***/monitoring/system-logs/numbering
|
||||
2026-03-24T02:31:32.3744849Z #15 63.19 ├ ƒ /***/numbering
|
||||
2026-03-24T02:31:32.3745064Z #15 63.19 ├ ƒ /***/numbering/[id]/edit
|
||||
2026-03-24T02:31:32.3745354Z #15 63.19 ├ ƒ /***/numbering/new
|
||||
2026-03-24T02:31:32.3745582Z #15 63.19 ├ ƒ /***/organizations
|
||||
2026-03-24T02:31:32.3745792Z #15 63.19 ├ ƒ /***/settings
|
||||
2026-03-24T02:31:32.3746085Z #15 63.19 ├ ƒ /***/users
|
||||
2026-03-24T02:31:32.3746297Z #15 63.19 ├ ƒ /***/workflows
|
||||
2026-03-24T02:31:32.3746586Z #15 63.19 ├ ƒ /***/workflows/[id]/edit
|
||||
2026-03-24T02:31:32.3746811Z #15 63.19 ├ ƒ /***/workflows/new
|
||||
2026-03-24T02:31:32.3747072Z #15 63.19 ├ ƒ /api/auth/[...nextauth]
|
||||
2026-03-24T02:31:32.3747297Z #15 63.19 ├ ƒ /circulation
|
||||
2026-03-24T02:31:32.3747516Z #15 63.19 ├ ƒ /circulation/[uuid]
|
||||
2026-03-24T02:31:32.3747812Z #15 63.19 ├ ƒ /circulation/new
|
||||
2026-03-24T02:31:32.3748015Z #15 63.19 ├ ƒ /correspondences
|
||||
2026-03-24T02:31:32.3748333Z #15 63.19 ├ ƒ /correspondences/[uuid]
|
||||
2026-03-24T02:31:32.3748558Z #15 63.19 ├ ƒ /correspondences/new
|
||||
2026-03-24T02:31:32.3748834Z #15 63.19 ├ ƒ /dashboard
|
||||
2026-03-24T02:31:32.3749061Z #15 63.19 ├ ƒ /drawings
|
||||
2026-03-24T02:31:32.3749262Z #15 63.19 ├ ƒ /drawings/[uuid]
|
||||
2026-03-24T02:31:32.3749553Z #15 63.19 ├ ƒ /drawings/upload
|
||||
2026-03-24T02:31:32.3749756Z #15 63.19 ├ ƒ /login
|
||||
2026-03-24T02:31:32.3750169Z #15 63.19 ├ ƒ /profile
|
||||
2026-03-24T02:31:32.3750534Z #15 63.19 ├ ƒ /projects
|
||||
2026-03-24T02:31:32.3750795Z #15 63.19 ├ ƒ /projects/new
|
||||
2026-03-24T02:31:32.3751019Z #15 63.19 ├ ƒ /rfas
|
||||
2026-03-24T02:31:32.3751252Z #15 63.19 ├ ƒ /rfas/[uuid]
|
||||
2026-03-24T02:31:32.3751573Z #15 63.19 ├ ƒ /rfas/new
|
||||
2026-03-24T02:31:32.3751778Z #15 63.19 ├ ƒ /search
|
||||
2026-03-24T02:31:32.3752042Z #15 63.19 ├ ƒ /transmittals
|
||||
2026-03-24T02:31:32.3752262Z #15 63.19 ├ ƒ /transmittals/[uuid]
|
||||
2026-03-24T02:31:32.3752647Z #15 63.19 └ ƒ /transmittals/new
|
||||
2026-03-24T02:31:32.3752865Z #15 63.19
|
||||
2026-03-24T02:31:32.3753178Z #15 63.19
|
||||
2026-03-24T02:31:32.3753442Z #15 63.19 ƒ Proxy (Middleware)
|
||||
2026-03-24T02:31:32.3753647Z #15 63.19
|
||||
2026-03-24T02:31:32.3753960Z #15 63.19 ○ (Static) prerendered as static content
|
||||
2026-03-24T02:31:32.3754182Z #15 63.19 ƒ (Dynamic) server-rendered on demand
|
||||
2026-03-24T02:31:32.3754452Z #15 63.19
|
||||
2026-03-24T02:31:34.2484205Z #15 DONE 65.2s
|
||||
2026-03-24T02:31:34.3997518Z #16 [build 10/12] RUN ls -la /w/frontend/.next/ || (echo "ERROR: Build not found!" && exit 1)
|
||||
2026-03-24T02:31:35.6189085Z #16 1.219 total 284
|
||||
2026-03-24T02:31:35.7696163Z #16 1.219 drwxr-xr-x 8 root root 4096 Mar 24 02:31 .
|
||||
2026-03-24T02:31:35.7697165Z #16 1.219 drwxr-xr-x 1 root root 4096 Mar 24 02:31 ..
|
||||
2026-03-24T02:31:35.7697459Z #16 1.219 -rw-r--r-- 1 root root 21 Mar 24 02:31 BUILD_ID
|
||||
2026-03-24T02:31:35.7697822Z #16 1.219 -rw-r--r-- 1 root root 4620 Mar 24 02:31 app-path-routes-manifest.json
|
||||
2026-03-24T02:31:35.7698225Z #16 1.219 drwxr-xr-x 3 root root 4096 Mar 24 02:30 build
|
||||
2026-03-24T02:31:35.7698512Z #16 1.219 -rw-r--r-- 1 root root 541 Mar 24 02:31 build-manifest.json
|
||||
2026-03-24T02:31:35.7698761Z #16 1.219 drwxr-xr-x 2 root root 4096 Mar 24 02:31 cache
|
||||
2026-03-24T02:31:35.7699099Z #16 1.219 drwxr-xr-x 2 root root 4096 Mar 24 02:31 diagnostics
|
||||
2026-03-24T02:31:35.7699474Z #16 1.219 -rw-r--r-- 1 root root 111 Mar 24 02:31 export-marker.json
|
||||
2026-03-24T02:31:35.7699950Z #16 1.219 -rw-r--r-- 1 root root 299 Mar 24 02:31 fallback-build-manifest.json
|
||||
2026-03-24T02:31:35.7700514Z #16 1.219 -rw-r--r-- 1 root root 1415 Mar 24 02:31 images-manifest.json
|
||||
2026-03-24T02:31:35.7700779Z #16 1.219 -rw-rw-r-- 1 root root 20753 Mar 24 02:31 next-minimal-server.js.nft.json
|
||||
2026-03-24T02:31:35.7701019Z #16 1.219 -rw-rw-r-- 1 root root 119164 Mar 24 02:31 next-server.js.nft.json
|
||||
2026-03-24T02:31:35.7701433Z #16 1.219 -rw-r--r-- 1 root root 20 Mar 24 02:30 package.json
|
||||
2026-03-24T02:31:35.7701681Z #16 1.219 -rw-r--r-- 1 root root 3062 Mar 24 02:31 prerender-manifest.json
|
||||
2026-03-24T02:31:35.7702081Z #16 1.***0 -rw-r--r-- 1 root root 9252 Mar 24 02:31 required-server-files.js
|
||||
2026-03-24T02:31:35.7702388Z #16 1.***0 -rw-r--r-- 1 root root 9***3 Mar 24 02:31 required-server-files.json
|
||||
2026-03-24T02:31:35.7702705Z #16 1.***0 -rw-r--r-- 1 root root 14330 Mar 24 02:31 routes-manifest.json
|
||||
2026-03-24T02:31:35.7703003Z #16 1.***0 drwxr-xr-x 6 root root 4096 Mar 24 02:31 server
|
||||
2026-03-24T02:31:35.7703234Z #16 1.***0 drwxr-xr-x 5 root root 4096 Mar 24 02:31 static
|
||||
2026-03-24T02:31:35.7703597Z #16 1.***0 -rw-r--r-- 1 root root 27185 Mar 24 02:31 trace
|
||||
2026-03-24T02:31:35.7703851Z #16 1.***0 -rw-r--r-- 1 root root 1213 Mar 24 02:31 trace-build
|
||||
2026-03-24T02:31:35.7704179Z #16 1.***0 -rw-r--r-- 1 root root 0 Mar 24 02:30 turbopack
|
||||
2026-03-24T02:31:35.7704412Z #16 1.***0 drwxr-xr-x 2 root root 4096 Mar 24 02:30 types
|
||||
2026-03-24T02:31:37.1281584Z #16 DONE 2.7s
|
||||
2026-03-24T02:31:37.3603129Z #17 [build 11/12] WORKDIR /w
|
||||
2026-03-24T02:31:38.8172646Z #17 DONE 1.6s
|
||||
2026-03-24T02:31:39.0348507Z #18 [build 12/12] RUN pnpm --filter lcbp3-frontend deploy /deploy --prod --legacy
|
||||
2026-03-24T02:31:41.8909247Z #18 3.013 WARN Shared workspace lockfile detected but configuration forces legacy deploy implementation.
|
||||
2026-03-24T02:31:42.2580566Z #18 3.380 Packages are copied from the content-addressable store to the virtual store.
|
||||
2026-03-24T02:31:42.2581539Z #18 3.380 Content-addressable store is at: /root/.local/share/pnpm/store/v10
|
||||
2026-03-24T02:31:42.2581803Z #18 3.380 Virtual store is at: ../deploy/node_modules/.pnpm
|
||||
2026-03-24T02:31:42.8619501Z #18 3.984 Progress: resolved 0, reused 0, downloaded 1, added 0
|
||||
2026-03-24T02:31:43.8642738Z #18 4.986 Progress: resolved 29, reused 0, downloaded 29, added 0
|
||||
2026-03-24T02:31:44.8641602Z #18 5.986 Progress: resolved 46, reused 0, downloaded 46, added 0
|
||||
2026-03-24T02:31:45.8772328Z #18 6.999 Progress: resolved 63, reused 0, downloaded 63, added 0
|
||||
2026-03-24T02:31:46.8776675Z #18 7.999 Progress: resolved 64, reused 0, downloaded 64, added 0
|
||||
2026-03-24T02:31:50.2303216Z #18 11.35 Progress: resolved 64, reused 0, downloaded 65, added 0
|
||||
2026-03-24T02:31:51.2679576Z #18 12.39 Progress: resolved 89, reused 0, downloaded 85, added 0
|
||||
2026-03-24T02:31:52.2828564Z #18 13.40 Progress: resolved 141, reused 0, downloaded 133, added 0
|
||||
2026-03-24T02:31:53.2830632Z #18 14.40 Progress: resolved 213, reused 0, downloaded 204, added 0
|
||||
2026-03-24T02:31:54.2892655Z #18 15.40 Progress: resolved 242, reused 0, downloaded 233, added 0
|
||||
2026-03-24T02:31:55.2838910Z #18 16.41 Progress: resolved 284, reused 0, downloaded 275, added 0
|
||||
2026-03-24T02:31:56.2856398Z #18 17.41 Progress: resolved 403, reused 0, downloaded 375, added 0
|
||||
2026-03-24T02:31:57.3174923Z #18 18.44 Progress: resolved 595, reused 0, downloaded 562, added 0
|
||||
2026-03-24T02:31:58.3169862Z #18 19.44 Progress: resolved 702, reused 0, downloaded 652, added 0
|
||||
2026-03-24T02:31:59.3178127Z #18 20.44 Progress: resolved 708, reused 0, downloaded 657, added 0
|
||||
2026-03-24T02:32:00.3179433Z #18 21.44 Progress: resolved 711, reused 0, downloaded 660, added 0
|
||||
2026-03-24T02:32:01.3738842Z #18 ***.50 Progress: resolved 719, reused 0, downloaded 666, added 0
|
||||
2026-03-24T02:32:02.3740518Z #18 23.50 Progress: resolved 776, reused 0, downloaded 666, added 0
|
||||
2026-03-24T02:32:03.3743284Z #18 24.50 Progress: resolved 782, reused 0, downloaded 681, added 0
|
||||
2026-03-24T02:32:04.3749361Z #18 25.50 Progress: resolved 805, reused 0, downloaded 691, added 0
|
||||
2026-03-24T02:32:05.3759447Z #18 26.50 Progress: resolved 813, reused 0, downloaded 704, added 0
|
||||
2026-03-24T02:32:05.7045917Z #18 26.83 . | +313 +++++++++++++++++++++++++++++++
|
||||
2026-03-24T02:32:06.3758484Z #18 27.50 Progress: resolved 813, reused 0, downloaded 705, added 145
|
||||
2026-03-24T02:32:07.3759395Z #18 28.50 Progress: resolved 813, reused 0, downloaded 705, added 312
|
||||
2026-03-24T02:32:26.7258642Z #18 47.85 Progress: resolved 813, reused 0, downloaded 706, added 312
|
||||
2026-03-24T02:32:26.8774922Z #18 47.85 Progress: resolved 813, reused 0, downloaded 706, added 313, done
|
||||
2026-03-24T02:32:26.9111285Z #18 48.03 .../sharp@0.34.5/node_modules/sharp install$ node install/check.js || npm run build
|
||||
2026-03-24T02:32:27.1009580Z #18 48.*** .../sharp@0.34.5/node_modules/sharp install: Done
|
||||
2026-03-24T02:32:27.2106105Z #18 48.30 WARN Failed to create bin at /deploy/node_modules/.pnpm/tailwindcss-animate@1.0.7_tailwindcss@3.4.3_ts-node@10.9.2_@types+node@25.5.0_typescript@5.9.3__/node_modules/tailwindcss-animate/node_modules/.bin/tailwind. ENOENT: no such file or directory, open '/deploy/node_modules/.pnpm/tailwindcss@3.4.3_ts-node@10.9.2_@types+node@25.5.0_typescript@5.9.3_/node_modules/tailwindcss/lib/cli.js'
|
||||
2026-03-24T02:32:27.2106987Z #18 48.30 WARN Failed to create bin at /deploy/node_modules/.pnpm/tailwindcss-animate@1.0.7_tailwindcss@3.4.3_ts-node@10.9.2_@types+node@25.5.0_typescript@5.9.3__/node_modules/tailwindcss-animate/node_modules/.bin/tailwindcss. ENOENT: no such file or directory, open '/deploy/node_modules/.pnpm/tailwindcss@3.4.3_ts-node@10.9.2_@types+node@25.5.0_typescript@5.9.3_/node_modules/tailwindcss/lib/cli.js'
|
||||
2026-03-24T02:32:27.2107474Z #18 48.30 WARN Failed to create bin at /deploy/node_modules/.pnpm/ts-node@10.9.2_@types+node@25.5.0_typescript@5.9.3/node_modules/ts-node/node_modules/.bin/tsc. ENOENT: no such file or directory, open '/deploy/node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/bin/tsc'
|
||||
2026-03-24T02:32:27.2107810Z #18 48.30 WARN Failed to create bin at /deploy/node_modules/.pnpm/ts-node@10.9.2_@types+node@25.5.0_typescript@5.9.3/node_modules/ts-node/node_modules/.bin/tsserver. ENOENT: no such file or directory, open '/deploy/node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/bin/tsserver'
|
||||
2026-03-24T02:32:27.2108165Z #18 48.33 WARN Failed to create bin at /w/deploy/node_modules/.bin/acorn. ENOENT: no such file or directory, open '/deploy/node_modules/.pnpm/acorn@8.15.0/node_modules/acorn/bin/acorn'
|
||||
2026-03-24T02:32:27.3621892Z #18 48.33 WARN Failed to create bin at /w/deploy/node_modules/.bin/vite. ENOENT: no such file or directory, open '/deploy/node_modules/.pnpm/vite@7.2.7_@types+node@25.5.0_jiti@2.6.1_lightningcss@1.32.0_terser@5.44.1_yaml@2.8.2/node_modules/vite/bin/vite.js'
|
||||
2026-03-24T02:32:27.3622666Z #18 48.33 WARN Failed to create bin at /w/deploy/node_modules/.bin/terser. ENOENT: no such file or directory, open '/deploy/node_modules/.pnpm/terser@5.44.1/node_modules/terser/bin/terser'
|
||||
2026-03-24T02:32:27.3623042Z #18 48.33 WARN Failed to create bin at /w/deploy/node_modules/.bin/jiti. ENOENT: no such file or directory, open '/deploy/node_modules/.pnpm/jiti@2.6.1/node_modules/jiti/lib/jiti-cli.mjs'
|
||||
2026-03-24T02:32:27.8836746Z #18 49.00 . prepare$ husky
|
||||
2026-03-24T02:32:28.1314156Z #18 49.25 . prepare: .git can't be found
|
||||
2026-03-24T02:32:28.2828273Z #18 49.25 . prepare: Done
|
||||
2026-03-24T02:32:31.0629205Z #18 DONE 52.2s
|
||||
2026-03-24T02:32:38.8097181Z #19 [production 2/9] WORKDIR /app
|
||||
2026-03-24T02:32:38.8097904Z #19 CACHED
|
||||
2026-03-24T02:32:38.8098208Z #20 [production 3/9] RUN addgroup -g 1001 -S nextjs && adduser -S nextjs -u 1001
|
||||
2026-03-24T02:32:38.8098548Z #20 CACHED
|
||||
2026-03-24T02:32:38.8100321Z #21 [production 4/9] RUN apk add --no-cache curl
|
||||
2026-03-24T02:32:38.9604341Z #21 CACHED
|
||||
2026-03-24T02:32:38.9605090Z #*** [production 5/9] COPY --from=build --chown=nextjs:nextjs /deploy/node_modules ./node_modules
|
||||
2026-03-24T02:32:54.1674178Z #*** DONE 15.4s
|
||||
2026-03-24T02:32:54.3575218Z #23 [production 6/9] COPY --from=build --chown=nextjs:nextjs /w/frontend/.next ./.next
|
||||
2026-03-24T02:32:57.7532874Z #23 DONE 3.5s
|
||||
2026-03-24T02:32:57.9866489Z #24 [production 7/9] COPY --from=build --chown=nextjs:nextjs /w/frontend/public ./public
|
||||
2026-03-24T02:32:59.5391581Z #24 DONE 1.7s
|
||||
2026-03-24T02:32:59.7202684Z #25 [production 8/9] COPY --from=build --chown=nextjs:nextjs /w/frontend/package.json ./
|
||||
2026-03-24T02:33:01.1172596Z #25 DONE 1.5s
|
||||
2026-03-24T02:33:01.2992380Z #26 [production 9/9] RUN ls -la ./node_modules/next/dist/bin/next && ls -la ./.next/ || (echo "ERROR: Required files not found!" && exit 1)
|
||||
2026-03-24T02:33:02.3949225Z #26 1.246 -rwxr-xr-x 1 nextjs nextjs 16635 Mar 24 02:31 ./node_modules/next/dist/bin/next
|
||||
2026-03-24T02:33:02.5471911Z #26 1.247 total 284
|
||||
2026-03-24T02:33:02.5472711Z #26 1.248 drwxr-xr-x 8 nextjs nextjs 4096 Mar 24 02:31 .
|
||||
2026-03-24T02:33:02.5472986Z #26 1.248 drwxr-xr-x 1 root root 4096 Mar 24 02:32 ..
|
||||
2026-03-24T02:33:02.5473279Z #26 1.248 -rw-r--r-- 1 nextjs nextjs 21 Mar 24 02:31 BUILD_ID
|
||||
2026-03-24T02:33:02.5473572Z #26 1.248 -rw-r--r-- 1 nextjs nextjs 4620 Mar 24 02:31 app-path-routes-manifest.json
|
||||
2026-03-24T02:33:02.5473886Z #26 1.248 drwxr-xr-x 3 nextjs nextjs 4096 Mar 24 02:30 build
|
||||
2026-03-24T02:33:02.5474172Z #26 1.248 -rw-r--r-- 1 nextjs nextjs 541 Mar 24 02:31 build-manifest.json
|
||||
2026-03-24T02:33:02.5474406Z #26 1.248 drwxr-xr-x 2 nextjs nextjs 4096 Mar 24 02:31 cache
|
||||
2026-03-24T02:33:02.5474642Z #26 1.248 drwxr-xr-x 2 nextjs nextjs 4096 Mar 24 02:31 diagnostics
|
||||
2026-03-24T02:33:02.5474884Z #26 1.248 -rw-r--r-- 1 nextjs nextjs 111 Mar 24 02:31 export-marker.json
|
||||
2026-03-24T02:33:02.5475463Z #26 1.248 -rw-r--r-- 1 nextjs nextjs 299 Mar 24 02:31 fallback-build-manifest.json
|
||||
2026-03-24T02:33:02.5475711Z #26 1.248 -rw-r--r-- 1 nextjs nextjs 1415 Mar 24 02:31 images-manifest.json
|
||||
2026-03-24T02:33:02.5475942Z #26 1.248 -rw-rw-r-- 1 nextjs nextjs 20753 Mar 24 02:31 next-minimal-server.js.nft.json
|
||||
2026-03-24T02:33:02.5476170Z #26 1.248 -rw-rw-r-- 1 nextjs nextjs 119164 Mar 24 02:31 next-server.js.nft.json
|
||||
2026-03-24T02:33:02.5476480Z #26 1.248 -rw-r--r-- 1 nextjs nextjs 20 Mar 24 02:30 package.json
|
||||
2026-03-24T02:33:02.5476703Z #26 1.248 -rw-r--r-- 1 nextjs nextjs 3062 Mar 24 02:31 prerender-manifest.json
|
||||
2026-03-24T02:33:02.5476972Z #26 1.248 -rw-r--r-- 1 nextjs nextjs 9252 Mar 24 02:31 required-server-files.js
|
||||
2026-03-24T02:33:02.5477268Z #26 1.248 -rw-r--r-- 1 nextjs nextjs 9***3 Mar 24 02:31 required-server-files.json
|
||||
2026-03-24T02:33:02.5477510Z #26 1.248 -rw-r--r-- 1 nextjs nextjs 14330 Mar 24 02:31 routes-manifest.json
|
||||
2026-03-24T02:33:02.5477754Z #26 1.248 drwxr-xr-x 6 nextjs nextjs 4096 Mar 24 02:31 server
|
||||
2026-03-24T02:33:02.5477972Z #26 1.248 drwxr-xr-x 5 nextjs nextjs 4096 Mar 24 02:31 static
|
||||
2026-03-24T02:33:02.5478237Z #26 1.248 -rw-r--r-- 1 nextjs nextjs 27185 Mar 24 02:31 trace
|
||||
2026-03-24T02:33:02.5478541Z #26 1.248 -rw-r--r-- 1 nextjs nextjs 1213 Mar 24 02:31 trace-build
|
||||
2026-03-24T02:33:02.5478783Z #26 1.248 -rw-r--r-- 1 nextjs nextjs 0 Mar 24 02:30 turbopack
|
||||
2026-03-24T02:33:02.5479095Z #26 1.248 drwxr-xr-x 2 nextjs nextjs 4096 Mar 24 02:30 types
|
||||
2026-03-24T02:33:03.7557917Z #26 DONE 2.6s
|
||||
2026-03-24T02:33:04.0472725Z #27 exporting to image
|
||||
2026-03-24T02:33:04.0473396Z #27 exporting layers
|
||||
2026-03-24T02:33:16.2768655Z #27 exporting layers 12.2s done
|
||||
2026-03-24T02:33:16.5206511Z #27 writing image sha256:b7c1cfc46828cc4c045449a331866fcfe6fc5abfac7bffd399ac4073fdc34732 0.0s done
|
||||
2026-03-24T02:33:16.5207546Z #27 naming to docker.io/library/lcbp3-frontend:latest 0.1s done
|
||||
2026-03-24T02:33:16.5552094Z #27 DONE 12.5s
|
||||
2026-03-24T02:33:17.4427725Z [33m2 warnings found (use docker --debug to expand):
|
||||
2026-03-24T02:33:17.4428501Z [0m - SecretsUsedInArgOrEnv: Do not use ARG or ENV instructions for sensitive data (ARG "AUTH_URL") (line 53)
|
||||
2026-03-24T02:33:17.4428897Z - SecretsUsedInArgOrEnv: Do not use ARG or ENV instructions for sensitive data (ENV "AUTH_URL") (line 54)
|
||||
2026-03-24T02:33:17.4500022Z ✓ Images built successfully
|
||||
2026-03-24T02:33:17.4500664Z ./scripts/deploy.sh: line 69: cd: /share/np-dms/app/green: No such file or directory
|
||||
2026-03-24T02:33:17.4513382Z 2026/03/24 02:33:17 Process exited with status 1
|
||||
2026-03-24T02:33:17.4553572Z ❌ Failure - Main Run entrypoint.sh
|
||||
2026-03-24T02:33:17.4672543Z exitcode '1': failure
|
||||
2026-03-24T02:33:17.4775976Z ❌ Failure - Main �🚀 Trigger Deployment on QNAP
|
||||
2026-03-24T02:33:17.4893385Z exitcode '1': failure
|
||||
2026-03-24T02:33:17.5100817Z expression '${{ secrets.PASSWORD }}' rewritten to 'format('{0}', secrets.PASSWORD)'
|
||||
2026-03-24T02:33:17.5101350Z evaluating expression 'format('{0}', secrets.PASSWORD)'
|
||||
2026-03-24T02:33:17.5101854Z expression 'format('{0}', secrets.PASSWORD)' evaluated to '%!t(string=***)'
|
||||
2026-03-24T02:33:17.5102225Z expression '${{ secrets.PORT }}' rewritten to 'format('{0}', secrets.PORT)'
|
||||
2026-03-24T02:33:17.5102423Z evaluating expression 'format('{0}', secrets.PORT)'
|
||||
2026-03-24T02:33:17.5102739Z expression 'format('{0}', secrets.PORT)' evaluated to '%!t(string=***)'
|
||||
2026-03-24T02:33:17.5103107Z expression '${{ secrets.HOST }}' rewritten to 'format('{0}', secrets.HOST)'
|
||||
2026-03-24T02:33:17.5103298Z evaluating expression 'format('{0}', secrets.HOST)'
|
||||
2026-03-24T02:33:17.5103625Z expression 'format('{0}', secrets.HOST)' evaluated to '%!t(string=***)'
|
||||
2026-03-24T02:33:17.5103948Z expression '${{ secrets.USERNAME }}' rewritten to 'format('{0}', secrets.USERNAME)'
|
||||
2026-03-24T02:33:17.5104152Z evaluating expression 'format('{0}', secrets.USERNAME)'
|
||||
2026-03-24T02:33:17.5104471Z expression 'format('{0}', secrets.USERNAME)' evaluated to '%!t(string=***)'
|
||||
2026-03-24T02:33:17.5208528Z evaluating expression 'always()'
|
||||
2026-03-24T02:33:17.5209403Z expression 'always()' evaluated to 'true'
|
||||
2026-03-24T02:33:17.5209687Z ⭐ Run Post �🚀 Trigger Deployment on QNAP
|
||||
2026-03-24T02:33:17.5210148Z Writing entry to tarball workflow/outputcmd.txt len:0
|
||||
2026-03-24T02:33:17.5210480Z Writing entry to tarball workflow/statecmd.txt len:0
|
||||
2026-03-24T02:33:17.5210725Z Writing entry to tarball workflow/pathcmd.txt len:0
|
||||
2026-03-24T02:33:17.5210962Z Writing entry to tarball workflow/envs.txt len:0
|
||||
2026-03-24T02:33:17.5211204Z Writing entry to tarball workflow/SUMMARY.md len:0
|
||||
2026-03-24T02:33:17.5211472Z Extracting content to '/var/run/act'
|
||||
2026-03-24T02:33:17.5247903Z run post step for '�🚀 Trigger Deployment on QNAP'
|
||||
2026-03-24T02:33:17.5249169Z /var/run/act/actions/58fcaeeced48ce6ec851e046234ca5e37b4e693817c69e144f6e88c9b9f38b47
|
||||
2026-03-24T02:33:17.5249647Z 🐳 docker cp src=/root/.cache/act/58fcaeeced48ce6ec851e046234ca5e37b4e693817c69e144f6e88c9b9f38b47/ dst=/var/run/act/actions/58fcaeeced48ce6ec851e046234ca5e37b4e693817c69e144f6e88c9b9f38b47/
|
||||
2026-03-24T02:33:17.5251497Z Writing tarball /tmp/act2182406799 from /root/.cache/act/58fcaeeced48ce6ec851e046234ca5e37b4e693817c69e144f6e88c9b9f38b47/
|
||||
2026-03-24T02:33:17.5251812Z Stripping prefix:/root/.cache/act/58fcaeeced48ce6ec851e046234ca5e37b4e693817c69e144f6e88c9b9f38b47/ src:/root/.cache/act/58fcaeeced48ce6ec851e046234ca5e37b4e693817c69e144f6e88c9b9f38b47/
|
||||
2026-03-24T02:33:17.5538444Z Extracting content from '/tmp/act2182406799' to '/var/run/act/actions/58fcaeeced48ce6ec851e046234ca5e37b4e693817c69e144f6e88c9b9f38b47/'
|
||||
2026-03-24T02:33:17.6044714Z ✅ Success - Post �🚀 Trigger Deployment on QNAP
|
||||
2026-03-24T02:33:17.6524474Z evaluating expression 'always()'
|
||||
2026-03-24T02:33:17.6525876Z expression 'always()' evaluated to 'true'
|
||||
2026-03-24T02:33:17.6526139Z ⭐ Run Post � Checkout
|
||||
2026-03-24T02:33:17.6526558Z Writing entry to tarball workflow/outputcmd.txt len:0
|
||||
2026-03-24T02:33:17.6526880Z Writing entry to tarball workflow/statecmd.txt len:0
|
||||
2026-03-24T02:33:17.6527161Z Writing entry to tarball workflow/pathcmd.txt len:0
|
||||
2026-03-24T02:33:17.6527396Z Writing entry to tarball workflow/envs.txt len:0
|
||||
2026-03-24T02:33:17.6527606Z Writing entry to tarball workflow/SUMMARY.md len:0
|
||||
2026-03-24T02:33:17.6527917Z Extracting content to '/var/run/act'
|
||||
2026-03-24T02:33:17.6565210Z run post step for '� Checkout'
|
||||
2026-03-24T02:33:17.6566515Z executing remote job container: [node /var/run/act/actions/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab/dist/index.js]
|
||||
2026-03-24T02:33:17.6581551Z 🐳 docker exec cmd=[node /var/run/act/actions/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab/dist/index.js] user= workdir=
|
||||
2026-03-24T02:33:17.6581912Z Exec command '[node /var/run/act/actions/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab/dist/index.js]'
|
||||
2026-03-24T02:33:17.6582815Z Working directory '/workspace/np-dms/lcbp3'
|
||||
2026-03-24T02:33:17.9624841Z [command]/usr/bin/git version
|
||||
2026-03-24T02:33:17.9698253Z git version 2.30.2
|
||||
2026-03-24T02:33:17.9755376Z ***
|
||||
2026-03-24T02:33:17.9789420Z Temporarily overriding HOME='/tmp/8d478e52-9c3e-465b-a3c5-c96b76280fae' before making global git config changes
|
||||
2026-03-24T02:33:17.9790336Z Adding repository directory to the temporary git global config as a safe directory
|
||||
2026-03-24T02:33:17.9801557Z [command]/usr/bin/git config --global --add safe.directory /workspace/np-dms/lcbp3
|
||||
2026-03-24T02:33:17.9877107Z [command]/usr/bin/git config --local --name-only --get-regexp core\.sshCommand
|
||||
2026-03-24T02:33:17.9942663Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'core\.sshCommand' && git config --local --unset-all 'core.sshCommand' || :"
|
||||
2026-03-24T02:33:18.0506656Z [command]/usr/bin/git config --local --name-only --get-regexp http\.https\:\/\/git\.np\-dms\.work\/\.extraheader
|
||||
2026-03-24T02:33:18.0557143Z http.https://git.np-dms.work/.extraheader
|
||||
2026-03-24T02:33:18.0578388Z [command]/usr/bin/git config --local --unset-all http.https://git.np-dms.work/.extraheader
|
||||
2026-03-24T02:33:18.0657353Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'http\.https\:\/\/git\.np\-dms\.work\/\.extraheader' && git config --local --unset-all 'http.https://git.np-dms.work/.extraheader' || :"
|
||||
2026-03-24T02:33:18.1204029Z [command]/usr/bin/git config --local --name-only --get-regexp ^includeIf\.gitdir:
|
||||
2026-03-24T02:33:18.1279165Z [command]/usr/bin/git submodule foreach --recursive git config --local --show-origin --name-only --get-regexp remote.origin.url
|
||||
2026-03-24T02:33:18.1970499Z ✅ Success - Post � Checkout
|
||||
2026-03-24T02:33:18.2086848Z Cleaning up container for job deploy
|
||||
2026-03-24T02:33:19.9252866Z Removed container: 4923f9ac3d6bdb058c0400d6908c2bb8d8eadb4a8f63b245d3cc25eddad2fdd8
|
||||
2026-03-24T02:33:19.9268730Z 🐳 docker volume rm GITEA-ACTIONS-TASK-188_WORKFLOW-CI-CD-Pipeline_JOB-deploy
|
||||
2026-03-24T02:33:20.1590743Z 🐳 docker volume rm GITEA-ACTIONS-TASK-188_WORKFLOW-CI-CD-Pipeline_JOB-deploy-env
|
||||
2026-03-24T02:33:20.4200039Z Cleaning up network for job deploy, and network name is: GITEA-ACTIONS-TASK-188_WORKFLOW-CI-CD-Pipeline_JOB-deploy-deploy-network
|
||||
2026-03-24T02:33:20.8435474Z 🏁 Job failed
|
||||
2026-03-24T02:33:20.8543065Z Job 'deploy' failed
|
||||
@@ -1,594 +0,0 @@
|
||||
2026-05-03T04:44:46.7382734Z asustor-runner(version:v0.4.0) received task 430 of job deploy, be triggered by event: push
|
||||
2026-05-03T04:44:46.7387244Z workflow prepared
|
||||
2026-05-03T04:44:46.7388071Z evaluating expression 'success()'
|
||||
2026-05-03T04:44:46.7389439Z expression 'success()' evaluated to 'true'
|
||||
2026-05-03T04:44:46.7389627Z 'runs-on' key not defined in CI / CD Pipeline/build
|
||||
2026-05-03T04:44:46.7389775Z No steps found
|
||||
2026-05-03T04:44:46.7390908Z evaluating expression 'github.ref == 'refs/heads/main''
|
||||
2026-05-03T04:44:46.7391658Z expression 'github.ref == 'refs/heads/main'' evaluated to 'true'
|
||||
2026-05-03T04:44:46.7391936Z 🚀 Start image=node:18-bullseye
|
||||
2026-05-03T04:44:46.7510390Z 🐳 docker pull image=node:18-bullseye platform= username= forcePull=false
|
||||
2026-05-03T04:44:46.7510845Z 🐳 docker pull node:18-bullseye
|
||||
2026-05-03T04:44:46.7540605Z Image exists? true
|
||||
2026-05-03T04:44:46.7628388Z 🐳 docker create image=node:18-bullseye platform= entrypoint=["/bin/sleep" "10800"] cmd=[] network="bridge"
|
||||
2026-05-03T04:44:58.4195498Z Created container name=GITEA-ACTIONS-TASK-430_WORKFLOW-CI-CD-Pipeline_JOB-deploy id=0ed4375935b9191978d847744ce9278a6dbc8ac2d7f399eaf83af1488b4fd2a8 from image node:18-bullseye (platform: )
|
||||
2026-05-03T04:44:58.4196014Z ENV ==> [RUNNER_TOOL_CACHE=/opt/hostedtoolcache RUNNER_OS=Linux RUNNER_ARCH=X64 RUNNER_TEMP=/tmp LANG=C.UTF-8]
|
||||
2026-05-03T04:44:58.4196229Z 🐳 docker run image=node:18-bullseye platform= entrypoint=["/bin/sleep" "10800"] cmd=[] network="bridge"
|
||||
2026-05-03T04:44:58.4196479Z Starting container: 0ed4375935b9191978d847744ce9278a6dbc8ac2d7f399eaf83af1488b4fd2a8
|
||||
2026-05-03T04:45:00.0697440Z Started container: 0ed4375935b9191978d847744ce9278a6dbc8ac2d7f399eaf83af1488b4fd2a8
|
||||
2026-05-03T04:45:00.2371062Z Writing entry to tarball workflow/event.json len:4709
|
||||
2026-05-03T04:45:00.2371801Z Writing entry to tarball workflow/envs.txt len:0
|
||||
2026-05-03T04:45:00.2373433Z Extracting content to '/var/run/act/'
|
||||
2026-05-03T04:45:00.2659252Z ☁ git clone 'https://github.com/actions/checkout' # ref=v4
|
||||
2026-05-03T04:45:00.2659761Z cloning https://github.com/actions/checkout to /root/.cache/act/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab
|
||||
2026-05-03T04:45:01.0351649Z Non-terminating error while running 'git clone': some refs were not updated
|
||||
2026-05-03T04:45:01.0716751Z evaluating expression ''
|
||||
2026-05-03T04:45:01.0717617Z expression '' evaluated to 'true'
|
||||
2026-05-03T04:45:01.0717918Z ⭐ Run Main Checkout
|
||||
2026-05-03T04:45:01.0718261Z Writing entry to tarball workflow/outputcmd.txt len:0
|
||||
2026-05-03T04:45:01.0718566Z Writing entry to tarball workflow/statecmd.txt len:0
|
||||
2026-05-03T04:45:01.0718837Z Writing entry to tarball workflow/pathcmd.txt len:0
|
||||
2026-05-03T04:45:01.0719065Z Writing entry to tarball workflow/envs.txt len:0
|
||||
2026-05-03T04:45:01.0719258Z Writing entry to tarball workflow/SUMMARY.md len:0
|
||||
2026-05-03T04:45:01.0719467Z Extracting content to '/var/run/act'
|
||||
2026-05-03T04:45:01.0862790Z expression '${{ github.token }}' rewritten to 'format('{0}', github.token)'
|
||||
2026-05-03T04:45:01.0863276Z evaluating expression 'format('{0}', github.token)'
|
||||
2026-05-03T04:45:01.0863875Z expression 'format('{0}', github.token)' evaluated to '%!t(string=***)'
|
||||
2026-05-03T04:45:01.0864736Z expression '${{ github.repository }}' rewritten to 'format('{0}', github.repository)'
|
||||
2026-05-03T04:45:01.0864923Z evaluating expression 'format('{0}', github.repository)'
|
||||
2026-05-03T04:45:01.0865265Z expression 'format('{0}', github.repository)' evaluated to '%!t(string=np-dms/lcbp3)'
|
||||
2026-05-03T04:45:01.0865946Z type=remote-action actionDir=/root/.cache/act/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab actionPath= workdir=/workspace/np-dms/lcbp3 actionCacheDir=/root/.cache/act actionName=c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab containerActionDir=/var/run/act/actions/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab
|
||||
2026-05-03T04:45:01.0866273Z /var/run/act/actions/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab
|
||||
2026-05-03T04:45:01.0867445Z 🐳 docker cp src=/root/.cache/act/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab/ dst=/var/run/act/actions/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab/
|
||||
2026-05-03T04:45:01.0869437Z Writing tarball /tmp/act3085517791 from /root/.cache/act/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab/
|
||||
2026-05-03T04:45:01.0869706Z Stripping prefix:/root/.cache/act/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab/ src:/root/.cache/act/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab/
|
||||
2026-05-03T04:45:01.2707782Z Extracting content from '/tmp/act3085517791' to '/var/run/act/actions/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab/'
|
||||
2026-05-03T04:45:01.5611418Z executing remote job container: [node /var/run/act/actions/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab/dist/index.js]
|
||||
2026-05-03T04:45:01.5612230Z 🐳 docker exec cmd=[node /var/run/act/actions/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab/dist/index.js] user= workdir=
|
||||
2026-05-03T04:45:01.5612492Z Exec command '[node /var/run/act/actions/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab/dist/index.js]'
|
||||
2026-05-03T04:45:01.5613191Z Working directory '/workspace/np-dms/lcbp3'
|
||||
2026-05-03T04:45:01.8679965Z ::add-matcher::/run/act/actions/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab/dist/problem-matcher.json
|
||||
2026-05-03T04:45:01.8680584Z ::add-matcher::/run/act/actions/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab/dist/problem-matcher.json
|
||||
2026-05-03T04:45:01.8680917Z Syncing repository: np-dms/lcbp3
|
||||
2026-05-03T04:45:01.8687963Z ::group::Getting Git version info
|
||||
2026-05-03T04:45:01.8688757Z Working directory is '/workspace/np-dms/lcbp3'
|
||||
2026-05-03T04:45:01.8752081Z [command]/usr/bin/git version
|
||||
2026-05-03T04:45:01.8827324Z git version 2.30.2
|
||||
2026-05-03T04:45:01.8880953Z ::endgroup::
|
||||
2026-05-03T04:45:01.8907165Z Temporarily overriding HOME='/tmp/21514370-74b5-4513-baa4-9885f98fab52' before making global git config changes
|
||||
2026-05-03T04:45:01.8909853Z Adding repository directory to the temporary git global config as a safe directory
|
||||
2026-05-03T04:45:01.8920379Z [command]/usr/bin/git config --global --add safe.directory /workspace/np-dms/lcbp3
|
||||
2026-05-03T04:45:01.9000265Z Deleting the contents of '/workspace/np-dms/lcbp3'
|
||||
2026-05-03T04:45:01.9010692Z ::group::Initializing the repository
|
||||
2026-05-03T04:45:01.9019327Z [command]/usr/bin/git init /workspace/np-dms/lcbp3
|
||||
2026-05-03T04:45:01.9094010Z hint: Using 'master' as the name for the initial branch. This default branch name
|
||||
2026-05-03T04:45:01.9094755Z hint: is subject to change. To configure the initial branch name to use in all
|
||||
2026-05-03T04:45:01.9095035Z hint: of your new repositories, which will suppress this warning, call:
|
||||
2026-05-03T04:45:01.9095276Z hint:
|
||||
2026-05-03T04:45:01.9095547Z hint: git config --global init.defaultBranch <name>
|
||||
2026-05-03T04:45:01.9095740Z hint:
|
||||
2026-05-03T04:45:01.9095916Z hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
|
||||
2026-05-03T04:45:01.9096110Z hint: 'development'. The just-created branch can be renamed via this command:
|
||||
2026-05-03T04:45:01.9096359Z hint:
|
||||
2026-05-03T04:45:01.9096550Z hint: git branch -m <name>
|
||||
2026-05-03T04:45:01.9110931Z Initialized empty Git repository in /workspace/np-dms/lcbp3/.git/
|
||||
2026-05-03T04:45:01.9135236Z [command]/usr/bin/git remote add origin https://git.np-dms.work/np-dms/lcbp3
|
||||
2026-05-03T04:45:01.9203725Z ::endgroup::
|
||||
2026-05-03T04:45:01.9204398Z ::group::Disabling automatic garbage collection
|
||||
2026-05-03T04:45:01.9210105Z [command]/usr/bin/git config --local gc.auto 0
|
||||
2026-05-03T04:45:01.9277545Z ::endgroup::
|
||||
2026-05-03T04:45:01.9280888Z ::group::Setting up auth
|
||||
2026-05-03T04:45:01.9291220Z [command]/usr/bin/git config --local --name-only --get-regexp core\.sshCommand
|
||||
2026-05-03T04:45:01.9359627Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'core\.sshCommand' && git config --local --unset-all 'core.sshCommand' || :"
|
||||
2026-05-03T04:45:01.9869550Z [command]/usr/bin/git config --local --name-only --get-regexp http\.https\:\/\/git\.np\-dms\.work\/\.extraheader
|
||||
2026-05-03T04:45:01.9951690Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'http\.https\:\/\/git\.np\-dms\.work\/\.extraheader' && git config --local --unset-all 'http.https://git.np-dms.work/.extraheader' || :"
|
||||
2026-05-03T04:45:02.0498762Z [command]/usr/bin/git config --local --name-only --get-regexp ^includeIf\.gitdir:
|
||||
2026-05-03T04:45:02.0586449Z [command]/usr/bin/git submodule foreach --recursive git config --local --show-origin --name-only --get-regexp remote.origin.url
|
||||
2026-05-03T04:45:02.1078718Z [command]/usr/bin/git config --local http.https://git.np-dms.work/.extraheader AUTHORIZATION: basic ***
|
||||
2026-05-03T04:45:02.1160503Z ::endgroup::
|
||||
2026-05-03T04:45:02.1161013Z ::group::Fetching the repository
|
||||
2026-05-03T04:45:02.1175801Z [command]/usr/bin/git -c protocol.version=2 fetch --no-tags --prune --no-recurse-submodules --depth=1 origin +c9bd40380949ce38257ffde5830***f7543f9d53c:refs/remotes/origin/main
|
||||
2026-05-03T04:45:05.0020138Z From https://git.np-dms.work/np-dms/lcbp3
|
||||
2026-05-03T04:45:05.0020903Z * [new ref] c9bd40380949ce38257ffde5830***f7543f9d53c -> origin/main
|
||||
2026-05-03T04:45:05.0115178Z ::endgroup::
|
||||
2026-05-03T04:45:05.0115738Z ::group::Determining the checkout info
|
||||
2026-05-03T04:45:05.0116099Z ::endgroup::
|
||||
2026-05-03T04:45:05.0116521Z [command]/usr/bin/git sparse-checkout disable
|
||||
2026-05-03T04:45:05.0205234Z [command]/usr/bin/git config --local --unset-all extensions.worktreeConfig
|
||||
2026-05-03T04:45:05.0264170Z ::group::Checking out the ref
|
||||
2026-05-03T04:45:05.0273203Z [command]/usr/bin/git checkout --progress --force -B main refs/remotes/origin/main
|
||||
2026-05-03T04:45:05.3453926Z Switched to a new branch 'main'
|
||||
2026-05-03T04:45:05.3454573Z Branch 'main' set up to track remote branch 'main' from 'origin'.
|
||||
2026-05-03T04:45:05.3479163Z ::endgroup::
|
||||
2026-05-03T04:45:05.3565373Z [command]/usr/bin/git log -1 --format=%H
|
||||
2026-05-03T04:45:05.3624551Z c9bd40380949ce38257ffde5830***f7543f9d53c
|
||||
2026-05-03T04:45:05.3660219Z ::remove-matcher owner=checkout-git::
|
||||
2026-05-03T04:45:06.8879595Z From https://git.np-dms.work/np-dms/lcbp3
|
||||
2026-05-03T04:45:06.8880998Z * branch main -> FETCH_HEAD
|
||||
2026-05-03T04:45:06.8890620Z d239b583..c9bd4038 main -> origin/main
|
||||
2026-05-03T04:45:06.9426467Z HEAD is now at c9bd4038 690503:1135 Update workflow #03
|
||||
2026-05-03T04:45:06.9466274Z =========================================
|
||||
2026-05-03T04:45:06.9467016Z LCBP3-DMS Deployment v2.0
|
||||
2026-05-03T04:45:06.9467343Z =========================================
|
||||
2026-05-03T04:45:07.0203682Z [1/3] Building Docker images (parallel)...
|
||||
2026-05-03T04:45:08.7471607Z #0 building with "default" instance using docker driver
|
||||
2026-05-03T04:45:08.7472431Z
|
||||
2026-05-03T04:45:08.7472796Z #1 [internal] load build definition from Dockerfile
|
||||
2026-05-03T04:45:08.7656837Z #0 building with "default" instance using docker driver
|
||||
2026-05-03T04:45:08.7657296Z
|
||||
2026-05-03T04:45:08.7657476Z #1 [internal] load build definition from Dockerfile
|
||||
2026-05-03T04:45:08.8524538Z #1 transferring dockerfile:
|
||||
2026-05-03T04:45:09.0079755Z #1 transferring dockerfile: 4.38kB done
|
||||
2026-05-03T04:45:09.2098420Z #1 transferring dockerfile:
|
||||
2026-05-03T04:45:09.3910530Z #1 transferring dockerfile: 3.28kB 0.0s done
|
||||
2026-05-03T04:45:09.6483728Z #1 DONE 1.1s
|
||||
2026-05-03T04:45:09.8145081Z #1 DONE 1.2s
|
||||
2026-05-03T04:45:09.8973535Z
|
||||
2026-05-03T04:45:09.8974102Z #2 [internal] load metadata for docker.io/library/node:***-alpine
|
||||
2026-05-03T04:45:10.0011752Z
|
||||
2026-05-03T04:45:10.0012578Z #2 [internal] load metadata for docker.io/library/node:***-alpine
|
||||
2026-05-03T04:45:11.8226601Z #2 DONE 2.0s
|
||||
2026-05-03T04:45:11.8227549Z #2 DONE 2.1s
|
||||
2026-05-03T04:45:11.9232260Z
|
||||
2026-05-03T04:45:11.9232949Z #3 [internal] load .dockerignore
|
||||
2026-05-03T04:45:11.9233187Z #3 transferring context:
|
||||
2026-05-03T04:45:11.9920549Z
|
||||
2026-05-03T04:45:11.9921274Z #3 [internal] load .dockerignore
|
||||
2026-05-03T04:45:12.0760850Z #3 transferring context:
|
||||
2026-05-03T04:45:12.0776483Z #3 transferring context: 1.09kB done
|
||||
2026-05-03T04:45:12.2462770Z #3 transferring context: 1.09kB 0.0s done
|
||||
2026-05-03T04:45:12.4018336Z #3 DONE 0.6s
|
||||
2026-05-03T04:45:12.5013571Z #3 DONE 0.7s
|
||||
2026-05-03T04:45:12.5591543Z
|
||||
2026-05-03T04:45:12.5592345Z #4 [deps 1/6] FROM docker.io/library/node:***-alpine@sha256:8ea2348b068a9544dae7317b4f3aafcdc032df1647bb7d768a05a5cad1a7683f
|
||||
2026-05-03T04:45:12.5593047Z #4 DONE 0.0s
|
||||
2026-05-03T04:45:12.5593230Z
|
||||
2026-05-03T04:45:12.5593405Z #5 [internal] load build context
|
||||
2026-05-03T04:45:12.6201648Z
|
||||
2026-05-03T04:45:12.6202337Z #4 [deps 1/6] FROM docker.io/library/node:***-alpine@sha256:8ea2348b068a9544dae7317b4f3aafcdc032df1647bb7d768a05a5cad1a7683f
|
||||
2026-05-03T04:45:12.6202722Z #4 DONE 0.0s
|
||||
2026-05-03T04:45:12.6203111Z
|
||||
2026-05-03T04:45:12.6203347Z #5 [internal] load build context
|
||||
2026-05-03T04:45:12.7603807Z #5 transferring context: ***0.98kB 0.1s done
|
||||
2026-05-03T04:45:12.9792774Z #5 DONE 0.4s
|
||||
2026-05-03T04:45:13.1401333Z #5 transferring context: 137.62kB 0.4s done
|
||||
2026-05-03T04:45:13.2420961Z #5 DONE 0.7s
|
||||
2026-05-03T04:45:13.3066806Z
|
||||
2026-05-03T04:45:13.3067796Z #6 [deps 5/6] COPY backend/package.json ./backend/
|
||||
2026-05-03T04:45:13.3068402Z #6 CACHED
|
||||
2026-05-03T04:45:13.3068651Z
|
||||
2026-05-03T04:45:13.3068830Z #7 [deps 6/6] RUN pnpm install --frozen-lockfile --filter backend...
|
||||
2026-05-03T04:45:13.3069264Z #7 CACHED
|
||||
2026-05-03T04:45:13.3069498Z
|
||||
2026-05-03T04:45:13.3069687Z #8 [build 5/10] COPY --from=deps /app/node_modules ./node_modules
|
||||
2026-05-03T04:45:13.3069879Z #8 CACHED
|
||||
2026-05-03T04:45:13.3070180Z
|
||||
2026-05-03T04:45:13.3070392Z #9 [deps 2/6] RUN corepack enable && corepack prepare pnpm@10.32.1 --activate
|
||||
2026-05-03T04:45:13.3070642Z #9 CACHED
|
||||
2026-05-03T04:45:13.3070855Z
|
||||
2026-05-03T04:45:13.3071024Z #10 [deps 3/6] WORKDIR /app
|
||||
2026-05-03T04:45:13.3071244Z #10 CACHED
|
||||
2026-05-03T04:45:13.3071425Z
|
||||
2026-05-03T04:45:13.3071669Z #11 [deps 4/6] COPY package.json pnpm-lock.yaml pnpm-workspace.yaml ./
|
||||
2026-05-03T04:45:13.3071861Z #11 CACHED
|
||||
2026-05-03T04:45:13.3072464Z
|
||||
2026-05-03T04:45:13.3072779Z #12 [build 6/10] COPY --from=deps /app/backend/node_modules ./backend/node_modules
|
||||
2026-05-03T04:45:13.4800837Z #12 CACHED
|
||||
2026-05-03T04:45:13.4801486Z
|
||||
2026-05-03T04:45:13.4801656Z
|
||||
2026-05-03T04:45:13.4801981Z #13 [build 7/10] COPY backend/ ./backend/
|
||||
2026-05-03T04:45:13.4802377Z #6 [deps 2/6] RUN corepack enable && corepack prepare pnpm@10.32.1 --activate
|
||||
2026-05-03T04:45:13.4802633Z #6 CACHED
|
||||
2026-05-03T04:45:13.4802923Z
|
||||
2026-05-03T04:45:13.4803097Z #7 [deps 3/6] WORKDIR /w
|
||||
2026-05-03T04:45:13.4803339Z #7 CACHED
|
||||
2026-05-03T04:45:13.4803509Z
|
||||
2026-05-03T04:45:13.4803754Z #8 [deps 4/6] COPY package.json pnpm-lock.yaml pnpm-workspace.yaml ./
|
||||
2026-05-03T04:45:13.4803951Z #8 CACHED
|
||||
2026-05-03T04:45:13.4804171Z
|
||||
2026-05-03T04:45:13.4804403Z #9 [deps 5/6] COPY frontend/package.json ./frontend/
|
||||
2026-05-03T04:45:17.0829607Z #9 DONE 3.7s
|
||||
2026-05-03T04:45:17.2636869Z
|
||||
2026-05-03T04:45:17.2637569Z #10 [deps 6/6] RUN pnpm install --frozen-lockfile --filter lcbp3-frontend...
|
||||
2026-05-03T04:45:21.8618065Z #13 DONE 8.5s
|
||||
2026-05-03T04:45:22.0199329Z
|
||||
2026-05-03T04:45:22.0200287Z #14 [build 8/10] RUN cd backend && NODE_OPTIONS="--max-old-space-size=4096" pnpm run build
|
||||
2026-05-03T04:45:24.7218485Z #10 7.609 ! Corepack is about to download https://registry.npmjs.org/pnpm/-/pnpm-10.33.0.tgz
|
||||
2026-05-03T04:45:27.1864135Z #14 5.166
|
||||
2026-05-03T04:45:27.1864935Z #14 5.166 > backend@1.8.1 build /app/backend
|
||||
2026-05-03T04:45:27.1866651Z #14 5.166 > nest build
|
||||
2026-05-03T04:45:27.1866905Z #14 5.166
|
||||
2026-05-03T04:45:28.9063541Z #10 11.79 Lockfile is up to date, resolution step is skipped
|
||||
2026-05-03T04:45:29.1053168Z #10 11.99 Progress: resolved 1, reused 0, downloaded 0, added 0
|
||||
2026-05-03T04:45:29.4654642Z #10 12.35 . | +700 ++++++++++++++++++++++++++++++++
|
||||
2026-05-03T04:45:29.8737202Z #10 12.76
|
||||
2026-05-03T04:45:29.8737915Z #10 12.76 ╭───────────────────────────────────────────────╮
|
||||
2026-05-03T04:45:29.8738234Z #10 12.76 │ │
|
||||
2026-05-03T04:45:29.8738778Z #10 12.76 │ Update available! 10.33.0 → 10.33.2. │
|
||||
2026-05-03T04:45:29.8739061Z #10 12.76 │ Changelog: https://pnpm.io/v/10.33.2 │
|
||||
2026-05-03T04:45:29.8739333Z #10 12.76 │ To update, run: corepack use pnpm@10.33.2 │
|
||||
2026-05-03T04:45:29.8739521Z #10 12.76 │ │
|
||||
2026-05-03T04:45:29.8739774Z #10 12.76 ╰───────────────────────────────────────────────╯
|
||||
2026-05-03T04:45:29.8740028Z #10 12.76
|
||||
2026-05-03T04:45:30.1167209Z #10 13.00 Progress: resolved 700, reused 0, downloaded 9, added 9
|
||||
2026-05-03T04:45:31.1187814Z #10 14.00 Progress: resolved 700, reused 0, downloaded 48, added 48
|
||||
2026-05-03T04:45:32.1173307Z #10 15.00 Progress: resolved 700, reused 0, downloaded 98, added 84
|
||||
2026-05-03T04:45:33.1179372Z #10 16.00 Progress: resolved 700, reused 0, downloaded 126, added 100
|
||||
2026-05-03T04:45:34.1183949Z #10 17.01 Progress: resolved 700, reused 0, downloaded 162, added 107
|
||||
2026-05-03T04:45:35.1215143Z #10 18.01 Progress: resolved 700, reused 0, downloaded 174, added 113
|
||||
2026-05-03T04:45:36.1236241Z #10 19.01 Progress: resolved 700, reused 0, downloaded 192, added 128
|
||||
2026-05-03T04:45:37.1244999Z #10 20.01 Progress: resolved 700, reused 0, downloaded 204, added 134
|
||||
2026-05-03T04:45:38.1247177Z #10 21.01 Progress: resolved 700, reused 0, downloaded ***7, added 142
|
||||
2026-05-03T04:45:39.1248486Z #10 ***.01 Progress: resolved 700, reused 0, downloaded 236, added 142
|
||||
2026-05-03T04:45:47.6843225Z #10 30.57 Progress: resolved 700, reused 0, downloaded 236, added 143
|
||||
2026-05-03T04:45:48.6845348Z #10 31.57 Progress: resolved 700, reused 0, downloaded 250, added 146
|
||||
2026-05-03T04:45:49.6844449Z #10 32.57 Progress: resolved 700, reused 0, downloaded 286, added 180
|
||||
2026-05-03T04:45:50.6852328Z #10 33.57 Progress: resolved 700, reused 0, downloaded 293, added 184
|
||||
2026-05-03T04:45:51.6853233Z #10 34.57 Progress: resolved 700, reused 0, downloaded 339, added 209
|
||||
2026-05-03T04:45:52.6858384Z #10 35.57 Progress: resolved 700, reused 0, downloaded 367, added 291
|
||||
2026-05-03T04:45:53.6888762Z #10 36.58 Progress: resolved 700, reused 0, downloaded 401, added 305
|
||||
2026-05-03T04:45:54.6885833Z #10 37.58 Progress: resolved 700, reused 0, downloaded 430, added 345
|
||||
2026-05-03T04:45:55.6892594Z #10 38.58 Progress: resolved 700, reused 0, downloaded 456, added 361
|
||||
2026-05-03T04:45:56.6895050Z #10 39.58 Progress: resolved 700, reused 0, downloaded 529, added 394
|
||||
2026-05-03T04:45:57.7007843Z #10 40.58 Progress: resolved 700, reused 0, downloaded 573, added 479
|
||||
2026-05-03T04:45:58.6966963Z #10 41.58 Progress: resolved 700, reused 0, downloaded 670, added 662
|
||||
2026-05-03T04:45:59.6966581Z #10 42.58 Progress: resolved 700, reused 0, downloaded 696, added 696
|
||||
2026-05-03T04:46:00.6985536Z #10 43.58 Progress: resolved 700, reused 0, downloaded 697, added 697
|
||||
2026-05-03T04:46:04.0579814Z #10 46.94 Progress: resolved 700, reused 0, downloaded 698, added 697
|
||||
2026-05-03T04:46:05.0575619Z #10 47.94 Progress: resolved 700, reused 0, downloaded 698, added 698
|
||||
2026-05-03T04:46:06.0583250Z #10 48.94 Progress: resolved 700, reused 0, downloaded 699, added 699
|
||||
2026-05-03T04:46:14.7171942Z #10 57.60 Progress: resolved 700, reused 0, downloaded 700, added 699
|
||||
2026-05-03T04:46:15.1956275Z #10 58.08 Progress: resolved 700, reused 0, downloaded 700, added 700, done
|
||||
2026-05-03T04:46:15.8236450Z #10 58.71 .../sharp@0.34.5/node_modules/sharp install$ node install/check.js || npm run build
|
||||
2026-05-03T04:46:16.1087494Z #10 59.00 .../sharp@0.34.5/node_modules/sharp install: Done
|
||||
2026-05-03T04:46:17.0957205Z #10 59.98 . prepare$ husky
|
||||
2026-05-03T04:46:17.2109044Z #10 60.10 . prepare: .git can't be found
|
||||
2026-05-03T04:46:17.3626214Z #10 60.10 . prepare: Done
|
||||
2026-05-03T04:46:17.4469538Z #10 60.33 Done in 49.7s using pnpm v10.33.0
|
||||
2026-05-03T04:46:23.3125420Z #10 DONE 66.2s
|
||||
2026-05-03T04:46:37.8831912Z #14 75.86 [96msrc/modules/workflow-engine/guards/workflow-transition.guard.ts[0m:[93m79[0m:[93m***[0m - [91merror[0m[90m TS2352: [0mConversion of type 'Record<string, unknown>' to type 'CompiledWorkflow' may be a mistake because neither type sufficiently overlaps with the other. If this was intentional, convert the expression to 'unknown' first.
|
||||
2026-05-03T04:46:37.8832883Z #14 75.86 Type 'Record<string, unknown>' is missing the following properties from type 'CompiledWorkflow': workflow, version, initialState, states
|
||||
2026-05-03T04:46:37.8833500Z #14 75.86
|
||||
2026-05-03T04:46:37.8833761Z #14 75.86 [7m79[0m const compiled = instance.definition?.compiled as
|
||||
2026-05-03T04:46:37.8833968Z #14 75.86 [7m [0m [91m ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~[0m
|
||||
2026-05-03T04:46:37.8834258Z #14 75.86 [7m80[0m | CompiledWorkflow
|
||||
2026-05-03T04:46:37.8834467Z #14 75.86 [7m [0m [91m~~~~~~~~~~~~~~~~~~~~~~~~[0m
|
||||
2026-05-03T04:46:37.8834748Z #14 75.86 [7m81[0m | undefined;
|
||||
2026-05-03T04:46:37.8834934Z #14 75.86 [7m [0m [91m~~~~~~~~~~~~~~~~~[0m
|
||||
2026-05-03T04:46:37.8835220Z #14 75.86
|
||||
2026-05-03T04:46:37.9878815Z #14 75.86 Found 1 error(s).
|
||||
2026-05-03T04:46:37.9879635Z #14 75.86
|
||||
2026-05-03T04:46:37.9880465Z #14 75.97 ELIFECYCLE Command failed with exit code 1.
|
||||
2026-05-03T04:46:38.8624705Z
|
||||
2026-05-03T04:46:38.8625641Z #11 [build 5/13] COPY --from=deps /w/node_modules ./node_modules
|
||||
2026-05-03T04:46:39.9869090Z #14 ERROR: process "/bin/sh -c cd backend && NODE_OPTIONS=\"--max-old-space-size=4096\" pnpm run build" did not complete successfully: exit code: 1
|
||||
2026-05-03T04:46:41.2988375Z ------
|
||||
2026-05-03T04:46:41.2989100Z > [build 8/10] RUN cd backend && NODE_OPTIONS="--max-old-space-size=4096" pnpm run build:
|
||||
2026-05-03T04:46:41.2989897Z 75.86 [7m79[0m const compiled = instance.definition?.compiled as
|
||||
2026-05-03T04:46:41.2990131Z 75.86 [7m [0m [91m ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~[0m
|
||||
2026-05-03T04:46:41.2990350Z 75.86 [7m80[0m | CompiledWorkflow
|
||||
2026-05-03T04:46:41.2990611Z 75.86 [7m [0m [91m~~~~~~~~~~~~~~~~~~~~~~~~[0m
|
||||
2026-05-03T04:46:41.2990822Z 75.86 [7m81[0m | undefined;
|
||||
2026-05-03T04:46:41.2991003Z 75.86 [7m [0m [91m~~~~~~~~~~~~~~~~~[0m
|
||||
2026-05-03T04:46:41.2991314Z 75.86
|
||||
2026-05-03T04:46:41.2991579Z 75.86 Found 1 error(s).
|
||||
2026-05-03T04:46:41.2991766Z 75.86
|
||||
2026-05-03T04:46:41.2991940Z 75.97 ELIFECYCLE Command failed with exit code 1.
|
||||
2026-05-03T04:46:41.2992344Z ------
|
||||
2026-05-03T04:46:41.2992536Z Dockerfile:47
|
||||
2026-05-03T04:46:41.2992711Z --------------------
|
||||
2026-05-03T04:46:41.2992916Z 46 | # Build NestJS → backend/dist (with optimizations)
|
||||
2026-05-03T04:46:41.2993191Z 47 | >>> RUN cd backend && \
|
||||
2026-05-03T04:46:41.2993385Z 48 | >>> NODE_OPTIONS="--max-old-space-size=4096" \
|
||||
2026-05-03T04:46:41.2993577Z 49 | >>> pnpm run build
|
||||
2026-05-03T04:46:41.2993802Z 50 |
|
||||
2026-05-03T04:46:41.2993986Z --------------------
|
||||
2026-05-03T04:46:41.2994163Z ERROR: failed to solve: process "/bin/sh -c cd backend && NODE_OPTIONS=\"--max-old-space-size=4096\" pnpm run build" did not complete successfully: exit code: 1
|
||||
2026-05-03T04:46:41.3026310Z ✗ Backend build failed!
|
||||
2026-05-03T04:47:07.3539811Z #11 DONE 28.5s
|
||||
2026-05-03T04:47:07.5387421Z
|
||||
2026-05-03T04:47:07.5388179Z #12 [build 6/13] WORKDIR /w/frontend
|
||||
2026-05-03T04:47:08.8356456Z #12 DONE 1.4s
|
||||
2026-05-03T04:47:09.0197249Z
|
||||
2026-05-03T04:47:09.0197996Z #13 [build 7/13] COPY --from=deps /w/frontend/node_modules ./node_modules
|
||||
2026-05-03T04:47:10.4391910Z #13 DONE 1.6s
|
||||
2026-05-03T04:47:10.6264382Z
|
||||
2026-05-03T04:47:10.6265164Z #14 [build 8/13] COPY frontend/ ./
|
||||
2026-05-03T04:47:13.6345918Z #14 DONE 3.2s
|
||||
2026-05-03T04:47:13.8197027Z
|
||||
2026-05-03T04:47:13.8197786Z #15 [build 9/13] RUN ls -la /w/frontend/public/ || (echo "WARNING: public directory not found, creating empty one" && mkdir -p /w/frontend/public)
|
||||
2026-05-03T04:47:15.1525881Z #15 1.483 total 36
|
||||
2026-05-03T04:47:15.3041992Z #15 1.484 drwxrwxrwx 3 root root 4096 Apr 19 06:21 .
|
||||
2026-05-03T04:47:15.3042824Z #15 1.484 drwxr-xr-x 1 root root 4096 Apr 19 14:13 ..
|
||||
2026-05-03T04:47:15.3043038Z #15 1.484 -rw-rw-rw- 1 root root 130 Apr 1 15:50 favicon.ico
|
||||
2026-05-03T04:47:15.3043270Z #15 1.484 drwxrwxrwx 4 root root 4096 Apr 19 06:21 locales
|
||||
2026-05-03T04:47:15.3043557Z #15 1.484 -rw-rw-rw- 1 root root 140 Apr 1 15:50 robots.txt
|
||||
2026-05-03T04:47:16.2456227Z #15 DONE 2.6s
|
||||
2026-05-03T04:47:16.4641300Z
|
||||
2026-05-03T04:47:16.4641997Z #16 [build 10/13] RUN mkdir /n && ln -s /n .next && pnpm run build && rm .next && mv /n .next
|
||||
2026-05-03T04:47:19.1612553Z #16 2.848
|
||||
2026-05-03T04:47:19.1613294Z #16 2.848 > lcbp3-frontend@1.8.1 build /w/frontend
|
||||
2026-05-03T04:47:19.1613747Z #16 2.848 > next build
|
||||
2026-05-03T04:47:19.1614002Z #16 2.848
|
||||
2026-05-03T04:47:20.2077508Z #16 3.894 ▲ Next.js 16.2.4 (Turbopack)
|
||||
2026-05-03T04:47:20.3287939Z #16 3.895
|
||||
2026-05-03T04:47:20.3288831Z #16 4.015 Creating an optimized production build ...
|
||||
2026-05-03T04:47:44.8157376Z #16 28.50 ✓ Compiled successfully in 23.9s
|
||||
2026-05-03T04:47:45.0224558Z #16 28.56 Running TypeScript ...
|
||||
2026-05-03T04:48:09.8511961Z #16 53.54 Finished TypeScript in 25.0s ...
|
||||
2026-05-03T04:48:10.0056238Z #16 53.54 Collecting page data using 7 workers ...
|
||||
2026-05-03T04:48:12.0949643Z #16 55.78 Generating static pages using 7 workers (0/39) ...
|
||||
2026-05-03T04:48:12.6268606Z #16 56.31 Generating static pages using 7 workers (9/39)
|
||||
2026-05-03T04:48:12.7853686Z #16 56.47 Generating static pages using 7 workers (19/39)
|
||||
2026-05-03T04:48:12.9909706Z #16 56.56 Generating static pages using 7 workers (29/39)
|
||||
2026-05-03T04:48:12.9910462Z #16 56.68 ✓ Generating static pages using 7 workers (39/39) in 896ms
|
||||
2026-05-03T04:48:13.1742975Z #16 56.69 Finalizing page optimization ...
|
||||
2026-05-03T04:48:13.1744010Z #16 56.70
|
||||
2026-05-03T04:48:13.1744238Z #16 56.71 Route (app)
|
||||
2026-05-03T04:48:13.1744515Z #16 56.71 ┌ ƒ /
|
||||
2026-05-03T04:48:13.1744762Z #16 56.71 ├ ƒ /_not-found
|
||||
2026-05-03T04:48:13.1745072Z #16 56.71 ├ ƒ /***
|
||||
2026-05-03T04:48:13.1745303Z #16 56.71 ├ ƒ /***/access-control/organizations
|
||||
2026-05-03T04:48:13.1745537Z #16 56.71 ├ ƒ /***/access-control/roles
|
||||
2026-05-03T04:48:13.1745888Z #16 56.71 ├ ƒ /***/access-control/users
|
||||
2026-05-03T04:48:13.1746150Z #16 56.71 ├ ƒ /***/audit-logs
|
||||
2026-05-03T04:48:13.1746337Z #16 56.71 ├ ƒ /***/doc-control/contracts
|
||||
2026-05-03T04:48:13.1746548Z #16 56.71 ├ ƒ /***/doc-control/drawings
|
||||
2026-05-03T04:48:13.1746863Z #16 56.71 ├ ƒ /***/doc-control/drawings/contract/categories
|
||||
2026-05-03T04:48:13.1747145Z #16 56.71 ├ ƒ /***/doc-control/drawings/contract/sub-categories
|
||||
2026-05-03T04:48:13.1747358Z #16 56.71 ├ ƒ /***/doc-control/drawings/contract/volumes
|
||||
2026-05-03T04:48:13.1747615Z #16 56.71 ├ ƒ /***/doc-control/drawings/shop/main-categories
|
||||
2026-05-03T04:48:13.1747880Z #16 56.71 ├ ƒ /***/doc-control/drawings/shop/sub-categories
|
||||
2026-05-03T04:48:13.1748117Z #16 56.71 ├ ƒ /***/doc-control/numbering
|
||||
2026-05-03T04:48:13.1748304Z #16 56.71 ├ ƒ /***/doc-control/numbering/[id]/edit
|
||||
2026-05-03T04:48:13.1748551Z #16 56.71 ├ ƒ /***/doc-control/numbering/new
|
||||
2026-05-03T04:48:13.1748781Z #16 56.71 ├ ƒ /***/doc-control/projects
|
||||
2026-05-03T04:48:13.1749011Z #16 56.71 ├ ƒ /***/doc-control/reference
|
||||
2026-05-03T04:48:13.1749247Z #16 56.71 ├ ƒ /***/doc-control/reference/correspondence-types
|
||||
2026-05-03T04:48:13.1749520Z #16 56.71 ├ ƒ /***/doc-control/reference/disciplines
|
||||
2026-05-03T04:48:13.1749720Z #16 56.71 ├ ƒ /***/doc-control/reference/drawing-categories
|
||||
2026-05-03T04:48:13.1749966Z #16 56.71 ├ ƒ /***/doc-control/reference/rfa-types
|
||||
2026-05-03T04:48:13.1750162Z #16 56.71 ├ ƒ /***/doc-control/reference/tags
|
||||
2026-05-03T04:48:13.1750346Z #16 56.71 ├ ƒ /***/doc-control/workflows
|
||||
2026-05-03T04:48:13.1750618Z #16 56.71 ├ ƒ /***/doc-control/workflows/[id]/edit
|
||||
2026-05-03T04:48:13.1750888Z #16 56.71 ├ ƒ /***/doc-control/workflows/new
|
||||
2026-05-03T04:48:13.1751104Z #16 56.71 ├ ƒ /***/migration
|
||||
2026-05-03T04:48:13.1751332Z #16 56.71 ├ ƒ /***/migration/errors
|
||||
2026-05-03T04:48:13.1751520Z #16 56.71 ├ ƒ /***/migration/review/[id]
|
||||
2026-05-03T04:48:13.1751759Z #16 56.71 ├ ƒ /***/monitoring/audit-logs
|
||||
2026-05-03T04:48:13.1751945Z #16 56.71 ├ ƒ /***/monitoring/sessions
|
||||
2026-05-03T04:48:13.1752279Z #16 56.71 ├ ƒ /***/monitoring/system-logs/numbering
|
||||
2026-05-03T04:48:13.1752667Z #16 56.71 ├ ƒ /***/numbering
|
||||
2026-05-03T04:48:13.1752875Z #16 56.71 ├ ƒ /***/numbering/[id]/edit
|
||||
2026-05-03T04:48:13.1753113Z #16 56.71 ├ ƒ /***/numbering/new
|
||||
2026-05-03T04:48:13.1753352Z #16 56.71 ├ ƒ /***/organizations
|
||||
2026-05-03T04:48:13.1753615Z #16 56.71 ├ ƒ /***/settings
|
||||
2026-05-03T04:48:13.1753792Z #16 56.71 ├ ƒ /***/users
|
||||
2026-05-03T04:48:13.1753971Z #16 56.71 ├ ƒ /***/workflows
|
||||
2026-05-03T04:48:13.1754279Z #16 56.71 ├ ƒ /***/workflows/[id]/edit
|
||||
2026-05-03T04:48:13.1754480Z #16 56.71 ├ ƒ /***/workflows/new
|
||||
2026-05-03T04:48:13.1754657Z #16 56.71 ├ ƒ /api/auth/[...nextauth]
|
||||
2026-05-03T04:48:13.1754834Z #16 56.71 ├ ƒ /circulation
|
||||
2026-05-03T04:48:13.1755167Z #16 56.71 ├ ƒ /circulation/[uuid]
|
||||
2026-05-03T04:48:13.1755363Z #16 56.71 ├ ƒ /circulation/new
|
||||
2026-05-03T04:48:13.1755530Z #16 56.71 ├ ƒ /correspondences
|
||||
2026-05-03T04:48:13.1755785Z #16 56.71 ├ ƒ /correspondences/[uuid]
|
||||
2026-05-03T04:48:13.1756034Z #16 56.71 ├ ƒ /correspondences/[uuid]/edit
|
||||
2026-05-03T04:48:13.1756231Z #16 56.71 ├ ƒ /correspondences/new
|
||||
2026-05-03T04:48:13.1756404Z #16 56.71 ├ ƒ /dashboard
|
||||
2026-05-03T04:48:13.1756643Z #16 56.71 ├ ƒ /drawings
|
||||
2026-05-03T04:48:13.1756859Z #16 56.71 ├ ƒ /drawings/[uuid]
|
||||
2026-05-03T04:48:13.1757031Z #16 56.71 ├ ƒ /drawings/upload
|
||||
2026-05-03T04:48:13.1757270Z #16 56.71 ├ ƒ /login
|
||||
2026-05-03T04:48:13.1757459Z #16 56.71 ├ ƒ /profile
|
||||
2026-05-03T04:48:13.1757685Z #16 56.71 ├ ƒ /projects
|
||||
2026-05-03T04:48:13.1757883Z #16 56.71 ├ ƒ /projects/new
|
||||
2026-05-03T04:48:13.1758124Z #16 56.71 ├ ƒ /rag
|
||||
2026-05-03T04:48:13.1758294Z #16 56.71 ├ ƒ /rfa
|
||||
2026-05-03T04:48:13.1758507Z #16 56.71 ├ ƒ /rfas
|
||||
2026-05-03T04:48:13.1759608Z #16 56.71 ├ ƒ /rfas/[uuid]
|
||||
2026-05-03T04:48:13.1759958Z #16 56.71 ├ ƒ /rfas/[uuid]/edit
|
||||
2026-05-03T04:48:13.1760164Z #16 56.71 ├ ƒ /rfas/new
|
||||
2026-05-03T04:48:13.1760363Z #16 56.71 ├ ƒ /search
|
||||
2026-05-03T04:48:13.1760614Z #16 56.71 ├ ƒ /settings
|
||||
2026-05-03T04:48:13.1760859Z #16 56.71 ├ ƒ /transmittals
|
||||
2026-05-03T04:48:13.1761046Z #16 56.71 ├ ƒ /transmittals/[uuid]
|
||||
2026-05-03T04:48:13.1761301Z #16 56.71 └ ƒ /transmittals/new
|
||||
2026-05-03T04:48:13.1761501Z #16 56.71
|
||||
2026-05-03T04:48:13.1761736Z #16 56.71
|
||||
2026-05-03T04:48:13.1761905Z #16 56.71 ƒ Proxy (Middleware)
|
||||
2026-05-03T04:48:13.1762241Z #16 56.71
|
||||
2026-05-03T04:48:13.1762416Z #16 56.71 ƒ (Dynamic) server-rendered on demand
|
||||
2026-05-03T04:48:13.1762660Z #16 56.71
|
||||
2026-05-03T04:48:14.7670755Z #16 DONE 58.5s
|
||||
2026-05-03T04:48:14.9893677Z
|
||||
2026-05-03T04:48:14.9894431Z #17 [build 11/13] RUN ls -la /w/frontend/.next/ || (echo "ERROR: Build not found!" && exit 1)
|
||||
2026-05-03T04:48:16.7311054Z #17 1.893 total 288
|
||||
2026-05-03T04:48:16.8821637Z #17 1.893 drwxr-xr-x 8 root root 4096 May 3 04:48 .
|
||||
2026-05-03T04:48:16.8822444Z #17 1.893 drwxr-xr-x 1 root root 4096 May 3 04:48 ..
|
||||
2026-05-03T04:48:16.8822973Z #17 1.893 -rw-r--r-- 1 root root 21 May 3 04:48 BUILD_ID
|
||||
2026-05-03T04:48:16.8823206Z #17 1.893 -rw-r--r-- 1 root root 4879 May 3 04:48 app-path-routes-manifest.json
|
||||
2026-05-03T04:48:16.8823557Z #17 1.893 drwxr-xr-x 3 root root 4096 May 3 04:47 build
|
||||
2026-05-03T04:48:16.8823878Z #17 1.893 -rw-r--r-- 1 root root 541 May 3 04:47 build-manifest.json
|
||||
2026-05-03T04:48:16.8824107Z #17 1.893 drwxr-xr-x 2 root root 4096 May 3 04:47 cache
|
||||
2026-05-03T04:48:16.8824423Z #17 1.893 drwxr-xr-x 2 root root 4096 May 3 04:48 diagnostics
|
||||
2026-05-03T04:48:16.8824623Z #17 1.893 -rw-r--r-- 1 root root 111 May 3 04:48 export-marker.json
|
||||
2026-05-03T04:48:16.8824923Z #17 1.893 -rw-r--r-- 1 root root 299 May 3 04:47 fallback-build-manifest.json
|
||||
2026-05-03T04:48:16.8825189Z #17 1.893 -rw-r--r-- 1 root root 1415 May 3 04:48 images-manifest.json
|
||||
2026-05-03T04:48:16.8825392Z #17 1.893 -rw-rw-r-- 1 root root 20753 May 3 04:47 next-minimal-server.js.nft.json
|
||||
2026-05-03T04:48:16.8825665Z #17 1.893 -rw-rw-r-- 1 root root 119164 May 3 04:47 next-server.js.nft.json
|
||||
2026-05-03T04:48:16.8825882Z #17 1.893 -rw-r--r-- 1 root root 20 May 3 04:47 package.json
|
||||
2026-05-03T04:48:16.8826140Z #17 1.893 -rw-r--r-- 1 root root 1831 May 3 04:48 prerender-manifest.json
|
||||
2026-05-03T04:48:16.8826335Z #17 1.893 -rw-r--r-- 1 root root 9252 May 3 04:48 required-server-files.js
|
||||
2026-05-03T04:48:16.8826602Z #17 1.893 -rw-r--r-- 1 root root 9***3 May 3 04:48 required-server-files.json
|
||||
2026-05-03T04:48:16.8826829Z #17 1.893 -rw-r--r-- 1 root root 15182 May 3 04:48 routes-manifest.json
|
||||
2026-05-03T04:48:16.8827088Z #17 1.893 drwxr-xr-x 6 root root 4096 May 3 04:48 server
|
||||
2026-05-03T04:48:16.8827347Z #17 1.893 drwxr-xr-x 5 root root 4096 May 3 04:47 static
|
||||
2026-05-03T04:48:16.8827546Z #17 1.893 -rw-r--r-- 1 root root 28691 May 3 04:48 trace
|
||||
2026-05-03T04:48:16.8827739Z #17 1.893 -rw-r--r-- 1 root root 1205 May 3 04:48 trace-build
|
||||
2026-05-03T04:48:16.8828008Z #17 1.893 -rw-r--r-- 1 root root 0 May 3 04:47 turbopack
|
||||
2026-05-03T04:48:16.8828264Z #17 1.893 drwxr-xr-x 2 root root 4096 May 3 04:47 types
|
||||
2026-05-03T04:48:18.4004913Z #17 DONE 3.6s
|
||||
2026-05-03T04:48:18.6345666Z
|
||||
2026-05-03T04:48:18.6346323Z #18 [build 12/13] WORKDIR /w
|
||||
2026-05-03T04:48:20.0508930Z #18 DONE 1.6s
|
||||
2026-05-03T04:48:20.2514655Z
|
||||
2026-05-03T04:48:20.2515444Z #19 [build 13/13] RUN pnpm --filter lcbp3-frontend deploy /deploy --prod --legacy
|
||||
2026-05-03T04:48:21.5473676Z #19 1.446 ! Corepack is about to download https://registry.npmjs.org/pnpm/-/pnpm-10.33.0.tgz
|
||||
2026-05-03T04:48:24.3787564Z #19 4.278 WARN Shared workspace lockfile detected but configuration forces legacy deploy implementation.
|
||||
2026-05-03T04:48:24.6390646Z #19 4.538 Packages are copied from the content-addressable store to the virtual store.
|
||||
2026-05-03T04:48:24.6391380Z #19 4.538 Content-addressable store is at: /root/.local/share/pnpm/store/v10
|
||||
2026-05-03T04:48:24.6391836Z #19 4.538 Virtual store is at: ../deploy/node_modules/.pnpm
|
||||
2026-05-03T04:48:25.2978895Z #19 5.197 Progress: resolved 0, reused 0, downloaded 1, added 0
|
||||
2026-05-03T04:48:26.2996284Z #19 6.199 Progress: resolved 25, reused 0, downloaded 25, added 0
|
||||
2026-05-03T04:48:27.2998969Z #19 7.199 Progress: resolved 41, reused 0, downloaded 41, added 0
|
||||
2026-05-03T04:48:28.3494845Z #19 8.249 Progress: resolved 59, reused 0, downloaded 59, added 0
|
||||
2026-05-03T04:48:29.3498784Z #19 9.249 Progress: resolved 62, reused 0, downloaded 62, added 0
|
||||
2026-05-03T04:48:30.3497527Z #19 10.25 Progress: resolved 63, reused 0, downloaded 63, added 0
|
||||
2026-05-03T04:48:32.3423530Z #19 12.24 Progress: resolved 63, reused 0, downloaded 64, added 0
|
||||
2026-05-03T04:48:33.3419330Z #19 13.24 Progress: resolved 64, reused 0, downloaded 64, added 0
|
||||
2026-05-03T04:48:34.3425095Z #19 14.24 Progress: resolved 66, reused 0, downloaded 66, added 0
|
||||
2026-05-03T04:48:51.1029729Z #19 31.00 Progress: resolved 66, reused 0, downloaded 67, added 0
|
||||
2026-05-03T04:48:52.1097856Z #19 32.01 Progress: resolved 89, reused 0, downloaded 88, added 0
|
||||
2026-05-03T04:48:53.1115938Z #19 33.01 Progress: resolved 124, reused 0, downloaded 119, added 0
|
||||
2026-05-03T04:48:54.1226759Z #19 34.02 Progress: resolved 163, reused 0, downloaded 155, added 0
|
||||
2026-05-03T04:48:55.1235604Z #19 35.02 Progress: resolved 253, reused 0, downloaded 244, added 0
|
||||
2026-05-03T04:48:56.1484933Z #19 36.05 Progress: resolved 290, reused 0, downloaded 280, added 0
|
||||
2026-05-03T04:48:57.1486778Z #19 37.05 Progress: resolved 295, reused 0, downloaded 285, added 0
|
||||
2026-05-03T04:48:58.1487216Z #19 38.05 Progress: resolved 299, reused 0, downloaded 289, added 0
|
||||
2026-05-03T04:48:59.1862571Z #19 39.08 Progress: resolved 373, reused 0, downloaded 364, added 0
|
||||
2026-05-03T04:49:00.1944477Z #19 40.09 Progress: resolved 443, reused 0, downloaded 403, added 0
|
||||
2026-05-03T04:49:01.1922012Z #19 41.09 Progress: resolved 471, reused 0, downloaded 405, added 0
|
||||
2026-05-03T04:49:02.1998511Z #19 42.10 Progress: resolved 491, reused 0, downloaded 412, added 0
|
||||
2026-05-03T04:49:03.2008199Z #19 43.10 Progress: resolved 494, reused 0, downloaded 412, added 0
|
||||
2026-05-03T04:49:04.2032478Z #19 44.10 Progress: resolved 600, reused 0, downloaded 519, added 0
|
||||
2026-05-03T04:49:05.2044987Z #19 45.10 Progress: resolved 712, reused 0, downloaded 632, added 0
|
||||
2026-05-03T04:49:06.2070681Z #19 46.10 Progress: resolved 739, reused 0, downloaded 650, added 0
|
||||
2026-05-03T04:49:07.2043545Z #19 47.10 Progress: resolved 757, reused 0, downloaded 659, added 0
|
||||
2026-05-03T04:49:08.2074007Z #19 48.10 Progress: resolved 758, reused 0, downloaded 661, added 0
|
||||
2026-05-03T04:49:09.2057690Z #19 49.10 Progress: resolved 759, reused 0, downloaded 661, added 0
|
||||
2026-05-03T04:49:10.2053811Z #19 50.10 Progress: resolved 762, reused 0, downloaded 664, added 0
|
||||
2026-05-03T04:49:11.2073536Z #19 51.11 Progress: resolved 767, reused 0, downloaded 667, added 0
|
||||
2026-05-03T04:49:12.2084318Z #19 52.11 Progress: resolved 771, reused 0, downloaded 673, added 0
|
||||
2026-05-03T04:49:13.2076431Z #19 53.11 Progress: resolved 775, reused 0, downloaded 677, added 0
|
||||
2026-05-03T04:49:15.0580568Z #19 54.96 Progress: resolved 776, reused 0, downloaded 677, added 0
|
||||
2026-05-03T04:49:16.0583089Z #19 55.96 Progress: resolved 781, reused 0, downloaded 681, added 0
|
||||
2026-05-03T04:49:17.0589809Z #19 56.96 Progress: resolved 802, reused 0, downloaded 681, added 0
|
||||
2026-05-03T04:49:18.0591726Z #19 57.96 Progress: resolved 812, reused 0, downloaded 704, added 0
|
||||
2026-05-03T04:49:18.4549958Z #19 58.35 . | +312 +++++++++++++++++++++++++++++++
|
||||
2026-05-03T04:49:19.1143074Z #19 59.01 Progress: resolved 812, reused 0, downloaded 704, added 1
|
||||
2026-05-03T04:49:20.1149346Z #19 60.01 Progress: resolved 812, reused 0, downloaded 704, added 274
|
||||
2026-05-03T04:49:20.5986037Z #19 60.50 Progress: resolved 812, reused 0, downloaded 705, added 312, done
|
||||
2026-05-03T04:49:20.7942199Z #19 60.69 .../sharp@0.34.5/node_modules/sharp install$ node install/check.js || npm run build
|
||||
2026-05-03T04:49:20.9410629Z #19 60.84 .../sharp@0.34.5/node_modules/sharp install: Done
|
||||
2026-05-03T04:49:21.0675828Z #19 60.97 WARN Failed to create bin at /deploy/node_modules/.pnpm/tailwindcss-animate@1.0.7_tailwindcss@3.4.3_ts-node@10.9.2_@types+node@25.5.0_typescript@5.9.3__/node_modules/tailwindcss-animate/node_modules/.bin/tailwind. ENOENT: no such file or directory, open '/deploy/node_modules/.pnpm/tailwindcss@3.4.3_ts-node@10.9.2_@types+node@25.5.0_typescript@5.9.3_/node_modules/tailwindcss/lib/cli.js'
|
||||
2026-05-03T04:49:21.2496971Z #19 60.97 WARN Failed to create bin at /deploy/node_modules/.pnpm/tailwindcss-animate@1.0.7_tailwindcss@3.4.3_ts-node@10.9.2_@types+node@25.5.0_typescript@5.9.3__/node_modules/tailwindcss-animate/node_modules/.bin/tailwindcss. ENOENT: no such file or directory, open '/deploy/node_modules/.pnpm/tailwindcss@3.4.3_ts-node@10.9.2_@types+node@25.5.0_typescript@5.9.3_/node_modules/tailwindcss/lib/cli.js'
|
||||
2026-05-03T04:49:21.2497925Z #19 60.97 WARN Failed to create bin at /deploy/node_modules/.pnpm/ts-node@10.9.2_@types+node@25.5.0_typescript@5.9.3/node_modules/ts-node/node_modules/.bin/tsc. ENOENT: no such file or directory, open '/deploy/node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/bin/tsc'
|
||||
2026-05-03T04:49:21.2498336Z #19 60.97 WARN Failed to create bin at /deploy/node_modules/.pnpm/ts-node@10.9.2_@types+node@25.5.0_typescript@5.9.3/node_modules/ts-node/node_modules/.bin/tsserver. ENOENT: no such file or directory, open '/deploy/node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/bin/tsserver'
|
||||
2026-05-03T04:49:21.2498711Z #19 61.00 WARN Failed to create bin at /w/deploy/node_modules/.bin/acorn. ENOENT: no such file or directory, open '/deploy/node_modules/.pnpm/acorn@8.15.0/node_modules/acorn/bin/acorn'
|
||||
2026-05-03T04:49:21.2499075Z #19 61.00 WARN Failed to create bin at /w/deploy/node_modules/.bin/terser. ENOENT: no such file or directory, open '/deploy/node_modules/.pnpm/terser@5.44.1/node_modules/terser/bin/terser'
|
||||
2026-05-03T04:49:21.2499329Z #19 61.00 WARN Failed to create bin at /w/deploy/node_modules/.bin/jiti. ENOENT: no such file or directory, open '/deploy/node_modules/.pnpm/jiti@2.6.1/node_modules/jiti/lib/jiti-cli.mjs'
|
||||
2026-05-03T04:49:21.5747866Z #19 61.47 . prepare$ husky
|
||||
2026-05-03T04:49:21.6975239Z #19 61.60 . prepare: .git can't be found
|
||||
2026-05-03T04:49:21.8486385Z #19 61.60 . prepare: Done
|
||||
2026-05-03T04:49:26.9209584Z #19 DONE 66.8s
|
||||
2026-05-03T04:49:34.1570039Z
|
||||
2026-05-03T04:49:34.1570762Z #20 [production 2/9] WORKDIR /app
|
||||
2026-05-03T04:49:34.1571298Z #20 CACHED
|
||||
2026-05-03T04:49:34.1571546Z
|
||||
2026-05-03T04:49:34.1571719Z #21 [production 3/9] RUN addgroup -g 1001 -S nextjs && adduser -S nextjs -u 1001
|
||||
2026-05-03T04:49:34.1571991Z #21 CACHED
|
||||
2026-05-03T04:49:34.1572324Z
|
||||
2026-05-03T04:49:34.1572518Z #*** [production 4/9] RUN apk add --no-cache curl
|
||||
2026-05-03T04:49:34.3075209Z #*** CACHED
|
||||
2026-05-03T04:49:34.3075964Z
|
||||
2026-05-03T04:49:34.3076148Z #23 [production 5/9] COPY --from=build --chown=nextjs:nextjs /deploy/node_modules ./node_modules
|
||||
2026-05-03T04:49:51.8984264Z #23 DONE 17.7s
|
||||
2026-05-03T04:49:52.0830933Z
|
||||
2026-05-03T04:49:52.0831840Z #24 [production 6/9] COPY --from=build --chown=nextjs:nextjs /w/frontend/.next ./.next
|
||||
2026-05-03T04:49:55.1269875Z #24 DONE 3.2s
|
||||
2026-05-03T04:49:55.3200060Z
|
||||
2026-05-03T04:49:55.3200832Z #25 [production 7/9] COPY --from=build --chown=nextjs:nextjs /w/frontend/public ./public
|
||||
2026-05-03T04:49:58.1012661Z #25 DONE 2.9s
|
||||
2026-05-03T04:49:58.3096192Z
|
||||
2026-05-03T04:49:58.3096883Z #26 [production 8/9] COPY --from=build --chown=nextjs:nextjs /w/frontend/package.json ./
|
||||
2026-05-03T04:50:00.0809270Z #26 DONE 1.9s
|
||||
2026-05-03T04:50:00.2701673Z
|
||||
2026-05-03T04:50:00.2702738Z #27 [production 9/9] RUN ls -la ./node_modules/next/dist/bin/next && ls -la ./.next/ && ls -la ./public/ || (echo "ERROR: Required files not found!" && exit 1)
|
||||
2026-05-03T04:50:01.2906819Z #27 1.171 -rwxr-xr-x 1 nextjs nextjs 17023 May 3 04:48 ./node_modules/next/dist/bin/next
|
||||
2026-05-03T04:50:01.4436069Z #27 1.172 total 288
|
||||
2026-05-03T04:50:01.4437129Z #27 1.172 drwxr-xr-x 8 nextjs nextjs 4096 May 3 04:48 .
|
||||
2026-05-03T04:50:01.4437465Z #27 1.172 drwxr-xr-x 1 root root 4096 May 3 04:49 ..
|
||||
2026-05-03T04:50:01.4437717Z #27 1.172 -rw-r--r-- 1 nextjs nextjs 21 May 3 04:48 BUILD_ID
|
||||
2026-05-03T04:50:01.4437958Z #27 1.172 -rw-r--r-- 1 nextjs nextjs 4879 May 3 04:48 app-path-routes-manifest.json
|
||||
2026-05-03T04:50:01.4438302Z #27 1.172 drwxr-xr-x 3 nextjs nextjs 4096 May 3 04:47 build
|
||||
2026-05-03T04:50:01.4438547Z #27 1.172 -rw-r--r-- 1 nextjs nextjs 541 May 3 04:47 build-manifest.json
|
||||
2026-05-03T04:50:01.4438751Z #27 1.172 drwxr-xr-x 2 nextjs nextjs 4096 May 3 04:47 cache
|
||||
2026-05-03T04:50:01.4439088Z #27 1.172 drwxr-xr-x 2 nextjs nextjs 4096 May 3 04:48 diagnostics
|
||||
2026-05-03T04:50:01.4439392Z #27 1.172 -rw-r--r-- 1 nextjs nextjs 111 May 3 04:48 export-marker.json
|
||||
2026-05-03T04:50:01.4439641Z #27 1.172 -rw-r--r-- 1 nextjs nextjs 299 May 3 04:47 fallback-build-manifest.json
|
||||
2026-05-03T04:50:01.4439911Z #27 1.172 -rw-r--r-- 1 nextjs nextjs 1415 May 3 04:48 images-manifest.json
|
||||
2026-05-03T04:50:01.4440229Z #27 1.172 -rw-rw-r-- 1 nextjs nextjs 20753 May 3 04:47 next-minimal-server.js.nft.json
|
||||
2026-05-03T04:50:01.4440436Z #27 1.172 -rw-rw-r-- 1 nextjs nextjs 119164 May 3 04:47 next-server.js.nft.json
|
||||
2026-05-03T04:50:01.4440736Z #27 1.172 -rw-r--r-- 1 nextjs nextjs 20 May 3 04:47 package.json
|
||||
2026-05-03T04:50:01.4441039Z #27 1.172 -rw-r--r-- 1 nextjs nextjs 1831 May 3 04:48 prerender-manifest.json
|
||||
2026-05-03T04:50:01.4441353Z #27 1.172 -rw-r--r-- 1 nextjs nextjs 9252 May 3 04:48 required-server-files.js
|
||||
2026-05-03T04:50:01.4441645Z #27 1.172 -rw-r--r-- 1 nextjs nextjs 9***3 May 3 04:48 required-server-files.json
|
||||
2026-05-03T04:50:01.4441866Z #27 1.172 -rw-r--r-- 1 nextjs nextjs 15182 May 3 04:48 routes-manifest.json
|
||||
2026-05-03T04:50:01.4442336Z #27 1.172 drwxr-xr-x 6 nextjs nextjs 4096 May 3 04:48 server
|
||||
2026-05-03T04:50:01.4442619Z #27 1.172 drwxr-xr-x 5 nextjs nextjs 4096 May 3 04:47 static
|
||||
2026-05-03T04:50:01.4442813Z #27 1.172 -rw-r--r-- 1 nextjs nextjs 28691 May 3 04:48 trace
|
||||
2026-05-03T04:50:01.4443129Z #27 1.172 -rw-r--r-- 1 nextjs nextjs 1205 May 3 04:48 trace-build
|
||||
2026-05-03T04:50:01.4443358Z #27 1.172 -rw-r--r-- 1 nextjs nextjs 0 May 3 04:47 turbopack
|
||||
2026-05-03T04:50:01.4443600Z #27 1.172 drwxr-xr-x 2 nextjs nextjs 4096 May 3 04:47 types
|
||||
2026-05-03T04:50:01.4443882Z #27 1.173 total 32
|
||||
2026-05-03T04:50:01.4444171Z #27 1.173 drwxr-xr-x 3 nextjs nextjs 4096 Apr 19 06:21 .
|
||||
2026-05-03T04:50:01.4444395Z #27 1.173 drwxr-xr-x 1 root root 4096 May 3 04:49 ..
|
||||
2026-05-03T04:50:01.4444585Z #27 1.173 -rw-rw-rw- 1 nextjs nextjs 130 Apr 1 15:50 favicon.ico
|
||||
2026-05-03T04:50:01.4444858Z #27 1.173 drwxrwxrwx 4 nextjs nextjs 4096 Apr 19 06:21 locales
|
||||
2026-05-03T04:50:01.4445131Z #27 1.173 -rw-rw-rw- 1 nextjs nextjs 140 Apr 1 15:50 robots.txt
|
||||
2026-05-03T04:50:02.6451210Z #27 DONE 2.5s
|
||||
2026-05-03T04:50:02.8757344Z
|
||||
2026-05-03T04:50:02.8758219Z #28 exporting to image
|
||||
2026-05-03T04:50:02.8758474Z #28 exporting layers
|
||||
2026-05-03T04:50:20.5369330Z #28 exporting layers 17.7s done
|
||||
2026-05-03T04:50:20.6499857Z #28 writing image sha256:7c9873d0b39b37053b09a1247d41f553aedc5f98b087e54654f5b4537feb553f 0.0s done
|
||||
2026-05-03T04:50:20.6500901Z #28 naming to docker.io/library/lcbp3-frontend:latest 0.1s done
|
||||
2026-05-03T04:50:20.9319089Z #28 DONE 18.1s
|
||||
2026-05-03T04:50:21.8764769Z ❌ Failure - Main 🚀 Deploy to QNAP
|
||||
2026-05-03T04:50:21.8898811Z exitcode '1': failure
|
||||
2026-05-03T04:50:21.9225728Z evaluating expression 'always()'
|
||||
2026-05-03T04:50:21.9226600Z expression 'always()' evaluated to 'true'
|
||||
2026-05-03T04:50:21.9226836Z ⭐ Run Post Checkout
|
||||
2026-05-03T04:50:21.9227205Z Writing entry to tarball workflow/outputcmd.txt len:0
|
||||
2026-05-03T04:50:21.9227490Z Writing entry to tarball workflow/statecmd.txt len:0
|
||||
2026-05-03T04:50:21.9227687Z Writing entry to tarball workflow/pathcmd.txt len:0
|
||||
2026-05-03T04:50:21.9227962Z Writing entry to tarball workflow/envs.txt len:0
|
||||
2026-05-03T04:50:21.9228189Z Writing entry to tarball workflow/SUMMARY.md len:0
|
||||
2026-05-03T04:50:21.9228472Z Extracting content to '/var/run/act'
|
||||
2026-05-03T04:50:21.9266390Z run post step for ' Checkout'
|
||||
2026-05-03T04:50:21.9267584Z executing remote job container: [node /var/run/act/actions/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab/dist/index.js]
|
||||
2026-05-03T04:50:21.9267880Z 🐳 docker exec cmd=[node /var/run/act/actions/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab/dist/index.js] user= workdir=
|
||||
2026-05-03T04:50:21.9268118Z Exec command '[node /var/run/act/actions/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab/dist/index.js]'
|
||||
2026-05-03T04:50:21.9268897Z Working directory '/workspace/np-dms/lcbp3'
|
||||
2026-05-03T04:50:22.2188040Z [command]/usr/bin/git version
|
||||
2026-05-03T04:50:22.2262802Z git version 2.30.2
|
||||
2026-05-03T04:50:22.2317801Z ***
|
||||
2026-05-03T04:50:22.2349973Z Temporarily overriding HOME='/tmp/37d7009a-01ae-4364-bdbe-9d59053de412' before making global git config changes
|
||||
2026-05-03T04:50:22.2350900Z Adding repository directory to the temporary git global config as a safe directory
|
||||
2026-05-03T04:50:22.2364118Z [command]/usr/bin/git config --global --add safe.directory /workspace/np-dms/lcbp3
|
||||
2026-05-03T04:50:22.2442036Z [command]/usr/bin/git config --local --name-only --get-regexp core\.sshCommand
|
||||
2026-05-03T04:50:22.2510483Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'core\.sshCommand' && git config --local --unset-all 'core.sshCommand' || :"
|
||||
2026-05-03T04:50:22.3023703Z [command]/usr/bin/git config --local --name-only --get-regexp http\.https\:\/\/git\.np\-dms\.work\/\.extraheader
|
||||
2026-05-03T04:50:22.3105858Z http.https://git.np-dms.work/.extraheader
|
||||
2026-05-03T04:50:22.3107880Z [command]/usr/bin/git config --local --unset-all http.https://git.np-dms.work/.extraheader
|
||||
2026-05-03T04:50:22.3186780Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'http\.https\:\/\/git\.np\-dms\.work\/\.extraheader' && git config --local --unset-all 'http.https://git.np-dms.work/.extraheader' || :"
|
||||
2026-05-03T04:50:22.3703565Z [command]/usr/bin/git config --local --name-only --get-regexp ^includeIf\.gitdir:
|
||||
2026-05-03T04:50:22.3778309Z [command]/usr/bin/git submodule foreach --recursive git config --local --show-origin --name-only --get-regexp remote.origin.url
|
||||
2026-05-03T04:50:22.4464344Z ✅ Success - Post Checkout
|
||||
2026-05-03T04:50:22.4610936Z Cleaning up container for job deploy
|
||||
2026-05-03T04:50:24.5496648Z Removed container: 0ed4375935b9191978d847744ce9278a6dbc8ac2d7f399eaf83af1488b4fd2a8
|
||||
2026-05-03T04:50:24.5554443Z 🐳 docker volume rm GITEA-ACTIONS-TASK-430_WORKFLOW-CI-CD-Pipeline_JOB-deploy
|
||||
2026-05-03T04:50:24.7744309Z 🐳 docker volume rm GITEA-ACTIONS-TASK-430_WORKFLOW-CI-CD-Pipeline_JOB-deploy-env
|
||||
2026-05-03T04:50:24.9978998Z 🏁 Job failed
|
||||
2026-05-03T04:50:25.0091275Z Job 'deploy' failed
|
||||
@@ -0,0 +1,629 @@
|
||||
2026-05-22T10:18:48.4315718Z asustor-runner(version:v0.4.0) received task 500 of job deploy, be triggered by event: push
|
||||
2026-05-22T10:18:48.4320847Z workflow prepared
|
||||
2026-05-22T10:18:48.4321739Z evaluating expression 'success()'
|
||||
2026-05-22T10:18:48.4322689Z expression 'success()' evaluated to 'true'
|
||||
2026-05-22T10:18:48.4322875Z 'runs-on' key not defined in CI / CD Pipeline/build
|
||||
2026-05-22T10:18:48.4323291Z No steps found
|
||||
2026-05-22T10:18:48.4324213Z evaluating expression 'github.ref == 'refs/heads/main''
|
||||
2026-05-22T10:18:48.4324899Z expression 'github.ref == 'refs/heads/main'' evaluated to 'true'
|
||||
2026-05-22T10:18:48.4325190Z 🚀 Start image=node:18-bullseye
|
||||
2026-05-22T10:18:48.4427516Z 🐳 docker pull image=node:18-bullseye platform= username= forcePull=false
|
||||
2026-05-22T10:18:48.4427846Z 🐳 docker pull node:18-bullseye
|
||||
2026-05-22T10:18:48.4448266Z Image exists? true
|
||||
2026-05-22T10:18:48.4514454Z 🐳 docker create image=node:18-bullseye platform= entrypoint=["/bin/sleep" "10800"] cmd=[] network="bridge"
|
||||
2026-05-22T10:19:01.9808283Z Created container name=GITEA-ACTIONS-TASK-500_WORKFLOW-CI-CD-Pipeline_JOB-deploy id=01e4a727333d4c4537456a6cf1c4cb5756fea90f93313931fbf1d1185da90a0a from image node:18-bullseye (platform: )
|
||||
2026-05-22T10:19:01.9808818Z ENV ==> [RUNNER_TOOL_CACHE=/opt/hostedtoolcache RUNNER_OS=Linux RUNNER_ARCH=X64 RUNNER_TEMP=/tmp LANG=C.UTF-8]
|
||||
2026-05-22T10:19:01.9809022Z 🐳 docker run image=node:18-bullseye platform= entrypoint=["/bin/sleep" "10800"] cmd=[] network="bridge"
|
||||
2026-05-22T10:19:01.9809255Z Starting container: 01e4a727333d4c4537456a6cf1c4cb5756fea90f93313931fbf1d1185da90a0a
|
||||
2026-05-22T10:19:03.5852096Z Started container: 01e4a727333d4c4537456a6cf1c4cb5756fea90f93313931fbf1d1185da90a0a
|
||||
2026-05-22T10:19:03.7428626Z Writing entry to tarball workflow/event.json len:15983
|
||||
2026-05-22T10:19:03.7429505Z Writing entry to tarball workflow/envs.txt len:0
|
||||
2026-05-22T10:19:03.7429748Z Extracting content to '/var/run/act/'
|
||||
2026-05-22T10:19:03.7677546Z ☁ git clone 'https://github.com/actions/checkout' # ref=v4
|
||||
2026-05-22T10:19:03.7678088Z cloning https://github.com/actions/checkout to /root/.cache/act/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab
|
||||
2026-05-22T10:19:05.0968215Z Non-terminating error while running 'git clone': some refs were not updated
|
||||
2026-05-22T10:19:05.1337978Z evaluating expression ''
|
||||
2026-05-22T10:19:05.1338984Z expression '' evaluated to 'true'
|
||||
2026-05-22T10:19:05.1339218Z ⭐ Run Main Checkout
|
||||
2026-05-22T10:19:05.1339638Z Writing entry to tarball workflow/outputcmd.txt len:0
|
||||
2026-05-22T10:19:05.1339964Z Writing entry to tarball workflow/statecmd.txt len:0
|
||||
2026-05-22T10:19:05.1340299Z Writing entry to tarball workflow/pathcmd.txt len:0
|
||||
2026-05-22T10:19:05.1340543Z Writing entry to tarball workflow/envs.txt len:0
|
||||
2026-05-22T10:19:05.1340773Z Writing entry to tarball workflow/SUMMARY.md len:0
|
||||
2026-05-22T10:19:05.1341098Z Extracting content to '/var/run/act'
|
||||
2026-05-22T10:19:05.1478810Z expression '${{ github.token }}' rewritten to 'format('{0}', github.token)'
|
||||
2026-05-22T10:19:05.1479336Z evaluating expression 'format('{0}', github.token)'
|
||||
2026-05-22T10:19:05.1480021Z expression 'format('{0}', github.token)' evaluated to '%!t(string=***)'
|
||||
2026-05-22T10:19:05.1481107Z expression '${{ github.repository }}' rewritten to 'format('{0}', github.repository)'
|
||||
2026-05-22T10:19:05.1481292Z evaluating expression 'format('{0}', github.repository)'
|
||||
2026-05-22T10:19:05.1481695Z expression 'format('{0}', github.repository)' evaluated to '%!t(string=np-dms/lcbp3)'
|
||||
2026-05-22T10:19:05.1482003Z type=remote-action actionDir=/root/.cache/act/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab actionPath= workdir=/workspace/np-dms/lcbp3 actionCacheDir=/root/.cache/act actionName=c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab containerActionDir=/var/run/act/actions/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab
|
||||
2026-05-22T10:19:05.1482336Z /var/run/act/actions/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab
|
||||
2026-05-22T10:19:05.1482733Z 🐳 docker cp src=/root/.cache/act/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab/ dst=/var/run/act/actions/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab/
|
||||
2026-05-22T10:19:05.1485097Z Writing tarball /tmp/act2920164473 from /root/.cache/act/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab/
|
||||
2026-05-22T10:19:05.1485370Z Stripping prefix:/root/.cache/act/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab/ src:/root/.cache/act/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab/
|
||||
2026-05-22T10:19:05.3476755Z Extracting content from '/tmp/act2920164473' to '/var/run/act/actions/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab/'
|
||||
2026-05-22T10:19:05.6570052Z executing remote job container: [node /var/run/act/actions/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab/dist/index.js]
|
||||
2026-05-22T10:19:05.6570795Z 🐳 docker exec cmd=[node /var/run/act/actions/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab/dist/index.js] user= workdir=
|
||||
2026-05-22T10:19:05.6571062Z Exec command '[node /var/run/act/actions/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab/dist/index.js]'
|
||||
2026-05-22T10:19:05.6571770Z Working directory '/workspace/np-dms/lcbp3'
|
||||
2026-05-22T10:19:05.9554092Z ::add-matcher::/run/act/actions/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab/dist/problem-matcher.json
|
||||
2026-05-22T10:19:05.9554429Z ::add-matcher::/run/act/actions/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab/dist/problem-matcher.json
|
||||
2026-05-22T10:19:05.9562431Z Syncing repository: np-dms/lcbp3
|
||||
2026-05-22T10:19:05.9573824Z ::group::Getting Git version info
|
||||
2026-05-22T10:19:05.9574213Z Working directory is '/workspace/np-dms/lcbp3'
|
||||
2026-05-22T10:19:05.9641179Z [command]/usr/bin/git version
|
||||
2026-05-22T10:19:05.9715168Z git version 2.30.2
|
||||
2026-05-22T10:19:05.9765082Z ::endgroup::
|
||||
2026-05-22T10:19:05.9792890Z Temporarily overriding HOME='/tmp/faa3f81d-ef7a-4313-ba68-519e4afd0bc1' before making global git config changes
|
||||
2026-05-22T10:19:05.9793661Z Adding repository directory to the temporary git global config as a safe directory
|
||||
2026-05-22T10:19:05.9806815Z [command]/usr/bin/git config --global --add safe.directory /workspace/np-dms/lcbp3
|
||||
2026-05-22T10:19:05.9886442Z Deleting the contents of '/workspace/np-dms/lcbp3'
|
||||
2026-05-22T10:19:05.9891922Z ::group::Initializing the repository
|
||||
2026-05-22T10:19:05.9901572Z [command]/usr/bin/git init /workspace/np-dms/lcbp3
|
||||
2026-05-22T10:19:05.9968811Z hint: Using 'master' as the name for the initial branch. This default branch name
|
||||
2026-05-22T10:19:05.9969549Z hint: is subject to change. To configure the initial branch name to use in all
|
||||
2026-05-22T10:19:05.9969773Z hint: of your new repositories, which will suppress this warning, call:
|
||||
2026-05-22T10:19:05.9970102Z hint:
|
||||
2026-05-22T10:19:05.9970288Z hint: git config --global init.defaultBranch <name>
|
||||
2026-05-22T10:19:05.9970473Z hint:
|
||||
2026-05-22T10:19:05.9970675Z hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
|
||||
2026-05-22T10:19:05.9970970Z hint: 'development'. The just-created branch can be renamed via this command:
|
||||
2026-05-22T10:19:05.9971177Z hint:
|
||||
2026-05-22T10:19:05.9971349Z hint: git branch -m <name>
|
||||
2026-05-22T10:19:05.9979437Z Initialized empty Git repository in /workspace/np-dms/lcbp3/.git/
|
||||
2026-05-22T10:19:06.0000579Z [command]/usr/bin/git remote add origin https://git.np-dms.work/np-dms/lcbp3
|
||||
2026-05-22T10:19:06.0071725Z ::endgroup::
|
||||
2026-05-22T10:19:06.0072281Z ::group::Disabling automatic garbage collection
|
||||
2026-05-22T10:19:06.0079319Z [command]/usr/bin/git config --local gc.auto 0
|
||||
2026-05-22T10:19:06.0141230Z ::endgroup::
|
||||
2026-05-22T10:19:06.0141683Z ::group::Setting up auth
|
||||
2026-05-22T10:19:06.0155782Z [command]/usr/bin/git config --local --name-only --get-regexp core\.sshCommand
|
||||
2026-05-22T10:19:06.0219410Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'core\.sshCommand' && git config --local --unset-all 'core.sshCommand' || :"
|
||||
2026-05-22T10:19:06.0720273Z [command]/usr/bin/git config --local --name-only --get-regexp http\.https\:\/\/git\.np\-dms\.work\/\.extraheader
|
||||
2026-05-22T10:19:06.0783662Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'http\.https\:\/\/git\.np\-dms\.work\/\.extraheader' && git config --local --unset-all 'http.https://git.np-dms.work/.extraheader' || :"
|
||||
2026-05-22T10:19:06.1311160Z [command]/usr/bin/git config --local --name-only --get-regexp ^includeIf\.gitdir:
|
||||
2026-05-22T10:19:06.1382815Z [command]/usr/bin/git submodule foreach --recursive git config --local --show-origin --name-only --get-regexp remote.origin.url
|
||||
2026-05-22T10:19:06.1880932Z [command]/usr/bin/git config --local http.https://git.np-dms.work/.extraheader AUTHORIZATION: basic ***
|
||||
2026-05-22T10:19:06.1975055Z ::endgroup::
|
||||
2026-05-22T10:19:06.1975537Z ::group::Fetching the repository
|
||||
2026-05-22T10:19:06.1990073Z [command]/usr/bin/git -c protocol.version=2 fetch --no-tags --prune --no-recurse-submodules --depth=1 origin +942cda486c3ed3e119553a8521db6653f0fd9203:refs/remotes/origin/main
|
||||
2026-05-22T10:19:08.9700043Z From https://git.np-dms.work/np-dms/lcbp3
|
||||
2026-05-22T10:19:08.9700737Z * [new ref] 942cda486c3ed3e119553a8521db6653f0fd9203 -> origin/main
|
||||
2026-05-22T10:19:08.9745012Z ::endgroup::
|
||||
2026-05-22T10:19:08.9745437Z ::group::Determining the checkout info
|
||||
2026-05-22T10:19:08.9748632Z ::endgroup::
|
||||
2026-05-22T10:19:08.9757160Z [command]/usr/bin/git sparse-checkout disable
|
||||
2026-05-22T10:19:08.9832014Z [command]/usr/bin/git config --local --unset-all extensions.worktreeConfig
|
||||
2026-05-22T10:19:08.9891632Z ::group::Checking out the ref
|
||||
2026-05-22T10:19:08.9900810Z [command]/usr/bin/git checkout --progress --force -B main refs/remotes/origin/main
|
||||
2026-05-22T10:19:09.3640064Z Switched to a new branch 'main'
|
||||
2026-05-22T10:19:09.3640912Z Branch 'main' set up to track remote branch 'main' from 'origin'.
|
||||
2026-05-22T10:19:09.3667049Z ::endgroup::
|
||||
2026-05-22T10:19:09.3740599Z [command]/usr/bin/git log -1 --format=%H
|
||||
2026-05-22T10:19:09.3793626Z 942cda486c3ed3e119553a8521db6653f0fd9203
|
||||
2026-05-22T10:19:09.3822908Z ::remove-matcher owner=checkout-git::
|
||||
2026-05-22T10:19:10.4042405Z From https://git.np-dms.work/np-dms/lcbp3
|
||||
2026-05-22T10:19:10.4043442Z * branch main -> FETCH_HEAD
|
||||
2026-05-22T10:19:10.4048673Z 990d80e1..942cda48 main -> origin/main
|
||||
2026-05-22T10:19:10.4896174Z HEAD is now at 942cda48 feat(migration): merge ADR-028 migration architecture refactor into main
|
||||
2026-05-22T10:19:10.4933958Z =========================================
|
||||
2026-05-22T10:19:10.4934699Z LCBP3-DMS Deployment v2.0
|
||||
2026-05-22T10:19:10.4934901Z =========================================
|
||||
2026-05-22T10:19:10.5438678Z [1/3] Building Docker images (parallel)...
|
||||
2026-05-22T10:19:11.8369913Z #0 building with "default" instance using docker driver
|
||||
2026-05-22T10:19:11.8370631Z
|
||||
2026-05-22T10:19:11.8370857Z #1 [internal] load build definition from Dockerfile
|
||||
2026-05-22T10:19:11.8371109Z #1 transferring dockerfile:
|
||||
2026-05-22T10:19:11.8587796Z #0 building with "default" instance using docker driver
|
||||
2026-05-22T10:19:11.8588541Z
|
||||
2026-05-22T10:19:11.8588755Z #1 [internal] load build definition from Dockerfile
|
||||
2026-05-22T10:19:11.8588957Z #1 transferring dockerfile: 5.15kB done
|
||||
2026-05-22T10:19:11.9671597Z #1 DONE 0.3s
|
||||
2026-05-22T10:19:11.9926008Z #1 transferring dockerfile: 3.28kB done
|
||||
2026-05-22T10:19:12.1201383Z
|
||||
2026-05-22T10:19:12.1202051Z #2 [internal] load metadata for docker.io/library/node:24-alpine
|
||||
2026-05-22T10:19:12.2718788Z #1 DONE 0.6s
|
||||
2026-05-22T10:19:12.4839841Z
|
||||
2026-05-22T10:19:12.4840529Z #2 [internal] load metadata for docker.io/library/node:24-alpine
|
||||
2026-05-22T10:19:14.0802984Z #2 DONE 1.7s
|
||||
2026-05-22T10:19:14.0803800Z #2 DONE 2.0s
|
||||
2026-05-22T10:19:14.2009974Z
|
||||
2026-05-22T10:19:14.2010725Z #3 [internal] load .dockerignore
|
||||
2026-05-22T10:19:14.2010957Z #3 transferring context:
|
||||
2026-05-22T10:19:14.3004915Z
|
||||
2026-05-22T10:19:14.3005599Z #3 [internal] load .dockerignore
|
||||
2026-05-22T10:19:14.3005872Z #3 transferring context: 1.12kB done
|
||||
2026-05-22T10:19:14.3549801Z #3 transferring context: 1.12kB done
|
||||
2026-05-22T10:19:15.4343660Z #3 DONE 1.3s
|
||||
2026-05-22T10:19:15.6357838Z
|
||||
2026-05-22T10:19:15.6358635Z #4 [internal] load build context
|
||||
2026-05-22T10:19:15.6358881Z #4 DONE 0.0s
|
||||
2026-05-22T10:19:15.6359512Z
|
||||
2026-05-22T10:19:15.6359799Z #5 [deps 1/6] FROM docker.io/library/node:24-alpine@sha256:2bdb65ed1dab192432bc31c95f94155ca5ad7fc1392fb7eb7526ab682fa5bf14
|
||||
2026-05-22T10:19:15.6360113Z #5 resolve docker.io/library/node:24-alpine@sha256:2bdb65ed1dab192432bc31c95f94155ca5ad7fc1392fb7eb7526ab682fa5bf14
|
||||
2026-05-22T10:19:15.8377033Z #3 DONE 1.7s
|
||||
2026-05-22T10:19:15.9656694Z
|
||||
2026-05-22T10:19:15.9657446Z #4 [deps 1/6] FROM docker.io/library/node:24-alpine@sha256:2bdb65ed1dab192432bc31c95f94155ca5ad7fc1392fb7eb7526ab682fa5bf14
|
||||
2026-05-22T10:19:15.9657750Z #4 resolve docker.io/library/node:24-alpine@sha256:2bdb65ed1dab192432bc31c95f94155ca5ad7fc1392fb7eb7526ab682fa5bf14
|
||||
2026-05-22T10:19:16.1179243Z #4 ...
|
||||
2026-05-22T10:19:16.1179933Z
|
||||
2026-05-22T10:19:16.1180128Z #5 [internal] load build context
|
||||
2026-05-22T10:19:16.1180315Z #5 DONE 0.0s
|
||||
2026-05-22T10:19:16.2670592Z
|
||||
2026-05-22T10:19:16.2671437Z #4 [deps 1/6] FROM docker.io/library/node:24-alpine@sha256:2bdb65ed1dab192432bc31c95f94155ca5ad7fc1392fb7eb7526ab682fa5bf14
|
||||
2026-05-22T10:19:16.3617728Z #5 resolve docker.io/library/node:24-alpine@sha256:2bdb65ed1dab192432bc31c95f94155ca5ad7fc1392fb7eb7526ab682fa5bf14 0.9s done
|
||||
2026-05-22T10:19:16.3618499Z #4 resolve docker.io/library/node:24-alpine@sha256:2bdb65ed1dab192432bc31c95f94155ca5ad7fc1392fb7eb7526ab682fa5bf14 0.9s done
|
||||
2026-05-22T10:19:16.5150877Z #4 DONE 0.9s
|
||||
2026-05-22T10:19:16.5152014Z
|
||||
2026-05-22T10:19:16.5152210Z #5 [internal] load build context
|
||||
2026-05-22T10:19:16.5786806Z #5 DONE 0.9s
|
||||
2026-05-22T10:19:16.5787687Z
|
||||
2026-05-22T10:19:16.5788060Z #4 [internal] load build context
|
||||
2026-05-22T10:19:17.4412587Z #4 transferring context: 3.00MB 0.9s done
|
||||
2026-05-22T10:19:17.4623884Z #5 transferring context: 3.15MB 0.8s done
|
||||
2026-05-22T10:19:17.7170773Z #4 DONE 1.4s
|
||||
2026-05-22T10:19:17.9688556Z
|
||||
2026-05-22T10:19:17.9689375Z #6 [deps 2/6] RUN corepack enable && corepack prepare pnpm@10.33.0 --activate
|
||||
2026-05-22T10:19:17.9689681Z #6 CACHED
|
||||
2026-05-22T10:19:17.9689851Z
|
||||
2026-05-22T10:19:17.9690016Z #7 [deps 3/6] WORKDIR /w
|
||||
2026-05-22T10:19:18.0104613Z #5 DONE 1.6s
|
||||
2026-05-22T10:19:18.1228204Z
|
||||
2026-05-22T10:19:18.1228899Z #6 [deps 2/6] RUN corepack enable && corepack prepare pnpm@10.33.0 --activate
|
||||
2026-05-22T10:19:18.1229171Z #6 CACHED
|
||||
2026-05-22T10:19:18.1229427Z
|
||||
2026-05-22T10:19:18.1229681Z #7 [deps 3/6] WORKDIR /app
|
||||
2026-05-22T10:19:18.1621411Z #7 CACHED
|
||||
2026-05-22T10:19:18.1622308Z
|
||||
2026-05-22T10:19:18.1622578Z #8 [build 2/14] RUN corepack enable && corepack prepare pnpm@10.32.1 --activate
|
||||
2026-05-22T10:19:18.1622837Z #8 CACHED
|
||||
2026-05-22T10:19:18.1623070Z
|
||||
2026-05-22T10:19:18.1623345Z #9 [build 3/14] WORKDIR /w
|
||||
2026-05-22T10:19:18.1623575Z #9 CACHED
|
||||
2026-05-22T10:19:18.1623738Z
|
||||
2026-05-22T10:19:18.1623896Z #10 [deps 4/6] COPY package.json pnpm-lock.yaml pnpm-workspace.yaml ./
|
||||
2026-05-22T10:19:18.2731750Z #7 CACHED
|
||||
2026-05-22T10:19:18.2732449Z
|
||||
2026-05-22T10:19:18.2732643Z #8 [deps 4/6] COPY package.json pnpm-lock.yaml pnpm-workspace.yaml ./
|
||||
2026-05-22T10:19:18.3072969Z #8 ...
|
||||
2026-05-22T10:19:18.3073812Z
|
||||
2026-05-22T10:19:18.3074045Z #9 [build 2/14] RUN corepack enable && corepack prepare pnpm@10.32.1 --activate
|
||||
2026-05-22T10:19:18.3074330Z #9 CACHED
|
||||
2026-05-22T10:19:18.4579481Z
|
||||
2026-05-22T10:19:18.4580151Z #10 [build 3/10] WORKDIR /app
|
||||
2026-05-22T10:19:18.4580373Z #10 CACHED
|
||||
2026-05-22T10:19:18.4580540Z
|
||||
2026-05-22T10:19:18.4580703Z #11 [build 4/10] COPY package.json pnpm-lock.yaml pnpm-workspace.yaml ./
|
||||
2026-05-22T10:19:24.7720083Z #10 DONE 6.8s
|
||||
2026-05-22T10:19:24.7720811Z
|
||||
2026-05-22T10:19:24.7720998Z #11 [build 4/14] COPY package.json pnpm-lock.yaml pnpm-workspace.yaml ./
|
||||
2026-05-22T10:19:25.3535498Z #11 ...
|
||||
2026-05-22T10:19:25.3536162Z
|
||||
2026-05-22T10:19:25.3536348Z #12 [deps 5/6] COPY frontend/package.json ./frontend/
|
||||
2026-05-22T10:19:25.8510239Z #12 ...
|
||||
2026-05-22T10:19:25.8510930Z
|
||||
2026-05-22T10:19:25.8511130Z #11 [build 4/14] COPY package.json pnpm-lock.yaml pnpm-workspace.yaml ./
|
||||
2026-05-22T10:19:25.8511361Z #11 DONE 7.8s
|
||||
2026-05-22T10:19:26.0013259Z
|
||||
2026-05-22T10:19:26.0014031Z #12 [deps 5/6] COPY frontend/package.json ./frontend/
|
||||
2026-05-22T10:19:26.5752036Z #11 ...
|
||||
2026-05-22T10:19:26.5752810Z
|
||||
2026-05-22T10:19:26.5753013Z #8 [deps 4/6] COPY package.json pnpm-lock.yaml pnpm-workspace.yaml ./
|
||||
2026-05-22T10:19:26.5753549Z #8 DONE 8.5s
|
||||
2026-05-22T10:19:26.7261362Z
|
||||
2026-05-22T10:19:26.7262475Z #11 [build 4/10] COPY package.json pnpm-lock.yaml pnpm-workspace.yaml ./
|
||||
2026-05-22T10:19:26.8314076Z #11 ...
|
||||
2026-05-22T10:19:26.8314808Z
|
||||
2026-05-22T10:19:26.8314999Z #12 [deps 5/6] COPY backend/package.json ./backend/
|
||||
2026-05-22T10:19:27.2926932Z #12 ...
|
||||
2026-05-22T10:19:27.2927706Z
|
||||
2026-05-22T10:19:27.2927901Z #11 [build 4/10] COPY package.json pnpm-lock.yaml pnpm-workspace.yaml ./
|
||||
2026-05-22T10:19:27.2928343Z #11 DONE 9.0s
|
||||
2026-05-22T10:19:27.4430489Z
|
||||
2026-05-22T10:19:27.4431155Z #12 [deps 5/6] COPY backend/package.json ./backend/
|
||||
2026-05-22T10:19:29.1724689Z #12 DONE 3.8s
|
||||
2026-05-22T10:19:29.3783444Z
|
||||
2026-05-22T10:19:29.3784139Z #13 [deps 6/6] RUN pnpm install --frozen-lockfile --ignore-scripts --filter lcbp3-frontend...
|
||||
2026-05-22T10:19:29.6366874Z #12 DONE 2.8s
|
||||
2026-05-22T10:19:29.8717901Z
|
||||
2026-05-22T10:19:29.8718656Z #13 [deps 6/6] RUN pnpm install --frozen-lockfile --filter backend...
|
||||
2026-05-22T10:19:35.0260248Z #13 5.305 Lockfile is up to date, resolution step is skipped
|
||||
2026-05-22T10:19:35.0263791Z #13 5.648 Lockfile is up to date, resolution step is skipped
|
||||
2026-05-22T10:19:35.2099087Z #13 5.488 Progress: resolved 1, reused 0, downloaded 0, added 0
|
||||
2026-05-22T10:19:35.2726181Z #13 5.894 Progress: resolved 1, reused 0, downloaded 0, added 0
|
||||
2026-05-22T10:19:35.7910405Z #13 6.413 . | +711 ++++++++++++++++++++++++++++++++
|
||||
2026-05-22T10:19:35.8277889Z #13 6.106 . | +1***6 ++++++++++++++++++++++++++++
|
||||
2026-05-22T10:19:36.2311095Z #13 6.509 Progress: resolved 1***6, reused 0, downloaded 9, added 0
|
||||
2026-05-22T10:19:36.2757332Z #13 6.897 Progress: resolved 711, reused 0, downloaded 1, added 0
|
||||
2026-05-22T10:19:36.7221975Z #13 7.344
|
||||
2026-05-22T10:19:36.7222696Z #13 7.344 ╭──────────────────────────────────────────────╮
|
||||
2026-05-22T10:19:36.7223049Z #13 7.344 │ │
|
||||
2026-05-22T10:19:36.7223498Z #13 7.344 │ Update available! 10.33.0 → 11.2.2. │
|
||||
2026-05-22T10:19:36.7223866Z #13 7.344 │ Changelog: https://pnpm.io/v/11.2.2 │
|
||||
2026-05-22T10:19:36.7224065Z #13 7.344 │ To update, run: corepack use pnpm@11.2.2 │
|
||||
2026-05-22T10:19:36.7224261Z #13 7.344 │ │
|
||||
2026-05-22T10:19:36.7224466Z #13 7.344 ╰──────────────────────────────────────────────╯
|
||||
2026-05-22T10:19:36.7224784Z #13 7.344
|
||||
2026-05-22T10:19:37.2310963Z #13 7.509 Progress: resolved 1***6, reused 0, downloaded ***, added 0
|
||||
2026-05-22T10:19:37.2772908Z #13 7.898 Progress: resolved 711, reused 0, downloaded 57, added 57
|
||||
2026-05-22T10:19:37.4459068Z #13 7.574
|
||||
2026-05-22T10:19:37.4459784Z #13 7.574 ╭──────────────────────────────────────────────╮
|
||||
2026-05-22T10:19:37.4460053Z #13 7.574 │ │
|
||||
2026-05-22T10:19:37.4460246Z #13 7.574 │ Update available! 10.33.0 → 11.2.2. │
|
||||
2026-05-22T10:19:37.4460469Z #13 7.574 │ Changelog: https://pnpm.io/v/11.2.2 │
|
||||
2026-05-22T10:19:37.4460817Z #13 7.574 │ To update, run: corepack use pnpm@11.2.2 │
|
||||
2026-05-22T10:19:37.4461024Z #13 7.574 │ │
|
||||
2026-05-22T10:19:37.4461266Z #13 7.574 ╰──────────────────────────────────────────────╯
|
||||
2026-05-22T10:19:37.4461589Z #13 7.574
|
||||
2026-05-22T10:19:38.2322647Z #13 8.511 Progress: resolved 1***6, reused 0, downloaded 27, added 0
|
||||
2026-05-22T10:19:38.2756946Z #13 8.897 Progress: resolved 711, reused 0, downloaded 92, added 73
|
||||
2026-05-22T10:19:39.2322172Z #13 9.511 Progress: resolved 1***6, reused 0, downloaded 34, added 0
|
||||
2026-05-22T10:19:39.2760286Z #13 9.898 Progress: resolved 711, reused 0, downloaded 101, added 77
|
||||
2026-05-22T10:19:40.2324016Z #13 10.51 Progress: resolved 1***6, reused 0, downloaded 52, added 4
|
||||
2026-05-22T10:19:40.2757616Z #13 10.90 Progress: resolved 711, reused 0, downloaded 117, added 83
|
||||
2026-05-22T10:19:41.2329014Z #13 11.51 Progress: resolved 1***6, reused 0, downloaded 92, added 18
|
||||
2026-05-22T10:19:41.2760154Z #13 11.90 Progress: resolved 711, reused 0, downloaded 144, added 96
|
||||
2026-05-22T10:19:42.2327756Z #13 12.51 Progress: resolved 1***6, reused 0, downloaded 153, added 35
|
||||
2026-05-22T10:19:42.2762488Z #13 12.90 Progress: resolved 711, reused 0, downloaded 154, added 101
|
||||
2026-05-22T10:19:43.2337553Z #13 13.51 Progress: resolved 1***6, reused 0, downloaded 202, added 57
|
||||
2026-05-22T10:19:43.2763987Z #13 13.90 Progress: resolved 711, reused 0, downloaded 170, added 110
|
||||
2026-05-22T10:19:43.6501704Z #13 13.93 WARN Tarball download average speed 35 KiB/s (size 38 KiB) is below 50 KiB/s: https://registry.npmjs.org/engine.io/-/engine.io-6.6.4.tgz (GET)
|
||||
2026-05-22T10:19:44.2342885Z #13 14.51 Progress: resolved 1***6, reused 0, downloaded 239, added 72
|
||||
2026-05-22T10:19:44.2762266Z #13 14.90 Progress: resolved 711, reused 0, downloaded 193, added 145
|
||||
2026-05-22T10:19:45.2344610Z #13 15.51 Progress: resolved 1***6, reused 0, downloaded 259, added 84
|
||||
2026-05-22T10:19:45.2762943Z #13 15.90 Progress: resolved 711, reused 0, downloaded 210, added 158
|
||||
2026-05-22T10:19:45.4809362Z #13 16.10 WARN Tarball download average speed 37 KiB/s (size 121 KiB) is below 50 KiB/s: https://registry.npmjs.org/file-selector/-/file-selector-2.1.2.tgz (GET)
|
||||
2026-05-22T10:19:46.2349323Z #13 16.51 Progress: resolved 1***6, reused 0, downloaded 299, added 130
|
||||
2026-05-22T10:19:46.2794198Z #13 16.90 Progress: resolved 711, reused 0, downloaded 239, added 179
|
||||
2026-05-22T10:19:47.2354449Z #13 17.51 Progress: resolved 1***6, reused 0, downloaded 310, added 141
|
||||
2026-05-22T10:19:47.2788949Z #13 17.90 Progress: resolved 711, reused 0, downloaded 273, added 209
|
||||
2026-05-22T10:19:48.2353392Z #13 18.51 Progress: resolved 1***6, reused 0, downloaded 313, added 143
|
||||
2026-05-22T10:19:48.2813069Z #13 18.90 Progress: resolved 711, reused 0, downloaded 280, added 213
|
||||
2026-05-22T10:19:49.1387759Z #13 19.76 WARN GET https://registry.npmjs.org/monaco-editor/-/monaco-editor-0.55.1.tgz error (ECONNRESET). Will retry in 10 seconds. 2 retries left.
|
||||
2026-05-22T10:19:49.2354539Z #13 19.51 Progress: resolved 1***6, reused 0, downloaded 316, added 145
|
||||
2026-05-22T10:19:49.2793124Z #13 19.90 Progress: resolved 711, reused 0, downloaded 292, added ***1
|
||||
2026-05-22T10:19:50.2788236Z #13 20.90 Progress: resolved 711, reused 0, downloaded 293, added ***2
|
||||
2026-05-22T10:19:51.2582178Z #13 21.54 Progress: resolved 1***6, reused 0, downloaded 317, added 145
|
||||
2026-05-22T10:19:51.2804748Z #13 21.90 Progress: resolved 711, reused 0, downloaded 302, added ***5
|
||||
2026-05-22T10:19:52.2597995Z #13 ***.54 Progress: resolved 1***6, reused 0, downloaded 318, added 145
|
||||
2026-05-22T10:19:52.2801842Z #13 ***.90 Progress: resolved 711, reused 0, downloaded 321, added 236
|
||||
2026-05-22T10:19:53.2601408Z #13 23.54 Progress: resolved 1***6, reused 0, downloaded 321, added 145
|
||||
2026-05-22T10:19:53.2801226Z #13 23.90 Progress: resolved 711, reused 0, downloaded 337, added 244
|
||||
2026-05-22T10:19:54.2609797Z #13 24.54 Progress: resolved 1***6, reused 0, downloaded 336, added 151
|
||||
2026-05-22T10:19:54.2807672Z #13 24.90 Progress: resolved 711, reused 0, downloaded 340, added 244
|
||||
2026-05-22T10:19:55.2622139Z #13 25.54 Progress: resolved 1***6, reused 0, downloaded 338, added 151
|
||||
2026-05-22T10:19:55.2801726Z #13 25.90 Progress: resolved 711, reused 0, downloaded 344, added 248
|
||||
2026-05-22T10:19:56.2620958Z #13 26.54 Progress: resolved 1***6, reused 0, downloaded 350, added 155
|
||||
2026-05-22T10:19:56.2856855Z #13 26.91 Progress: resolved 711, reused 0, downloaded 345, added 248
|
||||
2026-05-22T10:19:57.2623713Z #13 27.54 Progress: resolved 1***6, reused 0, downloaded 354, added 159
|
||||
2026-05-22T10:19:57.2799278Z #13 27.90 Progress: resolved 711, reused 0, downloaded 346, added 248
|
||||
2026-05-22T10:19:58.2628712Z #13 28.54 Progress: resolved 1***6, reused 0, downloaded 390, added 256
|
||||
2026-05-22T10:19:58.2810112Z #13 28.90 Progress: resolved 711, reused 0, downloaded 383, added 260
|
||||
2026-05-22T10:19:59.2642586Z #13 29.54 Progress: resolved 1***6, reused 0, downloaded 451, added 291
|
||||
2026-05-22T10:19:59.2800216Z #13 29.90 Progress: resolved 711, reused 0, downloaded 433, added 294
|
||||
2026-05-22T10:20:00.2643872Z #13 30.54 Progress: resolved 1***6, reused 0, downloaded 488, added 306
|
||||
2026-05-22T10:20:00.2802889Z #13 30.90 Progress: resolved 711, reused 0, downloaded 467, added 351
|
||||
2026-05-22T10:20:01.2650883Z #13 31.54 Progress: resolved 1***6, reused 0, downloaded 510, added 314
|
||||
2026-05-22T10:20:01.2810760Z #13 31.90 Progress: resolved 711, reused 0, downloaded 526, added 417
|
||||
2026-05-22T10:20:02.2650003Z #13 32.54 Progress: resolved 1***6, reused 0, downloaded 537, added 3***
|
||||
2026-05-22T10:20:02.2811920Z #13 32.90 Progress: resolved 711, reused 0, downloaded 550, added 429
|
||||
2026-05-22T10:20:03.2655918Z #13 33.54 Progress: resolved 1***6, reused 0, downloaded 549, added 323
|
||||
2026-05-22T10:20:03.2816464Z #13 33.90 Progress: resolved 711, reused 0, downloaded 573, added 436
|
||||
2026-05-22T10:20:04.2661276Z #13 34.54 Progress: resolved 1***6, reused 0, downloaded 587, added 332
|
||||
2026-05-22T10:20:04.2812639Z #13 34.90 Progress: resolved 711, reused 0, downloaded 613, added 453
|
||||
2026-05-22T10:20:05.2658735Z #13 35.54 Progress: resolved 1***6, reused 0, downloaded 645, added 346
|
||||
2026-05-22T10:20:05.2814764Z #13 35.90 Progress: resolved 711, reused 0, downloaded 626, added 459
|
||||
2026-05-22T10:20:06.2660245Z #13 36.54 Progress: resolved 1***6, reused 0, downloaded 689, added 364
|
||||
2026-05-22T10:20:06.2820776Z #13 36.90 Progress: resolved 711, reused 0, downloaded 673, added 474
|
||||
2026-05-22T10:20:07.2664642Z #13 37.54 Progress: resolved 1***6, reused 0, downloaded 720, added 377
|
||||
2026-05-22T10:20:07.2831944Z #13 37.90 Progress: resolved 711, reused 0, downloaded 690, added 487
|
||||
2026-05-22T10:20:08.2664357Z #13 38.54 Progress: resolved 1***6, reused 0, downloaded 760, added 395
|
||||
2026-05-22T10:20:08.2856390Z #13 38.91 Progress: resolved 711, reused 0, downloaded 704, added 553
|
||||
2026-05-22T10:20:09.2661825Z #13 39.54 Progress: resolved 1***6, reused 0, downloaded 772, added 403
|
||||
2026-05-22T10:20:09.2853454Z #13 39.91 Progress: resolved 711, reused 0, downloaded 706, added 706
|
||||
2026-05-22T10:20:10.2669525Z #13 40.54 Progress: resolved 1***6, reused 0, downloaded 777, added 406
|
||||
2026-05-22T10:20:10.2854872Z #13 40.91 Progress: resolved 711, reused 0, downloaded 707, added 707
|
||||
2026-05-22T10:20:11.2664890Z #13 41.54 Progress: resolved 1***6, reused 0, downloaded 790, added 432
|
||||
2026-05-22T10:20:12.2664619Z #13 42.54 Progress: resolved 1***6, reused 0, downloaded 801, added 436
|
||||
2026-05-22T10:20:13.2671857Z #13 43.54 Progress: resolved 1***6, reused 0, downloaded 819, added 444
|
||||
2026-05-22T10:20:14.0802064Z #13 44.70 Progress: resolved 711, reused 0, downloaded 708, added 707
|
||||
2026-05-22T10:20:14.2662625Z #13 44.54 Progress: resolved 1***6, reused 0, downloaded 886, added 571
|
||||
2026-05-22T10:20:15.0806717Z #13 45.70 Progress: resolved 711, reused 0, downloaded 708, added 708
|
||||
2026-05-22T10:20:15.2663717Z #13 45.54 Progress: resolved 1***6, reused 0, downloaded 1026, added 1011
|
||||
2026-05-22T10:20:16.2671147Z #13 46.55 Progress: resolved 1***6, reused 0, downloaded 1105, added 1107
|
||||
2026-05-22T10:20:17.2670787Z #13 47.55 Progress: resolved 1***6, reused 0, downloaded 1123, added 1111
|
||||
2026-05-22T10:20:17.7556732Z #13 48.38 Progress: resolved 711, reused 0, downloaded 709, added 708
|
||||
2026-05-22T10:20:18.2676595Z #13 48.55 Progress: resolved 1***6, reused 0, downloaded 1166, added 1142
|
||||
2026-05-22T10:20:18.7556261Z #13 49.38 Progress: resolved 711, reused 0, downloaded 709, added 709
|
||||
2026-05-22T10:20:19.2680881Z #13 49.55 Progress: resolved 1***6, reused 0, downloaded 1***2, added 1***4
|
||||
2026-05-22T10:20:21.6300675Z #13 51.91 Progress: resolved 1***6, reused 0, downloaded 1***3, added 1***4
|
||||
2026-05-22T10:20:22.6297608Z #13 52.91 Progress: resolved 1***6, reused 0, downloaded 1***3, added 1***5
|
||||
2026-05-22T10:20:32.7986081Z #13 63.08 Progress: resolved 1***6, reused 0, downloaded 1***4, added 1***5
|
||||
2026-05-22T10:20:32.9589470Z #13 63.09 Progress: resolved 1***6, reused 0, downloaded 1***4, added 1***6, done
|
||||
2026-05-22T10:20:33.6542450Z #13 63.93 .../node_modules/@scarf/scarf postinstall$ node ./report.js
|
||||
2026-05-22T10:20:33.7659245Z #13 64.01 .../node_modules/msgpackr-extract install$ node-gyp-build-optional-packages
|
||||
2026-05-22T10:20:33.7660063Z #13 64.04 .../node_modules/@nestjs/core postinstall$ opencollective || exit 0
|
||||
2026-05-22T10:20:33.9632047Z #13 64.09 .../bcrypt@6.0.0/node_modules/bcrypt install$ node-gyp-build
|
||||
2026-05-22T10:20:34.0993964Z #13 64.38 .../bcrypt@6.0.0/node_modules/bcrypt install: Done
|
||||
2026-05-22T10:20:34.3261983Z #13 64.45 .../node_modules/msgpackr-extract install: Done
|
||||
2026-05-22T10:20:35.3790242Z #13 65.66 .../node_modules/@nestjs/core postinstall: Thanks for installing nest
|
||||
2026-05-22T10:20:35.5534031Z #13 65.66 .../node_modules/@nestjs/core postinstall: Please consider donating to our open collective
|
||||
2026-05-22T10:20:35.5534832Z #13 65.66 .../node_modules/@nestjs/core postinstall: to help us maintain this package.
|
||||
2026-05-22T10:20:35.5535089Z #13 65.66 .../node_modules/@nestjs/core postinstall:
|
||||
2026-05-22T10:20:35.5535290Z #13 65.66 .../node_modules/@nestjs/core postinstall: Number of contributors: 0
|
||||
2026-05-22T10:20:35.5535571Z #13 65.66 .../node_modules/@nestjs/core postinstall: Number of backers: 1199
|
||||
2026-05-22T10:20:35.5535878Z #13 65.67 .../node_modules/@nestjs/core postinstall: Annual budget: $135,630
|
||||
2026-05-22T10:20:35.5536085Z #13 65.67 .../node_modules/@nestjs/core postinstall: Current balance: $3,366
|
||||
2026-05-22T10:20:35.5536287Z #13 65.67 .../node_modules/@nestjs/core postinstall:
|
||||
2026-05-22T10:20:35.5536506Z #13 65.67 .../node_modules/@nestjs/core postinstall: Become a partner: https://opencollective.com/nest/donate
|
||||
2026-05-22T10:20:35.5536727Z #13 65.67 .../node_modules/@nestjs/core postinstall:
|
||||
2026-05-22T10:20:35.5536985Z #13 65.68 .../node_modules/@nestjs/core postinstall: Done
|
||||
2026-05-22T10:20:37.0987329Z #13 67.72 Progress: resolved 711, reused 0, downloaded 710, added 709
|
||||
2026-05-22T10:20:37.1847734Z #13 67.46 .../node_modules/@scarf/scarf postinstall: Done
|
||||
2026-05-22T10:20:38.0986356Z #13 68.72 Progress: resolved 711, reused 0, downloaded 710, added 710
|
||||
2026-05-22T10:20:39.0374307Z #13 69.32 . prepare$ husky
|
||||
2026-05-22T10:20:39.1868474Z #13 69.41 . prepare: .git can't be found
|
||||
2026-05-22T10:20:39.1869873Z #13 69.41 . prepare: Done
|
||||
2026-05-22T10:20:39.1870309Z #13 69.46 Done in 1m 5.6s using pnpm v10.33.0
|
||||
2026-05-22T10:20:42.7258061Z #13 DONE 73.0s
|
||||
2026-05-22T10:20:44.9198949Z #13 75.54 Progress: resolved 711, reused 0, downloaded 711, added 710
|
||||
2026-05-22T10:20:45.0727405Z #13 75.54 Progress: resolved 711, reused 0, downloaded 711, added 711, done
|
||||
2026-05-22T10:20:46.1866797Z #13 76.81 Done in 1m 12.6s using pnpm v10.33.0
|
||||
2026-05-22T10:20:50.0473617Z #13 DONE 80.7s
|
||||
2026-05-22T10:20:57.8734840Z
|
||||
2026-05-22T10:20:57.8735552Z #14 [build 5/10] COPY --from=deps /app/node_modules ./node_modules
|
||||
2026-05-22T10:21:03.1157655Z
|
||||
2026-05-22T10:21:03.1158369Z #14 [build 5/14] COPY --from=deps /w/node_modules ./node_modules
|
||||
2026-05-22T10:21:48.3800147Z #14 DONE 50.5s
|
||||
2026-05-22T10:21:48.5809097Z
|
||||
2026-05-22T10:21:48.5809964Z #15 [build 6/10] COPY --from=deps /app/backend/node_modules ./backend/node_modules
|
||||
2026-05-22T10:21:51.6184735Z #15 DONE 3.2s
|
||||
2026-05-22T10:21:51.8599819Z
|
||||
2026-05-22T10:21:51.8600605Z #16 [build 7/10] COPY backend/ ./backend/
|
||||
2026-05-22T10:21:54.3196561Z #16 DONE 2.6s
|
||||
2026-05-22T10:21:54.5186691Z
|
||||
2026-05-22T10:21:54.5187404Z #17 [build 8/10] RUN cd backend && NODE_OPTIONS="--max-old-space-size=4096" pnpm run build
|
||||
2026-05-22T10:21:56.8701605Z #17 2.502 ! Corepack is about to download https://registry.npmjs.org/pnpm/-/pnpm-10.33.0.tgz
|
||||
2026-05-22T10:22:02.4667495Z #17 8.098
|
||||
2026-05-22T10:22:02.4668283Z #17 8.098 > backend@1.8.1 build /app/backend
|
||||
2026-05-22T10:22:02.4668507Z #17 8.098 > nest build
|
||||
2026-05-22T10:22:02.4668735Z #17 8.098
|
||||
2026-05-22T10:22:03.7954915Z #14 DONE 60.7s
|
||||
2026-05-22T10:22:03.9900869Z
|
||||
2026-05-22T10:22:03.9901576Z #15 [build 6/14] WORKDIR /w/frontend
|
||||
2026-05-22T10:22:05.5568666Z #15 DONE 1.7s
|
||||
2026-05-22T10:22:05.7719151Z
|
||||
2026-05-22T10:22:05.7720189Z #16 [build 7/14] COPY --from=deps /w/frontend/node_modules ./node_modules
|
||||
2026-05-22T10:22:07.5913742Z #16 DONE 2.0s
|
||||
2026-05-22T10:22:07.8207728Z
|
||||
2026-05-22T10:22:07.8208523Z #17 [build 8/14] COPY frontend/ ./
|
||||
2026-05-22T10:22:10.3511728Z #17 DONE 2.7s
|
||||
2026-05-22T10:22:10.5803092Z
|
||||
2026-05-22T10:22:10.5804009Z #18 [build 9/14] RUN ls -la /w/frontend/public/ || (echo "WARNING: public directory not found, creating empty one" && mkdir -p /w/frontend/public)
|
||||
2026-05-22T10:22:12.1832337Z #18 1.754 total 36
|
||||
2026-05-22T10:22:12.3336139Z #18 1.754 drwxrwxrwx 3 root root 4096 Apr 19 06:21 .
|
||||
2026-05-22T10:22:12.3336895Z #18 1.754 drwxr-xr-x 1 root root 4096 May 16 04:06 ..
|
||||
2026-05-22T10:22:12.3337114Z #18 1.754 -rw-rw-rw- 1 root root 130 Apr 1 15:50 favicon.ico
|
||||
2026-05-22T10:22:12.3337323Z #18 1.754 drwxrwxrwx 4 root root 4096 Apr 19 06:21 locales
|
||||
2026-05-22T10:22:12.3337606Z #18 1.754 -rw-rw-rw- 1 root root 140 Apr 1 15:50 robots.txt
|
||||
2026-05-22T10:22:13.5249993Z #18 DONE 3.1s
|
||||
2026-05-22T10:22:13.7639793Z
|
||||
2026-05-22T10:22:13.7640568Z #19 [build 10/14] RUN set -e; MONACO_VS=$(find /w/frontend/node_modules /w/node_modules -path "*/monaco-editor/min/vs" -type d 2>/dev/null | head -1); if [ -z "$MONACO_VS" ]; then echo "ERROR: monaco-editor/min/vs not found in node_modules" && exit 1; fi; echo "Found Monaco at: $MONACO_VS"; mkdir -p /w/frontend/public; cp -rL "$MONACO_VS" /w/frontend/public/monaco-vs; echo "Monaco assets copied successfully"
|
||||
2026-05-22T10:22:17.2152721Z #19 3.602 Found Monaco at: /w/node_modules/.pnpm/monaco-editor@0.55.1/node_modules/monaco-editor/min/vs
|
||||
2026-05-22T10:22:17.4186717Z #19 3.655 Monaco assets copied successfully
|
||||
2026-05-22T10:22:19.7877839Z #19 DONE 6.2s
|
||||
2026-05-22T10:22:20.0087651Z
|
||||
2026-05-22T10:22:20.0088606Z #20 [build 11/14] RUN mkdir /n && ln -s /n .next && pnpm run build && rm .next && mv /n .next
|
||||
2026-05-22T10:22:21.6801154Z #20 1.8*** ! Corepack is about to download https://registry.npmjs.org/pnpm/-/pnpm-10.33.0.tgz
|
||||
2026-05-22T10:22:25.7086552Z #20 5.850
|
||||
2026-05-22T10:22:25.7087468Z #20 5.850 > lcbp3-frontend@1.8.1 build /w/frontend
|
||||
2026-05-22T10:22:25.7088115Z #20 5.850 > next build
|
||||
2026-05-22T10:22:25.7088398Z #20 5.850
|
||||
2026-05-22T10:22:26.6182694Z #17 DONE 32.2s
|
||||
2026-05-22T10:22:26.7787255Z #20 6.921 ▲ Next.js 16.2.6 (Turbopack)
|
||||
2026-05-22T10:22:26.8697195Z
|
||||
2026-05-22T10:22:26.8697906Z #18 [build 9/10] RUN PNPM_IGNORE_SCRIPTS=none pnpm --filter backend deploy --prod --shamefully-hoist --legacy --no-optional /app/backend-prod
|
||||
2026-05-22T10:22:26.8928351Z #20 6.9***
|
||||
2026-05-22T10:22:26.8929224Z #20 7.034 Creating an optimized production build ...
|
||||
2026-05-22T10:22:31.8657302Z #18 4.997 WARN Shared workspace lockfile detected but configuration forces legacy deploy implementation.
|
||||
2026-05-22T10:22:32.1691347Z #18 5.300 Packages are copied from the content-addressable store to the virtual store.
|
||||
2026-05-22T10:22:32.1692146Z #18 5.300 Content-addressable store is at: /root/.local/share/pnpm/store/v10
|
||||
2026-05-22T10:22:32.1692385Z #18 5.300 Virtual store is at: backend-prod/node_modules/.pnpm
|
||||
2026-05-22T10:22:33.5200696Z #18 6.650 Progress: resolved 0, reused 0, downloaded 1, added 0
|
||||
2026-05-22T10:22:34.5252864Z #18 7.656 Progress: resolved 10, reused 0, downloaded 10, added 0
|
||||
2026-05-22T10:22:35.5263721Z #18 8.657 Progress: resolved 16, reused 0, downloaded 16, added 0
|
||||
2026-05-22T10:22:36.5265724Z #18 9.657 Progress: resolved 17, reused 0, downloaded 17, added 0
|
||||
2026-05-22T10:22:37.5273329Z #18 10.66 Progress: resolved 21, reused 0, downloaded 21, added 0
|
||||
2026-05-22T10:22:38.5288511Z #18 11.66 Progress: resolved 24, reused 0, downloaded 24, added 0
|
||||
2026-05-22T10:22:39.5292423Z #18 12.66 Progress: resolved 31, reused 0, downloaded 31, added 0
|
||||
2026-05-22T10:22:40.5332742Z #18 13.66 Progress: resolved 57, reused 0, downloaded 57, added 0
|
||||
2026-05-22T10:22:41.5359075Z #18 14.67 Progress: resolved 70, reused 0, downloaded 70, added 0
|
||||
2026-05-22T10:22:42.5337455Z #18 15.66 Progress: resolved 87, reused 0, downloaded 87, added 0
|
||||
2026-05-22T10:22:43.5349070Z #18 16.67 Progress: resolved 88, reused 0, downloaded 88, added 0
|
||||
2026-05-22T10:22:44.5496488Z #18 17.68 Progress: resolved 103, reused 0, downloaded 103, added 0
|
||||
2026-05-22T10:22:45.5498150Z #18 18.68 Progress: resolved 118, reused 0, downloaded 118, added 0
|
||||
2026-05-22T10:22:46.5501022Z #18 19.68 Progress: resolved 139, reused 0, downloaded 139, added 0
|
||||
2026-05-22T10:22:47.5536430Z #18 20.68 Progress: resolved 153, reused 0, downloaded 153, added 0
|
||||
2026-05-22T10:22:48.5550042Z #18 21.69 Progress: resolved 219, reused 0, downloaded 219, added 0
|
||||
2026-05-22T10:22:49.5564982Z #18 ***.69 Progress: resolved 230, reused 0, downloaded 230, added 0
|
||||
2026-05-22T10:22:50.5572366Z #18 23.69 Progress: resolved 239, reused 0, downloaded 239, added 0
|
||||
2026-05-22T10:22:51.5767798Z #18 24.71 Progress: resolved 261, reused 0, downloaded 261, added 0
|
||||
2026-05-22T10:22:52.5871417Z #18 25.72 Progress: resolved 276, reused 0, downloaded 276, added 0
|
||||
2026-05-22T10:22:53.5882651Z #18 26.72 Progress: resolved 299, reused 0, downloaded 299, added 0
|
||||
2026-05-22T10:22:54.5933892Z #18 27.72 Progress: resolved 339, reused 0, downloaded 339, added 0
|
||||
2026-05-22T10:22:55.5958588Z #18 28.73 Progress: resolved 358, reused 0, downloaded 358, added 0
|
||||
2026-05-22T10:22:56.5970237Z #18 29.73 Progress: resolved 365, reused 0, downloaded 365, added 0
|
||||
2026-05-22T10:22:57.5968739Z #18 30.73 Progress: resolved 392, reused 0, downloaded 392, added 0
|
||||
2026-05-22T10:22:58.5971971Z #18 31.73 Progress: resolved 460, reused 0, downloaded 460, added 0
|
||||
2026-05-22T10:22:59.5974400Z #18 32.73 Progress: resolved 550, reused 0, downloaded 549, added 0
|
||||
2026-05-22T10:23:00.5445209Z #20 40.69 Turbopack build encountered 1 warnings:
|
||||
2026-05-22T10:23:00.5445916Z #20 40.69 [next]/internal/font/google/inter_5972bc34.module.css
|
||||
2026-05-22T10:23:00.5446136Z #20 40.69 Error while requesting resource
|
||||
2026-05-22T10:23:00.5446783Z #20 40.69 There was an issue establishing a connection while requesting https://fonts.googleapis.com/css2?family=Inter:wght@100..900&display=swap
|
||||
2026-05-22T10:23:00.5447166Z #20 40.69
|
||||
2026-05-22T10:23:00.5447353Z #20 40.69 Import trace:
|
||||
2026-05-22T10:23:00.5447587Z #20 40.69 Server Component:
|
||||
2026-05-22T10:23:00.5447882Z #20 40.69 [next]/internal/font/google/inter_5972bc34.module.css
|
||||
2026-05-22T10:23:00.5448081Z #20 40.69 [next]/internal/font/google/inter_5972bc34.js
|
||||
2026-05-22T10:23:00.5448262Z #20 40.69 ./frontend/app/layout.tsx
|
||||
2026-05-22T10:23:00.5448570Z #20 40.69
|
||||
2026-05-22T10:23:00.5448754Z #20 40.69
|
||||
2026-05-22T10:23:00.5983815Z #18 33.73 Progress: resolved 602, reused 0, downloaded 602, added 0
|
||||
2026-05-22T10:23:00.8575643Z #20 41.00
|
||||
2026-05-22T10:23:01.0182974Z #20 41.00 > Build error occurred
|
||||
2026-05-22T10:23:01.0183864Z #20 41.01 Error: Turbopack build failed with 1 errors:
|
||||
2026-05-22T10:23:01.0184097Z #20 41.01 [next]/internal/font/google/inter_5972bc34.module.css
|
||||
2026-05-22T10:23:01.0184608Z #20 41.01 next/font: error:
|
||||
2026-05-22T10:23:01.0184867Z #20 41.01 Failed to fetch `Inter` from Google Fonts.
|
||||
2026-05-22T10:23:01.0185111Z #20 41.01
|
||||
2026-05-22T10:23:01.0185417Z #20 41.01 Import trace:
|
||||
2026-05-22T10:23:01.0185616Z #20 41.01 Server Component:
|
||||
2026-05-22T10:23:01.0185863Z #20 41.01 [next]/internal/font/google/inter_5972bc34.module.css
|
||||
2026-05-22T10:23:01.0186107Z #20 41.01 [next]/internal/font/google/inter_5972bc34.js
|
||||
2026-05-22T10:23:01.0186384Z #20 41.01 ./frontend/app/layout.tsx
|
||||
2026-05-22T10:23:01.0186635Z #20 41.01
|
||||
2026-05-22T10:23:01.0186906Z #20 41.01
|
||||
2026-05-22T10:23:01.0187201Z #20 41.01 at ignore-listed frames
|
||||
2026-05-22T10:23:01.0568091Z #20 41.20 ELIFECYCLE Command failed with exit code 1.
|
||||
2026-05-22T10:23:01.5980624Z #18 34.73 Progress: resolved 630, reused 0, downloaded 623, added 0
|
||||
2026-05-22T10:23:02.5977426Z #18 35.73 Progress: resolved 653, reused 0, downloaded 647, added 0
|
||||
2026-05-22T10:23:03.5982137Z #18 36.73 Progress: resolved 700, reused 0, downloaded 695, added 0
|
||||
2026-05-22T10:23:04.5991787Z #18 37.73 Progress: resolved 749, reused 0, downloaded 744, added 0
|
||||
2026-05-22T10:23:05.5993267Z #18 38.73 Progress: resolved 794, reused 0, downloaded 789, added 0
|
||||
2026-05-22T10:23:06.5995710Z #18 39.73 Progress: resolved 839, reused 0, downloaded 834, added 0
|
||||
2026-05-22T10:23:07.6002428Z #18 40.73 Progress: resolved 869, reused 0, downloaded 864, added 0
|
||||
2026-05-22T10:23:08.6009661Z #18 41.73 Progress: resolved 972, reused 0, downloaded 964, added 0
|
||||
2026-05-22T10:23:09.0372542Z #20 ERROR: process "/bin/sh -c mkdir /n && ln -s /n .next && pnpm run build && rm .next && mv /n .next" did not complete successfully: exit code: 1
|
||||
2026-05-22T10:23:09.6015507Z #18 42.73 Progress: resolved 1084, reused 0, downloaded 1079, added 0
|
||||
2026-05-22T10:23:10.6070375Z #18 43.74 Progress: resolved 1215, reused 0, downloaded 1205, added 0
|
||||
2026-05-22T10:23:10.6771401Z ------
|
||||
2026-05-22T10:23:10.6772149Z > [build 11/14] RUN mkdir /n && ln -s /n .next && pnpm run build && rm .next && mv /n .next:
|
||||
2026-05-22T10:23:10.6772536Z 41.01
|
||||
2026-05-22T10:23:10.6772804Z 41.01 Import trace:
|
||||
2026-05-22T10:23:10.6773101Z 41.01 Server Component:
|
||||
2026-05-22T10:23:10.6773410Z 41.01 [next]/internal/font/google/inter_5972bc34.module.css
|
||||
2026-05-22T10:23:10.6773605Z 41.01 [next]/internal/font/google/inter_5972bc34.js
|
||||
2026-05-22T10:23:10.6774021Z 41.01 ./frontend/app/layout.tsx
|
||||
2026-05-22T10:23:10.6774261Z 41.01
|
||||
2026-05-22T10:23:10.6774470Z 41.01
|
||||
2026-05-22T10:23:10.6774708Z 41.01 at ignore-listed frames
|
||||
2026-05-22T10:23:10.6775150Z 41.20 ELIFECYCLE Command failed with exit code 1.
|
||||
2026-05-22T10:23:10.6775376Z ------
|
||||
2026-05-22T10:23:10.6780676Z Dockerfile:83
|
||||
2026-05-22T10:23:10.6781089Z --------------------
|
||||
2026-05-22T10:23:10.6781412Z 82 | # to minimise overlay nesting depth, then move back after build completes.
|
||||
2026-05-22T10:23:10.6781690Z 83 | >>> RUN mkdir /n && ln -s /n .next && \
|
||||
2026-05-22T10:23:10.6781933Z 84 | >>> pnpm run build && \
|
||||
2026-05-22T10:23:10.6782198Z 85 | >>> rm .next && mv /n .next
|
||||
2026-05-22T10:23:10.6782423Z 86 |
|
||||
2026-05-22T10:23:10.6782592Z --------------------
|
||||
2026-05-22T10:23:10.6782928Z ERROR: failed to solve: process "/bin/sh -c mkdir /n && ln -s /n .next && pnpm run build && rm .next && mv /n .next" did not complete successfully: exit code: 1
|
||||
2026-05-22T10:23:11.6074237Z #18 44.74 Progress: resolved 1245, reused 0, downloaded 1***0, added 0
|
||||
2026-05-22T10:23:12.6076786Z #18 45.74 Progress: resolved 1250, reused 0, downloaded 1***5, added 0
|
||||
2026-05-22T10:23:13.6081726Z #18 46.74 Progress: resolved 1253, reused 0, downloaded 1***6, added 0
|
||||
2026-05-22T10:23:14.3493706Z #18 47.48 WARN 3 deprecated subdependencies found: glob@7.2.3, inflight@1.0.6, whatwg-encoding@3.1.1
|
||||
2026-05-22T10:23:14.5890259Z #18 47.57 . | +459 ++++++++++++++++++++++++++++++++
|
||||
2026-05-22T10:23:14.6082338Z #18 47.74 Progress: resolved 1253, reused 0, downloaded 1***8, added 0
|
||||
2026-05-22T10:23:15.6088985Z #18 48.74 Progress: resolved 1253, reused 0, downloaded 1***9, added 307
|
||||
2026-05-22T10:23:16.0010091Z #18 49.13 Progress: resolved 1253, reused 0, downloaded 1***9, added 459, done
|
||||
2026-05-22T10:23:16.1391932Z #18 49.27 .../node_modules/@scarf/scarf postinstall$ node ./report.js
|
||||
2026-05-22T10:23:16.3305837Z #18 49.31 .../node_modules/@nestjs/core postinstall$ opencollective || exit 0
|
||||
2026-05-22T10:23:16.3306573Z #18 49.31 .../bcrypt@6.0.0/node_modules/bcrypt install$ node-gyp-build
|
||||
2026-05-22T10:23:16.4106310Z #18 49.54 .../bcrypt@6.0.0/node_modules/bcrypt install: Done
|
||||
2026-05-22T10:23:16.5657857Z #18 49.70 .../node_modules/@nestjs/core postinstall: Thanks for installing nest
|
||||
2026-05-22T10:23:16.8147905Z #18 49.70 .../node_modules/@nestjs/core postinstall: Please consider donating to our open collective
|
||||
2026-05-22T10:23:16.8148924Z #18 49.70 .../node_modules/@nestjs/core postinstall: to help us maintain this package.
|
||||
2026-05-22T10:23:16.8149162Z #18 49.71 .../node_modules/@nestjs/core postinstall:
|
||||
2026-05-22T10:23:16.8149380Z #18 49.71 .../node_modules/@nestjs/core postinstall: Number of contributors: 0
|
||||
2026-05-22T10:23:16.8149699Z #18 49.71 .../node_modules/@nestjs/core postinstall: Number of backers: 1199
|
||||
2026-05-22T10:23:16.8149900Z #18 49.72 .../node_modules/@nestjs/core postinstall: Annual budget: $135,630
|
||||
2026-05-22T10:23:16.8150584Z #18 49.73 .../node_modules/@nestjs/core postinstall: Current balance: $3,366
|
||||
2026-05-22T10:23:16.8150819Z #18 49.73 .../node_modules/@nestjs/core postinstall:
|
||||
2026-05-22T10:23:16.8151077Z #18 49.73 .../node_modules/@nestjs/core postinstall: Become a partner: https://opencollective.com/nest/donate
|
||||
2026-05-22T10:23:16.8151387Z #18 49.73 .../node_modules/@nestjs/core postinstall:
|
||||
2026-05-22T10:23:16.8151691Z #18 49.79 .../node_modules/@nestjs/core postinstall: Done
|
||||
2026-05-22T10:23:19.2867046Z #18 52.41 .../node_modules/@scarf/scarf postinstall: Done
|
||||
2026-05-22T10:23:19.5083997Z #18 52.49 WARN Failed to create bin at /app/backend-prod/node_modules/.pnpm/typeorm@0.3.27_ioredis@5.8.2_mysql2@3.15.3_redis@4.7.1_reflect-metadata@0.2.2_ts-node@1_a2dc5b77c713fab455f1a297d51ed595/node_modules/typeorm/node_modules/.bin/ts-node. ENOENT: no such file or directory, open '/app/backend-prod/node_modules/.pnpm/ts-node@10.9.2_@types+node@25.5.0_typescript@5.9.3/node_modules/ts-node/dist/bin.js'
|
||||
2026-05-22T10:23:19.5084912Z #18 52.49 WARN Failed to create bin at /app/backend-prod/node_modules/.pnpm/typeorm@0.3.27_ioredis@5.8.2_mysql2@3.15.3_redis@4.7.1_reflect-metadata@0.2.2_ts-node@1_a2dc5b77c713fab455f1a297d51ed595/node_modules/typeorm/node_modules/.bin/ts-node-cwd. ENOENT: no such file or directory, open '/app/backend-prod/node_modules/.pnpm/ts-node@10.9.2_@types+node@25.5.0_typescript@5.9.3/node_modules/ts-node/dist/bin-cwd.js'
|
||||
2026-05-22T10:23:19.5085267Z #18 52.49 WARN Failed to create bin at /app/backend-prod/node_modules/.pnpm/typeorm@0.3.27_ioredis@5.8.2_mysql2@3.15.3_redis@4.7.1_reflect-metadata@0.2.2_ts-node@1_a2dc5b77c713fab455f1a297d51ed595/node_modules/typeorm/node_modules/.bin/ts-node-esm. ENOENT: no such file or directory, open '/app/backend-prod/node_modules/.pnpm/ts-node@10.9.2_@types+node@25.5.0_typescript@5.9.3/node_modules/ts-node/dist/bin-esm.js'
|
||||
2026-05-22T10:23:19.5085879Z #18 52.49 WARN Failed to create bin at /app/backend-prod/node_modules/.pnpm/typeorm@0.3.27_ioredis@5.8.2_mysql2@3.15.3_redis@4.7.1_reflect-metadata@0.2.2_ts-node@1_a2dc5b77c713fab455f1a297d51ed595/node_modules/typeorm/node_modules/.bin/ts-node-script. ENOENT: no such file or directory, open '/app/backend-prod/node_modules/.pnpm/ts-node@10.9.2_@types+node@25.5.0_typescript@5.9.3/node_modules/ts-node/dist/bin-script.js'
|
||||
2026-05-22T10:23:19.5086320Z #18 52.49 WARN Failed to create bin at /app/backend-prod/node_modules/.pnpm/typeorm@0.3.27_ioredis@5.8.2_mysql2@3.15.3_redis@4.7.1_reflect-metadata@0.2.2_ts-node@1_a2dc5b77c713fab455f1a297d51ed595/node_modules/typeorm/node_modules/.bin/ts-node-transpile-only. ENOENT: no such file or directory, open '/app/backend-prod/node_modules/.pnpm/ts-node@10.9.2_@types+node@25.5.0_typescript@5.9.3/node_modules/ts-node/dist/bin-transpile.js'
|
||||
2026-05-22T10:23:19.5086789Z #18 52.49 WARN Failed to create bin at /app/backend-prod/node_modules/.pnpm/typeorm@0.3.27_ioredis@5.8.2_mysql2@3.15.3_redis@4.7.1_reflect-metadata@0.2.2_ts-node@1_a2dc5b77c713fab455f1a297d51ed595/node_modules/typeorm/node_modules/.bin/ts-script. ENOENT: no such file or directory, open '/app/backend-prod/node_modules/.pnpm/ts-node@10.9.2_@types+node@25.5.0_typescript@5.9.3/node_modules/ts-node/dist/bin-script-deprecated.js'
|
||||
2026-05-22T10:23:19.7667354Z #18 52.90 WARN Failed to create bin at /app/backend/backend-prod/node_modules/.bin/acorn. ENOENT: no such file or directory, open '/app/backend-prod/node_modules/.pnpm/acorn@8.16.0/node_modules/acorn/bin/acorn'
|
||||
2026-05-22T10:23:19.9179844Z #18 52.90 WARN Failed to create bin at /app/backend/backend-prod/node_modules/.bin/browserslist. ENOENT: no such file or directory, open '/app/backend-prod/node_modules/.pnpm/browserslist@4.28.1/node_modules/browserslist/cli.js'
|
||||
2026-05-22T10:23:19.9180666Z #18 52.90 WARN Failed to create bin at /app/backend/backend-prod/node_modules/.bin/webpack. ENOENT: no such file or directory, open '/app/backend-prod/node_modules/.pnpm/webpack@5.105.4/node_modules/webpack/bin/webpack.js'
|
||||
2026-05-22T10:23:19.9180959Z #18 52.90 WARN Failed to create bin at /app/backend/backend-prod/node_modules/.bin/jiti. ENOENT: no such file or directory, open '/app/backend-prod/node_modules/.pnpm/jiti@2.6.1/node_modules/jiti/lib/jiti-cli.mjs'
|
||||
2026-05-22T10:23:20.2224622Z #18 53.35 . prepare$ husky
|
||||
2026-05-22T10:23:20.4592649Z #18 53.44 . prepare: .git can't be found
|
||||
2026-05-22T10:23:20.4593647Z #18 53.44 . prepare: Done
|
||||
2026-05-22T10:23:26.6357222Z #18 DONE 59.8s
|
||||
2026-05-22T10:23:26.8249481Z
|
||||
2026-05-22T10:23:26.8250648Z #19 [build 10/10] RUN find /app/backend-prod/node_modules -name "*.md" -delete && find /app/backend-prod/node_modules -name "*.txt" -delete && find /app/backend-prod/node_modules -name "LICENSE*" -delete && find /app/backend-prod/node_modules -name "README*" -delete && find /app/backend-prod/node_modules -name "CHANGELOG*" -delete
|
||||
2026-05-22T10:23:32.1643335Z #19 DONE 5.5s
|
||||
2026-05-22T10:23:33.4248798Z
|
||||
2026-05-22T10:23:33.4249492Z #20 [production 2/8] RUN apk add --no-cache curl
|
||||
2026-05-22T10:23:33.4249774Z #20 CACHED
|
||||
2026-05-22T10:23:33.4250129Z
|
||||
2026-05-22T10:23:33.4250412Z #21 [production 3/8] WORKDIR /app
|
||||
2026-05-22T10:23:33.4250607Z #21 CACHED
|
||||
2026-05-22T10:23:33.4250788Z
|
||||
2026-05-22T10:23:33.4251041Z #*** [production 4/8] RUN addgroup -g 1001 -S nestjs && adduser -S nestjs -u 1001
|
||||
2026-05-22T10:23:33.5757779Z #*** CACHED
|
||||
2026-05-22T10:23:33.5758523Z
|
||||
2026-05-22T10:23:33.5758720Z #23 [production 5/8] COPY --from=build --chown=nestjs:nestjs /app/backend/dist ./dist
|
||||
2026-05-22T10:23:35.5036038Z #23 DONE 2.1s
|
||||
2026-05-22T10:23:41.4159508Z
|
||||
2026-05-22T10:23:41.4160274Z #24 [production 6/8] COPY --from=build --chown=nestjs:nestjs /app/backend-prod/package.json ./
|
||||
2026-05-22T10:23:43.3318723Z #24 DONE 1.9s
|
||||
2026-05-22T10:23:43.5386315Z
|
||||
2026-05-22T10:23:43.5387475Z #25 [production 7/8] COPY --from=build --chown=nestjs:nestjs /app/backend-prod/node_modules ./node_modules
|
||||
2026-05-22T10:23:56.3393298Z #25 DONE 13.0s
|
||||
2026-05-22T10:23:56.5531944Z
|
||||
2026-05-22T10:23:56.5532716Z #26 [production 8/8] RUN mkdir -p /app/uploads/temp /app/uploads/permanent && chown -R nestjs:nestjs /app/uploads
|
||||
2026-05-22T10:23:59.8696545Z #26 DONE 3.5s
|
||||
2026-05-22T10:24:00.0399935Z
|
||||
2026-05-22T10:24:00.0400666Z #27 exporting to image
|
||||
2026-05-22T10:24:00.0401182Z #27 exporting layers
|
||||
2026-05-22T10:24:06.4530849Z #27 exporting layers 6.4s done
|
||||
2026-05-22T10:24:06.6897164Z #27 writing image sha256:5bea8635f5e3d17befa2d42c144ebad76c9586766564a355528cb1cd6c215978 0.0s done
|
||||
2026-05-22T10:24:06.6898016Z #27 naming to docker.io/library/lcbp3-backend:latest 0.1s done
|
||||
2026-05-22T10:24:06.8783900Z #27 DONE 6.8s
|
||||
2026-05-22T10:24:08.6318421Z ✗ Frontend build failed!
|
||||
2026-05-22T10:24:08.6358306Z ❌ Failure - Main 🚀 Deploy to QNAP
|
||||
2026-05-22T10:24:08.6509404Z exitcode '1': failure
|
||||
2026-05-22T10:24:08.6850444Z evaluating expression 'always()'
|
||||
2026-05-22T10:24:08.6851332Z expression 'always()' evaluated to 'true'
|
||||
2026-05-22T10:24:08.6851584Z ⭐ Run Post Checkout
|
||||
2026-05-22T10:24:08.6851972Z Writing entry to tarball workflow/outputcmd.txt len:0
|
||||
2026-05-22T10:24:08.6852271Z Writing entry to tarball workflow/statecmd.txt len:0
|
||||
2026-05-22T10:24:08.6852480Z Writing entry to tarball workflow/pathcmd.txt len:0
|
||||
2026-05-22T10:24:08.6852702Z Writing entry to tarball workflow/envs.txt len:0
|
||||
2026-05-22T10:24:08.6852893Z Writing entry to tarball workflow/SUMMARY.md len:0
|
||||
2026-05-22T10:24:08.6853379Z Extracting content to '/var/run/act'
|
||||
2026-05-22T10:24:08.6896063Z run post step for ' Checkout'
|
||||
2026-05-22T10:24:08.6898141Z executing remote job container: [node /var/run/act/actions/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab/dist/index.js]
|
||||
2026-05-22T10:24:08.6898544Z 🐳 docker exec cmd=[node /var/run/act/actions/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab/dist/index.js] user= workdir=
|
||||
2026-05-22T10:24:08.6898788Z Exec command '[node /var/run/act/actions/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab/dist/index.js]'
|
||||
2026-05-22T10:24:08.6899532Z Working directory '/workspace/np-dms/lcbp3'
|
||||
2026-05-22T10:24:09.0123893Z [command]/usr/bin/git version
|
||||
2026-05-22T10:24:09.0213596Z git version 2.30.2
|
||||
2026-05-22T10:24:09.0281515Z ***
|
||||
2026-05-22T10:24:09.0318978Z Temporarily overriding HOME='/tmp/6a9d0132-4f19-4b7b-9386-c0881115a0c0' before making global git config changes
|
||||
2026-05-22T10:24:09.0321291Z Adding repository directory to the temporary git global config as a safe directory
|
||||
2026-05-22T10:24:09.0337385Z [command]/usr/bin/git config --global --add safe.directory /workspace/np-dms/lcbp3
|
||||
2026-05-22T10:24:09.0430192Z [command]/usr/bin/git config --local --name-only --get-regexp core\.sshCommand
|
||||
2026-05-22T10:24:09.0515049Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'core\.sshCommand' && git config --local --unset-all 'core.sshCommand' || :"
|
||||
2026-05-22T10:24:09.1132415Z [command]/usr/bin/git config --local --name-only --get-regexp http\.https\:\/\/git\.np\-dms\.work\/\.extraheader
|
||||
2026-05-22T10:24:09.1199770Z http.https://git.np-dms.work/.extraheader
|
||||
2026-05-22T10:24:09.1225636Z [command]/usr/bin/git config --local --unset-all http.https://git.np-dms.work/.extraheader
|
||||
2026-05-22T10:24:09.1319879Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'http\.https\:\/\/git\.np\-dms\.work\/\.extraheader' && git config --local --unset-all 'http.https://git.np-dms.work/.extraheader' || :"
|
||||
2026-05-22T10:24:09.1940569Z [command]/usr/bin/git config --local --name-only --get-regexp ^includeIf\.gitdir:
|
||||
2026-05-22T10:24:09.2040311Z [command]/usr/bin/git submodule foreach --recursive git config --local --show-origin --name-only --get-regexp remote.origin.url
|
||||
2026-05-22T10:24:09.2723897Z ✅ Success - Post Checkout
|
||||
2026-05-22T10:24:09.2854292Z Cleaning up container for job deploy
|
||||
2026-05-22T10:24:11.0047747Z Removed container: 01e4a727333d4c4537456a6cf1c4cb5756fea90f93313931fbf1d1185da90a0a
|
||||
2026-05-22T10:24:11.0062802Z 🐳 docker volume rm GITEA-ACTIONS-TASK-500_WORKFLOW-CI-CD-Pipeline_JOB-deploy
|
||||
2026-05-22T10:24:11.2756102Z 🐳 docker volume rm GITEA-ACTIONS-TASK-500_WORKFLOW-CI-CD-Pipeline_JOB-deploy-env
|
||||
2026-05-22T10:24:11.5323408Z 🏁 Job failed
|
||||
2026-05-22T10:24:11.5426433Z Job 'deploy' failed
|
||||
@@ -35,6 +35,7 @@
|
||||
--chart-4: 174 60% 40%;
|
||||
--chart-5: 30 85% 55%;
|
||||
--radius: 0.5rem;
|
||||
--font-sans: 'Inter', ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
|
||||
}
|
||||
.dark {
|
||||
--background: 221 67% 10%;
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
// File: app/layout.tsx
|
||||
import type { Metadata } from 'next';
|
||||
import { Inter } from 'next/font/google';
|
||||
import './globals.css';
|
||||
import { cn } from '@/lib/utils';
|
||||
import QueryProvider from '@/providers/query-provider';
|
||||
@@ -10,8 +9,6 @@ import { Toaster } from '@/components/ui/sonner';
|
||||
import { headers } from 'next/headers';
|
||||
import { AiStatusBannerHost } from '@/components/ai/ai-status-banner-host';
|
||||
|
||||
const inter = Inter({ subsets: ['latin'] });
|
||||
|
||||
export const metadata: Metadata = {
|
||||
title: 'LCBP3-DMS',
|
||||
description: 'Document Management System for Laem Chabang Port Phase 3',
|
||||
@@ -27,7 +24,7 @@ export default async function RootLayout({ children }: RootLayoutProps) {
|
||||
return (
|
||||
<html lang="en" suppressHydrationWarning>
|
||||
<head />
|
||||
<body className={cn('min-h-screen bg-background font-sans antialiased', inter.className)}>
|
||||
<body className={cn('min-h-screen bg-background font-sans antialiased')}>
|
||||
<SessionProvider>
|
||||
<ThemeProvider nonce={nonce}>
|
||||
<QueryProvider>
|
||||
|
||||
@@ -14,6 +14,9 @@ const config = {
|
||||
},
|
||||
},
|
||||
extend: {
|
||||
fontFamily: {
|
||||
sans: ['var(--font-sans)'],
|
||||
},
|
||||
colors: {
|
||||
border: 'hsl(var(--border))',
|
||||
input: 'hsl(var(--input))',
|
||||
|
||||
+69
-25
@@ -1,7 +1,7 @@
|
||||
# 📚 LCBP3-DMS Specifications Directory
|
||||
|
||||
**Version:** 1.9.2 (AI Model Revision & Hybrid Staging)
|
||||
**Last Updated:** 2026-05-18
|
||||
**Version:** 1.9.5 (AI Intent/Tool Layer/Chat/Admin Console ADRs + Migration Arch Refactor)
|
||||
**Last Updated:** 2026-05-22
|
||||
**Project:** LCBP3-DMS (Laem Chabang Port Phase 3 - Document Management System)
|
||||
**Status:** ✅ Production Ready — 10/10 Documentation Gaps Closed • Hybrid Specs Structure Applied
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
|
||||
---
|
||||
|
||||
## 📂 Directory Structure (v1.9.0)
|
||||
## 📂 Directory Structure (v1.9.5)
|
||||
|
||||
```text
|
||||
specs/
|
||||
@@ -48,11 +48,13 @@ specs/
|
||||
│ ├── 03-04-legacy-data-migration.md # Legacy Data Migration จาก Excel (ADR-017)
|
||||
│ ├── 03-05-n8n-migration-setup-guide.md # n8n Workflow Setup + Ollama Integration
|
||||
│ ├── 03-06-migration-business-scope.md # ★ Gap 7: Migration Scope, 3 Tiers, Go/No-Go Gates
|
||||
│ ├── 03-07-OpenRAG.md # OpenRAG Architecture & Implementation
|
||||
│ ├── lcbp3-v1.9.0-schema-01-drop.sql # Schema: DROP statements
|
||||
│ ├── lcbp3-v1.9.0-schema-02-tables.sql # Schema: CREATE TABLE (Source of Truth)
|
||||
│ ├── lcbp3-v1.9.0-schema-03-views-indexes.sql # Schema: Views + Indexes
|
||||
│ ├── lcbp3-v1.9.0-seed-basic.sql # Seed: Master Data
|
||||
│ ├── lcbp3-v1.9.0-seed-permissions.sql # Seed: CASL Permission Matrix
|
||||
│ ├── deltas/ # Schema delta files (ADR-009 incremental changes)
|
||||
│ └── README.md # ภาพรวม Data Strategy
|
||||
│
|
||||
├── 04-Infrastructure-OPS/ # โครงสร้างพื้นฐานและการปฏิบัติการ
|
||||
@@ -77,27 +79,47 @@ specs/
|
||||
│ ├── 05-03-frontend-guidelines.md # UI/UX, React Hook Form, State Strategy
|
||||
│ ├── 05-04-testing-strategy.md # Unit/E2E Testing ยุทธศาสตร์
|
||||
│ ├── 05-05-git-cheatsheet.md # การใช้ Git สำหรับทีมงาน
|
||||
│ ├── 05-05-git-conventions.md # Git Conventions (branch/commit naming)
|
||||
│ ├── 05-06-code-snippets.md # Reusable code patterns
|
||||
│ ├── 05-07-hybrid-uuid-implementation-plan.md # ADR-019 Implementation Guide
|
||||
│ ├── 05-08-i18n-guidelines.md # Localization rules
|
||||
│ └── README.md # ภาพรวมเป้าหมายงาน Engineering
|
||||
│
|
||||
├── 06-Decision-Records/ # Architecture Decision Records (23 ADRs)
|
||||
├── 06-Decision-Records/ # Architecture Decision Records (28 ADRs)
|
||||
│ ├── ADR-001 to ADR-017... # ไฟล์อธิบายสถาปัตยกรรม (ADR)
|
||||
│ ├── ADR-018-ai-boundary.md # ★ Patch 1.8.1: AI/Ollama Isolation Policy (Superseded by ADR-023)
|
||||
│ ├── ADR-019-hybrid-identifier-strategy.md # ★ Hybrid ID: INT PK + UUIDv7 Public API
|
||||
│ ├── ADR-021-integrated-workflow-context.md # ★ Workflow Engine & Step-specific Attachments
|
||||
│ ├── ADR-022-retrieval-augmented-generation.md # RAG Architecture
|
||||
│ ├── ADR-023-unified-ai-architecture.md # ★ Unified AI Architecture (Consolidates ADR-017/017B/018/020/022)
|
||||
│ ├── ADR-023A-unified-ai-architecture.md # ★ AI Model Revision: 2-Model Stack + BullMQ 2-Queue
|
||||
│ ├── ADR-024-intent-classification-strategy.md # ★ AI Intent Classification Strategy
|
||||
│ ├── ADR-025-ai-tool-layer-architecture.md # ★ AI Tool Layer Architecture
|
||||
│ ├── ADR-026-document-chat-ui-pattern.md # ★ Document Chat UI Pattern
|
||||
│ ├── ADR-027-ai-admin-console-and-dynamic-control.md # ★ AI Admin Panel & Dynamic Control
|
||||
│ ├── ADR-028-migration-architecture-refactor.md # ★ Migration Architecture Refactor (Staging Queue)
|
||||
│ └── README.md # รายชื่อ ADR ทั้งหมดพร้อมสถานะและวันที่
|
||||
│
|
||||
├── 100-Infrastructures/ # Feature Work: Infrastructure (Deployment, Monitoring, Docker Compose, Network)
|
||||
│ ├── 102-infra-ops/ # Infrastructure Operations & Deployment Automation
|
||||
│ ├── 103-node-upgrade/ # Node.js Upgrade Planning & Execution
|
||||
│ └── README.md # Category guide
|
||||
│
|
||||
├── 200-fullstacks/ # Feature Work: Fullstack Development (Backend + Frontend features, Workflow Engine, API)
|
||||
│ ├── 201-transmittals-circulation/ # Transmittals + Circulation Integration
|
||||
│ ├── 202-adr-021-integrated-workflow-conte/ # ADR-021 Integrated Workflow Context
|
||||
│ ├── 203-unified-workflow-engine/ # Unified Workflow Engine
|
||||
│ ├── 204-rfa-approval-refactor/ # RFA Approval Refactor
|
||||
│ ├── 224-intent-classification/ # AI Intent Classification
|
||||
│ ├── 225-ai-tool-layer-architecture/ # AI Tool Layer Architecture
|
||||
│ ├── 226-document-chat-ui-pattern/ # Document Chat UI Pattern
|
||||
│ ├── 227-ai-admin-console/ # AI Admin Console
|
||||
│ ├── 228-migration-arch-refactor/ # Migration Architecture Refactor
|
||||
│ └── README.md # Category guide
|
||||
│
|
||||
├── 300-others/ # Feature Work: Documentation, Research, Non-code tasks
|
||||
│ ├── 301-unified-ai-arch/ # Unified AI Architecture Research
|
||||
│ ├── 302-ai-model-revision/ # AI Model Revision Research
|
||||
│ └── README.md # Category guide
|
||||
│
|
||||
├── 08-Tasks/ # Task documents
|
||||
@@ -146,8 +168,16 @@ specs/
|
||||
| **UAT Criteria** | `01-Requirements/01-05-acceptance-criteria.md` | ตรวจความสมบูรณ์ Feature |
|
||||
| **Infra Hardening** | `04-Infrastructure-OPS/04-00-docker-compose/SECURITY-MIGRATION-v1.8.6.md` | Compose security runbook (v1.8.9) |
|
||||
| **ADR-009** | `06-Decision-Records/ADR-009-db-strategy.md` | Schema Change Process |
|
||||
| **ADR-018** | `06-Decision-Records/ADR-018-ai-boundary.md` | AI/Ollama Integration Rules |
|
||||
| **ADR-018** | `06-Decision-Records/ADR-018-ai-boundary.md` | AI/Ollama Integration Rules (Superseded by ADR-023) |
|
||||
| **ADR-019** | `06-Decision-Records/ADR-019-hybrid-identifier-strategy.md` | Hybrid ID Strategy (INT + UUIDv7) |
|
||||
| **ADR-021** | `06-Decision-Records/ADR-021-integrated-workflow-context.md` | Workflow Context & Step Attachments |
|
||||
| **ADR-023** | `06-Decision-Records/ADR-023-unified-ai-architecture.md` | Unified AI Architecture |
|
||||
| **ADR-023A** | `06-Decision-Records/ADR-023A-unified-ai-architecture.md` | 2-Model Stack + BullMQ 2-Queue |
|
||||
| **ADR-024** | `06-Decision-Records/ADR-024-intent-classification-strategy.md` | AI Intent Classification |
|
||||
| **ADR-025** | `06-Decision-Records/ADR-025-ai-tool-layer-architecture.md` | AI Tool Layer Architecture |
|
||||
| **ADR-026** | `06-Decision-Records/ADR-026-document-chat-ui-pattern.md` | Document Chat UI Pattern |
|
||||
| **ADR-027** | `06-Decision-Records/ADR-027-ai-admin-console-and-dynamic-control.md` | AI Admin Console & Dynamic Control |
|
||||
| **ADR-028** | `06-Decision-Records/ADR-028-migration-architecture-refactor.md` | Migration Arch Refactor (Staging Queue) |
|
||||
|
||||
---
|
||||
|
||||
@@ -163,7 +193,7 @@ specs/
|
||||
|
||||
5. **No `any` Types:** ไม่อนุญาตให้ใช้ `any` ในโค้ด พยายามใช้ Validation ผ่าน DTO / Zod แบบ Strongly-typed เสมอ — **Enforced ✅** (0 remaining in backend as of v1.9.0, ดูเทคนิคที่ `05-02-backend-guidelines.md`)
|
||||
|
||||
6. **AI Isolation (ADR-018):** Ollama ต้องรันบน **Admin Desktop** (i9-9900K, RTX 2060 SUPER 8GB) เท่านั้น — ห้ามรันบน QNAP/Production Server ห้ามมี Direct DB Access โดยเด็ดขาด AI Output ต้องผ่าน Backend Validation ก่อน Write ทุกครั้ง
|
||||
6. **AI Isolation (ADR-023/023A):** Ollama ต้องรันบน **Admin Desktop** (Desk-5439) เท่านั้น — ห้ามรันบน QNAP/Production Server ห้ามมี Direct DB Access โดยเด็ดขาด AI Output ต้องผ่าน Backend Validation ก่อน Write ทุกครั้ง ใช้ 2-Model Stack (gemma4:e4b Q8_0 + nomic-embed-text) + BullMQ 2-Queue (ai-realtime/ai-batch)
|
||||
|
||||
7. **UAT Sign-off Required:** ห้าม Close UAT โดยไม่มี Acceptance Criteria ✅ ครบทุกข้อ — ดู `01-05-acceptance-criteria.md`
|
||||
|
||||
@@ -171,25 +201,39 @@ specs/
|
||||
|
||||
---
|
||||
|
||||
## 🏛️ ADR Reference (All 17 + Patch + ADR-019)
|
||||
## 🏛️ ADR Reference (All 28 ADRs)
|
||||
|
||||
| ADR | Topic | Key Decision |
|
||||
| --------- | -------------------------- | -------------------------------------------------- |
|
||||
| ADR-001 | Workflow Engine | Unified state machine for document workflows |
|
||||
| ADR-002 | Doc Numbering | Redis Redlock + DB optimistic locking |
|
||||
| ADR-005 | Technology Stack | NestJS 11 + Next.js 16.2.0 + MariaDB + Redis |
|
||||
| ADR-006 | Redis Caching | Cache strategy and invalidation patterns |
|
||||
| ADR-008 | Email Notification | BullMQ queue-based email/LINE/in-app |
|
||||
| ADR-009 | DB Strategy | No TypeORM migrations — modify schema SQL directly |
|
||||
| ADR-010 | Logging/Monitoring | Prometheus + Loki + Grafana stack |
|
||||
| ADR-011 | App Router | Next.js 16.2.0 App Router with RSC patterns |
|
||||
| ADR-012 | UI Components | Shadcn/UI component library |
|
||||
| ADR-013 | Form Handling | React Hook Form + Zod validation |
|
||||
| ADR-014 | State Management | TanStack Query (server) + Zustand (client) |
|
||||
| ADR-015 | Deployment | Docker Compose + Gitea CI/CD |
|
||||
| ADR-016 | Security | JWT + CASL RBAC + Helmet.js + ClamAV |
|
||||
| ADR-017 | Ollama Migration | Local AI + n8n for legacy data import |
|
||||
| ADR-018 ★ | AI Boundary (Patch 1.8.1) | AI isolation — no direct DB/storage access |
|
||||
| ADR-019 ★ | Hybrid Identifier Strategy | INT PK (internal) + UUIDv7 (public API) |
|
||||
| ADR | Topic | Key Decision | สถานะ |
|
||||
| ---------- | ------------------------------- | --------------------------------------------------------- | -------- |
|
||||
| ADR-001 | Workflow Engine | Unified state machine for document workflows | ✅ Active |
|
||||
| ADR-002 | Doc Numbering | Redis Redlock + DB optimistic locking | ✅ Active |
|
||||
| ADR-003 | API Design | RESTful API design strategy | ✅ Active |
|
||||
| ADR-004 | DB Schema Design | Schema design patterns & normalization | ✅ Active |
|
||||
| ADR-005 | Technology Stack | NestJS 11 + Next.js + MariaDB + Redis | ✅ Active |
|
||||
| ADR-006 | Redis Caching | Cache strategy and invalidation patterns | ✅ Active |
|
||||
| ADR-007 | Error Handling | Layered error classification + user-friendly messages | ✅ Active |
|
||||
| ADR-008 | Email Notification | BullMQ queue-based email/LINE/in-app | ✅ Active |
|
||||
| ADR-009 | DB Strategy | No TypeORM migrations — modify schema SQL directly | ✅ Active |
|
||||
| ADR-010 | Logging/Monitoring | Prometheus + Loki + Grafana stack | ✅ Active |
|
||||
| ADR-011 | App Router | Next.js App Router with RSC patterns | ✅ Active |
|
||||
| ADR-012 | UI Components | Shadcn/UI component library | ✅ Active |
|
||||
| ADR-013 | Form Handling | React Hook Form + Zod validation | ✅ Active |
|
||||
| ADR-014 | State Management | TanStack Query (server) + Zustand (client) | ✅ Active |
|
||||
| ADR-015 | Deployment | Docker Compose + Gitea CI/CD + Blue-Green | ✅ Active |
|
||||
| ADR-016 | Security | JWT + CASL RBAC + Helmet.js + ClamAV | ✅ Active |
|
||||
| ADR-017 | Ollama Migration | Local AI + n8n for legacy data import | ✅ Active |
|
||||
| ADR-017B | AI Document Classification | ML classification for document categorization | ✅ Active |
|
||||
| ADR-018 ★ | AI Boundary (Patch 1.8.1) | AI isolation — no direct DB/storage access | Superseded by ADR-023 |
|
||||
| ADR-019 ★ | Hybrid Identifier Strategy | INT PK (internal) + UUIDv7 (public API) | ✅ Active |
|
||||
| ADR-020 | AI Intelligence Integration | AI integration pipeline architecture | ✅ Active |
|
||||
| ADR-021 ★ | Integrated Workflow Context | Workflow Engine & step-specific attachments | ✅ Active |
|
||||
| ADR-022 | Retrieval Augmented Generation | RAG architecture for document search | ✅ Active |
|
||||
| ADR-023 ★ | Unified AI Architecture | Consolidates ADR-017/017B/018/020/022 | ✅ Active |
|
||||
| ADR-023A ★ | AI Model Revision | 2-Model stack + BullMQ 2-Queue + OCR auto-detect | ✅ Active |
|
||||
| ADR-024 ★ | Intent Classification Strategy | AI intent classification for user queries (2026-05-19) | ✅ Active |
|
||||
| ADR-025 ★ | AI Tool Layer Architecture | Tool layer pattern for AI capability composition | ✅ Active |
|
||||
| ADR-026 ★ | Document Chat UI Pattern | Document-centric chat UI (2026-05-19) | ✅ Active |
|
||||
| ADR-027 ★ | AI Admin Console & Dynamic Ctrl | AI Admin Panel + dynamic model/prompt control (2026-05-20) | ✅ Active |
|
||||
| ADR-028 ★ | Migration Architecture Refactor | Staging Queue & post-migration cleanup (2026-05-22) | ✅ Active |
|
||||
|
||||
> **Priority:** `06-Decision-Records` > `05-Engineering-Guidelines` > others
|
||||
|
||||
Reference in New Issue
Block a user