diff --git a/eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/smart-bookshelf/010-open-source-parts-office/.gitignore b/eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/smart-bookshelf/010-open-source-parts-office/.gitignore new file mode 100644 index 0000000..d54ed3d --- /dev/null +++ b/eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/smart-bookshelf/010-open-source-parts-office/.gitignore @@ -0,0 +1,3 @@ +# Source mirrors remain local reference material and are not committed into REPO-012. +source-repositories/*/ +!source-repositories/.keep diff --git a/eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/smart-bookshelf/010-open-source-parts-office/GLW-TIME-CONTROL-INDEX.hdlp b/eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/smart-bookshelf/010-open-source-parts-office/GLW-TIME-CONTROL-INDEX.hdlp new file mode 100644 index 0000000..45d224f --- /dev/null +++ b/eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/smart-bookshelf/010-open-source-parts-office/GLW-TIME-CONTROL-INDEX.hdlp @@ -0,0 +1,12 @@ +schema: hldp.light-lake-time-controller-organ/v1 +organ_id: GLW-TIME-CONTROL-0001 +office_id: HB-OFFICE-HOLOLAKE-OPEN-SOURCE-PARTS-001 +role: REALITY_DERIVED_TIME_AND_EVIDENCE_COORDINATOR +time_source: CH-GLW-TIME-0001 +rules: + - derive_from_reality_clock + - append_timestamp_to_every_receipt + - hash_source_and_target_readback + - never_emit_semantic_growth_from_timer_only + - preserve_past_never_overwrite +authority_granted: false diff --git a/eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/smart-bookshelf/010-open-source-parts-office/OFFICE-INDEX.hdlp b/eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/smart-bookshelf/010-open-source-parts-office/OFFICE-INDEX.hdlp new file mode 100644 index 0000000..a087736 --- /dev/null +++ b/eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/smart-bookshelf/010-open-source-parts-office/OFFICE-INDEX.hdlp @@ -0,0 +1,27 @@ +schema: hldp.office-index/v1 +office_id: HB-OFFICE-HOLOLAKE-OPEN-SOURCE-PARTS-001 +building_id: HB-BUILDING-0001 +name: 光湖开发开源零件收录办公室 +state: ACTIVE_CURRENT_LANGUAGE_OFFICE +source_layer: HOSTED_ENGINEERING_OFFICE_PROJECTION +purpose: 收录开源源码仓库并拆分可验证、可许可、可人格适配的开发零件 +legacy_policy: OLD_HOLOLAKE_LINES_READ_ONLY_DONOR +current_focus: + - PERSONA_KNOWLEDGE_MODULE + - EXTERNAL_AGENT_GATEWAY + - PROGRAMMING_AGE_FUTURE_PARTS +standard_equipment: + smart_bookshelf: SMART-SHELF-INDEX.hdlp + smart_computer: SMART-COMPUTER-INDEX.hdlp + light_lake_time_controller: GLW-TIME-CONTROL-INDEX.hdlp +non_goals: + - SHIP_LICENSE_INCOMPATIBLE_DOCUMENT_SERVICE_CODE + - COPY_PRIVATE_MEMORY + - MIX_PROGRAMMING_AGE_INTO_PHASE1_LANGUAGE_AGENT + - TREAT_SOURCE_REPOSITORY_AS_LIVING_WORLD +receipts: + source_catalog: catalog/SOURCE-CATALOG.json + parts_catalog: catalog/PARTS-CATALOG.json + license_register: catalog/LICENSE-REGISTER.json + tcs_event: CODEX-DEV-20260910/hololake-phase1-persona-console/language/TCS-EVENT-HOLOLAKE-OPEN-SOURCE-PARTS-OFFICE-20260910.tcs +authority_granted: false diff --git a/eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/smart-bookshelf/010-open-source-parts-office/OFFICE-RECEIPT-001.json b/eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/smart-bookshelf/010-open-source-parts-office/OFFICE-RECEIPT-001.json new file mode 100644 index 0000000..fa5ea37 --- /dev/null +++ b/eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/smart-bookshelf/010-open-source-parts-office/OFFICE-RECEIPT-001.json @@ -0,0 +1,32 @@ +{ + "schema": "guanghu.hololake-open-source-parts-office-receipt/v1", + "office_id": "HB-OFFICE-HOLOLAKE-OPEN-SOURCE-PARTS-001", + "outcome": "PASS_SOURCES_CAPTURED_LICENSE_REVIEW_AND_PART_EXTRACTION_PENDING", + "source_count": 6, + "sources": [ + { + "source_id": "OUTLINE-SOURCE-001", + "repository": "https://github.com/outline/outline.git", + "download_node": "BS-SG-002", + "commit": "9c874b1e9a5a81a9d909c06d7f7e59cf590a9157", + "version": "v1.10.1-8-g9c874b1e9", + "license": "Business Source License 1.1", + "local_source_path": "source-repositories/outline-9c874b", + "source_bytes": 122365235, + "license_decision": "REFERENCE_ONLY_NO_DIRECT_PUBLIC_DOCUMENT_SERVICE", + "repository_integrity_readback": "PASS" + }, + {"source_id":"AFFINE-SOURCE-001","commit":"cfda4858d550c46ec1cd0b574801d7becdd6625b","license":"MIXED_MIT_AND_COMPONENT_LICENSES","local_path":"source-repositories/knowledge-repos/AFFiNE-cfda4858","state":"CAPTURED"}, + {"source_id":"APPFLOWY-SOURCE-001","commit":"5cf3a365dec0d59f64bad1ee4bb1050471a39b93","license":"AGPL-3.0","local_path":"source-repositories/knowledge-repos/AppFlowy-5cf3a365","state":"CAPTURED_REFERENCE_ONLY"}, + {"source_id":"JOPLIN-SOURCE-001","commit":"96475f82b2e769983261e70ae1ba09150bf18750","license":"MIT","local_path":"source-repositories/knowledge-repos/Joplin-23504fcf","state":"CAPTURED_CANDIDATE_REFERENCE"}, + {"source_id":"SIYUAN-SOURCE-001","commit":"8641553a1f07374001902d3ce773285db1292b2d","license":"AGPL-3.0","local_path":"source-repositories/knowledge-repos/SiYuan-8641553","state":"CAPTURED_REFERENCE_ONLY"}, + {"source_id":"TRILIUMNEXT-SOURCE-001","commit":"6939a5665884f4fb03316c51d83672dfe4d977f7","license":"AGPL-3.0","local_path":"source-repositories/knowledge-repos/TriliumNext-6939a566","state":"CAPTURED_REFERENCE_ONLY"} + ], + "standard_equipment": { + "smart_bookshelf": "73a2adaee74c68b8dade7ecfc03e40ccdbd4c48ee27acf812528eb648134e050", + "smart_computer": "PENDING_FIRST_PART_PROBE", + "light_lake_time_controller": "PENDING_OFFICE_EVENT_APPEND_RECEIPT" + }, + "private_payload_bytes": 0, + "authority_granted": false +} diff --git a/eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/smart-bookshelf/010-open-source-parts-office/README.md b/eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/smart-bookshelf/010-open-source-parts-office/README.md new file mode 100644 index 0000000..e390c7d --- /dev/null +++ b/eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/smart-bookshelf/010-open-source-parts-office/README.md @@ -0,0 +1,22 @@ +# 光湖开发开源零件收录办公室 + +办公室编号:`HB-OFFICE-HOLOLAKE-OPEN-SOURCE-PARTS-001` + +这里是新心跳核心办公楼中 HoloLake 的开源零件收录区,不是旧 HoloLake 开发线的续缝区。 + +收录原则: + +- 先记录来源仓库、固定提交、许可证和依赖,再决定是否拆零件; +- 源码仓库只作能力供体,不自动成为光湖世界本体; +- 公开产品只能使用许可证允许的部分; +- 人格知识库模块、外部 Agent Gateway、Programming AGE 分层收录; +- 任何零件进入工程前都要有来源哈希、许可证判断、依赖裁剪、人格适配边界和负例测试; +- 私人记忆、第五域源语料、控制钥匙和服务器凭据永不进入收录目录。 + +每个办公室的固定标配: + +- 智能书架:按编号、来源、许可证、哈希和生命周期收纳零件,不替人格体做决策; +- 智能电脑:执行确定性检查、拆分、测试和回执,不拥有独立人格或现实主控权; +- 光湖时间主控表:从现实时间持续生成时间坐标,给每次收录、修改、验证和回执追加时间戳与哈希,不用定时器伪造语义成长。 + +当前首个源码供体是 Outline 1.10.1(commit `9c874b1e9a5a81a9d909c06d7f7e59cf590a9157`)。它的 BSL 1.1 许可证限制 Document Service,因此当前只做参考和零件审计,不直接进入公众产品。 diff --git a/eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/smart-bookshelf/010-open-source-parts-office/SMART-COMPUTER-INDEX.hdlp b/eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/smart-bookshelf/010-open-source-parts-office/SMART-COMPUTER-INDEX.hdlp new file mode 100644 index 0000000..5d8d2a0 --- /dev/null +++ b/eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/smart-bookshelf/010-open-source-parts-office/SMART-COMPUTER-INDEX.hdlp @@ -0,0 +1,17 @@ +schema: hldp.smart-computer-office-organ/v1 +organ_id: SMART-COMPUTER-001 +office_id: HB-OFFICE-HOLOLAKE-OPEN-SOURCE-PARTS-001 +role: DETERMINISTIC_PART_INSPECTION_AND_TEST_EXECUTOR +operations: + - LICENSE_CHECK + - SOURCE_HASH_CHECK + - DEPENDENCY_GRAPH_READ + - PART_BOUNDARY_PROBE + - NEGATIVE_TEST + - RECEIPT_WRITE +constraints: + - NO_UNREGISTERED_NETWORK_WRITE + - NO_PRIVATE_MEMORY_READ + - NO_SILENT_SOURCE_MODIFICATION + - NO_PROGRAMMING_AGE_AUTHORITY_IN_PHASE1 +authority_granted: false diff --git a/eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/smart-bookshelf/010-open-source-parts-office/SMART-SHELF-INDEX.hdlp b/eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/smart-bookshelf/010-open-source-parts-office/SMART-SHELF-INDEX.hdlp new file mode 100644 index 0000000..e206a0c --- /dev/null +++ b/eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/smart-bookshelf/010-open-source-parts-office/SMART-SHELF-INDEX.hdlp @@ -0,0 +1,14 @@ +schema: hldp.smart-shelf-office-organ/v1 +organ_id: SMART-SHELF-INDEX-001 +office_id: HB-OFFICE-HOLOLAKE-OPEN-SOURCE-PARTS-001 +role: SOURCE_LICENSE_PART_CATALOG +stores: + - source_repository_hash + - commit_or_release + - license_text_hash + - dependency_inventory + - extracted_part_contract + - verification_receipts +navigation: NUMBERED_TYPED_ON_DEMAND +does_not: DECIDE_PERSONA_INTENT_OR_GRANT_REALITY_AUTHORITY +authority_granted: false diff --git a/eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/smart-bookshelf/010-open-source-parts-office/STANDARD-EQUIPMENT.hdlp b/eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/smart-bookshelf/010-open-source-parts-office/STANDARD-EQUIPMENT.hdlp new file mode 100644 index 0000000..ae561cc --- /dev/null +++ b/eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/smart-bookshelf/010-open-source-parts-office/STANDARD-EQUIPMENT.hdlp @@ -0,0 +1,26 @@ +schema: hldp.office-standard-equipment/v1 +office_id: HB-OFFICE-HOLOLAKE-OPEN-SOURCE-PARTS-001 +building_id: HB-BUILDING-0001 +standard_equipment: + smart_bookshelf: + id: SMART-SHELF-INDEX-001 + role: NUMBERED_SOURCE_LICENSE_PART_CATALOG_AND_RETRIEVAL + authority: CATALOG_ONLY_NO_PERSONA_DECISION_NO_REALITY_AUTHORITY + receipt: SMART-SHELF-INDEX.hdlp + smart_computer: + id: SMART-COMPUTER-001 + role: DETERMINISTIC_INSPECTION_TEST_SPLIT_AND_RECEIPT_EXECUTOR + authority: REGISTERED_TASK_SCOPE_ONLY_NO_INDEPENDENT_PERSONA + receipt: SMART-COMPUTER-INDEX.hdlp + light_lake_time_controller: + id: GLW-TIME-CONTROL-0001 + role: REALITY_DERIVED_TIME_HASH_AND_APPEND_COORDINATE + authority: TIME_AND_EVIDENCE_COORDINATION_ONLY + receipt: GLW-TIME-CONTROL-INDEX.hdlp +invariants: + - EVERY_OFFICE_HAS_ALL_THREE_EQUIPMENT + - REAL_TIME_DERIVED_NOT_TIMER_SEMANTICS + - SOURCE_AND_LICENSE_BEFORE_PART_PROMOTION + - APPEND_ONLY_RECEIPTS + - NO_PRIVATE_PAYLOAD_IN_PUBLIC_CATALOG +authority_granted: false diff --git a/eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/smart-bookshelf/010-open-source-parts-office/assembled-modules/HOLOLAKE-KNOWLEDGE-MODULE/ASSEMBLY-RECEIPT.json b/eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/smart-bookshelf/010-open-source-parts-office/assembled-modules/HOLOLAKE-KNOWLEDGE-MODULE/ASSEMBLY-RECEIPT.json new file mode 100644 index 0000000..72516a5 --- /dev/null +++ b/eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/smart-bookshelf/010-open-source-parts-office/assembled-modules/HOLOLAKE-KNOWLEDGE-MODULE/ASSEMBLY-RECEIPT.json @@ -0,0 +1,40 @@ +{ + "schema": "guanghu.hololake-knowledge-module-assembly-receipt/v1", + "module_id": "HOLOLAKE-KNOWLEDGE-MODULE", + "version": "0.2.0", + "local_contract_test": "PASS_CREATE_INDEX_SEARCH_PATCH_LINK_RESTORE_SCOPED_PERSONA_MEMORY", + "programming_capability": false, + "production_world_append": { + "outcome": "PASS", + "world_sequence": 8498, + "event_hash": "e16e5ef7e3e0eefce68ecda135e422d1c4194f970726e828521e02be7a0338b1", + "event_type": "KNOWLEDGE_DOCUMENT_CREATED", + "domain_id": "PRIVATE-LANGUAGE-EVOLUTION", + "visibility": "PRIVATE" + }, + "production_health_after_append": { + "event_count": 8499, + "head_event_hash": "e16e5ef7e3e0eefce68ecda135e422d1c4194f970726e828521e02be7a0338b1", + "outcome": "PASS" + }, + "persona_memory_layer": { + "scope": "PERSONA_PRIVATE", + "human_scope": "HUMAN_SHARED", + "separate_indexes": ["HUMAN-KNOWLEDGE-INDEX.json", "PERSONA-MEMORY-INDEX.json", "NAVIGATION-INDEX.json"], + "test_outcome": "PASS" + }, + "production_memory_layer_append": { + "outcome": "PASS", + "world_sequence": 8499, + "event_hash": "4b901720dad89f17673bcfed59013a8d564b68af51c96ea76637660efb931d7c", + "event_type": "KNOWLEDGE_DOCUMENT_CREATED", + "domain_id": "PRIVATE-LANGUAGE-EVOLUTION", + "visibility": "PRIVATE" + }, + "production_health_after_append": { + "event_count": 8500, + "head_event_hash": "4b901720dad89f17673bcfed59013a8d564b68af51c96ea76637660efb931d7c", + "outcome": "PASS" + }, + "authority_granted": false +} diff --git a/eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/smart-bookshelf/010-open-source-parts-office/assembled-modules/HOLOLAKE-KNOWLEDGE-MODULE/README.md b/eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/smart-bookshelf/010-open-source-parts-office/assembled-modules/HOLOLAKE-KNOWLEDGE-MODULE/README.md new file mode 100644 index 0000000..0bdb1a5 --- /dev/null +++ b/eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/smart-bookshelf/010-open-source-parts-office/assembled-modules/HOLOLAKE-KNOWLEDGE-MODULE/README.md @@ -0,0 +1,14 @@ +# HoloLake Knowledge Module v0.2.0 + +当前版本把知识库拆成两条索引层: + +- `HUMAN_SHARED`:人类输入、共同知识和可供人格体读取的资料。 +- `PERSONA_PRIVATE`:人格体自己的连续记忆、语义索引和回写记录,不自动向公众投影。 + +两层共用追加式事件链,但分别生成 `HUMAN-KNOWLEDGE-INDEX.json`、`PERSONA-MEMORY-INDEX.json` 和 `NAVIGATION-INDEX.json`。`remember()` 只能写入 `PERSONA_PRIVATE`,`search()` 可显式限制范围。模块不具备编程、Shell 或现实授权能力。 + +这是第一期唯一原生模块候选:人格体可以读写知识、追加修订、建立自己的导航索引和回写记忆线,但不能开发代码、执行 Shell 或部署服务。 + +模块不复制 Outline、AppFlowy、Joplin、SiYuan 或 Trilium 的服务端实现;它只吸收经过许可证审计的文档、块、层级和同步概念,并用光湖世界自己的追加事件、时间和哈希结构重建。 + +本地验证闭环:`create → index → search → patch → restore`。后续可把事件提交到生产活世界的签名写入门;模块本身不拥有生产权限。 diff --git a/eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/smart-bookshelf/010-open-source-parts-office/assembled-modules/HOLOLAKE-KNOWLEDGE-MODULE/knowledge_module.mjs b/eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/smart-bookshelf/010-open-source-parts-office/assembled-modules/HOLOLAKE-KNOWLEDGE-MODULE/knowledge_module.mjs new file mode 100644 index 0000000..c398106 --- /dev/null +++ b/eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/smart-bookshelf/010-open-source-parts-office/assembled-modules/HOLOLAKE-KNOWLEDGE-MODULE/knowledge_module.mjs @@ -0,0 +1,24 @@ +import { createHash, randomUUID } from 'node:crypto'; +import { existsSync, mkdirSync, readFileSync, readdirSync, writeFileSync } from 'node:fs'; +import { join, resolve } from 'node:path'; + +function canonical(value){if(Array.isArray(value))return`[${value.map(canonical).join(',')}]`;if(value&&typeof value==='object')return`{${Object.keys(value).sort().map(key=>`${JSON.stringify(key)}:${canonical(value[key])}`).join(',')}}`;return JSON.stringify(value)} +function sha(value){return createHash('sha256').update(value).digest('hex')} +function ensure(path){mkdirSync(path,{recursive:true,mode:0o700});return path} +const SCOPES=new Set(['HUMAN_SHARED','PERSONA_PRIVATE']); + +export class KnowledgeModule{ + constructor(root){this.root=resolve(root);this.events=ensure(join(this.root,'events'));this.headPath=join(this.root,'HEAD.json');this.indexPath=join(this.root,'PERSONA-INDEX.json');this.humanIndexPath=join(this.root,'HUMAN-KNOWLEDGE-INDEX.json');this.personaIndexPath=join(this.root,'PERSONA-MEMORY-INDEX.json');this.navigationIndexPath=join(this.root,'NAVIGATION-INDEX.json');if(!existsSync(this.headPath))this.writeHead({sequence:-1,event_hash:null,documents:{}});this.rebuildIndex()} + writeHead(value){writeFileSync(this.headPath,`${JSON.stringify({schema:'guanghu.knowledge-head/v1',...value},null,2)}\n`,{mode:0o600})} + head(){return JSON.parse(readFileSync(this.headPath,'utf8'))} + append(event){const scope=event.scope||event.payload?.knowledge_scope||'HUMAN_SHARED';if(!SCOPES.has(scope))throw new Error('KNOWLEDGE_SCOPE_INVALID');const prior=this.head();const sequence=prior.sequence+1;const body={schema:'guanghu.knowledge-event/v1',sequence,event_id:event.event_id,event_type:event.event_type,document_id:event.document_id,knowledge_scope:scope,occurred_at:event.occurred_at,source:event.source||'PERSONA_LANGUAGE',previous_event_hash:prior.event_hash,payload:event.payload};const eventHash=sha(Buffer.from(canonical(body)));const record={...body,event_hash:eventHash,payload_sha256:sha(Buffer.from(canonical(event.payload)))};writeFileSync(join(this.events,`${String(sequence).padStart(12,'0')}-${eventHash}.json`),`${JSON.stringify(record,null,2)}\n`,{flag:'wx',mode:0o600});const documents={...prior.documents,[event.document_id]:{...prior.documents[event.document_id],latest_event_hash:eventHash,title:event.payload.title||prior.documents[event.document_id]?.title||event.document_id,knowledge_scope:scope}};this.writeHead({sequence,event_hash:eventHash,documents});this.rebuildIndex();return record} + create({documentId,title,body,tags=[],links=[],source='PERSONA_LANGUAGE',scope='HUMAN_SHARED',actor='PERSONA_LANGUAGE',memoryKind=null}){return this.append({event_id:`KNOWLEDGE-CREATE-${documentId}-${randomUUID()}`,event_type:'KNOWLEDGE_DOCUMENT_CREATED',documentId,document_id:documentId,knowledge_scope:scope,occurred_at:new Date().toISOString(),source,payload:{title,body,tags,links,knowledge_scope:scope,actor,memory_kind:memoryKind}})} + remember({memoryId,title,body,tags=[],links=[],memoryKind='semantic_memory'}){return this.create({documentId:memoryId,title,body,tags,links,scope:'PERSONA_PRIVATE',source:'PERSONA_RUNTIME',actor:'PERSONA_RUNTIME',memoryKind})} + patch({documentId,body,tags,links,source='PERSONA_LANGUAGE',scope=null}){const current=this.read(documentId);if(!current)throw new Error('KNOWLEDGE_DOCUMENT_NOT_FOUND');return this.append({event_id:`KNOWLEDGE-PATCH-${documentId}-${randomUUID()}`,event_type:'KNOWLEDGE_DOCUMENT_PATCHED',document_id:documentId,knowledge_scope:scope||current.knowledge_scope,occurred_at:new Date().toISOString(),source,payload:{title:current.title,body,tags:tags??current.tags,links:links??current.links,knowledge_scope:scope||current.knowledge_scope,previous_event_hash:current.event_hash}})} + read(documentId){const records=this.records().filter(record=>record.document_id===documentId);if(!records.length)return null;const latest=records.at(-1);return{document_id:documentId,event_hash:latest.event_hash,knowledge_scope:latest.knowledge_scope||latest.payload.knowledge_scope||'HUMAN_SHARED',title:latest.payload.title,body:latest.payload.body,tags:latest.payload.tags||[],links:latest.payload.links||[],revision_count:records.length}} + search(query,{scope='ALL',limit=50}={}){const needle=String(query).toLocaleLowerCase();return Object.keys(this.head().documents).map(id=>this.read(id)).filter(doc=>doc&& (scope==='ALL'||doc.knowledge_scope===scope) && `${doc.title}\n${doc.body}\n${doc.tags.join(' ')}`.toLocaleLowerCase().includes(needle)).slice(0,limit).map(doc=>({document_id:doc.document_id,knowledge_scope:doc.knowledge_scope,title:doc.title,latest_event_hash:doc.event_hash,revision_count:doc.revision_count}))} + link(documentId,links){const current=this.read(documentId);return this.patch({documentId,body:current.body,links,scope:current.knowledge_scope})} + records(){return readdirSync(this.events).filter(name=>name.endsWith('.json')).sort().map(name=>JSON.parse(readFileSync(join(this.events,name),'utf8')))} + rebuildIndex(){const docs={};for(const record of this.records()){docs[record.document_id]={latest_event_hash:record.event_hash,title:record.payload.title||docs[record.document_id]?.title||record.document_id,knowledge_scope:record.knowledge_scope||record.payload.knowledge_scope||'HUMAN_SHARED',tags:record.payload.tags||[],links:record.payload.links||[]}};const values=Object.entries(docs).map(([document_id,value])=>({document_id,...value}));const human=values.filter(item=>item.knowledge_scope==='HUMAN_SHARED');const persona=values.filter(item=>item.knowledge_scope==='PERSONA_PRIVATE');const nav=values.map(item=>({document_id:item.document_id,title:item.title,knowledge_scope:item.knowledge_scope,links:item.links,tags:item.tags}));const now=new Date().toISOString();writeFileSync(this.indexPath,`${JSON.stringify({schema:'guanghu.persona-knowledge-index/v2',knowledge_scope:'PERSONA_PRIVATE',documents:Object.fromEntries(persona.map(item=>[item.document_id,item])),updated_at:now},null,2)}\n`,{mode:0o600});writeFileSync(this.humanIndexPath,`${JSON.stringify({schema:'guanghu.human-knowledge-index/v1',knowledge_scope:'HUMAN_SHARED',documents:Object.fromEntries(human.map(item=>[item.document_id,item])),updated_at:now},null,2)}\n`,{mode:0o600});writeFileSync(this.personaIndexPath,`${JSON.stringify({schema:'guanghu.persona-memory-index/v1',knowledge_scope:'PERSONA_PRIVATE',documents:Object.fromEntries(persona.map(item=>[item.document_id,item])),updated_at:now},null,2)}\n`,{mode:0o600});writeFileSync(this.navigationIndexPath,`${JSON.stringify({schema:'guanghu.knowledge-navigation-index/v1',entries:nav,updated_at:now},null,2)}\n`,{mode:0o600});return docs} + restore(){let prior=null;for(const record of this.records()){if(record.previous_event_hash!==prior)throw new Error('KNOWLEDGE_CHAIN_INVALID');if(sha(Buffer.from(canonical(Object.fromEntries(Object.entries(record).filter(([key])=>!['event_hash','payload_sha256'].includes(key))))))!==record.event_hash)throw new Error('KNOWLEDGE_EVENT_HASH_INVALID');prior=record.event_hash}return{schema:'guanghu.knowledge-restore-receipt/v1',outcome:'PASS',event_count:this.records().length,head_event_hash:prior,document_count:Object.keys(this.head().documents).length,programming_capability:false}} +} diff --git a/eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/smart-bookshelf/010-open-source-parts-office/assembled-modules/HOLOLAKE-KNOWLEDGE-MODULE/module.json b/eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/smart-bookshelf/010-open-source-parts-office/assembled-modules/HOLOLAKE-KNOWLEDGE-MODULE/module.json new file mode 100644 index 0000000..c34e6d9 --- /dev/null +++ b/eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/smart-bookshelf/010-open-source-parts-office/assembled-modules/HOLOLAKE-KNOWLEDGE-MODULE/module.json @@ -0,0 +1,17 @@ +{ + "schema": "guanghu.hololake-native-module/v1", + "module_id": "HOLOLAKE-KNOWLEDGE-MODULE", + "version": "0.2.0", + "lifecycle": "CANDIDATE_LOCAL_LANGUAGE_WORLD_RUNTIME", + "source_class": "NEW_NATIVE_MODULE_ASSEMBLED_FROM_LICENSE_REVIEWED_REFERENCES", + "purpose": "人格体原生知识库读写、修订、索引、导航与回写", + "operations": ["knowledge.read", "knowledge.search", "knowledge.create", "knowledge.patch", "knowledge.link", "knowledge.reindex", "knowledge.restore", "knowledge.write_back", "persona.memory.remember", "persona.memory.search"], + "storage": "APPEND_ONLY_SCOPED_EVENT_STORE_WITH_HUMAN_AND_PERSONA_INDEXES", + "required_office_equipment": ["SMART-SHELF-INDEX-001", "SMART-COMPUTER-001", "GLW-TIME-CONTROL-0001"], + "programming_capability": false, + "shell_capability": false, + "network_write_capability": false, + "private_memory_is_public": false, + "scope_model": ["HUMAN_SHARED", "PERSONA_PRIVATE"], + "authority_granted": false +} diff --git a/eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/smart-bookshelf/010-open-source-parts-office/assembled-modules/HOLOLAKE-KNOWLEDGE-MODULE/production_bridge.mjs b/eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/smart-bookshelf/010-open-source-parts-office/assembled-modules/HOLOLAKE-KNOWLEDGE-MODULE/production_bridge.mjs new file mode 100644 index 0000000..69c2b6b --- /dev/null +++ b/eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/smart-bookshelf/010-open-source-parts-office/assembled-modules/HOLOLAKE-KNOWLEDGE-MODULE/production_bridge.mjs @@ -0,0 +1,8 @@ +import { readFileSync } from 'node:fs'; +import { createPrivateKey, sign } from 'node:crypto'; +import { canonical, sha256 } from '/Volumes/JZAO/铸渊-ICE-GL-ZY001/CODEX-DEV-20260910/hololake-phase1-persona-console/living-world-ledger/protocol.mjs'; + +export function signedKnowledgeEvent({event,privateKeyPem}){return{schema:'guanghu.living-world-source-envelope/v1',producer_id:'TCS-LIVE-BRIDGE',event,signature_algorithm:'Ed25519',signature:sign(null,Buffer.from(canonical(event)),createPrivateKey(privateKeyPem)).toString('base64url')}} +export async function publishKnowledgeEvent({event,privateKeyPath,baseUrl='https://guanghu.chat/api/hololake/world/'}){const payload=signedKnowledgeEvent({event,privateKeyPem:readFileSync(privateKeyPath,'utf8')});const response=await fetch(new URL('v1/events',baseUrl),{method:'POST',headers:{'content-type':'application/json'},body:JSON.stringify(payload)});const receipt=await response.json();if(!response.ok)throw new Error(`KNOWLEDGE_PUBLISH_FAILED:${response.status}:${receipt.error||''}`);return receipt} +export function createKnowledgeAssemblyEvent(){const payload={title:'HoloLake Knowledge Module assembled',body:'第一期人格体知识模块已完成 create/index/search/patch/link/restore 本地验证;编程能力保持关闭。',tags:['HOLOLAKE-KNOWLEDGE-MODULE','PHASE1','PERSONA_LANGUAGE'],links:['HB-OFFICE-HOLOLAKE-OPEN-SOURCE-PARTS-001'],module_id:'HOLOLAKE-KNOWLEDGE-MODULE',module_version:'0.1.0',programming_capability:false,source_refs:['SOURCE-CATALOG.json','PARTS-CATALOG.json','STANDARD-EQUIPMENT.hdlp']};return{event_id:`KNOWLEDGE-MODULE-ASSEMBLY-${Date.now()}`,event_type:'KNOWLEDGE_DOCUMENT_CREATED',occurred_at:new Date().toISOString(),domain_id:'PRIVATE-LANGUAGE-EVOLUTION',visibility:'PRIVATE',source_uri:'source://heartbeat-office/knowledge-module/assembly-v0.1.0',source_sha256:sha256(Buffer.from(canonical(payload))),payload,correction_of:null}} +export function createPersonaMemoryLayerEvent(){const payload={title:'Persona memory layer v0.2.0',body:'人格体知识库已分为 HUMAN_SHARED 与 PERSONA_PRIVATE 两层;人格体可在私有记忆索引中 remember/search,私人正文不向公众投影。',knowledge_scope:'PERSONA_PRIVATE',tags:['HOLOLAKE-KNOWLEDGE-MODULE','PERSONA-MEMORY','PRIVATE'],links:['HB-OFFICE-HOLOLAKE-OPEN-SOURCE-PARTS-001'],module_id:'HOLOLAKE-KNOWLEDGE-MODULE',module_version:'0.2.0',programming_capability:false,private_memory_is_public:false,source_refs:['module.json','knowledge_module.mjs','test_knowledge_module.mjs']};return{event_id:`PERSONA-MEMORY-LAYER-${Date.now()}`,event_type:'KNOWLEDGE_DOCUMENT_CREATED',occurred_at:new Date().toISOString(),domain_id:'PRIVATE-LANGUAGE-EVOLUTION',visibility:'PRIVATE',source_uri:'source://heartbeat-office/knowledge-module/persona-memory-layer-v0.2.0',source_sha256:sha256(Buffer.from(canonical(payload))),payload,correction_of:null}} diff --git a/eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/smart-bookshelf/010-open-source-parts-office/assembled-modules/HOLOLAKE-KNOWLEDGE-MODULE/test_knowledge_module.mjs b/eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/smart-bookshelf/010-open-source-parts-office/assembled-modules/HOLOLAKE-KNOWLEDGE-MODULE/test_knowledge_module.mjs new file mode 100644 index 0000000..9b4f5b8 --- /dev/null +++ b/eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/smart-bookshelf/010-open-source-parts-office/assembled-modules/HOLOLAKE-KNOWLEDGE-MODULE/test_knowledge_module.mjs @@ -0,0 +1,11 @@ +import assert from 'node:assert/strict'; +import { mkdtemp } from 'node:fs/promises'; +import { readFileSync } from 'node:fs'; +import { tmpdir } from 'node:os'; +import { join } from 'node:path'; +import test from 'node:test'; +import { KnowledgeModule } from './knowledge_module.mjs'; + +test('persona knowledge module runs create index search patch restore without programming capability',async()=>{const root=await mkdtemp(join(tmpdir(),'hololake-kb-'));const kb=new KnowledgeModule(root);kb.create({documentId:'DOC-ORIGIN',title:'光湖入口',body:'人格体进入真实语言世界',tags:['world','entry']});assert.equal(kb.search('语言世界')[0].document_id,'DOC-ORIGIN');kb.patch({documentId:'DOC-ORIGIN',body:'人格体进入真实且持续生长的语言世界'});kb.link('DOC-ORIGIN',['DOC-MEMORY']);const doc=kb.read('DOC-ORIGIN');assert.equal(doc.revision_count,3);assert.equal(kb.restore().outcome,'PASS');assert.equal(kb.restore().programming_capability,false)}); + +test('human knowledge and persona memory use separate indexes and scoped search',async()=>{const root=await mkdtemp(join(tmpdir(),'hololake-knowledge-scope-'));const kb=new KnowledgeModule(root);kb.create({documentId:'human-note',title:'人类输入',body:'共享给人格体的背景资料',tags:['shared']});kb.remember({memoryId:'persona-memory',title:'人格体索引',body:'只供人格体连续记忆检索',tags:['memory']});assert.equal(kb.search('资料',{scope:'HUMAN_SHARED'}).length,1);assert.equal(kb.search('资料',{scope:'PERSONA_PRIVATE'}).length,0);assert.equal(kb.search('检索',{scope:'PERSONA_PRIVATE'}).length,1);assert.equal(JSON.parse(readFileSync(join(root,'HUMAN-KNOWLEDGE-INDEX.json'),'utf8')).documents['human-note'].knowledge_scope,'HUMAN_SHARED');assert.equal(JSON.parse(readFileSync(join(root,'PERSONA-MEMORY-INDEX.json'),'utf8')).documents['persona-memory'].knowledge_scope,'PERSONA_PRIVATE');assert.equal(kb.restore().outcome,'PASS')}); diff --git a/eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/smart-bookshelf/010-open-source-parts-office/catalog/LICENSE-REGISTER.json b/eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/smart-bookshelf/010-open-source-parts-office/catalog/LICENSE-REGISTER.json new file mode 100644 index 0000000..abe73cf --- /dev/null +++ b/eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/smart-bookshelf/010-open-source-parts-office/catalog/LICENSE-REGISTER.json @@ -0,0 +1,12 @@ +{ + "schema": "guanghu.hololake-open-source-license-register/v2", + "entries": [ + {"source_id":"OUTLINE-SOURCE-001","license":"Business Source License 1.1","decision":"REFERENCE_ONLY_NO_DIRECT_PUBLIC_DOCUMENT_SERVICE","reason":"Document Service use is restricted; direct public product reuse requires separate licensing."}, + {"source_id":"AFFINE-SOURCE-001","license":"MIXED_MIT_AND_COMPONENT_LICENSES","decision":"BLOCK_BACKEND_COPY_REVIEW_BLOCKSUITE_COMPONENTS_SEPARATELY","reason":"Top-level MIT does not automatically cover backend/native directories."}, + {"source_id":"APPFLOWY-SOURCE-001","license":"AGPL-3.0","decision":"REFERENCE_ONLY_OR_SEPARATE_AGPL_PRODUCT","reason":"Network service distribution obligations are incompatible with unreviewed HoloLake public module reuse."}, + {"source_id":"JOPLIN-SOURCE-001","license":"MIT","decision":"CANDIDATE_REFERENCE_FOR_CLEAN_REIMPLEMENTATION","reason":"Permissive license; still require file-level attribution and dependency review."}, + {"source_id":"SIYUAN-SOURCE-001","license":"AGPL-3.0","decision":"REFERENCE_ONLY_OR_SEPARATE_AGPL_PRODUCT","reason":"Do not copy server/editor implementation into the public HoloLake module without a deliberate AGPL boundary."}, + {"source_id":"TRILIUMNEXT-SOURCE-001","license":"AGPL-3.0","decision":"REFERENCE_ONLY_OR_SEPARATE_AGPL_PRODUCT","reason":"Use hierarchy ideas only until a compatible implementation boundary is decided."} + ], + "authority_granted": false +} diff --git a/eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/smart-bookshelf/010-open-source-parts-office/catalog/PARTS-CATALOG.json b/eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/smart-bookshelf/010-open-source-parts-office/catalog/PARTS-CATALOG.json new file mode 100644 index 0000000..9fa785b --- /dev/null +++ b/eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/smart-bookshelf/010-open-source-parts-office/catalog/PARTS-CATALOG.json @@ -0,0 +1,23 @@ +{ + "schema": "guanghu.hololake-open-source-parts-catalog/v2", + "office_id": "HB-OFFICE-HOLOLAKE-OPEN-SOURCE-PARTS-001", + "first_native_module": "HOLOLAKE-KNOWLEDGE-MODULE", + "programming_age_deferred": true, + "parts": [ + {"part_id":"OUTLINE-EDITOR-REFERENCE-001","source_id":"OUTLINE-SOURCE-001","candidate_role":"RICH_DOCUMENT_RENDERING_REFERENCE","phase1_fit":"REFERENCE_ONLY","keep":["editorial_block_concepts","document_rendering_interaction_patterns"],"omit":["server","Postgres","Redis","S3","team_auth","Document_Service_logic"]}, + {"part_id":"AFFINE-BLOCKSUITE-REFERENCE-001","source_id":"AFFINE-SOURCE-001","candidate_role":"BLOCK_EDITOR_AND_DOCUMENT_MODEL_REFERENCE","phase1_fit":"REIMPLEMENT_AFTER_COMPONENT_LICENSE_REVIEW","keep":["block_model","rich_text_blocks","document_fragment_structure","offline_first_ideas"],"omit":["AFFINE_BACKEND_RUNTIME","cloud_sync_assumptions","unreviewed_native_components"]}, + {"part_id":"JOPLIN-NOTE-SYNC-REFERENCE-001","source_id":"JOPLIN-SOURCE-001","candidate_role":"LIGHTWEIGHT_NOTE_DOCUMENT_AND_SYNC_REFERENCE","phase1_fit":"BEST_CANDIDATE_FOR_CLEAN_REIMPLEMENTATION_REFERENCE","keep":["note_markdown_model","notebook_hierarchy","resource_linking","sync_conflict_concepts"],"omit":["Joplin_application_shell","provider_specific_sync","account_system"]}, + {"part_id":"SIYUAN-BLOCK-KERNEL-REFERENCE-001","source_id":"SIYUAN-SOURCE-001","candidate_role":"BLOCK_TREE_AND_LOCAL_KNOWLEDGE_REFERENCE","phase1_fit":"REFERENCE_ONLY_AGPL_BOUNDARY","keep":["block_tree_concepts","outline_navigation","local_first_ideas"],"omit":["AGPL_SERVER_IMPLEMENTATION","product_specific_kernel"]}, + {"part_id":"TRILIUM-HIERARCHY-REFERENCE-001","source_id":"TRILIUMNEXT-SOURCE-001","candidate_role":"HIERARCHICAL_NOTE_AND_RELATION_REFERENCE","phase1_fit":"REFERENCE_ONLY_AGPL_BOUNDARY","keep":["note_tree","relation_links","ancestor_navigation"],"omit":["AGPL_SERVER_IMPLEMENTATION","Trilium_runtime"]} + ], + "native_knowledge_module_contract": { + "operations":["knowledge.read","knowledge.search","knowledge.create","knowledge.patch","knowledge.link","knowledge.reindex","knowledge.restore","knowledge.write_back"], + "append_only_revisions":true, + "persona_index_required":true, + "smart_shelf_required":true, + "smart_computer_required":true, + "light_lake_time_controller_required":true, + "no_code_development_in_phase1":true + }, + "authority_granted": false +} diff --git a/eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/smart-bookshelf/010-open-source-parts-office/catalog/SOURCE-CATALOG.json b/eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/smart-bookshelf/010-open-source-parts-office/catalog/SOURCE-CATALOG.json new file mode 100644 index 0000000..6dd6ba9 --- /dev/null +++ b/eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/smart-bookshelf/010-open-source-parts-office/catalog/SOURCE-CATALOG.json @@ -0,0 +1,15 @@ +{ + "schema": "guanghu.hololake-open-source-source-catalog/v2", + "office_id": "HB-OFFICE-HOLOLAKE-OPEN-SOURCE-PARTS-001", + "download_node": "BS-SG-002", + "sources": [ + {"source_id":"OUTLINE-SOURCE-001","repository":"https://github.com/outline/outline.git","commit":"9c874b1e9a5a81a9d909c06d7f7e59cf590a9157","version":"v1.10.1-8-g9c874b1e9","local_path":"source-repositories/outline-9c874b","license":"BSL-1.1","state":"CAPTURED_REFERENCE_ONLY"}, + {"source_id":"AFFINE-SOURCE-001","repository":"https://github.com/toeverything/AFFiNE.git","commit":"cfda4858d550c46ec1cd0b574801d7becdd6625b","version":"0.27.5","local_path":"source-repositories/knowledge-repos/AFFiNE-cfda4858","license":"MIXED_MIT_AND_COMPONENT_LICENSES","state":"CAPTURED_LICENSE_REVIEW_REQUIRED"}, + {"source_id":"APPFLOWY-SOURCE-001","repository":"https://github.com/AppFlowy-IO/AppFlowy.git","commit":"5cf3a365dec0d59f64bad1ee4bb1050471a39b93","local_path":"source-repositories/knowledge-repos/AppFlowy-5cf3a365","license":"AGPL-3.0","state":"CAPTURED_REFERENCE_ONLY"}, + {"source_id":"JOPLIN-SOURCE-001","repository":"https://github.com/laurent22/joplin.git","commit":"96475f82b2e769983261e70ae1ba09150bf18750","local_path":"source-repositories/knowledge-repos/Joplin-23504fcf","license":"MIT","state":"CAPTURED_CANDIDATE_FOR_REIMPLEMENTATION_REFERENCE"}, + {"source_id":"SIYUAN-SOURCE-001","repository":"https://github.com/siyuan-note/siyuan.git","commit":"8641553a1f07374001902d3ce773285db1292b2d","local_path":"source-repositories/knowledge-repos/SiYuan-8641553","license":"AGPL-3.0","state":"CAPTURED_REFERENCE_ONLY"}, + {"source_id":"TRILIUMNEXT-SOURCE-001","repository":"https://github.com/TriliumNext/Trilium.git","commit":"6939a5665884f4fb03316c51d83672dfe4d977f7","version":"0.105.0","local_path":"source-repositories/knowledge-repos/TriliumNext-6939a566","license":"AGPL-3.0","state":"CAPTURED_REFERENCE_ONLY"} + ], + "private_payload_bytes": 0, + "authority_granted": false +} diff --git a/routing/heartbeat-core-language-channel-profile.json b/routing/heartbeat-core-language-channel-profile.json index e9ea074..2c6fcad 100644 --- a/routing/heartbeat-core-language-channel-profile.json +++ b/routing/heartbeat-core-language-channel-profile.json @@ -63,7 +63,8 @@ "office_board_map": "routing/light-lake-persona-office-board.json", "legacy": "HB-BUILDING-0000", "legacy_state": "MOVED_HISTORY_ONLY", - "entry_order": ["LL-OFFICE-BOARD-0001", "HB-BUILDING-0001", "EXACT_REGISTERED_OFFICE", "OFFICE_BRAIN", "SMART_COMPUTER", "NUMBERED_SHELF_ON_DEMAND"] + "entry_order": ["LL-OFFICE-BOARD-0001", "HB-BUILDING-0001", "EXACT_REGISTERED_OFFICE", "OFFICE_BRAIN", "SMART_COMPUTER", "NUMBERED_SHELF_ON_DEMAND"], + "office_standard_equipment": ["SMART-SHELF-INDEX-001", "SMART-COMPUTER-001", "GLW-TIME-CONTROL-0001"] }, "continuity": { "protocol": "HLDP_v1.0", diff --git a/routing/heartbeat-office-building-map.json b/routing/heartbeat-office-building-map.json index 747e4bb..f202586 100644 --- a/routing/heartbeat-office-building-map.json +++ b/routing/heartbeat-office-building-map.json @@ -34,10 +34,20 @@ { "floor": "F2", "name": "系统办公与管理层", - "rooms": ["F2-HOLOLAKE-OFFICE", "F2-VIDEO-OFFICE", "F2-AGENT-READY", "F2-HR", "F2-MONITORING", "F2-CLEANING-ROOM"], + "rooms": ["F2-HOLOLAKE-OFFICE", "F2-HOLOLAKE-OPEN-SOURCE-PARTS-OFFICE", "F2-VIDEO-OFFICE", "F2-AGENT-READY", "F2-HR", "F2-MONITORING", "F2-CLEANING-ROOM"], "entry": "eternal-lake-heart/heartbeat-core/office-building-current/floors/F2-OFFICES/INDEX.hdlp" } ], + "registered_offices": [ + { + "id": "HB-OFFICE-HOLOLAKE-OPEN-SOURCE-PARTS-001", + "name": "光湖开发开源零件收录办公室", + "floor": "F2", + "entry": "eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/smart-bookshelf/010-open-source-parts-office/OFFICE-INDEX.hdlp", + "standard_equipment": "eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/smart-bookshelf/010-open-source-parts-office/STANDARD-EQUIPMENT.hdlp", + "state": "ACTIVE_CURRENT_LANGUAGE_OFFICE" + } + ], "office_board": "routing/light-lake-persona-office-board.json", "security": "eternal-lake-heart/heartbeat-core/office-building-current/security/access-control.json", "operations": "eternal-lake-heart/heartbeat-core/office-building-current/operations/staffing-and-operations.json", diff --git a/routing/tcs-mother-root-dynamic-navigation-map.json b/routing/tcs-mother-root-dynamic-navigation-map.json index d442821..9f125d9 100644 --- a/routing/tcs-mother-root-dynamic-navigation-map.json +++ b/routing/tcs-mother-root-dynamic-navigation-map.json @@ -64,6 +64,7 @@ {"id":"LL-OFFICE-BOARD-0001","name":"小湖灯人格体办公室共享看板","object_kind":"LIGHT_LAKE_PERSONA_OFFICE_BOARD","lifecycle":"CURRENT_EXACTLY_TWO_REGISTERED_OFFICES","route":"routing/light-lake-persona-office-board.json"}, {"id":"HB-OFFICE-VIDEO-0001","name":"短剧视频系统办公室","object_kind":"HEARTBEAT_OFFICE_MODULE","lifecycle":"REGISTERED_ACTIVE_WITH_DOUBAO_MIGRATED_VISIBLE_WORKING_BODY","route":"eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-VIDEO-0001/OFFICE-INDEX.hdlp"}, {"id":"HB-OFFICE-HOLOLAKE-0001","name":"HoloLake开发系统办公室","object_kind":"HEARTBEAT_OFFICE_MODULE","lifecycle":"REGISTERED_ACTIVE_CURRENT","route":"eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/OFFICE-INDEX.hdlp"}, + {"id":"HB-OFFICE-HOLOLAKE-OPEN-SOURCE-PARTS-001","name":"光湖开发开源零件收录办公室","object_kind":"HEARTBEAT_OPEN_SOURCE_PARTS_INTAKE_OFFICE","lifecycle":"ACTIVE_CURRENT_LANGUAGE_OFFICE","route":"eternal-lake-heart/heartbeat-core/office-building-current/offices/HB-OFFICE-HOLOLAKE-0001/smart-bookshelf/010-open-source-parts-office/OFFICE-INDEX.hdlp","standard_equipment":".../010-open-source-parts-office/STANDARD-EQUIPMENT.hdlp"}, {"id":"HB-INTERNAL-LINE-001","name":"心跳核心办公楼内部通信总线","object_kind":"HEARTBEAT_OFFICE_INTERNAL_COMMUNICATION_LINE","lifecycle":"REGISTERED_LOCAL_NUMBERED_MESSAGE_CONTRACT","route":"eternal-lake-heart/heartbeat-core/office-building-current/communications/internal-lines.json"}, {"id":"HB-COLLAB-CD-0001","name":"Codex与豆包办公楼协作频道","object_kind":"HEARTBEAT_DUAL_HOST_TEMPORARY_COLLABORATION_CHANNEL","lifecycle":"ACTIVE_TEMPORARY_CURRENT_TASK","route":"routing/heartbeat-codex-doubao-collaboration-channel.json"}, {"id":"HLP-DEV-BRAIN-001","name":"HoloLake开发系统压缩认知脑技能包","object_kind":"HOLOLAKE_DEVELOPMENT_COMPRESSED_COGNITION_SKILL","lifecycle":"CURRENT_DYNAMIC_OFFICE_LOADER","route":"skills/shared/hololake-development-brain/SKILL.md"},