Files
roadmap/content/acz/ift/2025q4-discovery.md
fbarbu15 845d6b8dcd Chore/roadmap validator (#318)
## Summary

- Introduce a standalone Python roadmap validator with a CLI entry
point, modular validation pipeline, and GitHub Actions wiring so roadmap
content can be linted locally and in CI.
- Provide reusable validation primitives for path resolution,
front-matter parsing, identity checks, task parsing, catalog
enforcement, and template adherence.
- Document usage, configuration, and workflow behaviour to make the
validator approachable for contributors.

## Validator Details

- **Core tooling**
- Added the `tools/roadmap_validator/` package with `validate.py` (CLI),
`validator.py` (orchestration), and helper modules (`tasks.py`,
`identity.py`, `paths.py`, `constants.py`, `issues.py`).
- CLI supports directory/file targets, skips default filenames, emits
GitHub annotations, and integrates optional substring filtering
- README explains features, environment variables, and development
guidance.
- **Catalog and template enforcement**
- `catalog.py` verifies each allowed content unit has `index.md` and
`preview.md`, confirms roadmap entries appear under the proper
quarter/area, and flags stale or missing links.
- `templates.py` enforces template basics: front matter completeness,
`## Description` ordering/content, template placeholder cleanup, and
task section detection.
- **Task validation**
- `tasks.py` checks required metadata (`owner`, `status`, `start-date`,
`end-date`), date formats, populated descriptions/deliverables, TODO
markers, tangible deliverable heuristics, and `fully-qualified-name`
prefixes.
- **Workflow integration**
- `.github/workflows/roadmap-validator.yml` runs the validator on pushes
and manual dispatch, installs dependencies, scopes validation to changed
Markdown, and surfaces findings via GitHub annotations.

## Existing Roadmap Updates

- Normalised 2025q4 commitments across Web, DST, QA, SC, and other units
by filling in missing descriptions, deliverables, schedule notes,
recurring task statuses, and maintenance tasks.
- Added tasks where absent, removed remaining template placeholders,
aligned fully qualified names, and ensured roadmap files conform to the
new validator checks.

## Testing

```bash
python tools/roadmap_validator/validate.py *2025q4*
```

CI: `Roadmap Validator` workflow runs automatically on pushes/dispatch.

---------

Co-authored-by: kaiserd <1684595+kaiserd@users.noreply.github.com>
2025-10-28 15:41:11 +02:00

5.9 KiB
Raw Blame History

title, tags, draft, description
title tags draft description
Discovery
2025q4
acz
ift
false Specifying disc-NG and releasing a document that collects the requirements of discovery

vac:acz:ift:2025q4-discovery

Specifying a KAD-DHTbased, disc-NGlike Logos discovery capability and releasing a document that collects the requirements of discovery

Description

This commitment entails specifying a KAD-DHTbased, disc-NGlike Logos discovery capability specification with a focus on implementability (see the paper); we will also collect requirements and assess their suitability for IFT projects.

Narratives

By utilizing discovery exploration commitment, We will reinforce the Conduit of Expertise narrative by:

  • Providing the KAD-DHTbased disc-NG-like RFC that will be tailored for Logos applications.

We will also strengthen the Premier Research Destination narrative by:

  • Provides open-source KAD-DHTbased disc-NG-like RFC information to the community.

Task List

Draft RFC

  • fully qualified name: vac:acz:ift:2025q4-discovery:draft-RFC
  • owner: Arunima
  • status: in progress (10%)
  • start-date: 2025/10/01
  • end-date: 2025/10/30

Description

This task involves specifying disc-NG-like LOGOS discovery capabilities on top of KAD-DHT (see the paper) in an implementable way, extracting key components such as the registrar and advisor and drafting them into an RFC; once the draft RFC is assembled, the task also includes preparing the final RFC as a pull request by incorporating review feedback.

Deliverables

  • A notion document contains a draft RFC with its feedback.

Registrar Module

  • fully qualified name: vac:acz:ift:2025q4-discovery:registrar-module
  • owner: Arunima
  • status: in progress (0%)
  • start-date: 2025/10/20
  • end-date: 2025/10/27

Description

In this task, the modular registrar module will be implemented in Golang to handle node registration, admission policies, and identity management. The module will manage how new participants join the network, enforce admission control rules derived from the RFC, and maintain metadata about registered nodes. The implementation will include validation logic, registration lifecycle handling, and interactions with the core routing layer. The goal is to ensure controlled participation and maintain the stability and trust of the system.
The task is complete when nodes can register, be validated, and interact with the network under enforced admission control rules.

Deliverables

Advertiser Module

  • fully qualified name: vac:acz:ift:2025q4-discovery:advertiser-module
  • owner: Arunima
  • status: not started
  • start-date: 2025/10/27
  • end-date: 2025/11/03

Description

This task involves developing the advertiser component, which is responsible for broadcasting and maintaining service or capability advertisements across the network. The module will manage how nodes announce their presence and update their advertised information over time. It will interact closely with both the registrar and routing infrastructure to ensure that advertisements are discoverable and correctly propagated. Emphasis will be placed on efficient dissemination, freshness of information, and resilience to network churn.
The task is complete when advertisements can be created, updated, and distributed correctly through the routing layer.

Deliverables

Discoverer Module

  • fully qualified name: vac:acz:ift:2025q4-discovery:discoverer-module
  • owner: Arunima
  • status: not started
  • start-date: 2025/11/03
  • end-date: 2025/11/10

Description

Here, the discoverer module will be implemented to enable nodes to search for and locate advertised services or peers in the network. It will interpret discovery queries, match them against active advertisements, and handle query routing through the established infrastructure. The module should also implement caching and fallback mechanisms to optimize performance. The focus will be on correctness, minimal latency in lookups, and adherence to the discovery semantics outlined in the RFC.
The task is complete when discovery queries consistently return accurate and timely results for active advertisements.

Deliverables

Integration and Validation

  • fully qualified name: vac:acz:ift:2025q4-discovery:integration-validation
  • owner: Arunima
  • status: not started
  • start-date: 2025/11/10
  • end-date: 2025/11/24

Description

This final phase integrates all core modules into a cohesive system and validates their behavior through simulations. The components (registrar, advertiser, discoverer, and routing layer) will be connected and tested together under various scenarios. Simulations will cover registration, advertisement propagation, discovery requests, and network dynamics. Validation will focus on functional correctness, protocol compliance, and performance metrics.
The task is complete when all modules operate together seamlessly and the integrated system passes functional and performance validation tests.

Deliverables

Logos Discovery Capability Spec

  • fully qualified name: vac:acz:ift:2025q4-discovery:logos-disc-specs
  • owner: Arunima
  • status: not started
  • start-date: 2025/10/30
  • end-date: 2025/11/30

Description

This task involves addressing the feedback from the draft RFC task, organizing it into a draft PR, and then going through another review phase. It also includes discussing and addressing any newly identified or initiative-requiring topics. The task concludes with the merge of the PR.

Deliverables