pomaster 0.3.0 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +9 -10
- package/catalog/archetypes/archetype.frontend.error_taxonomy.json +13 -5
- package/catalog/archetypes/archetype.frontend.feature_oriented.json +1 -1
- package/catalog/archetypes/archetype.state.async_command.json +4 -4
- package/catalog/catalog-lock.draft.json +1120 -104
- package/catalog/gates/gate.be.api.contract_checks.json +2 -1
- package/catalog/gates/gate.be.chg.contract_change_checks.json +2 -1
- package/catalog/gates/gate.chg.prechange_checks.json +2 -1
- package/catalog/gates/gate.web.api.request_checks.json +2 -1
- package/catalog/gates/gate.web.grid.checks.json +2 -1
- package/catalog/knowledge/knowledge.api.example_stable_error_code.json +2 -1
- package/catalog/knowledge/knowledge.chg.example_compat_window.json +2 -1
- package/catalog/knowledge/knowledge.chg.example_prop_migration.json +2 -1
- package/catalog/knowledge/knowledge.fp.api.field_drift_no_contract.json +2 -1
- package/catalog/knowledge/knowledge.fp.api.per_page_http_client.json +2 -1
- package/catalog/knowledge/knowledge.fp.be.contract_drift.json +2 -1
- package/catalog/knowledge/knowledge.fp.chg.page_local_padding.json +2 -1
- package/catalog/knowledge/knowledge.fp.grid.global_td_width.json +2 -1
- package/catalog/knowledge/knowledge.web.api.example_get_entity_list.json +2 -1
- package/catalog/knowledge/knowledge.web.grid.example_column_preset.json +2 -1
- package/catalog/policies/authority.be.api_contract_ownership.json +2 -1
- package/catalog/policies/authority.be.contract_ownership.json +2 -1
- package/catalog/policies/authority.chg.change_owners.json +2 -1
- package/catalog/policies/authority.web.api.request_owners.json +2 -1
- package/catalog/policies/authority.web.grid.ownership.json +2 -1
- package/catalog/policies/policy.ai.change_plan_first.json +91 -0
- package/catalog/policies/policy.ai.fact_inference_separation.json +91 -0
- package/catalog/policies/policy.ai.read_search_verify_before_write.json +92 -0
- package/catalog/policies/policy.ai.rule_relaxation_approval.json +91 -0
- package/catalog/policies/policy.api.backward_compat_defaults.json +2 -1
- package/catalog/policies/policy.api.contract_impl_consistency.json +2 -1
- package/catalog/policies/policy.api.no_informal_contract.json +2 -1
- package/catalog/policies/policy.arch.adr_immutable_history.json +91 -0
- package/catalog/policies/policy.arch.decision_tradeoff_record.json +2 -1
- package/catalog/policies/policy.arch.no_convenience_over_boundary.json +93 -0
- package/catalog/policies/policy.arch.prefer_verifiable_option.json +92 -0
- package/catalog/policies/policy.authz.no_gating_proxy_trust.json +99 -0
- package/catalog/policies/policy.authz.permission_scope_expansion_gate.json +99 -0
- package/catalog/policies/policy.authz.server_five_factor_verification.json +101 -0
- package/catalog/policies/policy.be.conc.prefer_db_constraints.json +97 -0
- package/catalog/policies/policy.be.db.expand_migrate_contract.json +97 -0
- package/catalog/policies/policy.be.idem.key_payload_conflict.json +97 -0
- package/catalog/policies/policy.be.model.single_boundary_conversion.json +97 -0
- package/catalog/policies/policy.be.sql.index_for_known_queries.json +97 -0
- package/catalog/policies/policy.be.state.single_rule_source.json +97 -0
- package/catalog/policies/policy.be.txn.short_locks_compensation.json +96 -0
- package/catalog/policies/policy.bound.search_first_entry_only.json +91 -0
- package/catalog/policies/policy.boundary.validate_in_encode_out.json +92 -0
- package/catalog/policies/policy.cache.failure_mode_guards.json +93 -0
- package/catalog/policies/policy.cache.lifecycle_definition.json +2 -1
- package/catalog/policies/policy.cache.schema_versioning.json +91 -0
- package/catalog/policies/policy.cfg.config_attribute_completeness.json +95 -0
- package/catalog/policies/policy.cfg.key_rename_dual_read.json +92 -0
- package/catalog/policies/policy.cfg.no_secret_dispersal.json +90 -0
- package/catalog/policies/policy.cfg.production_safe_defaults.json +92 -0
- package/catalog/policies/policy.cfg.schema_backed_config.json +92 -0
- package/catalog/policies/policy.chg.affect_templates.json +2 -1
- package/catalog/policies/policy.chg.breaking_versioning.json +2 -1
- package/catalog/policies/policy.chg.compat_migration_rollback.json +2 -1
- package/catalog/policies/policy.chg.deprecate_before_delete.json +2 -1
- package/catalog/policies/policy.chg.fix_at_root_cause_level.json +2 -1
- package/catalog/policies/policy.chg.no_unrelated_changes.json +91 -0
- package/catalog/policies/policy.chg.observable_evolution.json +2 -1
- package/catalog/policies/policy.chg.prechange_consumer_scan.json +2 -1
- package/catalog/policies/policy.chg.staged_rollout.json +2 -1
- package/catalog/policies/policy.chg.sync_contract_docs_tests.json +2 -1
- package/catalog/policies/policy.conflict.priority_ladder.json +2 -1
- package/catalog/policies/policy.contract.no_invented_facts.json +93 -0
- package/catalog/policies/policy.dep.admission_six_dimension_check.json +2 -1
- package/catalog/policies/policy.dep.build_path_supply_chain.json +93 -0
- package/catalog/policies/policy.dep.change_surface_review.json +2 -1
- package/catalog/policies/policy.dep.introduction_review.json +2 -1
- package/catalog/policies/policy.dep.no_untrusted_source_no_lock_bypass.json +92 -0
- package/catalog/policies/policy.dep.time_boxed_urgent_exception.json +91 -0
- package/catalog/policies/policy.deploy.no_dev_env_as_production_fact.json +91 -0
- package/catalog/policies/policy.deploy.operational_capabilities.json +93 -0
- package/catalog/policies/policy.deploy.runtime_fact_record.json +97 -0
- package/catalog/policies/policy.derived.single_implementation.json +2 -1
- package/catalog/policies/policy.err.failure_five_part_mapping.json +101 -0
- package/catalog/policies/policy.err.no_internal_detail_exposure.json +97 -0
- package/catalog/policies/policy.err.published_code_immutable.json +98 -0
- package/catalog/policies/policy.evid.acceptance_binds_verifiable_evidence.json +92 -0
- package/catalog/policies/policy.evid.no_silent_gate_removal.json +90 -0
- package/catalog/policies/policy.evid.no_unverifiable_pass.json +92 -0
- package/catalog/policies/policy.flag.cleanup_after_full_rollout.json +94 -0
- package/catalog/policies/policy.flag.consistent_off_state.json +92 -0
- package/catalog/policies/policy.flag.kill_switch.json +91 -0
- package/catalog/policies/policy.flag.lifecycle_metadata.json +93 -0
- package/catalog/policies/policy.flag.not_a_permission.json +92 -0
- package/catalog/policies/policy.gate.p0_non_bypassable.json +92 -0
- package/catalog/policies/policy.gate.risk_factors_confirmed.json +93 -0
- package/catalog/policies/policy.guard.no_check_weakening.json +92 -0
- package/catalog/policies/policy.integration.call_definition_minimum.json +95 -0
- package/catalog/policies/policy.integration.fault_containment.json +94 -0
- package/catalog/policies/policy.job.lifecycle_definition.json +96 -0
- package/catalog/policies/policy.job.no_unmanaged_execution.json +92 -0
- package/catalog/policies/policy.job.operational_features.json +93 -0
- package/catalog/policies/policy.obs.actionable_signals.json +93 -0
- package/catalog/policies/policy.obs.alert_with_owner.json +91 -0
- package/catalog/policies/policy.obs.context_field_baseline.json +91 -0
- package/catalog/policies/policy.obs.correlation_context_minimum.json +2 -1
- package/catalog/policies/policy.obs.no_sensitive_or_unbounded_logging.json +92 -0
- package/catalog/policies/policy.obs.no_sensitive_raw_values.json +93 -0
- package/catalog/policies/policy.obs.rum_dimension_whitelist.json +2 -1
- package/catalog/policies/policy.obs.signal_change_impact.json +91 -0
- package/catalog/policies/policy.obs.source_map_access_control.json +92 -0
- package/catalog/policies/policy.obs.telemetry_lifecycle_declared.json +93 -0
- package/catalog/policies/policy.obs.trace_correlation.json +91 -0
- package/catalog/policies/policy.perf.budget_change_retest.json +91 -0
- package/catalog/policies/policy.perf.evidence_binding.json +95 -0
- package/catalog/policies/policy.perf.observation_dimensions.json +94 -0
- package/catalog/policies/policy.proc.checklist_change_policy.json +91 -0
- package/catalog/policies/policy.proc.pre_code_declaration.json +2 -1
- package/catalog/policies/policy.proc.scope_drift_reclassify.json +91 -0
- package/catalog/policies/policy.prv.processing_scope_re_review.json +97 -0
- package/catalog/policies/policy.prv.sensitive_data_six_facts.json +102 -0
- package/catalog/policies/policy.registry.human_fields_validated_decorrelated.json +93 -0
- package/catalog/policies/policy.rel.no_irreversible_unmonitored_full_release.json +91 -0
- package/catalog/policies/policy.rel.observability_before_ship.json +91 -0
- package/catalog/policies/policy.rel.pre_release_confirmation.json +2 -1
- package/catalog/policies/policy.rel.process_change_needs_drill_audit.json +91 -0
- package/catalog/policies/policy.rel.traceable_build.json +93 -0
- package/catalog/policies/policy.role.domain_decision_authority.json +2 -1
- package/catalog/policies/policy.role.human_signs_for_ai.json +93 -0
- package/catalog/policies/policy.sec.authn_policy_unified.json +91 -0
- package/catalog/policies/policy.sec.no_client_side_trust.json +92 -0
- package/catalog/policies/policy.sec.no_longterm_security_disable.json +91 -0
- package/catalog/policies/policy.sec.no_script_readable_credentials.json +91 -0
- package/catalog/policies/policy.sec.no_secrets_in_client_surface.json +91 -0
- package/catalog/policies/policy.sec.relaxation_approval.json +92 -0
- package/catalog/policies/policy.sec.security_relaxation_gate.json +92 -0
- package/catalog/policies/policy.sec.third_party_execution_register.json +2 -1
- package/catalog/policies/policy.sec.trust_boundary_enforcement.json +93 -0
- package/catalog/policies/policy.sec.upload_download_server_recheck.json +91 -0
- package/catalog/policies/policy.sec.url_source_allowlist.json +91 -0
- package/catalog/policies/policy.spec.admission_criteria.json +2 -1
- package/catalog/policies/policy.spec.derived_view_regeneration.json +2 -1
- package/catalog/policies/policy.spec.draft_not_baseline.json +2 -1
- package/catalog/policies/policy.spec.family_conflict_precedence.json +93 -0
- package/catalog/policies/policy.spec.file_structure_contract.json +2 -1
- package/catalog/policies/policy.spec.freeze_before_use.json +93 -0
- package/catalog/policies/policy.spec.metadata_required.json +2 -1
- package/catalog/policies/policy.spec.post_dev_backfill_classify.json +2 -1
- package/catalog/policies/policy.spec.primary_source_basis.json +93 -0
- package/catalog/policies/policy.spec.procedural_record_not_surrogate.json +2 -1
- package/catalog/policies/policy.spec.semantic_identity.json +2 -1
- package/catalog/policies/policy.spec.unresolved_ledger_gate.json +2 -1
- package/catalog/policies/policy.stack.derived_store_not_authority.json +93 -0
- package/catalog/policies/policy.stack.dual_web_stack_boundary.json +93 -0
- package/catalog/policies/policy.stack.entry_chain_recorded.json +93 -0
- package/catalog/policies/policy.stack.entry_limits_aligned.json +94 -0
- package/catalog/policies/policy.stack.local_form_not_prod_fact.json +93 -0
- package/catalog/policies/policy.stack.multi_datastore_ownership.json +93 -0
- package/catalog/policies/policy.stack.no_implicit_selection.json +2 -1
- package/catalog/policies/policy.stack.persistence_coexistence_scope.json +93 -0
- package/catalog/policies/policy.stack.toolchain_versions_pinned.json +95 -0
- package/catalog/policies/policy.stack.upgrade_compat_verified.json +93 -0
- package/catalog/policies/policy.struct.module_entry_dependency_declared.json +92 -0
- package/catalog/policies/policy.struct.no_unexplained_top_level_dir.json +91 -0
- package/catalog/policies/policy.struct.reuse_proven_structure.json +91 -0
- package/catalog/policies/policy.test.control_nondeterminism_keep_diagnosis.json +91 -0
- package/catalog/policies/policy.test.isolation_and_cleanup.json +93 -0
- package/catalog/policies/policy.test.no_synthetic_stability.json +92 -0
- package/catalog/policies/policy.test.pyramid_and_ci_matrix.json +92 -0
- package/catalog/policies/policy.test.removal_justification.json +91 -0
- package/catalog/policies/policy.test.removal_needs_substitute_evidence.json +91 -0
- package/catalog/policies/policy.test.risk_driven_plan.json +92 -0
- package/catalog/policies/policy.test.stable_observable_assertions.json +92 -0
- package/catalog/policies/policy.tool.discoverable_toolchain.json +92 -0
- package/catalog/policies/policy.tool.no_hand_edit_generated_no_ci_drift.json +91 -0
- package/catalog/policies/policy.tool.no_vendored_body_edits.json +94 -0
- package/catalog/policies/policy.tool.scoped_scan_boundary.json +2 -1
- package/catalog/policies/policy.tool.upgrade_verify_lock_rollback.json +92 -0
- package/catalog/policies/policy.web.api.auth_app_client_split.json +2 -1
- package/catalog/policies/policy.web.api.client_change_impact.json +2 -1
- package/catalog/policies/policy.web.api.domain_api_only.json +2 -1
- package/catalog/policies/policy.web.api.error_normalization.json +2 -1
- package/catalog/policies/policy.web.api.generated_client.json +2 -1
- package/catalog/policies/policy.web.api.late_result_guard.json +2 -1
- package/catalog/policies/policy.web.api.mutation_idempotency.json +2 -1
- package/catalog/policies/policy.web.api.no_network_optimism.json +2 -1
- package/catalog/policies/policy.web.api.query_cancel_stale_drop.json +2 -1
- package/catalog/policies/policy.web.api.request_infrastructure.json +2 -1
- package/catalog/policies/policy.web.api.retry_discipline.json +2 -1
- package/catalog/policies/policy.web.api.session_recovery_split.json +2 -1
- package/catalog/policies/policy.web.api.single_http_client.json +2 -1
- package/catalog/policies/policy.web.api.single_loading_source.json +2 -1
- package/catalog/policies/policy.web.api.transport_vs_business.json +2 -1
- package/catalog/policies/policy.web.api.trusted_endpoint_source.json +2 -1
- package/catalog/policies/policy.web.api.typed_domain_naming.json +2 -1
- package/catalog/policies/policy.web.arch.layer_isolation.json +2 -1
- package/catalog/policies/policy.web.arch.naming_conventions.json +2 -1
- package/catalog/policies/policy.web.arch.public_api_barrel.json +2 -1
- package/catalog/policies/policy.web.chg.controlled_change_triggers.json +2 -1
- package/catalog/policies/policy.web.comp.no_trivial_or_god_component.json +91 -0
- package/catalog/policies/policy.web.comp.public_contract_completeness.json +93 -0
- package/catalog/policies/policy.web.copy.action_object_clarity.json +92 -0
- package/catalog/policies/policy.web.copy.enumerable_placement.json +91 -0
- package/catalog/policies/policy.web.copy.error_next_step.json +92 -0
- package/catalog/policies/policy.web.copy.suppression_ledger_discipline.json +2 -1
- package/catalog/policies/policy.web.grid.column_schema_fields.json +2 -1
- package/catalog/policies/policy.web.grid.config_isolation.json +2 -1
- package/catalog/policies/policy.web.grid.freeze_key_columns.json +2 -1
- package/catalog/policies/policy.web.grid.interaction_registry.json +2 -1
- package/catalog/policies/policy.web.grid.keyboard_clipboard.json +2 -1
- package/catalog/policies/policy.web.grid.schema_driven_shell.json +2 -1
- package/catalog/policies/policy.web.grid.schema_versioning.json +2 -1
- package/catalog/policies/policy.web.grid.server_ops_virtualization.json +2 -1
- package/catalog/policies/policy.web.grid.shell_change_matrix.json +2 -1
- package/catalog/policies/policy.web.grid.width_fix_ladder.json +2 -1
- package/catalog/policies/policy.web.handoff.state_matrix_full.json +94 -0
- package/catalog/policies/policy.web.i18n.copy_key_discipline.json +92 -0
- package/catalog/policies/policy.web.i18n.raw_value_for_compute.json +91 -0
- package/catalog/policies/policy.web.page.region_consistency.json +93 -0
- package/catalog/policies/policy.web.perf.budget_skeleton.json +2 -1
- package/catalog/policies/policy.web.style.ownership_matrix.json +2 -1
- package/catalog/policies/policy.web.track.attempt_result_correlation.json +91 -0
- package/catalog/policies/policy.web.track.consent_lifecycle.json +2 -1
- package/catalog/policies/policy.web.track.no_synthetic_actions.json +92 -0
- package/catalog/policies/policy.web.track.privacy_default_deny.json +2 -1
- package/catalog/policies/policy.web.track.stable_event_keys.json +2 -1
- package/catalog/policies/policy.web.track.typed_client_validation.json +91 -0
- package/catalog/policies/policy.web.uiux.provider_evidence_not_business_truth.json +2 -1
- package/catalog/policies/policy.wf.no_planned_as_verified.json +91 -0
- package/catalog/policies/policy.wf.task_facts_preconfirm.json +94 -0
- package/catalog/policies/profile.baseline.java_enterprise_default.json +96 -0
- package/catalog/sensors/sensor.browser.deterministic.json +2 -1
- package/catalog/sensors/sensor.browser.interactive.json +2 -1
- package/catalog/sensors/sensor.build.static.json +2 -1
- package/catalog/sensors/sensor.contract.conformance.json +2 -1
- package/catalog/sensors/sensor.performance.budget.json +2 -1
- package/catalog/sensors/sensor.production.metric.json +2 -1
- package/catalog/tools/seed_b6b_frontend.py +1424 -0
- package/catalog/tools/seed_b6c_backend.py +1495 -0
- package/catalog/tools/seed_b6d_baseline.py +620 -0
- package/catalog/tools/seed_b6e_evidence.py +1305 -0
- package/catalog/tools/seed_d3_review.py +1105 -0
- package/catalog/tools/seed_v06_batch2_materials.py +27 -18
- package/dist/bin.js +23026 -16635
- package/package.json +2 -1
- package/seeds/baseline/backend/api-contract.md +26 -0
- package/seeds/baseline/backend/architecture.md +31 -0
- package/seeds/baseline/backend/data-access.md +31 -0
- package/seeds/baseline/backend/directory-structure.md +11 -0
- package/seeds/baseline/backend/integration-runtime.md +21 -0
- package/seeds/baseline/backend/quality.md +31 -0
- package/seeds/baseline/backend/stack.yaml +13 -0
- package/seeds/baseline/backend/transaction-concurrency.md +26 -0
- package/seeds/baseline/data/lineage.md +11 -0
- package/seeds/baseline/data/migration.md +11 -0
- package/seeds/baseline/data/model.md +31 -0
- package/seeds/baseline/data/precision-units.md +31 -0
- package/seeds/baseline/data/quality.md +31 -0
- package/seeds/baseline/frontend/api-and-error.md +21 -0
- package/seeds/baseline/frontend/architecture.md +26 -0
- package/seeds/baseline/frontend/design-system.md +21 -0
- package/seeds/baseline/frontend/directory-structure.md +16 -0
- package/seeds/baseline/frontend/quality.md +26 -0
- package/seeds/baseline/frontend/stack.yaml +17 -0
- package/seeds/baseline/frontend/state-and-data.md +26 -0
- package/seeds/baseline/manifest.yaml +32 -0
- package/seeds/baseline/platform/delivery.md +36 -0
- package/seeds/baseline/platform/environment.md +11 -0
- package/seeds/baseline/platform/observability.md +31 -0
- package/seeds/baseline/platform/security.md +26 -0
- package/seeds/manifest.json +2006 -0
- package/seeds/specs/evidence/accessibility.md +89 -0
- package/seeds/specs/evidence/architecture.md +89 -0
- package/seeds/specs/evidence/browser-e2e.md +91 -0
- package/seeds/specs/evidence/build.md +91 -0
- package/seeds/specs/evidence/business-acceptance.md +89 -0
- package/seeds/specs/evidence/complexity-crap.md +97 -0
- package/seeds/specs/evidence/contract.md +89 -0
- package/seeds/specs/evidence/coverage.md +91 -0
- package/seeds/specs/evidence/data-migration.md +91 -0
- package/seeds/specs/evidence/dead-code-duplicate.md +89 -0
- package/seeds/specs/evidence/dependency-supply-chain.md +89 -0
- package/seeds/specs/evidence/index.md +55 -0
- package/seeds/specs/evidence/mutation.md +89 -0
- package/seeds/specs/evidence/performance.md +89 -0
- package/seeds/specs/evidence/release.md +91 -0
- package/seeds/specs/evidence/runtime-observability.md +91 -0
- package/seeds/specs/evidence/security.md +89 -0
- package/seeds/specs/evidence/typecheck-lint.md +91 -0
- package/seeds/specs/evidence/unit-component-integration.md +91 -0
- package/seeds/specs/evidence/visual-regression.md +89 -0
- package/seeds/specs/hard/backend/01-architecture-governance-protocol.md +68 -0
- package/seeds/specs/hard/backend/02-project-structure-governance-protocol.md +68 -0
- package/seeds/specs/hard/backend/03-directory-boundary-protocol.md +68 -0
- package/seeds/specs/hard/backend/04-layering-architecture-protocol.md +68 -0
- package/seeds/specs/hard/backend/05-task-workflow-protocol.md +68 -0
- package/seeds/specs/hard/backend/06-ai-generated-code-protocol.md +68 -0
- package/seeds/specs/hard/backend/07-evidence-acceptance-protocol.md +68 -0
- package/seeds/specs/hard/backend/08-contract-change-protocol.md +68 -0
- package/seeds/specs/hard/backend/09-role-responsibility-protocol.md +68 -0
- package/seeds/specs/hard/backend/10-security-protocol.md +68 -0
- package/seeds/specs/hard/backend/11-environment-configuration-protocol.md +67 -0
- package/seeds/specs/hard/backend/12-api-contract-protocol.md +68 -0
- package/seeds/specs/hard/backend/13-privacy-data-lifecycle-protocol.md +68 -0
- package/seeds/specs/hard/backend/14-business-rules-state-protocol.md +68 -0
- package/seeds/specs/hard/backend/15-data-model-protocol.md +68 -0
- package/seeds/specs/hard/backend/16-error-code-protocol.md +68 -0
- package/seeds/specs/hard/backend/17-permission-authorization-protocol.md +68 -0
- package/seeds/specs/hard/backend/18-database-schema-migration-protocol.md +68 -0
- package/seeds/specs/hard/backend/19-query-index-sql-protocol.md +68 -0
- package/seeds/specs/hard/backend/20-transaction-boundary-protocol.md +68 -0
- package/seeds/specs/hard/backend/21-concurrency-locking-protocol.md +68 -0
- package/seeds/specs/hard/backend/22-idempotency-protocol.md +68 -0
- package/seeds/specs/hard/backend/23-cache-redis-consistency-protocol.md +68 -0
- package/seeds/specs/hard/backend/24-external-integration-resilience-protocol.md +68 -0
- package/seeds/specs/hard/backend/25-async-job-scheduler-protocol.md +68 -0
- package/seeds/specs/hard/backend/26-engineering-tooling-protocol.md +68 -0
- package/seeds/specs/hard/backend/27-dependency-supply-chain-protocol.md +68 -0
- package/seeds/specs/hard/backend/28-testing-protocol.md +68 -0
- package/seeds/specs/hard/backend/29-observability-logging-tracing-protocol.md +68 -0
- package/seeds/specs/hard/backend/30-performance-capacity-protocol.md +68 -0
- package/seeds/specs/hard/backend/31-runtime-deployment-protocol.md +68 -0
- package/seeds/specs/hard/backend/32-release-versioning-rollback-protocol.md +68 -0
- package/seeds/specs/hard/backend/index.md +177 -0
- package/seeds/specs/hard/frontend/01-development-checklist-protocol.md +86 -0
- package/seeds/specs/hard/frontend/02-ai-generated-code-protocol.md +82 -0
- package/seeds/specs/hard/frontend/03-acceptance-gate-protocol.md +86 -0
- package/seeds/specs/hard/frontend/04-security-protocol.md +283 -0
- package/seeds/specs/hard/frontend/05-environment-configuration-protocol.md +80 -0
- package/seeds/specs/hard/frontend/06-change-governance-protocol.md +90 -0
- package/seeds/specs/hard/frontend/07-frontend-backend-communication-protocol.md +219 -0
- package/seeds/specs/hard/frontend/08-role-responsibility-protocol.md +80 -0
- package/seeds/specs/hard/frontend/09-module-boundary-protocol.md +81 -0
- package/seeds/specs/hard/frontend/10-engineering-tooling-protocol.md +89 -0
- package/seeds/specs/hard/frontend/11-dependency-package-management-protocol.md +87 -0
- package/seeds/specs/hard/frontend/12-business-rules-protocol.md +79 -0
- package/seeds/specs/hard/frontend/13-monetary-precision-protocol.md +81 -0
- package/seeds/specs/hard/frontend/14-data-model-protocol.md +85 -0
- package/seeds/specs/hard/frontend/15-request-api-protocol.md +87 -0
- package/seeds/specs/hard/frontend/16-error-handling-protocol.md +79 -0
- package/seeds/specs/hard/frontend/17-permission-protocol.md +79 -0
- package/seeds/specs/hard/frontend/18-state-management-protocol.md +88 -0
- package/seeds/specs/hard/frontend/19-cache-protocol.md +79 -0
- package/seeds/specs/hard/frontend/20-testing-protocol.md +88 -0
- package/seeds/specs/hard/frontend/21-design-system-protocol.md +79 -0
- package/seeds/specs/hard/frontend/22-theme-protocol.md +79 -0
- package/seeds/specs/hard/frontend/23-accessibility-protocol.md +189 -0
- package/seeds/specs/hard/frontend/24-component-protocol.md +80 -0
- package/seeds/specs/hard/frontend/25-page-structure-protocol.md +79 -0
- package/seeds/specs/hard/frontend/26-style-layout-protocol.md +80 -0
- package/seeds/specs/hard/frontend/27-rendering-state-protocol.md +81 -0
- package/seeds/specs/hard/frontend/28-form-protocol.md +88 -0
- package/seeds/specs/hard/frontend/29-routing-url-protocol.md +79 -0
- package/seeds/specs/hard/frontend/30-data-grid-protocol.md +83 -0
- package/seeds/specs/hard/frontend/31-performance-protocol.md +137 -0
- package/seeds/specs/hard/frontend/32-file-import-export-protocol.md +80 -0
- package/seeds/specs/hard/frontend/33-release-versioning-protocol.md +79 -0
- package/seeds/specs/hard/frontend/34-monitoring-logging-protocol.md +128 -0
- package/seeds/specs/hard/frontend/35-mock-protocol.md +97 -0
- package/seeds/specs/hard/frontend/36-feature-flag-protocol.md +79 -0
- package/seeds/specs/hard/frontend/37-browser-device-compatibility-protocol.md +83 -0
- package/seeds/specs/hard/frontend/38-internationalization-protocol.md +243 -0
- package/seeds/specs/hard/frontend/39-copywriting-protocol.md +79 -0
- package/seeds/specs/hard/frontend/40-analytics-protocol.md +98 -0
- package/seeds/specs/hard/frontend/41-design-handoff-protocol.md +80 -0
- package/seeds/specs/hard/frontend/42-browser-runtime-lifecycle-protocol.md +86 -0
- package/seeds/specs/hard/frontend/43-time-temporal-protocol.md +86 -0
- package/seeds/specs/hard/frontend/44-privacy-data-lifecycle-protocol.md +87 -0
- package/seeds/specs/hard/frontend/45-browser-storage-protocol.md +87 -0
- package/seeds/specs/hard/frontend/index.md +308 -0
- package/seeds/specs/hard/stacks/java/index.md +20 -0
- package/seeds/specs/hard/stacks/java/java-language-overlay.md +35 -0
- package/seeds/specs/hard/stacks/jpa/index.md +20 -0
- package/seeds/specs/hard/stacks/jpa/jpa-persistence-overlay.md +35 -0
- package/seeds/specs/hard/stacks/kubernetes-ingress/index.md +20 -0
- package/seeds/specs/hard/stacks/kubernetes-ingress/kubernetes-ingress-overlay.md +35 -0
- package/seeds/specs/hard/stacks/messaging/index.md +20 -0
- package/seeds/specs/hard/stacks/messaging/messaging-reliability-overlay.md +35 -0
- package/seeds/specs/hard/stacks/mybatis/index.md +20 -0
- package/seeds/specs/hard/stacks/mybatis/mybatis-persistence-overlay.md +35 -0
- package/seeds/specs/hard/stacks/mysql/index.md +20 -0
- package/seeds/specs/hard/stacks/mysql/mysql-database-overlay.md +35 -0
- package/seeds/specs/hard/stacks/nginx/index.md +20 -0
- package/seeds/specs/hard/stacks/nginx/nginx-proxy-overlay.md +35 -0
- package/seeds/specs/hard/stacks/postgresql/index.md +20 -0
- package/seeds/specs/hard/stacks/postgresql/postgresql-database-overlay.md +35 -0
- package/seeds/specs/hard/stacks/redis/index.md +20 -0
- package/seeds/specs/hard/stacks/redis/redis-cache-overlay.md +35 -0
- package/seeds/specs/hard/stacks/spring-batch/index.md +20 -0
- package/seeds/specs/hard/stacks/spring-batch/spring-batch-job-overlay.md +35 -0
- package/seeds/specs/hard/stacks/spring-boot/index.md +20 -0
- package/seeds/specs/hard/stacks/spring-boot/spring-boot-application-overlay.md +35 -0
- package/seeds/specs/hard/stacks/spring-mvc/index.md +20 -0
- package/seeds/specs/hard/stacks/spring-mvc/spring-mvc-web-overlay.md +35 -0
- package/seeds/specs/hard/stacks/spring-webflux/index.md +20 -0
- package/seeds/specs/hard/stacks/spring-webflux/spring-webflux-reactive-overlay.md +35 -0
- package/seeds/specs/hard/stacks/tomcat/index.md +20 -0
- package/seeds/specs/hard/stacks/tomcat/tomcat-runtime-overlay.md +35 -0
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
{
|
|
2
|
+
"x-vocab-pr": {
|
|
3
|
+
"status": "vocab_pr_candidate",
|
|
4
|
+
"finding": "kind='policy' 不在 vocab-lock kinds_registry.truth_bodies(POLICY. 前缀已冻结注册,closed-world)",
|
|
5
|
+
"proposal": "词汇表 PR 登记 policy kind 及新域段;或 Owner 裁决 policy 条目住 catalog/ 而非 truth/objects 正文层(与前批 45+25 条同因同请,合并进同一 vocab PR)",
|
|
6
|
+
"locked_vocab_untouched": true,
|
|
7
|
+
"resolution": "2026-09-05 vocab PR-0009 收编落地(vocab-lock@v0.8-resolved,三镜像同 commit;Owner 裁定 D4=(a) 2026-09-05):kind='policy' 是 catalog 物料分类词形(catalog_layer_vocab.catalog_kind 在册——PR-0006,不受 kinds_registry.truth_bodies 闭包管辖),POLICY. 前缀为 governed 闭包既有前缀,id 域段词形随 catalog_layer_vocab.policy_id_domains / policy_web_domains 收编;本 pending 注记就此转正(finding/proposal/locked_vocab_untouched 为创建时点历史记录原样保留——mcp_eyes 先例)"
|
|
8
|
+
},
|
|
9
|
+
"x-spec-d-materialization": {
|
|
10
|
+
"status": "PROPOSAL",
|
|
11
|
+
"package": "B6b-II FE 播种移植(SPEC-D 池卡复用;分母=MASTer 池卡 + vendor 播种字节双锚)",
|
|
12
|
+
"human_review_required": true,
|
|
13
|
+
"evidence": "PLANNED",
|
|
14
|
+
"provenance": "POMaster_VNext/corpus/spec-knowledge/candidates/consolidated-pool.yaml",
|
|
15
|
+
"group": "FE-G1",
|
|
16
|
+
"candidate_id": "POLICY.OBS.NO_SENSITIVE_RAW_VALUES",
|
|
17
|
+
"density_rank": null,
|
|
18
|
+
"density_score": 33.44,
|
|
19
|
+
"pool_statement_sha16": "b1cb5aeea0cd2c0e",
|
|
20
|
+
"curated_rule": "B6b-II 分母(FE 24-45 + index)required 池(ELIGIBLE 未物化 + MASTer 行锚落 MUST/MUST NOT)按池密度序取前 22 + advisory 池(SHOULD 源 backlog policy 卡 + 锚段全落建议段闭包)按同公式密度序取前 3 = 25(D5 上限/批内执行);UNIVERSAL + UNIVERSAL_POLICY + 无 uncertainty + 非 project_scope + 非重复",
|
|
21
|
+
"denominator": "MASTer(池卡 source_protocol 锚)"
|
|
22
|
+
},
|
|
23
|
+
"x-b6-porting": {
|
|
24
|
+
"status": "PROPOSAL",
|
|
25
|
+
"batch": "B6B-2",
|
|
26
|
+
"human_review_required": true,
|
|
27
|
+
"enforcement_axis": {
|
|
28
|
+
"source_sections": [
|
|
29
|
+
"MUST",
|
|
30
|
+
"MUST NOT"
|
|
31
|
+
],
|
|
32
|
+
"rule": "SHOULD/Change Policy 源条目 enforcement 必须 advisory(禁升 required);MUST/MUST NOT 源条目 enforcement 必须 required_when_applicable(降级合法)",
|
|
33
|
+
"asserted_by": "packages/cli/tests/catalog-b6-porting.spec.ts"
|
|
34
|
+
},
|
|
35
|
+
"extra_master_sections": [],
|
|
36
|
+
"denominator": "vendor",
|
|
37
|
+
"vendor_pin": {
|
|
38
|
+
"path": "pomaster/components/frontend-hard-spec/assets/universal/34-monitoring-logging-protocol.md",
|
|
39
|
+
"sha256": "3c37c1c3aa3ade8d43532a1fcc7561e95aef42a19e46b6eb53d864054a2da013",
|
|
40
|
+
"bytes": 8248
|
|
41
|
+
},
|
|
42
|
+
"seeded_spec": ".pomaster/specs/hard/frontend/34-monitoring-logging-protocol.md",
|
|
43
|
+
"seed_manifest": "packages/cli/seeds/manifest.json"
|
|
44
|
+
},
|
|
45
|
+
"id": "POLICY.OBS.NO_SENSITIVE_RAW_VALUES",
|
|
46
|
+
"kind": "policy",
|
|
47
|
+
"axis_profile": "policy_default",
|
|
48
|
+
"classification": "UNIVERSAL_POLICY",
|
|
49
|
+
"axes": {
|
|
50
|
+
"lifecycle": "PROPOSED",
|
|
51
|
+
"confidence": "UNRESOLVED",
|
|
52
|
+
"evidence": "PLANNED",
|
|
53
|
+
"change": "STABLE"
|
|
54
|
+
},
|
|
55
|
+
"title_zh": "遥测不携带敏感原值",
|
|
56
|
+
"statement_zh": "遥测数据不得携带凭据、明文口令、敏感原值或完整文件;用户标识与个人数据不得进入追踪上下文、面包屑或高基数字段。",
|
|
57
|
+
"statement_en_keywords": [
|
|
58
|
+
"no sensitive raw values",
|
|
59
|
+
"no credentials in telemetry",
|
|
60
|
+
"no pii in breadcrumbs",
|
|
61
|
+
"no high cardinality identifiers"
|
|
62
|
+
],
|
|
63
|
+
"applies_when": {
|
|
64
|
+
"lane": "any",
|
|
65
|
+
"condition": "遥测与日志字段选择",
|
|
66
|
+
"applicability_note": "遥测与日志字段选择"
|
|
67
|
+
},
|
|
68
|
+
"enforcement": "required_when_applicable",
|
|
69
|
+
"authority": {
|
|
70
|
+
"owner": "HUMAN_OWNER",
|
|
71
|
+
"delegates": [],
|
|
72
|
+
"write_policy": "EVOLUTION_CHANNEL",
|
|
73
|
+
"escalation_hint": "catalog-spec-decomposition"
|
|
74
|
+
},
|
|
75
|
+
"origin": "ingested",
|
|
76
|
+
"origin_note": "B6b-II FE 播种移植物化;statement 沿用 SPEC-D 候选卡独立措辞(clean-room),零逐字拷贝上游源文本;播种分母=vendor 字节(x-b6-porting.vendor_pin),分解分母=MASTer 池卡(x-spec-d-materialization)",
|
|
77
|
+
"sources": [
|
|
78
|
+
{
|
|
79
|
+
"type": "design_seed",
|
|
80
|
+
"ref": "POMaster_VNext/corpus/spec-knowledge/candidates/FE-G1.yaml",
|
|
81
|
+
"captured_by": "agent:claude/spec-d-consolidation",
|
|
82
|
+
"locator": {
|
|
83
|
+
"candidate": "POLICY.OBS.NO_SENSITIVE_RAW_VALUES",
|
|
84
|
+
"source_protocol": ".trellis/spec/frontend/34-monitoring-logging-protocol.md",
|
|
85
|
+
"lines": "L22, L29, L33"
|
|
86
|
+
},
|
|
87
|
+
"clean_room_note": "independently rewritten from SPEC-D decomposition candidate cards; zero verbatim copy"
|
|
88
|
+
}
|
|
89
|
+
],
|
|
90
|
+
"review_notes": [
|
|
91
|
+
"遥测敏感数据边界在既有 168 条中无对应条目(SEC 族管客户端可见面与凭据存储介质,不管遥测载荷),零语义重复;多锚卡(34 L22+L29/L33),34 文件不重复立卡。"
|
|
92
|
+
]
|
|
93
|
+
}
|
|
@@ -3,7 +3,8 @@
|
|
|
3
3
|
"status": "vocab_pr_candidate",
|
|
4
4
|
"finding": "kind='policy' 不在 vocab-lock kinds_registry.truth_bodies(POLICY. 前缀已冻结注册,closed-world);新 id 域段待登记:OBS",
|
|
5
5
|
"proposal": "词汇表 PR 登记 policy kind 及新域段;或 Owner 裁决 policy 条目住 catalog/ 而非 truth/objects 正文层(与前批 45+9 条同因同请,合并进同一 vocab PR)",
|
|
6
|
-
"locked_vocab_untouched": true
|
|
6
|
+
"locked_vocab_untouched": true,
|
|
7
|
+
"resolution": "2026-09-05 vocab PR-0009 收编落地(vocab-lock@v0.8-resolved,三镜像同 commit;Owner 裁定 D4=(a) 2026-09-05):kind='policy' 是 catalog 物料分类词形(catalog_layer_vocab.catalog_kind 在册——PR-0006,不受 kinds_registry.truth_bodies 闭包管辖),POLICY. 前缀为 governed 闭包既有前缀,id 域段词形随 catalog_layer_vocab.policy_id_domains / policy_web_domains 收编;本 pending 注记就此转正(finding/proposal/locked_vocab_untouched 为创建时点历史记录原样保留——mcp_eyes 先例)"
|
|
7
8
|
},
|
|
8
9
|
"x-spec-d-materialization": {
|
|
9
10
|
"status": "PROPOSAL",
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
{
|
|
2
|
+
"x-spec-d-materialization": {
|
|
3
|
+
"status": "PROPOSAL",
|
|
4
|
+
"package": "裁定批 F/D3-R1 排除卡逐卡复核物化(SPEC-D 池卡复用;分母=MASTer 池卡 + vendor 播种字节双锚)",
|
|
5
|
+
"human_review_required": true,
|
|
6
|
+
"evidence": "PLANNED",
|
|
7
|
+
"provenance": "POMaster_VNext/corpus/spec-knowledge/candidates/consolidated-pool.yaml",
|
|
8
|
+
"group": "BE-G4",
|
|
9
|
+
"candidate_id": "POLICY.OBS.SIGNAL_CHANGE_IMPACT",
|
|
10
|
+
"pool_statement_sha16": "a6fc92f125fc2b35",
|
|
11
|
+
"curated_rule": "D3 逐卡复核批(Owner 2026-09-05 裁定 D3=逐卡复核;72 张保守排除卡逐卡核锚):required 9(D3b source=null 补锚落 MUST/MUST NOT 且与 MASTer 行锚交叉验证)+ advisory 16(Change Policy 锚 14 张降 advisory[行内容含「必须」行为规范、强度只降不升] + 池密度序前 2)= 25(D6 合并上限 policy+TP 合计 25/批内执行;超出 17 张 advisory 留 D3-R2 轮次台账);维持排除 30(Ownership 归属说明族)",
|
|
12
|
+
"denominator": "MASTer(池卡锚)"
|
|
13
|
+
},
|
|
14
|
+
"x-b6-porting": {
|
|
15
|
+
"status": "PROPOSAL",
|
|
16
|
+
"batch": "D3-R1",
|
|
17
|
+
"human_review_required": true,
|
|
18
|
+
"classification_face": "policy",
|
|
19
|
+
"enforcement_axis": {
|
|
20
|
+
"source_sections": [
|
|
21
|
+
"Change Policy"
|
|
22
|
+
],
|
|
23
|
+
"rule": "SHOULD/Change Policy 源条目 enforcement 必须 advisory(禁升 required);MUST/MUST NOT 源条目 enforcement 必须 required_when_applicable(降级合法)",
|
|
24
|
+
"asserted_by": "packages/cli/tests/catalog-b6-porting.spec.ts"
|
|
25
|
+
},
|
|
26
|
+
"extra_master_sections": [],
|
|
27
|
+
"denominator": "vendor",
|
|
28
|
+
"vendor_pin": {
|
|
29
|
+
"path": "pomaster/components/backend-hard-spec/assets/universal/29-observability-logging-tracing-protocol.md",
|
|
30
|
+
"sha256": "e871f5d7d1e9fe68956881877baba94f376a5539753441853f8cfa12939f5ebd",
|
|
31
|
+
"bytes": 1387
|
|
32
|
+
},
|
|
33
|
+
"seeded_spec": ".pomaster/specs/hard/backend/29-observability-logging-tracing-protocol.md",
|
|
34
|
+
"seed_manifest": "packages/cli/seeds/manifest.json",
|
|
35
|
+
"d3_review": {
|
|
36
|
+
"excluded_from_batch": "B6C",
|
|
37
|
+
"exclusion_reason_at_seed": "行锚段映射非 MUST/MUST NOT(池 enforcement 判定矛盾,保守排除待复核)",
|
|
38
|
+
"adjudication": "D3 逐卡复核(Owner 2026-09-05 裁定 D3=逐卡复核,裁定批 F 落地 2026-09-05):本卡原属 B6C 保守排除留池(排除理由:行锚段映射非 MUST/MUST NOT(池 enforcement 判定矛盾,保守排除待复核));复核补锚回 vendor/MASTer 源取得行级证据,锚段=Change Policy,按强度入册(行内容含「必须」行为规范、Change Policy 段 advisory 落点(强度只降不升))",
|
|
39
|
+
"anchor_evidence": "MASTer 29-observability-logging-tracing-protocol.md 57「信号 schema、采样或保留变化必须评估仪表盘、告警和隐私影响。」",
|
|
40
|
+
"pool_enforcement_at_seed": "required_when_applicable"
|
|
41
|
+
}
|
|
42
|
+
},
|
|
43
|
+
"id": "POLICY.OBS.SIGNAL_CHANGE_IMPACT",
|
|
44
|
+
"kind": "policy",
|
|
45
|
+
"axis_profile": "policy_default",
|
|
46
|
+
"classification": "UNIVERSAL_POLICY",
|
|
47
|
+
"axes": {
|
|
48
|
+
"lifecycle": "PROPOSED",
|
|
49
|
+
"confidence": "UNRESOLVED",
|
|
50
|
+
"evidence": "PLANNED",
|
|
51
|
+
"change": "STABLE"
|
|
52
|
+
},
|
|
53
|
+
"title_zh": "观测信号变更先评影响",
|
|
54
|
+
"statement_zh": "观测信号的结构、采样率或保留策略变化前,必须评估对既有仪表盘、告警规则与隐私合规的影响。",
|
|
55
|
+
"statement_en_keywords": [
|
|
56
|
+
"signal schema/sampling/retention change",
|
|
57
|
+
"dashboard and alert impact",
|
|
58
|
+
"privacy compliance impact"
|
|
59
|
+
],
|
|
60
|
+
"applies_when": {
|
|
61
|
+
"lane": "any",
|
|
62
|
+
"condition": "观测信号结构、采样或保留变化",
|
|
63
|
+
"applicability_note": "观测信号结构、采样或保留变化"
|
|
64
|
+
},
|
|
65
|
+
"enforcement": "advisory",
|
|
66
|
+
"authority": {
|
|
67
|
+
"owner": "HUMAN_OWNER",
|
|
68
|
+
"delegates": [],
|
|
69
|
+
"write_policy": "EVOLUTION_CHANNEL",
|
|
70
|
+
"escalation_hint": "catalog-spec-decomposition"
|
|
71
|
+
},
|
|
72
|
+
"origin": "ingested",
|
|
73
|
+
"origin_note": "裁定批 F/D3-R1 D3 逐卡复核物化(原 B6C 保守排除卡补锚收编);statement 沿用 SPEC-D 候选卡独立措辞(clean-room),零逐字拷贝上游源文本;播种分母=vendor 字节(x-b6-porting.vendor_pin),分解分母=MASTer 池卡(x-spec-d-materialization)",
|
|
74
|
+
"sources": [
|
|
75
|
+
{
|
|
76
|
+
"type": "design_seed",
|
|
77
|
+
"ref": "POMaster_VNext/corpus/spec-knowledge/candidates/BE-G4.yaml",
|
|
78
|
+
"captured_by": "agent:claude/spec-d-consolidation",
|
|
79
|
+
"locator": {
|
|
80
|
+
"candidate": "POLICY.OBS.SIGNAL_CHANGE_IMPACT",
|
|
81
|
+
"source_protocol": ".trellis/spec/backend/29-observability-logging-tracing-protocol.md",
|
|
82
|
+
"lines": "57"
|
|
83
|
+
},
|
|
84
|
+
"clean_room_note": "independently rewritten from SPEC-D decomposition candidate cards; zero verbatim copy"
|
|
85
|
+
}
|
|
86
|
+
],
|
|
87
|
+
"review_notes": [
|
|
88
|
+
"观测信号变更影响评估在既有 228 条中无对应条目;与 POLICY.CHG.* 族不同轴——彼管业务变更过程协同,本管观测信号 schema/采样/保留自身的变更纪律。",
|
|
89
|
+
"Change Policy 锚(MASTer 29 L57,行内容含「必须」行为规范)——D3 复核按裁定精神降 advisory 入册(池判 required 强度只降不升)。"
|
|
90
|
+
]
|
|
91
|
+
}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
{
|
|
2
|
+
"x-vocab-pr": {
|
|
3
|
+
"status": "vocab_pr_candidate",
|
|
4
|
+
"finding": "kind='policy' 不在 vocab-lock kinds_registry.truth_bodies(POLICY. 前缀已冻结注册,closed-world)",
|
|
5
|
+
"proposal": "词汇表 PR 登记 policy kind 及新域段;或 Owner 裁决 policy 条目住 catalog/ 而非 truth/objects 正文层(与前批 45+25 条同因同请,合并进同一 vocab PR)",
|
|
6
|
+
"locked_vocab_untouched": true,
|
|
7
|
+
"resolution": "2026-09-05 vocab PR-0009 收编落地(vocab-lock@v0.8-resolved,三镜像同 commit;Owner 裁定 D4=(a) 2026-09-05):kind='policy' 是 catalog 物料分类词形(catalog_layer_vocab.catalog_kind 在册——PR-0006,不受 kinds_registry.truth_bodies 闭包管辖),POLICY. 前缀为 governed 闭包既有前缀,id 域段词形随 catalog_layer_vocab.policy_id_domains / policy_web_domains 收编;本 pending 注记就此转正(finding/proposal/locked_vocab_untouched 为创建时点历史记录原样保留——mcp_eyes 先例)"
|
|
8
|
+
},
|
|
9
|
+
"x-spec-d-materialization": {
|
|
10
|
+
"status": "PROPOSAL",
|
|
11
|
+
"package": "B6b-II FE 播种移植(SPEC-D 池卡复用;分母=MASTer 池卡 + vendor 播种字节双锚)",
|
|
12
|
+
"human_review_required": true,
|
|
13
|
+
"evidence": "PLANNED",
|
|
14
|
+
"provenance": "POMaster_VNext/corpus/spec-knowledge/candidates/consolidated-pool.yaml",
|
|
15
|
+
"group": "FE-G1",
|
|
16
|
+
"candidate_id": "POLICY.OBS.SOURCE_MAP_ACCESS_CONTROL",
|
|
17
|
+
"density_rank": null,
|
|
18
|
+
"density_score": 31.88,
|
|
19
|
+
"pool_statement_sha16": "5c132cf3aa5bbb67",
|
|
20
|
+
"curated_rule": "B6b-II 分母(FE 24-45 + index)required 池(ELIGIBLE 未物化 + MASTer 行锚落 MUST/MUST NOT)按池密度序取前 22 + advisory 池(SHOULD 源 backlog policy 卡 + 锚段全落建议段闭包)按同公式密度序取前 3 = 25(D5 上限/批内执行);UNIVERSAL + UNIVERSAL_POLICY + 无 uncertainty + 非 project_scope + 非重复",
|
|
21
|
+
"denominator": "MASTer(池卡 source_protocol 锚)"
|
|
22
|
+
},
|
|
23
|
+
"x-b6-porting": {
|
|
24
|
+
"status": "PROPOSAL",
|
|
25
|
+
"batch": "B6B-2",
|
|
26
|
+
"human_review_required": true,
|
|
27
|
+
"enforcement_axis": {
|
|
28
|
+
"source_sections": [
|
|
29
|
+
"MUST",
|
|
30
|
+
"MUST NOT"
|
|
31
|
+
],
|
|
32
|
+
"rule": "SHOULD/Change Policy 源条目 enforcement 必须 advisory(禁升 required);MUST/MUST NOT 源条目 enforcement 必须 required_when_applicable(降级合法)",
|
|
33
|
+
"asserted_by": "packages/cli/tests/catalog-b6-porting.spec.ts"
|
|
34
|
+
},
|
|
35
|
+
"extra_master_sections": [],
|
|
36
|
+
"denominator": "vendor",
|
|
37
|
+
"vendor_pin": {
|
|
38
|
+
"path": "pomaster/components/frontend-hard-spec/assets/universal/34-monitoring-logging-protocol.md",
|
|
39
|
+
"sha256": "3c37c1c3aa3ade8d43532a1fcc7561e95aef42a19e46b6eb53d864054a2da013",
|
|
40
|
+
"bytes": 8248
|
|
41
|
+
},
|
|
42
|
+
"seeded_spec": ".pomaster/specs/hard/frontend/34-monitoring-logging-protocol.md",
|
|
43
|
+
"seed_manifest": "packages/cli/seeds/manifest.json"
|
|
44
|
+
},
|
|
45
|
+
"id": "POLICY.OBS.SOURCE_MAP_ACCESS_CONTROL",
|
|
46
|
+
"kind": "policy",
|
|
47
|
+
"axis_profile": "policy_default",
|
|
48
|
+
"classification": "UNIVERSAL_POLICY",
|
|
49
|
+
"axes": {
|
|
50
|
+
"lifecycle": "PROPOSED",
|
|
51
|
+
"confidence": "UNRESOLVED",
|
|
52
|
+
"evidence": "PLANNED",
|
|
53
|
+
"change": "STABLE"
|
|
54
|
+
},
|
|
55
|
+
"title_zh": "压缩映射受权限保护",
|
|
56
|
+
"statement_zh": "压缩映射文件必须与版本一一对应并受权限保护,公开部署被禁止。",
|
|
57
|
+
"statement_en_keywords": [
|
|
58
|
+
"source map access control",
|
|
59
|
+
"one to one with version",
|
|
60
|
+
"no public deployment"
|
|
61
|
+
],
|
|
62
|
+
"applies_when": {
|
|
63
|
+
"lane": "any",
|
|
64
|
+
"condition": "压缩映射发布与托管",
|
|
65
|
+
"applicability_note": "压缩映射发布与托管"
|
|
66
|
+
},
|
|
67
|
+
"enforcement": "required_when_applicable",
|
|
68
|
+
"authority": {
|
|
69
|
+
"owner": "HUMAN_OWNER",
|
|
70
|
+
"delegates": [],
|
|
71
|
+
"write_policy": "EVOLUTION_CHANNEL",
|
|
72
|
+
"escalation_hint": "catalog-spec-decomposition"
|
|
73
|
+
},
|
|
74
|
+
"origin": "ingested",
|
|
75
|
+
"origin_note": "B6b-II FE 播种移植物化;statement 沿用 SPEC-D 候选卡独立措辞(clean-room),零逐字拷贝上游源文本;播种分母=vendor 字节(x-b6-porting.vendor_pin),分解分母=MASTer 池卡(x-spec-d-materialization)",
|
|
76
|
+
"sources": [
|
|
77
|
+
{
|
|
78
|
+
"type": "design_seed",
|
|
79
|
+
"ref": "POMaster_VNext/corpus/spec-knowledge/candidates/FE-G1.yaml",
|
|
80
|
+
"captured_by": "agent:claude/spec-d-consolidation",
|
|
81
|
+
"locator": {
|
|
82
|
+
"candidate": "POLICY.OBS.SOURCE_MAP_ACCESS_CONTROL",
|
|
83
|
+
"source_protocol": ".trellis/spec/frontend/34-monitoring-logging-protocol.md",
|
|
84
|
+
"lines": "L21, L32"
|
|
85
|
+
},
|
|
86
|
+
"clean_room_note": "independently rewritten from SPEC-D decomposition candidate cards; zero verbatim copy"
|
|
87
|
+
}
|
|
88
|
+
],
|
|
89
|
+
"review_notes": [
|
|
90
|
+
"压缩映射访问控制在既有 168 条中无对应条目(SEC 族无 sourcemap 词形),零语义重复;双锚卡(34 L21+L32),34 文件不重复立卡。"
|
|
91
|
+
]
|
|
92
|
+
}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
{
|
|
2
|
+
"x-vocab-pr": {
|
|
3
|
+
"status": "vocab_pr_candidate",
|
|
4
|
+
"finding": "kind='policy' 不在 vocab-lock kinds_registry.truth_bodies(POLICY. 前缀已冻结注册,closed-world)",
|
|
5
|
+
"proposal": "词汇表 PR 登记 policy kind 及新域段;或 Owner 裁决 policy 条目住 catalog/ 而非 truth/objects 正文层(与前批 45+25 条同因同请,合并进同一 vocab PR)",
|
|
6
|
+
"locked_vocab_untouched": true,
|
|
7
|
+
"resolution": "2026-09-05 vocab PR-0009 收编落地(vocab-lock@v0.8-resolved,三镜像同 commit;Owner 裁定 D4=(a) 2026-09-05):kind='policy' 是 catalog 物料分类词形(catalog_layer_vocab.catalog_kind 在册——PR-0006,不受 kinds_registry.truth_bodies 闭包管辖),POLICY. 前缀为 governed 闭包既有前缀,id 域段词形随 catalog_layer_vocab.policy_id_domains / policy_web_domains 收编;本 pending 注记就此转正(finding/proposal/locked_vocab_untouched 为创建时点历史记录原样保留——mcp_eyes 先例)"
|
|
8
|
+
},
|
|
9
|
+
"x-spec-d-materialization": {
|
|
10
|
+
"status": "PROPOSAL",
|
|
11
|
+
"package": "B6b-II FE 播种移植(SPEC-D 池卡复用;分母=MASTer 池卡 + vendor 播种字节双锚)",
|
|
12
|
+
"human_review_required": true,
|
|
13
|
+
"evidence": "PLANNED",
|
|
14
|
+
"provenance": "POMaster_VNext/corpus/spec-knowledge/candidates/consolidated-pool.yaml",
|
|
15
|
+
"group": "FE-G1",
|
|
16
|
+
"candidate_id": "POLICY.OBS.TELEMETRY_LIFECYCLE_DECLARED",
|
|
17
|
+
"density_rank": null,
|
|
18
|
+
"density_score": 32.88,
|
|
19
|
+
"pool_statement_sha16": "17d6d5bdea57adfd",
|
|
20
|
+
"curated_rule": "B6b-II 分母(FE 24-45 + index)required 池(ELIGIBLE 未物化 + MASTer 行锚落 MUST/MUST NOT)按池密度序取前 22 + advisory 池(SHOULD 源 backlog policy 卡 + 锚段全落建议段闭包)按同公式密度序取前 3 = 25(D5 上限/批内执行);UNIVERSAL + UNIVERSAL_POLICY + 无 uncertainty + 非 project_scope + 非重复",
|
|
21
|
+
"denominator": "MASTer(池卡 source_protocol 锚)"
|
|
22
|
+
},
|
|
23
|
+
"x-b6-porting": {
|
|
24
|
+
"status": "PROPOSAL",
|
|
25
|
+
"batch": "B6B-2",
|
|
26
|
+
"human_review_required": true,
|
|
27
|
+
"enforcement_axis": {
|
|
28
|
+
"source_sections": [
|
|
29
|
+
"MUST",
|
|
30
|
+
"Checklist"
|
|
31
|
+
],
|
|
32
|
+
"rule": "SHOULD/Change Policy 源条目 enforcement 必须 advisory(禁升 required);MUST/MUST NOT 源条目 enforcement 必须 required_when_applicable(降级合法)",
|
|
33
|
+
"asserted_by": "packages/cli/tests/catalog-b6-porting.spec.ts"
|
|
34
|
+
},
|
|
35
|
+
"extra_master_sections": [],
|
|
36
|
+
"denominator": "vendor",
|
|
37
|
+
"vendor_pin": {
|
|
38
|
+
"path": "pomaster/components/frontend-hard-spec/assets/universal/34-monitoring-logging-protocol.md",
|
|
39
|
+
"sha256": "3c37c1c3aa3ade8d43532a1fcc7561e95aef42a19e46b6eb53d864054a2da013",
|
|
40
|
+
"bytes": 8248
|
|
41
|
+
},
|
|
42
|
+
"seeded_spec": ".pomaster/specs/hard/frontend/34-monitoring-logging-protocol.md",
|
|
43
|
+
"seed_manifest": "packages/cli/seeds/manifest.json"
|
|
44
|
+
},
|
|
45
|
+
"id": "POLICY.OBS.TELEMETRY_LIFECYCLE_DECLARED",
|
|
46
|
+
"kind": "policy",
|
|
47
|
+
"axis_profile": "policy_default",
|
|
48
|
+
"classification": "UNIVERSAL_POLICY",
|
|
49
|
+
"axes": {
|
|
50
|
+
"lifecycle": "PROPOSED",
|
|
51
|
+
"confidence": "UNRESOLVED",
|
|
52
|
+
"evidence": "PLANNED",
|
|
53
|
+
"change": "STABLE"
|
|
54
|
+
},
|
|
55
|
+
"title_zh": "遥测事件生命周期声明",
|
|
56
|
+
"statement_zh": "遥测事件必须声明结构、版本、采样率、用途、保留期与删除策略;遥测发送失败不得阻断应用主流程。",
|
|
57
|
+
"statement_en_keywords": [
|
|
58
|
+
"telemetry event declaration",
|
|
59
|
+
"schema version sampling",
|
|
60
|
+
"retention deletion policy",
|
|
61
|
+
"telemetry failure non blocking"
|
|
62
|
+
],
|
|
63
|
+
"applies_when": {
|
|
64
|
+
"lane": "any",
|
|
65
|
+
"condition": "遥测事件治理",
|
|
66
|
+
"applicability_note": "遥测事件治理"
|
|
67
|
+
},
|
|
68
|
+
"enforcement": "required_when_applicable",
|
|
69
|
+
"authority": {
|
|
70
|
+
"owner": "HUMAN_OWNER",
|
|
71
|
+
"delegates": [],
|
|
72
|
+
"write_policy": "EVOLUTION_CHANNEL",
|
|
73
|
+
"escalation_hint": "catalog-spec-decomposition"
|
|
74
|
+
},
|
|
75
|
+
"origin": "ingested",
|
|
76
|
+
"origin_note": "B6b-II FE 播种移植物化;statement 沿用 SPEC-D 候选卡独立措辞(clean-room),零逐字拷贝上游源文本;播种分母=vendor 字节(x-b6-porting.vendor_pin),分解分母=MASTer 池卡(x-spec-d-materialization)",
|
|
77
|
+
"sources": [
|
|
78
|
+
{
|
|
79
|
+
"type": "design_seed",
|
|
80
|
+
"ref": "POMaster_VNext/corpus/spec-knowledge/candidates/FE-G1.yaml",
|
|
81
|
+
"captured_by": "agent:claude/spec-d-consolidation",
|
|
82
|
+
"locator": {
|
|
83
|
+
"candidate": "POLICY.OBS.TELEMETRY_LIFECYCLE_DECLARED",
|
|
84
|
+
"source_protocol": ".trellis/spec/frontend/34-monitoring-logging-protocol.md",
|
|
85
|
+
"lines": "L24, L54-L55"
|
|
86
|
+
},
|
|
87
|
+
"clean_room_note": "independently rewritten from SPEC-D decomposition candidate cards; zero verbatim copy"
|
|
88
|
+
}
|
|
89
|
+
],
|
|
90
|
+
"review_notes": [
|
|
91
|
+
"遥测事件治理元数据在既有 168 条中无对应条目,零语义重复;多锚卡(34 L24 MUST 锚 + L54-L55 Checklist 锚同事实),主锚定强度 required。"
|
|
92
|
+
]
|
|
93
|
+
}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
{
|
|
2
|
+
"x-vocab-pr": {
|
|
3
|
+
"status": "vocab_pr_candidate",
|
|
4
|
+
"finding": "kind='policy' 不在 vocab-lock kinds_registry.truth_bodies(POLICY. 前缀已冻结注册,closed-world)",
|
|
5
|
+
"proposal": "词汇表 PR 登记 policy kind 及新域段;或 Owner 裁决 policy 条目住 catalog/ 而非 truth/objects 正文层(与前批 45+25 条同因同请,合并进同一 vocab PR)",
|
|
6
|
+
"locked_vocab_untouched": true,
|
|
7
|
+
"resolution": "2026-09-05 vocab PR-0009 收编落地(vocab-lock@v0.8-resolved,三镜像同 commit;Owner 裁定 D4=(a) 2026-09-05):kind='policy' 是 catalog 物料分类词形(catalog_layer_vocab.catalog_kind 在册——PR-0006,不受 kinds_registry.truth_bodies 闭包管辖),POLICY. 前缀为 governed 闭包既有前缀,id 域段词形随 catalog_layer_vocab.policy_id_domains / policy_web_domains 收编;本 pending 注记就此转正(finding/proposal/locked_vocab_untouched 为创建时点历史记录原样保留——mcp_eyes 先例)"
|
|
8
|
+
},
|
|
9
|
+
"x-spec-d-materialization": {
|
|
10
|
+
"status": "PROPOSAL",
|
|
11
|
+
"package": "B6b-II FE 播种移植(SPEC-D 池卡复用;分母=MASTer 池卡 + vendor 播种字节双锚)",
|
|
12
|
+
"human_review_required": true,
|
|
13
|
+
"evidence": "PLANNED",
|
|
14
|
+
"provenance": "POMaster_VNext/corpus/spec-knowledge/candidates/consolidated-pool.yaml",
|
|
15
|
+
"group": "FE-G1",
|
|
16
|
+
"candidate_id": "POLICY.OBS.TRACE_CORRELATION",
|
|
17
|
+
"density_rank": null,
|
|
18
|
+
"density_score": 33.38,
|
|
19
|
+
"pool_statement_sha16": "daf5221dd443b1c8",
|
|
20
|
+
"curated_rule": "B6b-II 分母(FE 24-45 + index)required 池(ELIGIBLE 未物化 + MASTer 行锚落 MUST/MUST NOT)按池密度序取前 22 + advisory 池(SHOULD 源 backlog policy 卡 + 锚段全落建议段闭包)按同公式密度序取前 3 = 25(D5 上限/批内执行);UNIVERSAL + UNIVERSAL_POLICY + 无 uncertainty + 非 project_scope + 非重复",
|
|
21
|
+
"denominator": "MASTer(池卡 source_protocol 锚)"
|
|
22
|
+
},
|
|
23
|
+
"x-b6-porting": {
|
|
24
|
+
"status": "PROPOSAL",
|
|
25
|
+
"batch": "B6B-2",
|
|
26
|
+
"human_review_required": true,
|
|
27
|
+
"enforcement_axis": {
|
|
28
|
+
"source_sections": [
|
|
29
|
+
"SHOULD"
|
|
30
|
+
],
|
|
31
|
+
"rule": "SHOULD/Change Policy 源条目 enforcement 必须 advisory(禁升 required);MUST/MUST NOT 源条目 enforcement 必须 required_when_applicable(降级合法)",
|
|
32
|
+
"asserted_by": "packages/cli/tests/catalog-b6-porting.spec.ts"
|
|
33
|
+
},
|
|
34
|
+
"extra_master_sections": [],
|
|
35
|
+
"denominator": "vendor",
|
|
36
|
+
"vendor_pin": {
|
|
37
|
+
"path": "pomaster/components/frontend-hard-spec/assets/universal/34-monitoring-logging-protocol.md",
|
|
38
|
+
"sha256": "3c37c1c3aa3ade8d43532a1fcc7561e95aef42a19e46b6eb53d864054a2da013",
|
|
39
|
+
"bytes": 8248
|
|
40
|
+
},
|
|
41
|
+
"seeded_spec": ".pomaster/specs/hard/frontend/34-monitoring-logging-protocol.md",
|
|
42
|
+
"seed_manifest": "packages/cli/seeds/manifest.json"
|
|
43
|
+
},
|
|
44
|
+
"id": "POLICY.OBS.TRACE_CORRELATION",
|
|
45
|
+
"kind": "policy",
|
|
46
|
+
"axis_profile": "policy_default",
|
|
47
|
+
"classification": "UNIVERSAL_POLICY",
|
|
48
|
+
"axes": {
|
|
49
|
+
"lifecycle": "PROPOSED",
|
|
50
|
+
"confidence": "UNRESOLVED",
|
|
51
|
+
"evidence": "PLANNED",
|
|
52
|
+
"change": "STABLE"
|
|
53
|
+
},
|
|
54
|
+
"title_zh": "追踪标识全链路关联",
|
|
55
|
+
"statement_zh": "用户操作、请求与异步任务应通过追踪标识关联;启用分布式追踪时应遵循标准化追踪上下文并验证跨源传播与信任策略。",
|
|
56
|
+
"statement_en_keywords": [
|
|
57
|
+
"trace correlation",
|
|
58
|
+
"w3c trace context",
|
|
59
|
+
"cross origin propagation trust"
|
|
60
|
+
],
|
|
61
|
+
"applies_when": {
|
|
62
|
+
"lane": "any",
|
|
63
|
+
"condition": "分布式追踪接入",
|
|
64
|
+
"applicability_note": "分布式追踪接入"
|
|
65
|
+
},
|
|
66
|
+
"enforcement": "advisory",
|
|
67
|
+
"authority": {
|
|
68
|
+
"owner": "HUMAN_OWNER",
|
|
69
|
+
"delegates": [],
|
|
70
|
+
"write_policy": "EVOLUTION_CHANNEL",
|
|
71
|
+
"escalation_hint": "catalog-spec-decomposition"
|
|
72
|
+
},
|
|
73
|
+
"origin": "ingested",
|
|
74
|
+
"origin_note": "B6b-II FE 播种移植物化;statement 沿用 SPEC-D 候选卡独立措辞(clean-room),零逐字拷贝上游源文本;播种分母=vendor 字节(x-b6-porting.vendor_pin),分解分母=MASTer 池卡(x-spec-d-materialization)",
|
|
75
|
+
"sources": [
|
|
76
|
+
{
|
|
77
|
+
"type": "design_seed",
|
|
78
|
+
"ref": "POMaster_VNext/corpus/spec-knowledge/candidates/FE-G1.yaml",
|
|
79
|
+
"captured_by": "agent:claude/spec-d-consolidation",
|
|
80
|
+
"locator": {
|
|
81
|
+
"candidate": "POLICY.OBS.TRACE_CORRELATION",
|
|
82
|
+
"source_protocol": ".trellis/spec/frontend/34-monitoring-logging-protocol.md",
|
|
83
|
+
"lines": "L37-L39"
|
|
84
|
+
},
|
|
85
|
+
"clean_room_note": "independently rewritten from SPEC-D decomposition candidate cards; zero verbatim copy"
|
|
86
|
+
}
|
|
87
|
+
],
|
|
88
|
+
"review_notes": [
|
|
89
|
+
"advisory 物化(SHOULD 源):追踪关联与 W3C Trace Context 跨源传播验证,源段 SHOULD——按八分类矩阵落 advisory 不升 required;enforcement 轴断言钉(catalog-b6-porting.spec)。"
|
|
90
|
+
]
|
|
91
|
+
}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
{
|
|
2
|
+
"x-spec-d-materialization": {
|
|
3
|
+
"status": "PROPOSAL",
|
|
4
|
+
"package": "裁定批 F/D3-R1 排除卡逐卡复核物化(SPEC-D 池卡复用;分母=MASTer 池卡 + vendor 播种字节双锚)",
|
|
5
|
+
"human_review_required": true,
|
|
6
|
+
"evidence": "PLANNED",
|
|
7
|
+
"provenance": "POMaster_VNext/corpus/spec-knowledge/candidates/consolidated-pool.yaml",
|
|
8
|
+
"group": "BE-G4",
|
|
9
|
+
"candidate_id": "POLICY.PERF.BUDGET_CHANGE_RETEST",
|
|
10
|
+
"pool_statement_sha16": "4a0557004a698220",
|
|
11
|
+
"curated_rule": "D3 逐卡复核批(Owner 2026-09-05 裁定 D3=逐卡复核;72 张保守排除卡逐卡核锚):required 9(D3b source=null 补锚落 MUST/MUST NOT 且与 MASTer 行锚交叉验证)+ advisory 16(Change Policy 锚 14 张降 advisory[行内容含「必须」行为规范、强度只降不升] + 池密度序前 2)= 25(D6 合并上限 policy+TP 合计 25/批内执行;超出 17 张 advisory 留 D3-R2 轮次台账);维持排除 30(Ownership 归属说明族)",
|
|
12
|
+
"denominator": "MASTer(池卡锚)"
|
|
13
|
+
},
|
|
14
|
+
"x-b6-porting": {
|
|
15
|
+
"status": "PROPOSAL",
|
|
16
|
+
"batch": "D3-R1",
|
|
17
|
+
"human_review_required": true,
|
|
18
|
+
"classification_face": "policy",
|
|
19
|
+
"enforcement_axis": {
|
|
20
|
+
"source_sections": [
|
|
21
|
+
"Change Policy"
|
|
22
|
+
],
|
|
23
|
+
"rule": "SHOULD/Change Policy 源条目 enforcement 必须 advisory(禁升 required);MUST/MUST NOT 源条目 enforcement 必须 required_when_applicable(降级合法)",
|
|
24
|
+
"asserted_by": "packages/cli/tests/catalog-b6-porting.spec.ts"
|
|
25
|
+
},
|
|
26
|
+
"extra_master_sections": [],
|
|
27
|
+
"denominator": "vendor",
|
|
28
|
+
"vendor_pin": {
|
|
29
|
+
"path": "pomaster/components/backend-hard-spec/assets/universal/30-performance-capacity-protocol.md",
|
|
30
|
+
"sha256": "b575dd07e4bb6def646acb55c3d62d086a9fd12035b2ab359ec353bf443773e5",
|
|
31
|
+
"bytes": 1326
|
|
32
|
+
},
|
|
33
|
+
"seeded_spec": ".pomaster/specs/hard/backend/30-performance-capacity-protocol.md",
|
|
34
|
+
"seed_manifest": "packages/cli/seeds/manifest.json",
|
|
35
|
+
"d3_review": {
|
|
36
|
+
"excluded_from_batch": "B6C",
|
|
37
|
+
"exclusion_reason_at_seed": "行锚段映射非 MUST/MUST NOT(池 enforcement 判定矛盾,保守排除待复核)",
|
|
38
|
+
"adjudication": "D3 逐卡复核(Owner 2026-09-05 裁定 D3=逐卡复核,裁定批 F 落地 2026-09-05):本卡原属 B6C 保守排除留池(排除理由:行锚段映射非 MUST/MUST NOT(池 enforcement 判定矛盾,保守排除待复核));复核补锚回 vendor/MASTer 源取得行级证据,锚段=Change Policy,按强度入册(行内容含「必须」行为规范、Change Policy 段 advisory 落点(强度只降不升))",
|
|
39
|
+
"anchor_evidence": "MASTer 30-performance-capacity-protocol.md 57「预算或容量模型变化必须记录来源并重新运行代表性测试。」",
|
|
40
|
+
"pool_enforcement_at_seed": "required_when_applicable"
|
|
41
|
+
}
|
|
42
|
+
},
|
|
43
|
+
"id": "POLICY.PERF.BUDGET_CHANGE_RETEST",
|
|
44
|
+
"kind": "policy",
|
|
45
|
+
"axis_profile": "policy_default",
|
|
46
|
+
"classification": "UNIVERSAL_POLICY",
|
|
47
|
+
"axes": {
|
|
48
|
+
"lifecycle": "PROPOSED",
|
|
49
|
+
"confidence": "UNRESOLVED",
|
|
50
|
+
"evidence": "PLANNED",
|
|
51
|
+
"change": "STABLE"
|
|
52
|
+
},
|
|
53
|
+
"title_zh": "性能预算变更须复测",
|
|
54
|
+
"statement_zh": "性能预算或容量模型的变化必须记录来源依据,并重跑具代表性的负载测试后方可生效。",
|
|
55
|
+
"statement_en_keywords": [
|
|
56
|
+
"budget or capacity model change",
|
|
57
|
+
"source rationale",
|
|
58
|
+
"rerun representative load test"
|
|
59
|
+
],
|
|
60
|
+
"applies_when": {
|
|
61
|
+
"lane": "any",
|
|
62
|
+
"condition": "性能预算或容量模型变化",
|
|
63
|
+
"applicability_note": "性能预算或容量模型变化"
|
|
64
|
+
},
|
|
65
|
+
"enforcement": "advisory",
|
|
66
|
+
"authority": {
|
|
67
|
+
"owner": "HUMAN_OWNER",
|
|
68
|
+
"delegates": [],
|
|
69
|
+
"write_policy": "EVOLUTION_CHANNEL",
|
|
70
|
+
"escalation_hint": "catalog-spec-decomposition"
|
|
71
|
+
},
|
|
72
|
+
"origin": "ingested",
|
|
73
|
+
"origin_note": "裁定批 F/D3-R1 D3 逐卡复核物化(原 B6C 保守排除卡补锚收编);statement 沿用 SPEC-D 候选卡独立措辞(clean-room),零逐字拷贝上游源文本;播种分母=vendor 字节(x-b6-porting.vendor_pin),分解分母=MASTer 池卡(x-spec-d-materialization)",
|
|
74
|
+
"sources": [
|
|
75
|
+
{
|
|
76
|
+
"type": "design_seed",
|
|
77
|
+
"ref": "POMaster_VNext/corpus/spec-knowledge/candidates/BE-G4.yaml",
|
|
78
|
+
"captured_by": "agent:claude/spec-d-consolidation",
|
|
79
|
+
"locator": {
|
|
80
|
+
"candidate": "POLICY.PERF.BUDGET_CHANGE_RETEST",
|
|
81
|
+
"source_protocol": ".trellis/spec/backend/30-performance-capacity-protocol.md",
|
|
82
|
+
"lines": "57"
|
|
83
|
+
},
|
|
84
|
+
"clean_room_note": "independently rewritten from SPEC-D decomposition candidate cards; zero verbatim copy"
|
|
85
|
+
}
|
|
86
|
+
],
|
|
87
|
+
"review_notes": [
|
|
88
|
+
"性能预算变更复测在既有 228 条中无对应条目;与 B6b-II REL.OBSERVABILITY_BEFORE_SHIP(监控前置物)互引不同时点。",
|
|
89
|
+
"Change Policy 锚(MASTer 30 L57)——降 advisory 入册(强度只降不升)。"
|
|
90
|
+
]
|
|
91
|
+
}
|